Introduction Name : Zarinah Mohd Kasirun E-mail : [email protected]@um.edu.my Research...

32

Transcript of Introduction Name : Zarinah Mohd Kasirun E-mail : [email protected]@um.edu.my Research...

Page 1: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.
Page 2: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Introduction

Name : Zarinah Mohd Kasirun E-mail : [email protected] Research interest: requirements

engineering, computer-supported collaborative learning (CSCL),

Page 3: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Course syllabus

Pls refer to the word doc Assessment

Coursework 70%Mid-sem 10%Final exam 20%

Page 4: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Week 1

Lecture for week 1 Discussion Article review

Page 5: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

The engineering profession What makes a profession Structure of the engineering profession Development of the engineering profession Professional qualifications The engineering profession in the united

state Ethics and software engineering Professional code of conduct Applying codes of conduct

Page 6: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

a professional engineer needs to be aware of a range of issues much wider than the mere technical knowledge necessary to practice the chosen engineering discipline.

The Engineering Council, for example, requires that the formation of a professional engineer should include, Technical decision making and its commercial and economic

implementation;... knowledge of government legislation affecting work, e.g.

safety, health, environmental requirements; an understanding of the principles of management and industrial relations;

some knowledge of trade unions and their organization; an understanding of the engineer's responsibility to the profession, to the community and to the environment.

Page 7: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Terms like profession, professional and professionalism carry a whole variety of meanings; in some contexts they are simply descriptive (e.g. a professional writer), in some they are commendatory (a professional piece of work), and in some they are pejorative (a professional foul).

Page 8: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

The Software Engineering Profession Software engineering (SE) as a discipline and profession is

relatively young, some even say “immature”. In 1996, Ford and Gibbs [6] listed designated eight

infrastructure components that can be used to evaluate a mature profession:

a professional society initial professional education skills development professional development accreditation certification licensing a code of ethics

In the following slides, we will discuss these elements in relation to the current state of the software engineering profession.

Page 9: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Professional Societies There is no professional society devoted exclusively to software

