When was the software engineering code of ethics and professional practice written?

We’ve updated our privacy policy so that we are compliant with changing global privacy regulations and to provide you with insight into the limited ways in which we use your data.

You can read the details below. By accepting, you agree to the updated privacy policy.

Thank you!

View updated privacy policy

We've encountered a problem, please try again.

In 1999, the Institute for Electrical and Electronics Engineers, Inc. [IEEE] and the Association for Computing Machinery, Inc [ACM] published a code of 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.

The Principles are:

    1. Public: Software engineers shall act consistently with the public interest.
    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.
    3. Product: Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.
    4. Judgment: Software engineers shall maintain integrity and independence in their professional judgment.
    5. Management: Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.
    6. Profession: Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.
    7. Colleagues: Software engineers shall be fair to and supportive of their colleagues.
    8. 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.

Computers have a central and growing role in commerce, industry, government, medicine, education, entertainment and society at large. 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. In accordance with that commitment, software engineers shall adhere to the previous Code of Ethics and Professional Practice.

the place for my online diary

//www.online-diary.com/

Do you remember what you did last week? and what about how you felt? and last month? and last year?

sign up free 

In May of 1993, the Board of Governors of the IEEE-CS established a steering committee for evaluating, planning, and coordinating actions related to establishing software engineering as a profession. In that same year the ACM Council endorsed the establishment of a Commission on Software Engineering. By January of 1994, both societies formed a joint steering committee "To establish the appropriate set[s] of standards for professional practice of Software Engineering upon which industrial decisions, professional certification, and educational curricula can be based." To accomplish these tasks they made the following recommendations:

  • adopt standard definitions

  • define required body of knowledge and recommended practices

  • define ethical standards

  • define educational curricula for undergraduate, graduate[MS] and continuing education [for retraining and migration]

The steering committee decided to accomplish these tasks through the establishment of a series of task forces. Initially the task forces established were: Software Engineering Body of Knowledge and Recommended Practices; Software Engineering Ethics and Professional Practices, and Software Engineering Curriculum.

The purpose of the Software Engineering ethics and professional practices task force is to document the ethical and professional responsibilities and obligations of software engineers. This draft code of ethics was developed by a task force of the Joint IEEE Computer Society and Association for Computing Machinery Steering Committee for the Establishment of Software Engineering as a Profession and has been reviewed by the Steering Committee. The task force on Software Engineering Ethics and Professional Practices developed this code for a sub-specialization within the constituencies of both of the professional societies. In an attempt to reflect the international character of both organizations and the profession as a whole, the composition of the task force is multinational in both citizenship and in membership in professional computing organizations. The proposed draft Code of Ethics for Software Engineers [version 3] was developed by the task force and reviewed by the Steering Committee for distribution and comment. The purpose of this distribution is to solicit comments from practitioners and other interested parties.

Codes, if carefully written and properly promoted, can be powerful instruments in the drive for professionalism and in establishing safeguards for society. They do not have to be and should not be sterile, which is often the perception that people have of them. This draft code evolved after extensive study of several computing and engineering codes[1]. All of these codes try to educate and inspire the members of the professional group that adopts the code. Codes also inform the public about the responsibilities that are important to a profession. Codes instruct practitioners about the standards that society expects them to meet, and what their peers strive for and expect of each other. Codes are not meant to encourage litigation, and they are not legislation; but they do offer practical advice about issues that matter to professionals and their clients and they do inform policymakers. These concepts have been adopted in the development of this code. Based on the feedback from readers of this publication and from other sources, a final draft of the code will be developed and presented to the Steering Committee for approval.

[1] Codes referred to include: The American Association of Engineering Societies, Model Guide for Professional Conduct; Accreditation Board for Engineering Technology's, Code of Ethics for Engineers and Guidelines for the Fundamental Cannon of Ethics; the Association of Computing Machinery's Code of Ethics and Guidelines for Professional Conduct, the British Computer Society, Code of Conduct; the British Computer Society, Code of Practice; the Institute for the Certification of Computing Professionals; the Engineer's Council for Professional Development; Faith of the Engineer; the Institute of Electrical and Electronics Engineers, Code of Ethics; the National Society of Professional Engineers, Code of Ethics for Engineers, and the Project Management Institute Code of Ethics for the Project Management Profession.

Preamble

Computers now have a central and growing role in commerce, industry, government, medicine, education, entertainment, social affairs, and ordinary life. Those who contribute, by direct participation or by teaching, to the design and development of software systems have significant opportunities both to do good and to cause harm and to influence and enable others to do good or cause harm. To ensure, as much as possible, that this power will be used for good, software engineers must commit themselves to making the design and development of software a beneficial and respected profession. In accordance with that commitment, software engineers shall adhere to the following Code of Ethics.

