The case of the
As retold by
When software engineering and
computer ethics collide
u A robot operator, Bart
Matthews, was killed
by his robot, Robbie
CX30, while at work.
u A programmer, Randy
Samuels, who wrote
the faulty code was
u Silicon Techchronics is
What really happened?
u The robot
operator to death
u Blood all over
u Decapitated head
u Num-lock key light
u Numeric key pad
Who is at fault?
u The programmer
who made a
u The designer?
u The robotics
u The company?
u The operator of the
u The robot?
Robbie CX 10 & 20 were
u The robotics division chief, Johnson, put
pressure on the project manager Reynolds
to finish the project by January.
u Johnson hired 20 new programmers in
June against Reynolds’ will, by shifting
resources. Robbie CX 30 had to succeed.
u Johnson only knew manufacturing
hardware. One cannot speed software
coding by adding more programmers.
u Robbie CX 30 was a step ahead in
u Johnson: Perfect software is an oxymoron.
u Randy’s home page:
u A hacker type
u Enormous stress
u Programmer was a
prima donna: could
not accept criticism or
his own fallibility
u Helpful but arrogant
u Under pressure to
finish project on time
A good programming team
u Needs to have a whole array of
personalities types including:
u An interaction-oriented person
u Someone who keeps the peace and
helps move things in a positive
u Task-oriented people, but not all
u A democratic team
u Egoless programming
u The project was controversial from the
u Jan Anderson, a programmer, was fired
after she attacked project manager
Reynolds on his decision to use the
waterfall methodology versus the
u Reynolds was replacing a dead project
manager as a cost saving measure instead
of hiring someone from outside the
company. He never worked with robotics
u The earlier Robbie models processed
transactions. Robbie CX30 was to
interact with its operator, therefore
the interface cannot be designed as
an afterthought. Thus, a prototyping
model is preferable where the users
can use a prototype robot while in
the design stage.
Software development life-cycle
Water fall methodology
u No standard
or quality assurance
u Dynamic testing
u Static testing
u Unit testing: Black and white box
u Integration testing
u Prof Silber attested that test results
were inconsistent with actual killer
code test results
When is the software good
u Errors can happen in any stage
u Design stage: 2 alternatives:
Waterfall & prototyping
u User interface
u The complexity of the task of
building real-world software
u Enormous stress
Worker-friendly: u Worker-unfriendly:
Chip Creek facility. Silicon Valley plant.
Prevent repetitive u Workers criticized
strain injuries. for novelties.
Special training for u No exercises or
Well designed encouraged.
workstations. u RSI frequent
Frequent breaks. u More compensation
u The wife of the
u The indicted
u More possible
Why was Randy Samuels indicted?
u Sili-Tech promised to deliver robots that would
cause no bodily harm.
u So Randy was not legally responsible for the
death of the robot operator.
u Waterson, the president of Sili-Tech has
contributed large sums to the re-election of judge
McMurdock, who indicted Randy.
u Functional requirements specify the behavior of
the robot under exceptional conditions. Operator
intervention may be needed.
u Exceptional conditions were not mentioned in
training of operators.
E-mail was not secure at Sili-Tech
It was found that:
u Cindy Yardley faked the test results
of the Killer code
u Johnson told Cindy that the robot
was safe and all will lose their jobs if
the robot were not shipped on time
u Randy stole some of his software,
but admitted he had bugs in his Killer
u Email privacy
u Professional ethics:
u ACM code of ethics
Five ethical tests:
by Kallman & Grillo
u The mom test: would you tell your
u The TV test: would you tell your
story on national TV?
u The smell test: does it smell bad?
u The other person’s shoes test: would
you like it if done to you?
u The market test: would your action
make a good sale pitch?