The software engineering code of ethics
Written in antiquity, the Hippocratic Oath is held sacred by physicians, who continue today to swear that they will uphold its principles regarding a number of professional ethical standards.
Much closer to us, would you be surprised to learn that software developers also have a code of ethics? Indeed, such a code exists. It was initially written and published in 1997 by ACM/IEEE-CS joint task force on Software Engineering Ethics and Professional Practices.
Of course, nobody will ask you to swear on it 😉… But still we find it interesting to guide you to discover its fundamentals. As like Hippocratic Oath precepts, they are even more relevant today.
Do you respect the code? A quick overview
As a first step, you will find below the short version of the Software Engineering Code of Ethics. Before going into the details, the following eight principles describe a healthy approach to software development (or any line of work, in fact). In our future posts, we will mainly focus on the detailed clauses of principle 3, which deals with software production.
Software Engineering Code of Ethics and Professional Practice (Short Version) ©
Preamble
The short version of the code summarizes aspirations at a high level of the abstraction; the clauses that are included in the full version give examples and details of how these aspirations change the way we act as software engineering professionals. […]
Software engineers shall commit themselves to making the analysis, specification, design, development, testing and maintenance of software a beneficial and respected profession. In accordance with their commitment to the health, safety and welfare of the public, software engineers shall adhere to the following eight principles:
Public
Software engineers shall act consistently with the public interest.
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.
Product
Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.
Judgment
Software engineers shall maintain integrity and independence in their professional judgment.
Management
Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.
Profession
Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.
Colleagues
Software engineers shall be fair to and supportive of their colleagues.
Self
Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
Curious to know more? Just follow us for a guided tour!
In our future articles, we will dive into details of the full detailed version of the code. You will see how to comply with some key principles in your day-to-day software development practice. Stay tuned!
References and further reading
- Software Engineering Code of Ethics and Professional Practice, copyright (c) 1999 by the Association for Computing Machinery, Inc. and the Institute for Electrical and Electronics Engineers, Inc.
- The joint ACM/IEEE-CS Software Engineering Code was published as: Don Gotterbarn, Keith Miller, and Simon Rogerson. 1997. Software engineering code of ethics. Commun. ACM 40, 11 (November 1997), 110-118. DOI: 10.1145/265684.265699.
- Last version 5.2 was jointly approved by the ACM and the IEEE-CS as the standard for teaching and practicing software engineering.
- Software code of ethics: Respect the privacy of your users
- Software code of ethics: Tips to craft GDPR compliant software