CSCE 330 Programming Language Structures

CSCE 330 Programming Language Structures

CSCE 390 Professional Issues in Computer Science and Engineering Software Engineering Codes of Ethics Fall 2018 Marco Valtorta [email protected] UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering Three Codes of Ethics ACM Code of Ethics and Professional Conduct: http://www.acm.org/about/code-of-ethics ACM/IEEE-CS Software Engineering Code of Ethics and Professional Practice: https://ethics.acm.org/code-of-ethics/software-engi neering-code / https://

www.computer.org/cms/Publications/code-of-ethics .pdf The Ten Commandments of Computer Ethics Three case studies: Gotterbarn, D. and Miller, K. W. 2004. Computer ethics in the undergraduate curriculum: case studies and the joint software UNIVERSITY OF SOUTH CAROLINA UNIVERSITY OF SOUTH CAROLINA Departmentof ComputerScience Scienceand and Department Computer engineer's code. J. Comput. Smallof Coll. 20, 2 (Dec. Engineering ACM Code of Ethics and Professional Conduct: General Moral Imperatives (1992 Version) Contribute to Society and human well-being Avoid harm to others

Be honest and trustworthy Be fair and take action not to discriminate Honor property rights including copyrights and patents Give proper credit for intellectual property Respect the property of others Honor confidentiality UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering ACM Code of Ethics and Professional Conduct: General Ethical Principles (2018) 1.1 Contribute to society and to human wellbeing, acknowledging that all people are stakeholders in computing. 1.2 Avoid harm.

1.3 Be honest and trustworthy. 1.4 Be fair and take action not to discriminate. 1.5 Respect the work required to produce new ideas, inventions, creative works, and computing artifacts. 1.6 Respect privacy. 1.7 Honor confidentiality. UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering ACM Code: Specific Professional Responsibilities (1992) 1. Strive to achieve the highest quality, effectiveness, and dignity in both the process and products of professional work 2. Acquire and maintain professional competence 3. Know and respect existing laws pertaining to professional work 4. Accept and provide appropriate professional review 5. Give comprehensive and thorough evaluations of computer systems and their impact, including analysis of possible risks 6. Honor contracts, agreements, and assigned responsibilities

7. Improve public understanding of computing and its consequences 8. Access computing and communication resources only when authorized to do so. UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering ACM Code: Professional Responsibilities (2018) 2.1 Strive to achieve high quality in both the processes and products of professional work. 2.2 Maintain high standards of professional competence, conduct, and ethical practice. 2.3 Know and respect existing rules pertaining to professional work. 2.4 Accept and provide appropriate professional review. 2.5 Give comprehensive and thorough evaluations of computer systems and their impacts, including analysis of possible risks. 2.6 Perform work only in areas of competence. 2.7 Foster public awareness and understanding of computing, related technologies, and their consequences. 2.8 Access computing and communication resources only when

authorized or when compelled by the public good. 2.9 Design and implement systems that are robustly and usably secure. UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering ACM Code: Professional Leadership Principles (2018) 3.1 Ensure that the public good is the central concern during all professional computing work. 3.2 Articulate, encourage acceptance of, and evaluate fulfillment of social responsibilities by members of the organization or group. 3.3 Manage personnel and resources to enhance the quality of working life. 3.4 Articulate, apply, and support policies and processes that reflect the principles of the Code. 3.5 Create opportunities for members of the organization or group to grow as professionals. 3.6 Use care when modifying or retiring systems. 3.7 Recognize and take special care of systems that become

integrated into the infrastructure of society. UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering ACM Code: Compliance with the Code (2018) 4.1 Uphold, promote, and respect the principles of the Code. 4.2 Treat violations of the Code as inconsistent with membership in the ACM UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand

and Department Engineering Principles of the SE Code 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. 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. OFSOUTH CAROLINA 7UNIVERSITY COLLEAGUES -SOUTH Software engineers shall

be fair to and supportive of UNIVERSITY OF CAROLINA Departmentof ofComputer ComputerScience Scienceand and Department their Engineering Case Study 1 (2004) George Babbage is an experienced software developer working for Acme Software Company. Mr. Babbage is now working on a project for the U.S. Department of Defense, testing the software used in controlling an experimental jet fighter. George is the quality control manager for the software. Early simulation testing revealed that, under certain conditions, instabilities would arise that could cause the plane to crash. The software was patched to eliminate the specific problems uncovered by the tests. After these repairs, the software passed all the simulation tests. George is not convinced that the software is safe. He is worried that the problems

uncovered by the simulation testing were symptomatic of a design flaw that could only be eliminated by an extensive redesign of the software. He is convinced that the patch that was applied to remedy the specific tests in the simulation did not address the underlying problem. But, when George brings his concerns to his superiors, they assure him that the UNIVERSITY OF SOUTH CAROLINA problem has been resolved. They further Department inform George that any major UNIVERSITY OF SOUTH CAROLINA ofComputer Computer Scienceand and Department of Science redesign effort Engineering

