Ethical Software Engineering: Proposed Kernel Theory from “Human Development”

Posted on August 12, 2010

0


Author:  Sanjay Goel, http://in.linkedin.com/in/sgoel

________________________________________

Ethical issues are becoming increasing important in the software development process.    The Software engineers’ code of ethics is well prescribed by IEEE and ACM.  Many organisations have their own prescriptions too.   However,  the awareness about this issue is insufficient.   The educational programs also often do not take it as their stated and cherished goal.

Research  literature on morality and ethics can help a great deal in enhancing software development community’s awareness and understanding about this issue.  In 1980’s, Kohlberg  proposed a six stage model of human development based on their moral reasoning.    This precise and practically applicable model can be very useful  for self evaluation of  the level of moral reasoning in handling professional ethical dilemmas wrt software developers’ work.    I persoanlly believe that this model can be an important  kernel theory in developing the personal as well as professional  practices and also the body of literature in this regard.   

With tons of software controlling almost every imporatnt service in our society, with hidden as well as identified  risks to environment, sustainability, equity, democracy, privacy, and human dignity, there is sufficient  reason to believe that  software developers’ moral reasoning should be developed to the higher levels as per this model.   If this premise is acceptable to the professional community, than  we naturally have  a strong need to review the objectives, content, and process of software developer’s educational programs in the light of  this model.   

Here is a brief summary of the stages of human development as identified in  this model:

A.      Pre-conventional level (Egocentric)  

1.    Obedience and punishment: the moral reasoning is motivated by avoiding anticipated punishment.

2.   Individualism and Reciprocity: the moral reasoning is motivated by self interest.

B.      Conventional Level (Socio-centric)  (Conservative)

3.  Interpersonal conformity: the moral reasoning is motivated by avoiding anticipated disapproval of others by ‘looking’ nice to them.

4. Social systems and “Law and order”: the moral reasoning is motivated by avoiding anticipated dishonor or institutionalized blame and desire for maintaining social order.

C.      Post-conventional (Onto-centric) (Progressive)

5.  Social Contract: the moral reasoning is motivated by concern of self-disrespect and broader social welfare.

6.   Universal ethical principles: the moral reasoning is motivated by maintaining respect and dignity of all by emphasizing human values and rights.

Keywords: Software Engineering Education, Computing Education, Computer Science Education, Engineering Education, Information Technology Education, Information Systems Education, College Education, Higher Education, Professional Education ___________________

also check

References:

1.     L. Kohlberg, The psychology of moral development: the nature and validity of moral stages, Harper & Row 1984.

2.     

3.     

4.     Computing Graduates’ Desired Competencies: Some Professional Recommendations

 

_________________________________

Keywords: Software Engineering Education, Computing Education, Computer Science Education, Engineering Education, Information Technology Education, Information Systems Education, College Education, Higher Education, Professional Education ________________________________

also check  http://in.linkedin.com/in/sgoel

 

 

 

Advertisements
Posted in: Uncategorized