The Code contains eight Principles related to the behavior of and decisions made by professional software engineers, be they practitioners, educators, managers and supervisors, or policymakers, as well as trainees and students of the profession. The Principles identify the various relationships in which individuals, groups, and organizations participate and the primary obligations within these relationships.

Each Principle of this code addresses three levels of ethical obligation owed by professional software engineers in each of these relationships. The first level identified is a set of ethical values, which professional software engineers share with all other human beings by virtue of their humanity. The second level obliges software engineering professionals to more challenging obligations than those required at level one. Level two obligations are required because professionals owe special care to people affected by their work. The third and deeper level comprises several obligations which derive directly from elements unique to the professional practice of software engineering. The Clauses of each Principle are illustrations of the various levels of obligation included in that relationship.

The Clauses under each Principle consist of three different types of statement corresponding to each level. Level one: Aspire [to be human]; statements of aspiration provide vision and objectives and are intended to direct professional behavior. These directives require significant ethical judgment. Level Two: Expect [to be professional]; statements of expectation express the obligations of all professionals and professional attitudes. Again they do not describe the specific behavior details but they clearly indicate professional responsibilities in computing. Level Three: Demand [to use good practices]; statements of demand assert more specific behavioral responsibilities within software engineering which are more closely related to the current state of the art. The range of statements is from the more general aspirational statement to specific measurable requirements.

Although all levels of professional obligation are recognized, the Code is not intended to be all inclusive, nor is it intended that its individual parts be used in isolation to justify errors of omission or commission. The list of Principles and Clauses is not exhaustive, and should not be read as separating the acceptable from the unacceptable in professional conduct in all practical situations. The Code is not a simple ethical algorithm which generates ethical decisions. In some situations standards may conflict with each other or with standards from other sources. 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, given the circumstances.

These ethical tensions can best be addressed by thoughtful consideration of fundamental principles, rather than reliance on detailed regulations. These Principles should influence you to consider broadly who is affected by your work; to examine if you and your colleagues are treating other human beings with due respect; to speculate on how the public would view your decision if they were reasonably well informed; to analyze how the least empowered will be affected by your decision; and to consider whether your acts would be judged worthy of the ideal professional working as a software engineer. Since this code represents a consensus of those engaged in the profession, one should take into account what is likely to be judged as the most ethical way to act in the circumstances by informed, respected, and experienced peers in possession of all the facts and only depart from such a course for profound reasons, backed with careful judgment.

The dynamic and demanding context of software engineering requires a code that is adaptable and relevant to new situations as they occur. However, even in this generality, the Code provides support for the software engineer who needs to take positive action by documenting the ethical stance of the profession. It provides an ethical foundation to which individuals within teams and the team as a whole can appeal. The Code also helps to define those things which are ethically improper to request of a software engineer.

The Code has an educational function, stating what is required of anyone wishing to join or continue in the software engineering community. Because it expresses the consensus of the profession on ethical issues, it can be used as a guide to decision making and as a means to educate both the public and aspiring professionals about the professional obligation of all software engineers.

Principles

Principle 1: PRODUCT

Software engineers shall, insofar as possible, ensure that the software on which they work is useful and of acceptable quality to the public, the employer, the client, and the user; completed on time and at reasonable cost; and free of error. In particular, software engineers shall, as appropriate:

1.01. Ensure that specifications for software on which they work have been well documented, satisfy the user's requirements, and have the client's approval.

1.02. Strive to fully understand the specifications for software on which they work.

1.03. Ensure that they are qualified, by an appropriate combination of education and experience, for any project on which they work or propose to work.

1.04. Ensure proper and achievable goals and objectives for any project on which they work or propose.

1.05. Ensure an appropriate methodology for any project on which they work or propose to work.

1.06. Ensure good management for any project on which they work, including effective procedures for promotion of quality and reduction of risk.

1.07. Ensure realistic estimates of cost, scheduling, personnel, and outcome on any project on which they work or propose to work and provide a risk assessment of these estimates.

1.08. Ensure adequate documentation on any project on which they work, including a log of problems discovered and solutions adopted.

1.09. Ensure adequate testing, debugging, and review of software and related documents on which they work.

1.10. Work to develop software and related documents that respect the privacy of those who will be subjected to that software.

1.11. Be careful to use only accurate data derived from legal sources and use only in ways properly authorized.

1.12. Whenever appropriate, delete outdated or flawed data.

1.13. Work to identify, define, and address ethical, economic, cultural, legal, and environmental issues related to any work project.

1.14. Promote maximum quality and minimum cost to the employer, the client, the user, and the public. Make any tradeoffs clear to all parties concerned.

