This would stop the Prime Minister of the day from appointing his cronies to Cabinet. It would also foster healthy debate and accountability as the nominee would have to state up front what his views were on certain relevant issues. Finally, it would make the executive accountable to Parliament instead of Parliament accountable to the executive.
Currently, the Cabinet sits in Parliament. This means that they can vote on what the laws are, and then put them into force, a gross violation of the separation of powers principle. The executive seems to dominate Parliament, and forces through laws we don't want, and appoints people only one constituency (if that) chose.
I am not proposing that the Prime Minister shouldn't come from the House of Commons. He can stay. But the rest, the ones that form his Cabinet – they should not be MPs or Peers.
Instead, we could emulate the American system. The Prime Minister would nominate someone to take up a role in Cabinet. Then that person should be vetted and approved by Parliament. The vetting would be a thorough Q&A session (or plural) to assess the nominee's ability to do the job. Then a vote would be taken, and if the vote was lost, then the Prime Minister would have to find someone else to nominate.