1. Because of their roles in developing software systems, software engineers have significant opportunities to do good or cause harm, to enable others to do good or cause harm, or to influence others to do good or cause harm.
2. Be accurate in stating the characteristics of software on which they work, avoiding not only false claims but also claims that might reasonably be supposed to be speculative, vacuous, deceptive, misleading, or doubtful.
3. Not unfairly intervene in the career of any colleague; however, concern for the employer, the client or public interest may compel software engineers, in good faith, to question the competence of a colleague.
4. Refuse to participate, as members or advisors, in a private, governmental or professional body concerned with software related issues, in which they, their employers or their clients have undisclosed potential conflicts of interest.
5. The Code helps to define those actions that are ethically improper to request of a software engineer or teams of software engineers.
6. In particular, software engineers shall continually endeavor to:Further their knowledge of developments in the analysis, specification, design, development, maintenance and testing of software and related documents, together with the management of the development process.
7. In particular, software engineers shall, as appropriate:Encourage colleagues to adhere to this Code.
8. Treat all forms of software maintenance with the same professionalism as new development.
9. Improve their understanding of the software and related documents on which they work and of the environment in which they will be used.
10. The Code contains eight Principles related to the behavior of and decisions made by professional software engineers, including practitioners, educators, managers, supervisors and policy makers, as well as trainees and students of the profession.
1. Ensure realistic quantitative estimates of cost, scheduling, personnel, quality and outcomes on any project on which they work or propose to work and provide an uncertainty assessment of these estimates.
2. These Principles should influence software engineers to consider broadly who is affected by their work; to examine if they and their colleagues are treating other human beings with due respect; to consider how the public, if reasonably well informed, would view their decisions; to analyze how the least empowered will be affected by their decisions; and to consider whether their acts would be judged worthy of the ideal professional working as a software engineer.
3. Ensure adequate documentation, including significant problems discovered and solutions adopted, for any project on which they work.
4. Accept no outside work detrimental to the work they perform for their primary employer.
5. Improve their understanding of the software and related documents on which they work and of the environment in which they will be used.
6. s humanity, in special care owed to people affected by the work of software engineers, and the unique elements of the practice of software engineering.
7. Work to develop software and related documents that respect the privacy of those who will be affected by that software.
8. Ensure that they are qualified for any project on which they work or propose to work by an appropriate combination of education and training, and experience.
9. Keep private any confidential information gained in their professional work, where such confidentiality is consistent with the public interest and consistent with the law.
10. Ensure realistic quantitative estimates of cost, scheduling, personnel, quality and outcomes on any project on which they work or propose to work and provide an uncertainty assessment of these estimates.
1. Ensure that software engineers are informed of standards before being held to them.
2. In particular, software engineers shall continually endeavor to:Further their knowledge of developments in the analysis, specification, design, development, maintenance and testing of software and related documents, together with the management of the development process.
3. Principle 2: CLIENT AND EMPLOYERSoftware engineers shall act in a manner that is in the best interests of their client and employer, consistent with the public interest.
4. These Principles should influence software engineers to consider broadly who is affected by their work; to examine if they and their colleagues are treating other human beings with due respect; to consider how the public, if reasonably well informed, would view their decisions; to analyze how the least empowered will be affected by their decisions; and to consider whether their acts would be judged worthy of the ideal professional working as a software engineer.
5. s humanity, in special care owed to people affected by the work of software engineers, and the unique elements of the practice of software engineering.
6. Principle 3: PRODUCTSoftware engineers shall ensure that their products and related modifications meet the highest professional standards possible.
7. Principle 8: SELFSoftware engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
8. Principle 6: PROFESSIONSoftware engineers shall advance the integrity and reputation of the profession consistent with the public interest.
9. Principle 4: JUDGMENTSoftware engineers shall maintain integrity and independence in their professional judgment.
10. To ensure, as much as possible, that their efforts will be used for good, software engineers must commit themselves to making software engineering a beneficial and respected profession.
1. Provide for due process in hearing charges of violation of an employer's policy or of this Code.
2. Express concerns to the people involved when significant violations of this Code are detected unless this is impossible, counter-productive, or dangerous.
3. Improve their knowledge of this Code, its interpretation, and its application to their work.
4. As this Code expresses the consensus of the profession on ethical issues, it is a means to educate both the public and aspiring professionals about the ethical obligations of all software engineers.
5. The Code is not a simple ethical algorithm that generates ethical decisions.
6. Software Engineering Code of Ethics and Professional Practice (Full Version)PREAMBLEComputers have a central and growing role in commerce, industry, government, medicine, education, entertainment and society at large.
7. The dynamic and demanding context of software engineering requires a code that is adaptable and relevant to new situations as they occur.
8. Support, as members of a profession, other software engineers striving to follow this Code.
9. These situations require the software engineer to use ethical judgment to act in a manner which is most consistent with the spirit of the Code of Ethics and Professional Practice, given the circumstances.
10. In all these judgments concern for the health, safety and welfare of the public is primary; that is, the "Public Interest" is central to this Code.
1. In particular, software engineers shall, as appropriate:Help develop an organizational environment favorable to acting ethically.
2. The Code helps to define those actions that are ethically improper to request of a software engineer or teams of software engineers.
3. Principle 5: MANAGEMENTSoftware engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance .
4. These situations require the software engineer to use ethical judgment to act in a manner which is most consistent with the spirit of the Code of Ethics and Professional Practice, given the circumstances.
5. Work to follow professional standards, when available, that are most appropriate for the task at hand, departing from these only when ethically or technically justified.
6. Promote no interest adverse to their employer or client, unless a higher ethical concern is being compromised; in that case, inform the employer or another appropriate authority of the ethical concern.
7. Not punish anyone for expressing ethical concerns about a project.
8. The Code provides an ethical foundation to which individuals within teams and the team as a whole can appeal.
9. Principle 8: SELFSoftware engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
10. The Code is not a simple ethical algorithm that generates ethical decisions.