[Reading]

Which behaviour of whom is unethical (in the sense of breaching specific codes)?

  • Cindy Yardley (Tester) - Faked software tests
  • Jan Anderson (Ex-programmer) - Was against waterfall, wrote a memo and released it to the Sentient-Observer, instead of raising it internally
  • Max Worthington (CSO) - Leaked confidential data, participated in eavesdropping (+ mention assistant)
  • Ray Johnson (Robotics Division Chief) - coerced Cindy to fake the tests [threatening her], lied about safe robot (Ivory snow), put pressure on Reynolds (“heads would roll”)
  • Michael Waterson (CEO) - Asked the CSO to spy on communications (eavesdropped), created an oppressive atmosphere for his employees (threatening to fire everyone in robotics division)
  • Randy Samuels (Programmer who coded error) - copyright infringement with the copied code
  • Sam Reynolds (Project Manager / Waterfall Dude) - Fired Jan Anderson for conflicting views re. Waterfall vs. Prototype

Which actions of whom are indicative of poor project management?

  • Sam Reynolds - Sticking with Waterfall (because that’s what he knew)
  • Ray Johnson - Hiring 20 new staff members late into the project.
  • Michael Waterson (CEO) - Assigned Reynolds as project head, rather than someone qualified (for cost effectiveness)
  • Ray Johnson - Ivory snow strategy (shipping a flawed/buggy robot), setting bad standards for the whole division.
  • Randy Samuels - opposed to criticism, creating friction within the team, less efficient project

What are the specific causes of the operator's death?

  • Incorrect Software resulting in arms of the robot flailing and attacking the operator
    • QA testing was forged so the incorrect software was not handled due to a culture of leniency in software.
  • Poor UI resulting in an inability to stop the robot
    • Error message/handling was inconsistent
    • Lack of context help menus (had to go look it up in the manual)
  • Lack of training for handling the robot appropriately
  • Design and layout of the room resulted in the operator being in a potentially dangerous position.

Is Randy Samuels (or anyone) responsible for murder or manslaughter?

  • Definitely not murder (no intent)
  • Who is guilty?
    • Randy Samuels - is code was supposed to be tested
    • Cindy S - Very aggressively coerced to fake the results
    • Sam Reynolds - The worst thing he did was picking waterfall
    • Ray Johnson - Maliciously coerced Cindy into forging the test results. “Please use a more secure form of communication”. Propagated unreasonable pressure onto Sam Reynolds
    • Waterson (CEO) - Unreasonable pressure but he didn't know the product was faulty

Is there any ethical justification for Ray Johnson's "ivory snow" theory?

  • By Kantian ethics (perfect duty), the ivory snow theory violates perfect duty as we can disregard the 1% when the benefit to us of providing good software is outweighed by the cost of fixing the software.

  • By Millsian ethics (majority), ivory snow takes into consideration the consequences of the action. The ethical argument could be that by confirming the software works in 99% of use cases, the 1% where is fails can be considered negligible.


Is the choice of software process (e.g. waterfall) partly an ethical question?

  • The choice of development process is not an ethical question as unethical people can abuse both systems.

  • However, in agile the unethical behaviour may have been uncovered earlier by the stakeholders.

Ivory + Agile -> Decide where imperfections exist


Is it ever acceptable to fake tests results?

  • No.
  • In a company - there is also legal liability.
  • Fake test results != Non-extensive tests

What are the implications for user interface design?

Good

  • Intuitive - less time spent for training, manuals
  • Makes similar jobs easier to use
  • Workflow optimisation

// touch screen, mouse input?

Bad

  • Confusing output

  • Big red stop button???

What are the characteristics of a good team member?

  • Not arrogant, Accepts criticism
  • Listens to concerns of other members
  • Provides feedbacks for peers
  • Takes ownership of a project, ensures all issues are resolved or raised
  • Communicates clearly
  • Confidence and skills (backup their claims)

What would you have done if you were one of the characters?

Cindy Yardley

  • Should not have faked the tests

  • Double check and confirm what Ray Johnson is asking you to do

  • Contact to confirm if it is acceptable

  • Contact HR, explain what Ray asked you to do

  • Voice your concerns

  • Wait for response before you do anything


What should have been done by each character?

Ray Johnson

  • Chewed out Sam Reynolds for the project being 6 months behind
  • Believed in the “ivory snow” theory
  • Told Cindy to fake the software tests
  • Hired 20 new programmers

Obviously shouldn’t have told Cindy to fake the software tests. Thinks that “perfect software is an oxymoron” which lead to fatal software bugs. This ideology is very unethical to begin with, and should not have ever been introduced to Silicon Techtronics.

Martha/Max Worthington

  • Revealed (anonymously) the tension between Sam Reynolds and Ray Johnson, which led to them cutting corners
  • Conducted surveillance of employees for Michael Waterson
  • Came out about surveillance to reveal Cindy had faked the tests

Shouldn’t have conducted surveillance to begin with, but also should’ve spoken up earlier - as soon as the faking of the tests was found.

Bart Matthews

  • Was poorly trained

Should’ve spoken up about poor training

Randy Samuels

  • Released incorrectly written code causing the robot to malfunction
  • Used copyrighted code
  • Described as 'prima donna' and hard to approach

Shouldn’t have released the code that was poorly written, required revision. Also shouldn’t have copy pasted code. His prima donna attitude and difficulty to work with can also be credited to the poorly written code being released.

Sam Reynolds

  • Background of data processing even though he got put in charge of this project.
  • Was against the hiring of 20 new programmers
  • Fired Jan over waterfall debate

Should’ve been more open to different methodologies, and shouldn’t have fired employees over a disagreement.

Michael Waterson (CEO)

  • Placed Sam Reynolds in charge of Robbie project (cost saving measure)
  • Contributed generously to Jane McMurdock’s re-election campaign

Should’ve taken responsibility for the issue, rather than letting it be pinned on Randy. Should’ve hired a better project manager.

Cindy Yardley

  • Software tester
  • Admitted to faking software tests to save the jobs of her co-workers, due to a received text message from Ray Johnson.

Shouldn’t have caved into the pressure from Ray, and raised these concerns internally.


Who bears final responsibility for Bart Matthews' death?

Many individuals contributed to the problem, thus it was the company as a whole which was responsible. The CEO should have stepped up and taken final responsibility for Matthew’s death, as he is the main representative of the company. However, this doesn’t mean that the CEO should be tried.