0% found this document useful (0 votes)
34 views23 pages

Week 3

Uploaded by

hammadqayyom006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views23 pages

Week 3

Uploaded by

hammadqayyom006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 23

SOFTWARE Book: Ethics in

ENGINEERING CODE Information Technology.


Appendix D

OF ETHICS
OVERVIEW
Why need for code?
8 Fundamental Principles
Preamble
Examples
THE NEED...
8 KEY PRINCIPLES:
1. Product
2. Public
3. Judgement
4. Client and Employer
5. Management
6. Profession
7. Colleagues
8. Self
PRINCIPLE 1: PRODUCTS
1.01 Ensure adequate software specification
1.02 Understand specifications fully
1.03 Ensure you are suitably qualified
1.04 Ensure all goals are achievable
1.05 Ensure proper methodology use
1.06 Ensure good project management
1.07 Ensure all estimates are realistic
1.08 Ensure adequate documentation
1.09 Ensure adequate testing and debugging
1.10 Promote privacy of individuals
1.11 Use data legitimately
1.12 Delete outdated and flawed data
1.13 Identify and address controvertial issues
1.14 Promote maximum quality and minimum cost
1.15 Follow appropriate industry standards
PRINCIPLE 2: PUBLIC
2.01 Disclose any software-related dangers
2.02 Approve only safe, well tested software
2.03 Only sign documents in area of competence
2.04 Cooperate on matters of public concern
2.05 Produce software that respects diversity
2.06 Be fair and truthful in all matters
2.07 Always put the public’s interests first
2.08 Donate professional skills to good causes
2.10 Accept responsibility for your own work
PRINCIPLE 3: JUDGEMENT
3.01 Maintain professional objectivity
3.02 Only sign documents within your responsibility
3.03 Reject bribery
3.04 Do not accept secret payments from the client
3.05 Accept payment from only one source for a job
3.06 Disclose conflicts of interest
3.07 Avoid conflicting financial interests
3.08 Temper technology judgments with ethics
PRINCIPLE 4: CLIENT AND
EMPLOYER
4.01 Provide services only where competent
4.02 Ensure resources are authentically approved
4.03 Only use property as authorized by the owner
4.04 Do not use illegally obtained software
4.05 Honor confidentiality of information
4.06 Raise matters of social concern
4.07 Inform when a project becomes problematic
4.08 Accept no detrimental outside work
4.09 Represent no interests adverse to your employer
PRINCIPLE 5:
MANAGEMENT
5.01 Assure standards are known by employees
5.02 Assure knowledge of confidentiality protocols
5.03 Assign work according to competence
5.04 Provide due process for code violations
5.05 Develop fair ownership agreements
5.06 Accurately describe conditions of employment
5.07 Offer only fair and just remuneration
5.08 Do not prevent a subordinate’s promotion
5.09 Do not ask a person to breach this code
PRINCIPLE 6: PROFESSION
6.01 Associate with reputable people
6.02 Promote commitment of this code
6.03 Support followers of this code
6.04 Help develop an ethical environment
6.05 Report suspected violations of this code
6.06 Take responsibility for errors
6.07 Only accept appropriate remuneration
6.08 Be accurate and honest regarding software
6.09 Place professional interests before personal
6.10 Obey all laws governing your work
6.11 Exercise professional responsibility
6.12 Promote public knowledge of the subject
6.13 Share software knowledge with the profession
PRINCIPLE 7:
COLLEAGUES
7.01 Assist colleagues in professional development
7.02 Review other’s work only with their consent
7.03 Credit fully the work of others
7.04 Review others work candidly
7.05 Give fair hearing to colleagues
7.06 Assist colleagues’ awareness of work practices
7.08 Do not hinder a colleague’s career
7.09 Do not pursue a job offered to a colleague
7.10 Seek help with work outside your competence
PRINCIPLE 8: SELF
8.01 Further your own professional knowledge
8.02 Improve your ability to produce quality work
8.03 Improve your ability to document work
8.04 Improve your understanding of work details
8.05 Improve your knowledge of relevant legislation
8.06 Improve your knowledge of this code
8.07 Do not force anyone to violate this code
8.08 Consider code violations inconsistent with
software engineering
PREAMBLE

“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.”
•Prevalence of software in society provide significant
opportunities to do good or cause harm.
•Ensure that efforts are used to do good.
•Not intended to be applied piecemeal.
PREAMBLE - CONTINUED
•Not to be used to justify errors of omission or commission.
•Not a simple algorithm to produce ethical decisions.
•Software engineer must use judgment after thoughtful consideration
of the 8 fundamental principles.
•Always use the public interest as the highest and governing principle.
SHORT VERSION, 1 OF 2
IEEE-COE
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.
SHORT VERSION 2 OF 2
IEEE-COE
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.
MORE ON MANAGEMENT

Software engineers need to know the standards


which they are held to
Know policy for protecting confidential
information
Assign work after considering each individual’s
skills
 Principle of team balance

Provide realistic quantitative estimates


EVEN MORE ON
MANAGEMENT
Fair compensation
Don’t prevent someone’s promotion if he/she is qualified
 Good programmers don’t always make good managers*
 Let the person progress if he shows the aptitude

Don’t punish someone for expressing ethical concerns


MISSING FROM THE CODE
Where to get help in a dilemma?
Who to report violations to?
Where to get advise and support in a confrontation with employer?
Consequences of violating the code?
Client and Employer – what do you do if their interests conflict?
Provisions for updating the Code
ETHICAL DECISION MAKING:
CASE 1
Ali is a database programmer
Large statistical program needed by his company.
Company programmers are encouraged to publicize their work
Ali has found himself stuck on a problem
He has persisted at this for several months.
His manager does not recognize complexity of problem.
She insists job be completed in the few days.
Ali remembers:
Co-worker had given him source listings of their current work.
He also has an early version of commercial software developed at
another company
Ali studies these programs
Sees two areas of code which could be directly incorporated into his own
program
He uses segments of code both from his coworker and from the commercial
software
He does not tell anyone or mention it in the documentation.
He completes the project and turns it in a day ahead of time.
How does the Code of Ethics help us understand this case?
APPLYING THE CODE: CASE 1
This case highlights issues involving intellectual property
Ali violated professional ethics in two areas:
1. Failure to give credit for another’s work
2. Using code from a commercial package that was copyrighted
If Ali only “looked” at co-worker’s source code:
Could he then write his own program and still have an obligation to give credit?
Yes: He should have acknowledged credit in documentation.
CONTINUED…

Use of commercial software code was also not appropriate:


Ali should have checked to determine whether or not company was authorized
to use source code before using it.
In general:
Desirable to share and exchange intellectual materials
But using software is definitely a violation of code.

You might also like