Case Study 1: Relevant Clauses Principle 1. PUBLIC Software engineers shall act consistently with the public interest. In particular, software engineers shall, as appropriate: 1.03. Approve software only if they have a well-founded belief that it is safe, meets specifications, passes appropriate tests, and does not diminish quality of life, diminish privacy or harm the environment. The ultimate effect of the work should be to the public good. 1.04. Disclose to appropriate persons or authorities any actual or potential danger to theOFuser, the public, or the environment, UNIVERSITY SOUTH CAROLINA UNIVERSITY OF SOUTH CAROLINA Departmentof ComputerScience Scienceand and Department Computer that they reasonably believe toof be

Engineering Case Study 1: Relevant Clauses Principle 3. PRODUCT Software engineers shall ensure that their products and related modifications meet the highest professional standards possible. In particular, software engineers shall, as appropriate: 3.10. Ensure adequate testing, debugging, and review of software and related documents on which they work. UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering Case Study 1: Relevant Clauses

Principle 5. MANAGEMENT Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance. In particular, those managing or leading software engineers shall, as appropriate: 5.01 Ensure good management for any project on which they work, including effective procedures for promotion of quality and reduction of risk. UNIVERSITY OFSOUTH SOUTHCAROLINA UNIVERSITY OF 5.11. Department ofComputer ComputerScience Science and Not CAROLINA ask a software engineer to and Department of Engineering

Applying the Code Whose safety? How safe? Safe enough! Professional judgement Managements position The standard supported by the Code is to have the burden to demonstrate that the software is safe before deployment instead of having to prove it unsafe before deployment is halted. UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering Case Study 2 (2004) Leikessa Jones owns her own consulting business, and has several people working for her. Leikessa is currently designing a database management system for the personnel office of ToyTimeInc., a mid-sized company that makes toys. Leikessa has involved ToyTimeInc management in the design process from the start of the

project. It is now time to decide about the kind and degree of security to build into the system. Leikessa has described several options to the client. The client has decided to opt for the least secure system because the system is going to cost more than was initially planned, and the least secure option is the cheapest security option. Leikessa knows that the database includes sensitive information, such as performance evaluations, medical records, and salaries. With weak security, she fears that enterprising ToyTimeInc UNIVERSITYwill OFbe SOUTH CAROLINA employees able CAROLINA to easily accessDepartment this sensitive data. Science and UNIVERSITY OF SOUTH ofComputer Computer Department of Science and Furthermore, she fears that the

Engineering Case Study 2: Relevant Clauses Principle 1. PUBLIC Software engineers shall act consistently with the public interest. In particular, software engineers shall, as appropriate: 1.01. Accept full responsibility for their own work. 1.03. Approve software only if they have a wellfounded belief that it is safe, meets specifications, passes appropriate tests, and does not diminish quality of life, diminish privacy or harm the environment. The ultimate effect of the work should be to the public good. 1.04 Disclose to appropriate persons or authorities any actual or potential danger to the UNIVERSITY OF SOUTH CAROLINA user,OF the public, or the environment, that they UNIVERSITY SOUTH CAROLINA Department of Computer Science and Department of Computer Science and Engineering

Case Study 2: Relevant Clauses Principle 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. In particular, software engineers shall, as appropriate: 2.05. Keep private any confidential information gained in their professional work, where such confidentiality is consistent with the public interest and consistent with the law. UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering Case Study 2: Relevant Clauses Principle 3. PRODUCT Software engineers shall ensure that their products and related modifications meet the highest professional

standards possible. In particular, software engineers shall, as appropriate: 3.01. Strive for high quality, acceptable cost, and a reasonable schedule, ensuring significant tradeoffs are clear to and accepted by the employer and the client, and are available for consideration by the user and the public. 3.03. Identify, define and address ethical, economic, cultural, legal and environmental issues related to work projects. 3.12.OF UNIVERSITY OF SOUTH CAROLINA Work toCAROLINA develop software and related UNIVERSITY SOUTH Department of Computer Science and Department of Computer Science and Engineering Applying the Code Privacy Security of private data vs. economic interests of the client Mistake: offering an option that is not beneficial to the public Ms. Jones cannot just blame the client

Ms. Jones failed in her duty to use sound professional judgement She may need to absorb the additional cost of a sufficiently secure solution as a loss UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering Case Study 3 (2004) Juan Rodriguez is a private consultant who advises small businesses about their computer needs. Juan examines a company's operations, evaluates their automation needs, and recommends hardware and software to meet those needs. Recently, Juan was hired by a small, private hospital interested in upgrading their system for patient records and accounting. The hospital had already solicited proposals for upgrading the system, and hired Juan to evaluate the proposals they'd received.

