Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
Scenario # 1 Honesty
Your team works for a small company, SmallCorp Consultants.
The company's only contract at present is a $6M year-long project for Bluestone Mining
to write a software system to analyse geological data.
Your team discovered a way of designing the system that means that the project can be
completed in 2 months, rather than 1 year, and at a cost of only $1M.
Your boss tells your team to keep quiet and ignore the "better solution" as they want to
keep the team working on the project as long as possible, and Bluestone has already
indicated that they are happy to pay the $6M as they believe the project is worth that
much.
What are the actions that your team will take?
· Report this situation to the higher management authorities of the company. Do
not directly tell the client company for the interest of our employer.
● Also record and document that we have reported this finding to the
management team, to prevent us being held accountable of ethical
misconducts if anything happens in the future.
· Document down and justify the possibility of designing the system in 2 months,
and cost of only $1M.
Who should be responsible?
· If we report this finding, then we should not be liable for this situation. The
management team of SmallCorp Consultants should be responsible.
Share with the class the ethical conducts that are considered?
· IEEE Principle 2 – CLIENT AND EMPLOYER
Software engineers shall act in a manner that is in the best interests of their client
and employer, consistent with the public interest. In particular, software engineers
shall, as appropriate:
· ACM Code of Ethics and Professional Conduct 1.3 Be honest and
trustworthy.
Honesty is an essential component of trustworthiness. A computing
professional should be transparent and provide full disclosure of all
pertinent system capabilities, limitations, and potential problems to the
appropriate parties. Making deliberately false or misleading claims,
fabricating or falsifying data, offering or accepting bribes, and other
dishonest conduct are violations of the Code.
Scenario # 2 ICT Privacy
· ACS Code of Professional Conduct 1.2.3. Honesty
not knowingly mislead a client or potential client as to the suitability of a product
or service;
You have a part-time job working for the University's ICT unit.
You have been assigned to work in a team that tests on the development changes
made to the Sydney Student portal.
As part of this job, your team has access to a copy of all course and student data.
Your team is able to see the students' results. Some of the students are known to your
team while others are not.
What are the actions that your team will take?
· Report this situation to our manager.
· Stop this job for now to prevent further breach of student privacy.
· Use testing data (anonymized) instead of real data.
Are there any privacy issues being bridged?
· Yes, results of students should be confidential and only accessed by
themselves and the university. Only the students themselves can give
permission to who is allowed to see.
· Unless the students give permission for the university to use their results for
ICT changes, then no one should be able to see their results and names.
Share with the class the ethical conducts that are considered?
· ACM Code of Ethics and Professional Conduct 1.6 Respect
privacy
· ACS Code of Professional Conduct 1.2.1. The Primacy of the Public Interest
Scenario # 3 Liability
Your team has written a simple game app.
It includes a simple function called left-pad which pads out a string.
The entire code source has been made open source.
Someone uses your team's left-pad function in their string manipulation code.
Someone uses the string manipulation library in their data logging toolkit.
Someone uses the logging toolkit in a traffic control system.
Your team's code has a bug. It crashed the traffic control system and 3 people were
killed in ensuing car accidents.
Is your team liable for the deaths?
· According to most open-source licenses, the developer is not liable for
problems caused by their software.
· When software is a service, developers are generally not liable.
· So, we can say our team is not liable for the deaths.
Who should be responsible?
· The people who use the logging toolkit and develop a traffic control system.
· They are the direct developers who did not test the code of their product
properly.
What are the actions that your team will take?
· We believe we are not held responsible for the accidents.
· We will assist the process of bug fixing.
Share with the class the ethical conducts that are considered?
· ACM Code of Ethics:
2.2 Acquire and maintain professional competence.
2.1 Strive to achieve high quality in both the processes and products of
professional work.
· IEEE Principle 5 – MANAGEMENT
5.01 Ensure good management for any project on which they work, including
effective procedures for promotion of quality and reduction of risk.
· IEEE - Product
Software engineers shall ensure that their products and related
modifications meet the highest professional standards possible.