engineering, but there are two societies which provide mature support for the software engineering profession: Association for Computing Machinery (ACM) (http://www.acm.org/)

Founded in 1947, ACM has 75, 000 members and has the objective of advancing the skills of computing professionals and students worldwide.

The ACM has 34 “special interest groups” (SIGS). The Special Interest Group on Software Engineering (SIGSOFT) focuses on issues relating to all aspects of software development and maintenance. IEEE Computer Society (IEEE-CS) (http://computer.org/)

Founded in 1946, with nearly 100, 000 members, it is the largest of the 36 societies of the Institute of Electrical and Electronics Engineers (IEEE).

The Computer Society's vision is to be the leading provider of technical information and services to the world's computing professionals

Page 10: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Certification and Licensing - 1 Certification is a voluntary process administered by a

profession. Currently there are many certification programs for various

computing technologies. Many are brand name certifications (e.g. Cisco, Java/Sun, Microsoft, Novell, etc.) and do not deal with the software engineering profession directly.

The IEEE-CS offers a certification titled Certified Software Development Professional (CSDP) [7]. The CSDP has the following components: At the time of application the candidate holds a baccalaureate or

equivalent university degree and has a minimum of 9,000 hours of software engineering experience within at least six (6) of the eleven (11) SE knowledge areas (the ten SWEBOK areas [5] and Professionalism and Engineering Economics).

Candidates are required to subscribe to the Software Engineering Code of Ethics and Professional Practice [3]

Candidates must pass an exam demonstrating mastery of the knowledge areas

Page 11: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Certification and Licensing - 2 Licensing is a mandatory process

administered by a governmental authority. In the U.S. licensing is administered at the

state level. Only about 18% of U.S. engineers (civil,

electrical, mechanical , etc.) are registered. Texas is currently the only state to license

software engineers. In recent years, no topic has stirred more

controversy and debate than certification and licensing of software engineers [4, 8].This seems to signal that the nature and maturity of

software engineering is not yet stable.

Page 12: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

SE Education & Training - 1 Ford and Gibbs list four elements related to SE education: initial

professional education, skills development, professional development and accreditation.

Initial Professional Education There are hundreds of computer programs (computer engineering,

computer science, and information systems) in the U.S. that include significant material activities devoted to the software engineering education.

There over twenty undergraduate degree programs in software engineering in the U.S.

The ACM and the IEEE-CS have developed curriculum guidance for software engineering education [2, 7].

Page 13: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

SE Education & Training - 2 Skills Development and Professional Development

Because of the dynamic nature of computing methods and technology, industry and government devote significant resources to the training of software engineers. Web searches for industrial training in software development demonstrates the magnitude of the skills development element.

The ACM and IEEE-CS promote and support professional development through publications, conferences, workshop and tutorials.

Page 14: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

AccreditationThe Accreditation Board for Engineering and

Technology (ABET) has established accreditation criteria for software engineering programs.

The SE program specific criteria reads as follows: The curriculum must provide both breadth and

depth across the range of engineering and computer science topics implied by the title and objectives of the program.

Page 15: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

The program must demonstrate that graduates have: the ability to analyze, design, verify, validate,

implement, apply, and maintain software systems; the ability to appropriately apply discrete

mathematics, probability and statistics, and relevant topics in computer science and supporting disciplines to complex software systems; and

the ability to work in one or more significant application domains.

The program shall demonstrate that those faculty teaching core software engineering material have practical software engineering experience

Page 16: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Cases (Article reading) Therac-25 accidents in which very

subtle programming errors caused a radiation therapy machine to kill 3 patients and injure 3 others. Leveson and Turner.

Confirm fiasco in which an integrated airline, hotel and rental car reservation system was never completed because of incompetence and one might argue the unethical behavior of project leaders.

Page 17: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Case (Article reading)

According to Charette many companies do not engage in any form of risk management

Page 18: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Ethics and Professional Conduct Why should we be interested ethics and professional

conduct? Here is one answer:

Today the quality of software produced by software engineers is critical to society.

The success of many, if not most, human endeavors is dependent on high-quality software (e.g. applications used in financial, legal, library, health, personnel, and transportation systems)

Lives depend on the safety and reliability of many software systems (e.g. control of aircraft, medical devices, and nuclear power stations) In additional to technical capability, the quality of software

products depend on the ethics and professional conduct of the engineers that developer develop them.

Page 19: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Logical malleabilityComputers are thus used as tools for

representation, modeling and simulation and they thereby have become a materialization of our conceptual knowledge of the world.

The ethical consequences of the fact that the computer is an artifact defining our contemporary culture are many.

A specific technical expertise is necessary to be able to understand the problems within the field.

Page 20: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Speed and the simplicity of handlingSpeed and the simplicity of handling large amounts

of data are connected with risks for unintentional transfer of incorrect data, as well as other ethical problems such as privacy and security intrusion because of unintended or uncontrolled movement of data.

Storage of huge amounts of data Uncertainty of identity Global character Openness and availability Power mediation

Page 21: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Context of professional ethics

Private

Clients consumers

Industry (other firms)

engineercolleague

managers

Profession (societies)

Engineering firm

Ethical problems arise when there differences of judgment and expectation about what constitutes the true state of affairs and a proper course of action.

Page 22: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

SE Code of Ethics and Professional Practice Computers have a central and growing role in

commerce, industry, government, medicine, education, entertainment and society at large.

Software engineers are those who contribute by direct participation or by teaching, to the analysis, specification, design, development, certification, maintenance and testing of software systems.

Because of their roles in developing software systems, software engineers have significant opportunities to do good or cause harm, to enable others to do good or cause harm, or to influence others to do good or cause harm.

Page 23: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

The Code contains eight Principles related to the behavior of and decisions made by professional software engineers, includingpractitioners, educators, managers, supervisors and

policy makers, as well as trainees and students of the profession.

The Principles identify the ethically responsible relationships in which individuals, groups, and organizations participate and the primary obligations within these relationships.

The Clauses of each Principle are illustrations of some of the obligations included in these relationships.

Page 24: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Possible functions of code of ethics It can serve as a collective of recognition by

members of profession of its responsibilities. It can help create an environment in which ethical

behaviour is the norm. It can serve as a guide or reminder in specific

situations. The process of developing and modifying a code of

ethics can be valuable for the profession. A code can serve as an educational tool, as a focal

discussion in classes and professional meetings A code can indicate to others that professional is

seriously concerned with responsible, professional conduct.

Page 25: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

SE Code of Ethics and Professional Practice Many professions (engineering, law, medicine) provide a code of

conduct that defines and motivates professional and ethical behavior by its members.

In 1999, an SE Code was developed by a ACM/IEEE-CS Task Force

The code addresses eight areas of concern. The following is short version of the SE Code: PUBLIC - Software engineers shall act consistently with the public

interest. 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.

PRODUCT - Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.

JUDGMENT - Software engineers shall maintain integrity and independence in their professional judgment.

Page 26: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

SE Code of Ethics and Professional Practice

MANAGEMENT - Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.

PROFESSION - Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.

COLLEAGUES - Software engineers shall be fair to and supportive of their colleagues.

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.

Page 27: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Why is the study of professional ethics needed? To increase the ability of students as

future engineers and managers to first recognize and then responsibly confront moral issues raised by technological activity.

The goal to develop moral autonomy

Page 28: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Conclusion Software engineering is “maturing”

profession. In the coming years the software

engineering profession will have to deal with the issues ofproviding appropriate initial and life-long

professional education to its membersproviding a framework to ensure that its

members act in a professional and ethical manner

Page 29: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

References1. Accreditation Board for Engineering and Technology – home page (http://www.abet.org/)

2. Association of Computing Machinery – home page (http://www.acm.org/)

3. ACM/IEEE-CS Joint Task Force on Software Engineering Ethics and Professional Practices, Software Engineering Code of Ethics and Professional Practice , Version 5.2, (http://www.acm.org/serving/se/code.htm)

4. Boehm, B., et. al., Position Papers on Software Engineering & Licensing,

(http://www.acm.org/serving/se_policy/papers.html)

5. Bourque P. and R. Dupuis, eds. Guide to the Software Engineering Body of Knowledge, IEEE CS Press, Los Alamitos, CA., 2001. (www.swebok.org)

6. Ford, Gary and Gibbs, Norman E., A Mature Profession of Software Engineering, CMU/SEI- 96-TR-004, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, 1996.

(http://www.sei.cmu.edu/pub/documents/96.reports/pdf/tr004.96.pdf)

7. IEEE Computer Society - home page (http://computer.org/)

8. Knight, J. , et. al., On Licensing Of Software Engineers Working On Safety-critical Software, Final Report of an ACM Task Force, August, 2001 (http://www.acm.org/serving/se_policy/safety_critical.pdf)

9. Mead, N., “Issues in Licensing and Certification of Software Engineers”, Software Engineering Institute, Carnegie Mellon University, March 2002 (http://www.sei.cmu.edu/staff/nrm/license.html

Page 30: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Discussion

Page 31: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

THE CODE OF ETHICS FOR SOFTWARE ENGINEERS, PUBLIC INTEREST AND THE ISLAMIC PERSPECTIVE

Page 32: Introduction  Name : Zarinah Mohd Kasirun  E-mail : zarinahmk@um.edu.myzarinahmk@um.edu.my  Research interest: requirements engineering, computer-supported.

Understanding case

Case 1http://courses.cs.vt.edu/cs3604/lib/

Therac_25/Therac_1.html