Advanced Programming Projects : Group Vs Individual Decision-Making In Software Design

Advanced Programming Projects : Group Vs Individual Decision-Making In Software Design A crazy thought: Why aren’t software decisions made jury-style?

Imagine the question being discussed is to pick product A, vendor B, and option C to build a solution in-house. Here’s how the “pure” solution could look like.

• Screen developers who don’t make the ultimate decision from all the conversations about the decision. They could run experiments, measure the numbers, read the code and documentation, make estimates, etc.

• Dedicate (twelve) jurors to ultimately make the decision. Make sure they have no exposure whatsoever to any part of this decision. I.e. make sure they are not having lunches or drinking with those developers running the experiments.

• In addition, have the advocates a.k.a. prosecutors/defendants for each option. As good senior engineers and architects should be able to advocate for and against any idea, these roles can and should rotate over several days (i.e. Alice advocates pro B on Monday, then pro C on Tuesday).

• Lastly, have the high-level moderator (a Head of Engineering or Data, or a CTO, acting as the “judge”), whose job is limited to a) making sure the right questions are asked and answered, b) making sure the thresholds against which the numerical results of engineering experiments are compared do get discussed and agreed upon beforehand and communicated to the jurors accordingly, and c) preventing off topics, and overall biased / under-justified opinions from becoming too vocal in the [court] room.

Rise Of The Machines?

• Hold the process of making the engineering decision (or “the trial”) over several days, making sure that all the decisions are ultimately made by the jurors, with the jurors only receiving the relevant input data points, and no noise.

Obviously, for simple decisions the above is unnecessary.

Advanced Programming Projects : Group Vs Individual Decision-Making In Software Design Written by Dima Korolev

Michael Littman on Deep Learning VS Reinforcement Learning, Machine Learning & Markov

Advanced Programming Projects : Group Vs Individual Decision-Making In Software Design Written by Dima Korolev