indirectly, customers, and colleagues—
should always be a central concern in
professional computing. Tasks associated with requirements, design, development, testing, validation, deployment,
maintenance, end-of-life processes, and
disposal should have the public good as
an explicit criterion for quality. Computing professionals should keep this focus
no matter which methodologies or techniques they use in their practice.
3. 2 Articulate, encourage acceptance of,
and evaluate fulfillment of the social re-
sponsibilities of members of an organi-
zation or group.
Technical organizations and groups
affect the public at large, and their
leaders should accept responsibilities
to society. Organizational procedures
and attitudes oriented toward quality,
transparency, and the welfare of society will reduce harm to members of
the public and raise awareness of the
influence of technology in our lives.
Therefore, leaders should encourage
full participation in meeting social responsibilities and discourage tendencies to do otherwise.
3. 3 Manage personnel and resources to
design and build systems that enhance
the quality of working life.
Leaders are responsible for ensuring that systems enhance, not degrade, the quality of working life.
When implementing a system, leaders should consider the personal and
professional development, accessibility, physical safety, psychological
well-being, and human dignity of all
workers. Appropriate human-computer ergonomic standards should
be considered in system design and
in the workplace.
3. 4 Establish appropriate rules for
authorized uses of an organization’s
computing and communication resources and of the information they
Leaders should clearly define appropriate and inappropriate uses of organizational computing resources.
These rules should be clearly and effectively communicated to those using their computing resources. In addition, leaders should enforce those
rules, and take appropriate action
when they are violated.
3. 5 Articulate, apply, and support poli-
cies that protect the dignity of users and
others affected by computing systems
and related technologies.
Dignity is the principle that all humans
are due respect. This includes the general public’s right to autonomy in day-to-day decisions.
Designing or implementing systems that deliberately or inadvertently
violate, or tend to enable the violation
of, the dignity or autonomy of individuals or groups is ethically unacceptable. Leaders should verify that systems are designed and implemented
to protect dignity.
3. 6 Create opportunities for members
of the organization and group to learn,
respect, and be accountable for the principles, limitations, and impacts of systems.
This principle complements Principle
2. 7 on public understanding. Educational opportunities are essential to
facilitate optimal participation of all
organization or group members. Leaders should ensure that opportunities are
available to computing professionals
to help them improve their knowledge
and skills in professionalism, in the
practice of ethics, and in their technical
specialties, including experiences that
familiarize them with the consequences
and limitations of particular types of
systems. Professionals should know the
dangers of oversimplified models, the
improbability of anticipating every possible operating condition, the inevitability of software errors, the interactions of
systems and the contexts in which they
are deployed, and other issues related to
the complexity of their profession.
3. 7 Recognize when computer systems
are becoming integrated into the infrastructure of society, and adopt an appropriate standard of care for those systems
and their users.
Organizations and groups occasionally
develop systems that become an important part of the infrastructure of society.
Their leaders have a responsibility to be
good stewards of that commons. Part
of that stewardship requires that com-
puting professionals monitor the level
of integration of their systems into the
infrastructure of society. As the level of
adoption changes, there are likely to be
changes in the ethical responsibilities of
the organization. Leaders of important
infrastructure services should provide
due process with regard to access to
these services. Continual monitoring of
how society is using a product will allow
the organization to remain consistent
with their ethical obligations outlined in
the principles of the code. Where such
standards of care do not exist, there may
be a duty to develop them.
4. COMPLIANCE WITH THE CODE
A computing professional should...
4. 1 Uphold, promote, and respect the
principles of the Code.
The future of computing depends on
both technical and ethical excellence.
Computing professionals should adhere to the principles expressed in the
Code. Each ACM member should encourage and support adherence by all
computing professionals. Computing
professionals who recognize breaches
of the Code should take whatever actions are within their power to resolve
the ethical issues they recognize.
4. 2 Treat violations of the Code as incon-
sistent with membership in ACM.
If an ACM member does not follow the
Code, membership in ACM may be terminated.
Join the Discussion
The Committee on Professional Ethics
is asking you to participate in an open
discussion about this Code and suggest
ways in which it might be improved:
https://ethics.acm.org; or by direct email
Bo Brinkman ( email@example.com) is an associate
professor of computer science and software engineering
at Miami University, Oxford, OH.
Catherine Flick ( firstname.lastname@example.org) is a Senior Lecturer
in Computing and Social Responsibility at De Montfort
University, Leicester, UK.
Don Gotterbarn ( email@example.com) is chair of the
ACM Committee on Professional Ethics and Professor
Emeritus in the Department of Computing at East
Tennessee State University, Johnson City.
Keith Miller ( firstname.lastname@example.org) is the Orthwein
Endowed Professor for Lifelong Learning in the Sciences
College of Education, University of Missouri, St. Louis.
Kate Vazansky ( email@example.com) is a Technical
Program Manager at Salesforce.
Marty J. Wolf ( firstname.lastname@example.org) is a professor of
computer science at Bemidji State University, Bemidji, MN.