Juan carefully examined the proposals on the basis of the systems proposed, the experience of the companies that bid, and the costs and benefits of each proposal. He concluded that Tri-Star Systems had proposed the best system for the hospital, and he recommended that the hospital should buy the Tri-Star system. He included a detailed UNIVERSITYOF OFSOUTH SOUTH CAROLINA explanation for why he CAROLINA thought the Tri-Star bid was the best. UNIVERSITY Department of Computer Science and Department of Computer Science and Engineering Case Study 3: Relevant Clauses Principle 4. JUDGMENT Software engineers shall maintain integrity and independence in their professional judgment. In particular, software engineers shall, as appropriate:

4.05. Disclose to all concerned parties those conflicts of interest that cannot reasonably UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY be avoided or escaped. Departmentof ofComputer ComputerScience Scienceand and Department Engineering Applying the Code This is an easy case: [C]lause 4.05 clearly labels Mr. Rodriguez's actions as wrong. Mr. Rodriguez did not fulfill his professional obligations when he neglected to disclose his conflict of interest to the hospital. Notice that his sincerity about the superiority of the Tri-Star bid is not a central issue here. The central issue is the trust Tri-Star has invested in Juan. If Mr. Rodriguez had disclosed his part ownership in Tri-Star to the hospital, and the hospital had still hired him to evaluate the bids, then Juan could have attempted to do a

professional job of evaluation. (Some people might find that difficult, but it is at least theoretically possible.) However, the Code clearly prohibits Juan from taking this job without first giving the hospital the UNIVERSITY OFSOUTH SOUTH CAROLINA UNIVERSITY OF CAROLINA Departmentof ofComputer ComputerScience Scienceand and Department opportunity to judge for itself whether or not Engineering Online Cases from the ACM (2018) https://www.acm.org/code-of-ethics/case-studies The ACM Code of Ethics and Professional Practice (the

Code) is meant to inform practice and education. It is useful as the conscience of the profession, but also for individual decision-making. As prescribed by the Preamble of the Code, computing professionals should approach the dilemma with a holistic reading of the principles and evaluate the situation with thoughtful consideration to the circumstances. In all cases, the computing professional should defer to the public good as the paramount consideration. The analyses in the following cases highlight the intended interpretations of members of the 2018 Code task force, and should help guide computing professionals in how to apply the Code to various situations. UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering Four Step Process (ACM, 2018) Consider Stakeholders and Consequences Analyze

How the Code Applies to the Context Review Possible Actions Evaluate Decisions and Future Impact UNIVERSITYOF OFSOUTH SOUTHCAROLINA CAROLINA UNIVERSITY Departmentof ofComputer ComputerScience Scienceand and Department Engineering

Recently Viewed Presentations

  • Khat and Cathinone - PSAU

    Khat and Cathinone - PSAU

    •At low doses →ganglionic stimulation by depolarization of the postganglionic membrane. •At high doses →ganglionic blockade. Toxicity: Nicotine is an addictive substance and produce both . physical & psychological dependence. Withdrawal from nicotine
  • Work-StudySupervisor Training - Northern Virginia Community ...

    Work-StudySupervisor Training - Northern Virginia Community ...

    Work-study is a program that allows eligible students to earn money toward their educational expenses by working at one of the NOVA Campuses. Work-study students assist with daily operations at the college and other projects.
  • Kapp Putsch - 1920  Led by reactionaries within

    Kapp Putsch - 1920 Led by reactionaries within

    After the failure of the "March on Berlin" he and the party wandered in the political wilderness. It was 1928 before the Nazi party elected its first membrs to the Reichstag (12). It is just after the 1928 election that...
  • The Continuous Development of Student Writing Whitney Young

    The Continuous Development of Student Writing Whitney Young

    Continued ability of Whitney Young HS to draw a highly motivated student body. Continued strong administrative support for our faculty. Continued parental support for the strategies currently in place. Continued development and support of the Friends of Whitney Young. WY...
  • Oracle's Offering

    Oracle's Offering

    Working with Oracle in the Retail Industry Richard Michalec, Sr. Director, Industries Business Unit- Retail June 30, 2004
  • Living with the Lab: What you Need to Know to Succeed

    Living with the Lab: What you Need to Know to Succeed

    What is Living with the Lab?. Three part course sequence: ENGR 120, 121, & 122. Each are 2 credit hour courses. Meets twice a week (for 110 minutes each time) Blocked with a math and science course
  • PowerPoint 프레젠테이션 - Udindfor

    PowerPoint 프레젠테이션 - Udindfor

    1. Basic Forms. Tense (location of a situation in time) present. past. Aspect (the way that situation is perceived or experience) perfect. progressive (continuous)
  • King Countys Changing Demographics Investigating Our Increasing Diversity

    King Countys Changing Demographics Investigating Our Increasing Diversity

    Let's look at some specific languages. Among foreign languages, Spanish is by far the most prevalent. Widely dispersed throughout SKC and Eastside. We have a series of maps depicting the locations of other languages - on the web. Spanish-speaking and...