Skip to content

Course Syllabus

SE 3140 Ethics & Personal Software Process

  • Division: Natural Science and Math
  • Department: Computer Science & Engineering
  • Credit/Time Requirement: Credit: 3; Lecture: 3; Lab: 0
  • Prerequisites: CS 2450
    CS 2860
  • Corequisites: SE 3630 SE 3830
  • Semesters Offered: Spring
  • Semester Approved: Spring 2020
  • Five-Year Review Semester: Summer 2025
  • End Semester: Fall 2025
  • Optimum Class Size: 18
  • Maximum Class Size: 24

Course Description

This course examines ethical and social issues arising from rapid advances in computer technology. Through this course students will become familiar with current debates in the computing field as well as the ethical dilemmas that underlie them. Personal Software Process (PSP) is intended for practicing software engineers and software development managers. PSP introduces measures that can serve as the basis for software development process improvement in the organization as well as helping individuals improve their own software quality.

Justification

This course is required as part of our Bachelor of Software Engineering. Because the field is changing so rapidly, it is essential students have an understanding of potential social issues and an ability to recognize ethical considerations. The Standish Group reports that more than half of all software projects are seriously late and over budget, and nearly one-quarter of them are cancelled without being finished. Software engineers must learn to produce quality products on predictable schedules. This course teaches software engineers to consistently use the best available methods for producing quality software.

Student Learning Outcomes

  1. Understand current Intellectual Property debates and the relevant laws governing them.
  2. Understand privacy concerns posed by modern information gathering methods.
  3. Be exposed to industry standard codes of ethics put out by ACM and IEEE.
  4. Be exposed to philosophical bases for evaluating computer ethics.
  5. Students will demonstrate an ability to reduce overall software development defect rates.
  6. Students will demonstrate the importance of the time spent at the front end of the development cycle to lay the foundation for a successful project.
  7. Students will understand how to accurately estimate the time requirements to build software.

Course Content

This course will cover the following topics: Ethics including an introduction to the philosophical bases. - Intellectual Property. - Privacy: individual, corporate and government responsibility. - Software Liability. - Professional Ethics including ACM and IEEE codes of conduct. - Data collection and analysis for continuous improvement of the software development life cycle. - Estimation and planning techniques of software projects. - Quality management and design principles.