1. 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.
2. Ensure that specifications for software on which they work have been well documented, satisfy the users’
3. Not knowingly use software that is obtained or retained either illegally or unethically.
4. In particular, software engineers shall, as appropriate:Help develop an organizational environment favorable to acting ethically.
5. 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.
6. Maintain professional objectivity with respect to any software or related documents they are asked to evaluate.
7. Ensure that software engineers are informed of standards before being held to them.
8. In particular, software engineers shall, as appropriate:Temper all technical judgments by the need to support and maintain human values.
9. In particular, software engineers shall, as appropriate:Encourage colleagues to adhere to this Code.
10. 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.
1. Accept no outside work detrimental to the work they perform for their primary employer.
2. 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.
3. Ensure proper and achievable goals and objectives for any project on which they work or propose.
4. Ensure adequate testing, debugging, and review of software and related documents on which they work.
5. 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.
6. Assign work only after taking into account appropriate contributions of education and experience tempered with a desire to further that education and experience.
7. 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.
8. In particular, software engineers shall, as appropriate:Accept full responsibility for their own work.
9. Assist colleagues in being fully aware of current standard work practices including policies and procedures for protecting passwords, files and other confidential information, and security measures in general.
10. Strive to fully understand the specifications for software on which they work.
1. 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.
2. Principle 3: PRODUCTSoftware engineers shall ensure that their products and related modifications meet the highest professional standards possible.
3. In particular, software engineers shall, as appropriate:Accept full responsibility for their own work.
4. In particular, software engineers shall, as appropriate:Strive for high quality, acceptable cost and a reasonable schedule, ensuring significant tradeoffs are clear to and accepted by the employer and the client, and are available for consideration by the user and the public.
5. However, even in this generality, the Code provides support for software engineers and managers of software engineers who need to take positive action in a specific case by documenting the ethical stance of the profession.
6. Principle 7: COLLEAGUESSoftware engineers shall be fair to and supportive of their colleagues.
7. In particular, software engineers shall, as appropriate:Provide service in their areas of competence, being honest and forthright about any limitations of their experience and education.
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. In accordance with that commitment, software engineers shall adhere to the following Code of Ethics and Professional Practice.
1. The dynamic and demanding context of software engineering requires a code that is adaptable and relevant to new situations as they occur.
2. In accordance with that commitment, software engineers shall adhere to the following Code of Ethics and Professional Practice.
3. Ensure that clients, employers, and supervisors know of the software engineer's commitment to this Code of ethics, and the subsequent ramifications of such commitment.
4. The Code is not simply for adjudicating the nature of questionable acts; it also has an important educational function.
5. Express concerns to the people involved when significant violations of this Code are detected unless this is impossible, counter-productive, or dangerous.
6. The Code helps to define those actions that are ethically improper to request of a software engineer or teams of software engineers.
7. Recognize that violations of this Code are inconsistent with being a professional software engineer.
8. The Code is not a simple ethical algorithm that generates ethical decisions.
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. Not ask a software engineer to do anything inconsistent with this Code.
1. 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.
2. However, even in this generality, the Code provides support for software engineers and managers of software engineers who need to take positive action in a specific case by documenting the ethical stance of the profession.
3. The Principles identify the ethically responsible relationships in which individuals, groups, and organizations participate and the primary obligations within these relationships.
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. 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.
6. In particular, software engineers shall, as appropriate:Help develop an organizational environment favorable to acting ethically.
7. Identify, define and address ethical, economic, cultural, legal and environmental issues related to work projects.
8. 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.
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. Not punish anyone for expressing ethical concerns about a project.