Ethics Case Study: The Case of the Software Engineer Essay

January 5, 2022 by Essay Writer


The core of the ethical issue is that a particular software engineer has to make a decision to release software that did not go through all the necessary quality control checks, in order to be one hundred percent certain that there will be no catastrophic errors that will occur when already deployed.

The stakeholders are the investors of the company; the employees and staff; software engineers; the hospital staff and health professionals that will use the said software, as well as the patients of the hospitals. By looking at pertinent information the software engineer has two options.

The first one is to release the product even before it has passed the stringent quality control test required to determine that nothing can go wrong in the operational phase. The second option is to inform clients that there will be a delay in the deployment of the said software.

Ethical Theories

Applying the Kantian theory of ethics the software engineer will have to inform the stakeholders including the investors of the company and the clients that there will be a delay in the launching of the product. They will not be able to use the product because more tests are required to determine if the software will not negatively affect the lives of patients when it is already made operational.

Using the rule utilitarian approach the head software engineer will have to choose between two options and it hinders on the stakeholders that will be most affected by the action. Thus, the software engineer can say that since the bugs are only minor, then there will be no significant problems that may arise in the future.

This will negatively affect the position of the investors that anticipated the launching of the product. On the other hand if the clients outnumber the investors then the software engineer will not release the product knowing that more people will be affected in case of major problems that will arise.

Using the act utilitarianism will force the software engineer to halt the launching of the software because he will come to realize that more people will be upset if indeed the software proves to be problematic. This means that the investors and the people working in the software company are less in number when compared to the clients that will be potentially affected using the said device and software.

ACM Code

According to the Association of Computing Machinery Code of Ethics, there are so many things that has to be considered with regards to this issue. First of all the company must adhere to the idea that their organization must “contribute to society and human well-being” (ACM, par. 1). This means that the company must consider the quality of their product before they release it to the market.

The ACM Code also says that the company must avoid harm to others. The said software was not yet properly tested and therefore using the ACM Code, the company must not release the product yet. The ACM Code also stated that the company must be honest and trustworthy. The head software-engineer must tell the clients that expected delivery date is impossible because further tests are needed.

Finally the ACM Code says that there is a need to strive to achieve the highest quality, effectiveness, and dignity in both the process and products (ACM, par.1). There can be no dignity and effectiveness if the company will not divulge the problems that are inherent in the said product.

The software engineer responsible for making the decision to release the product or not is standing on shaky ground because he cannot prove without doubt that the software will work under different types of conditions and be assured that it will not fail during times of crisis when it is most needed.

Software Code

In the Software Engineering Code of Ethics and Professional Practice it has been made clear that the software engineer must only approve if they have “well-founded belief that it is safe, meets specifications, passes appropriate tests, and does not diminish quality of life , diminish privacy or harm the environment” (Software Code, par.1).

The software engineer in this case cannot give the assurance that it is entirely safe and will not diminish the quality of life of the clients. The software-engineer is not yet knowledgeable about the extent of the problem and if there is indeed a bug that can create significant problems for hospital staff.

The same code also says that it is the duty of the software-engineer to disclose potential problems to the clients. He must tell them the problem and therefore it is not possible for them to release the product ahead of schedule. A through test is needed and the software-engineer must continue to maintain communication between the company and the clients. They must be updated as to the reason of the delay and to tell them the progress of the evaluation and testing. These things must not be hidden from clients.


If the software-engineer will decide to release the product then there is a possibility of failure. Since he did not inform the hospital management, staff, and health professionals regarding the potential problem in the said software then the moment a crisis will hit then the software-engineer will lose credibility. But there is more than that, the problem in the software may be significant then it is possible to endanger the lives of the patients.

If the software-engineer will come out into the open and explain the problems then this action will negatively affect the investors and the owners of the company. They will have problems when it comes to expected profit. They will realize that instead of making money they may have lost some.

It will be a terrible blow to the image of the company. However, if there is something seriously wrong with the software and they still decided to release it then they were not doing their jobs. This will result to litigation. Thus, it is better to lose face for a while and announce that there is a need to assess the integrity of the system.

Works Cited

ACM Code of Ethics and Professional Conduct. 28 Feb. 2011. Association for Computing Machinery. 2011. <https://www.acm.org/about-acm>

Software Engineering Code of Ethics and Professional Practice. 28 Feb. 2011.

Association for Computing Machinery. 2011. <https://www.acm.org/about-acm>

Read more