1.15. Work to follow industry standards that are most appropriate for the task at hand, departing from these only when technically justified.

Principle 2: PUBLIC

Software engineers shall, in their professional role, act only in ways consistent with the public safety, health, and welfare. In particular, software engineers shall:

2.01. Disclose to appropriate persons or authorities any actual or potential danger to the user, a third party, or the environment, that they reasonably believe to be associated with the software or related documents for which they are responsible, or merely know about.

2.02. Approve software only if they have a well-founded belief that it is safe, meets specifications, has passed appropriate tests, and does not diminish quality of life or harm the environment.

2.03. Affix their signature only to documents prepared under their supervision or within their areas of competence and with which they are in agreement.

2.04. Cooperate in efforts to address matters of grave public concern caused by software or related documents.

2.05. Endeavor to produce software that respects diversity. Issues of language, different abilities, physical access, mental access, economic advantage, and allocation of resources should all be considered.

2.06. Be fair and truthful in all statements, particularly public ones, concerning software or related documents.

2.07. Not put self-interest, the interest of an employer, the interest of a client, or the interest of the user ahead of the public's interest.

2.08. Donate professional skills to good causes when opportunities arise and contribute to public education with respect to the discipline.

2.09. Accept full responsibility for their own work.

Principle 3: JUDGMENT

Software engineers shall, insofar as possible and consistent with Principle 2, protect both the independence of their professional judgment and their reputation for such judgment. In particular, software engineers shall, as appropriate:

3.01. Maintain professional objectivity with respect to any software or related documents they are asked to evaluate.

3.02. Affix their signature only to documents prepared under their supervision and within their areas of competence.

3.03. Reject bribery.

3.04. Accept no payback, kickback, or other payment from a third party to a contract, except with the knowledge and consent of all parties to the contract.

3.05. Accept payment from only one party for any particular project, or for services specific to that project, except when the circumstances have been fully disclosed to parties concerned and they have given their informed consent.

3.06. Disclose to all concerned parties those conflicts of interest that cannot reasonably be avoided or escaped and aspire to resolve them.

3.07. Refuse to participate in any decision of a governmental or professional body, as a member or advisor, concerned with software, or related documents, in which they, their employer, or their client have a financial interest.

3.08. Temper all technical judgments by the need to support and maintain human values.

Principle 4: CLIENT AND EMPLOYER

Software engineers shall, consistent with the public health, safety, and welfare, always act in professional matters as faithful agents and trustees of their client or employer. In particular, software engineers shall:

4.01. Provide service only in areas of their competence.

4.02. Ensure that any document upon which they rely has been approved by someone authorized to approve it.

4.03. Use the property of a client or employer only in ways properly authorized, and with the client's or employer's knowledge and consent.

4.04. Not knowingly use illegally obtained or retained software.

4.05. Keep as confidential information gained in their professional work that is not in the public domain, where such confidentiality is not inconsistent with matters of public concern.

4.06. Identify, document, and report to the employer or the client any problems or matters of social concern in the software or related documents on which they work or of which they are aware.

4.07. Inform the client or the employer promptly if, in their opinion, a project is likely to fail, to prove too expensive, to violate intellectual property legislationin particular copyright, patent, and trademarksor otherwise be problematic.

4.08. Accept no outside work detrimental to the work they perform for their primary employer.

4.09. Represent no interest adverse to their employer's without the employer's specific consent, unless a higher ethical concern is being compromised; then in that case the employer or another appropriate authority should be informed of the engineer's ethical concern.

Principle 5: MANAGEMENT

A software engineer in a management or leadership capacity shall act fairly and shall enable and encourage those who they lead to meet their own and collective obligations, including those under this code. In particular, those software engineers in leadership roles shall as appropriate:

5.01. Ensure that employees are informed of standards before being held to them.

5.02. Assure employees know the employer's policies and procedures for protecting passwords, files, and other confidential information.

5.03. Assign work only after taking into account appropriate contributions of education and experience tempered with a desire to further that education and experience.

5.04. Provide for due process in hearing charges of violation of an employer's policy or of this code.

5.05. Develop a fair agreement concerning ownership of any processes, research, writing, or other intellectual property to which an employee has contributed.

5.06. Attract employees only by full and accurate description of the conditions of employment.

5.07. Offer only fair and just remuneration.

5.08. Not unjustly prevent a subordinate from taking a better position for which the subordinate is suitably qualified.

5.09. Not ask an employee to do anything inconsistent with this code.

Principle 6: PROFESSION

Software engineers shall, in all professional matters, advance both the integrity and reputation of their profession as is consistent with public health, safety, and welfare. In particular, software engineers shall, insofar as possible:

6.01. Associate only with reputable businesses and organizations.

6.02. Ensure that clients, employers, and supervisors know of the software engineer's commitment to this code of ethics, and their own responsibility under it.

6.03. Support those who similarly do as this code requires.

6.04. Help develop an organizational environment favorable to acting ethically.

6.05. Report anything reasonably believed to be a violation of this code to appropriate authorities.

6.06. Take responsibility for detecting, correcting, and reporting errors in software and associated documents on which they work.

6.07. Only accept remuneration appropriate to professional qualifications or experience.

6.08. 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 deceptive, misleading, or doubtful.

6.09. Not promote their own interest at the expense of the profession.

6.10. Obey all laws governing their work, insofar as such obedience is consistent with the public health, safety, and welfare.

6.11. Exercise professional responsibility to society by constructively serving in civic affairs.

6.12. Promote public knowledge of software engineering.

6.13. Share useful software-related knowledge, inventions, or discoveries with the profession, for example, by presenting papers at professional meetings, by publishing articles in the technical press, and by serving on the profession's standard-setting bodies.

Principle 7: COLLEAGUES

Software engineers shall treat all those with whom they work fairly and take positive steps to support these collegial activities. In particular, software engineers shall, as appropriate:

7.01. Assist colleagues in professional development.

7.02. Review the work of other software engineers, which is not in the public domain, only with their prior knowledge, provided this is consistent with public health, safety, and welfare.

7.03. Credit fully the work of others.

7.04. Review the work of others in an objective, candid, and properly documented way.

7.05. Give a fair hearing to the opinion, concern, or complaint of a colleague.

7.06. Assist colleagues in being fully aware of current standard work practices including policies and procedures for protecting passwords, files, security measures in general, and other confidential information.

7.07. Not interfere in the professional career progression of any colleague.

7.08. Not undermine another software engineer's job prospects for one's own personal gain.

7.09. In situations outside of their own areas of competence, call upon the opinions of other professionals who have competence in that area.

Principle 8: SELF

Software engineers shall, throughout their career, strive to enhance their own ability to practice their profession as it should be practiced. In particular, software engineers shall continually endeavor to:

8.01. Further their knowledge of developments in the analysis, design, development, and testing of software and related documents, together with the management of the development process.

8.02. Improve their ability to create safe, reliable, and useful quality software at reasonable cost and within a reasonable time.

8.03. Improve their ability to write accurate, informative, and literate documents in support of software on which they work.

8.04. Improve their understanding of the software and related documents on which they work and of the environment in which they will be used.

8.05. Improve their knowledge of the laws governing the software and related documents on which they work.

8.06. Improve their knowledge of this code, its interpretation, and its application to their work.

8.07. Refrain from requiring or influencing others to undertake any action which involves a breach of this code.

8.08. Consider violations of this code inconsistent with being a professional software engineer.

Conclusion

This draft Code was developed by the IEEE-CS/ACM Joint Task Force on Software Engineering Ethics and Professional Practices: Chair: Donald Gotterbarn. Executive Committee: Keith Miller and Simon Rogerson. Members: Peter Barnes, Steve Barber, Ilene Burnstein, Amr El-Kadi, N. Ben Fairweather, Milton Fulghum, N. Jayaram, Tom Jewett, Maj. Mark Kanko, Ernie Kallman, Duncan Langford, Joyce Currie Little, Ed Mechler, Manuel J. Norman, Douglas Phillips, Peter Ron Prinzivalli, Patrick Sullivan, John Weckert, S. Weisband, and Laurie Honour Werth.

Please send comments on this draft of the Preamble and the Code to Donald Gotterbarn, Computer and Information Sciences, East Tennessee State University, Box 70711, Johnson City, TN 37614-0711; .

Send general comments and questions about the IEEE Computer Society's Web site to .
This site and all contents [unless otherwise noted] are Copyright � 2005, IEEE, Inc. All rights reserved.

Who developed the software engineering code of ethics?

8.09. Recognize that personal violations of this Code are inconsistent with being a professional software engineer. This Code was developed by the ACM/IEEE-CS joint task force on Software Engineering Ethics and Professional Practices [SEEPP]:

In which year code of ethics for engineers were approved by IEEE?

The IEEE Code of Ethics, adopted in 1990 and revised in 2006, necessarily has much in common with those of other technical societies, but it is unique in overall content, organization, and structure.

What is ACM IEEE code of ethics?

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. This principle includes: Continuing your own professional development. Continually improve your ability in all aspects of software development.

What is the purpose of IEEE code of ethics?

To uphold the highest standards of integrity, responsible behavior, and ethical conduct in professional activities.

Chủ Đề