Strengths and Weaknesses of Professional Codes

advertisement
CSC450
Software Engineering
Ethics
Devon M. Simmonds
University of North Carolina, Wilmington
1
Professional Ethics

What is Professional Ethics in CS?


a field of applied ethics concerned with
moral issues that impact computer
professionals.
Why SE ethics when the same ethical
rules involving honesty, fairness, and so
forth should apply to all individuals. ?
Separate Category of
Professional Ethics (continued)



Some argue that some moral issues affecting
professionals are sufficiently distinct and
specialized to warrant a separate field of
study.
Others argue that professionals can have
special moral obligations that exceed those of
ordinary individuals.
To grasp the arguments for this view, it is
useful first to understand what is meant by
the terms profession and professional.
What is a Profession?




Harris, Pritchard, and Rabins (2004) note that the
term “profession” has evolved from a concept that
was once associated with people professing a
religious or monastic life to one that now has a more
secular meaning.
“Profession” was used to describe a person who
made a public promise to enter a “distinct way of life”
with allegiance to “high moral ideals.”
Later, the term came to refer to anyone who
“professed to be duly qualified.”
“Profession” has now come to mean an “occupation
in which one professes to be skilled in and to follow.”
What is a Profession (continued)?

According to Allan Firmage (1991), a profession can
be understood in terms of
the attributes and requirements of a professional practice,
such as "calling in which special knowledge and skill are
used in...the service of mankind."






Ernest Greenwood (1991) believes that professions
are occupational fields distinguishable in terms of five
characteristics:
(i) systematic theory,
(ii) authority,
(iii) community sanction,
(iv) ethical codes,
(v) a culture.
Who is a Computer
Professional?



A computer professional might be interpreted
to mean anyone who is employed in the
computer, information-technology, or
information/communications fields.
Or a computer professional might be thought
of in more narrow terms, in which case only
software engineers would be included.
There are various gradients in between the
two ends of this spectrum.
Safety-Critical Software


Gotterbarn suggests that the roles and
responsibilities involved in the
development of safety-critical systems
is a differentiating factor.
A "safety-critical system" is often used
to refer to computer systems that can
have a direct life-threatening impact.
Safety-Critical Software
(Continued)

Examples of safety-critical software
systems and applications typically
include:




aircraft and air traffic control systems
mass transportation systems
nuclear reactors missile systems
medical treatment systems.
Additional Safety-Critical
Systems

Kevin Bowyer (2002) extends the range
of safety-critical applications to include
software used in the:



design of bridges and buildings;
election of water disposal sites;
development of analytical models for
medical treatment.
Professional Codes of Ethics

Many professions have established
professional societies, which in turn
have adopted codes of conduct.



The medical profession established the
AMA (American Medical Association),
The legal profession established the ABA
(American Bar Association).
Both associations have formal codes of
ethics/conduct for their members.
Professional Codes for
Computer Societies

The computing profession also has
professional societies, which include:





The Association for Computing (ACM);
The Australian Computer Society (ACS);
The British Computer Society;
The Institute for Electrical and Electronics
Engineers (IEEE);
IEEE Computer Society (IEEE-CS).
Purpose of Professional Codes


Professional codes of ethics are often
designed to motivate members of an
association to behave in certain ways.
Four primary functions of codes are to:




inspire,
guide,
educate,
discipline the members.
In Defense of Professional
Codes

Gotterbarn argues that we need to
distinguish among three aspects of
professional codes, as:



codes of ethics;
codes of conduct;
codes of practice.
In Defense of Professional
Codes (Continued)



Codes of ethics as "aspirational," because
they often serve as mission statements for
the profession and thus can provide vision
and objectives.
Codes of conduct are oriented more toward
the professional and the professional's
attitude and behavior.
Codes of practice relate to operational
activities within a profession.
Should Computer Professionals
Be Licensed or Certified?


Don Gotterbarn (2000) has argued in favor of
certification for software engineers?
The ACM has not endorsed any proposals for
licensing software engineers.


ACM points out, a software engineering license could be
interpreted as an authoritative statement that the licensed
engineer is capable of producing software systems of
“consistent reliability, dependability, and usability.”
According to the ACM:

the current “state of knowledge and practice” in the field of
software engineering is “too immature” to give assurances
of this type (White and Simons, 2002).
Licensing and Certification
(Continued)

John Knight and Nancy Leveson (2002) sum
up the ACM’s position on the licensing of
software engineers:
Licensing software engineers who work on safety-critical
systems would be neither practical nor effective in achieving
the goal of public interest, and it could even have serious
negative ramifications. The real issue, however, is not
licensing per se but determining how best to protect the
public without unduly affecting engineering progress, the
economy, the engineering and computing professions, or
individual rights.
Licensing and Certification
(Continued)


Knight and Leveson believe that approaches
other than licensing and certification might be
more effective and that those approaches
need to be evaluated.
The state of Texas requires software
engineers to be certified, and other states are
currently considering certification or licensing
requirements for software engineers.
Do Computer Professionals Have Special
obligations of Loyalty to Their Employers?



They have to balance their obligation of
loyalty owed to an employer against other
obligations of loyalty they also may have?
Loyalty is not something that an employee
must give exclusively or blindly to one’s
employer.
Loyalty should also be seen as an obligation
that individuals have to society as a whole,
especially where safety and health issues are
at stake.
Divided Loyalties


Divided loyalties can result in serious
conflicts for employees.
In certain cases, the moral dilemmas
they generate are so profound that an
employee must determine whether to
"blow the whistle."
Whistle-blowing


What, exactly, is whistle-blowing?
John Rowan and Samuel Zinaich (2003)
note that the expression “blowing the
whistle” comes from the effort by
individuals to “get the public’s
attention.”
Whistle-blowing (Continued)


Whistle-blowing occurs when one or more
employees go outside the organization (e.g.,
to the press) to shed some light on
misconduct within the organization.
In the context of engineering, whistle-blowing
incidents often occur in attempts to alert the
public to a potentially unsafe product.
Whistle-blowing (Continued)

Whistle-blowing incidents can occur because
of either:


(a) overt wrongdoing (where an employee informs
the public about the immoral or illegal behavior of
an employee or supervisor);
(b) negligence (e.g., where one or more
individuals in an organization have failed to act).
When an Engineer is
Permitted to Blow the Whistle

One is permitted to blow the whistle
when the:



1) harm that will be done by the product to the public is
serious and considerable.
2) engineers (or employees) have made their concerns
known to their superiors.
3) engineers (or employees) have received no satisfaction
from their immediate supervisors and they have exhausted
the channels available within the corporation, including
going to the board of directors.
When an Engineer is Required
to Blow the Whistle

Two additional conditions are needed
for requiring an engineer to blow the
whistle:


4) The engineer has documented evidence that would
convince a reasonable, impartial observer that his/her view
of the situation is correct and the company policy wrong.
5) There is strong evidence that making the information
public will in fact prevent the threatened serious harm.
The End
Qu es
ti ons?
______________________
Devon M. Simmonds
Computer Science Department
University of North Carolina Wilmington
_____________________________________________________________
25
Download