SE201 · Chapter 1 · Annotated SlidesSoftware Engineering Practices and Ethics
Original
Overview

Software Engineering Practices and Ethics

What software engineering is and why it matters, software costs and failures, generic vs. customized products, attributes of good software, how software differs from hardware, application types, web software engineering, the layered view, the generic process framework and umbrella activities, and professional ethics (ACM/IEEE code) with the insulin-pump and Mentcare case studies.

How to read this page

Every original slide is shown unchanged. Yellow marks on a slide point to a numbered note: hover or tap a mark to jump to its note, and hover a note to see its marks. Questions tagged Past exam appeared on a real paper; Prediction questions are likely angles, not confirmed. Pick an answer to each question: a wrong pick tells you why it is wrong, so you can try again.

All 62 slides
  1. 1 Chapter 1
  2. 2 Course Learning Outcomes
  3. 3 Topics covered
  4. 4 Software engineering
  5. 5 Software costs
  6. 6 Software Project Failure
  7. 7 Slide 7
  8. 8 Frequently asked questions about software engineering
  9. 9 Frequently Asked Questions about Software Engineering
  10. 10 Software Products
  11. 11 Product specification
  12. 12 Essential attributes of good software
  13. 13 Software Engineering
  14. 14 Importance of Software Engineering
  15. 15 What is unique about software?
  16. 16 Wear Vs. Deteriorate
  17. 17 General issues that affect software
  18. 18 General issues that affect software
  19. 19 Software engineering diversity
  20. 20 Application types
  21. 21 Application Types
  22. 22 Application types
  23. 23 Software Engineering Fundamentals
  24. 24 Internet Software Engineering
  25. 25 Web-based Software Engineering
  26. 26 Web Software Engineering
  27. 27 Web Software Engineering
  28. 28 Attributes of Web-based software systems (WebApps)
  29. 29 Software Engineering – A Layered Technology
  30. 30 Software Engineering Layers
  31. 31 The Software Process
  32. 32 The Software Process
  33. 33 A Process Framework
  34. 34 Generic Software Process Framework
  35. 35 Umbrella Activities
  36. 36 Umbrella Activities
  37. 37 Umbrella Activities
  38. 38 Slide 38
  39. 39 Professional and Ethical Responsibilities in Software Engineering
  40. 40 Software Engineering Ethics
  41. 41 Issues of Professional Responsibility
  42. 42 Issues of Professional Responsibility
  43. 43 Why should we have professional code of ethics?
  44. 44 Why should we have professional code of ethics?
  45. 45 Professional Ethics
  46. 46 ACM/IEEE Code of Ethics
  47. 47 Rationale for the code of ethics
  48. 48 The ACM/IEEE Code of Ethics
  49. 49 Ethical principles
  50. 50 Ethical Dilemma
  51. 51 Case studies
  52. 52 Insulin pump control system
  53. 53 Activity model of the insulin pump
  54. 54 Essential high-level requirements
  55. 55 Mentcare: A patient information system for mental health care
  56. 56 Mentcare
  57. 57 Mentcare goals
  58. 58 The organization of the Mentcare system
  59. 59 Key features of the Mentcare system
  60. 60 Mentcare system concerns
  61. 61 Key points
  62. 62 Key points
Slide 1 / 62

Chapter 1

Slide 1: Chapter 1
Slide 2 / 62

Course Learning Outcomes

Slide 2: Course Learning Outcomes
Slide 3 / 62

Topics covered

Slide 3: Topics covered
Slide 4 / 62

Software engineering

Slide 4: Software engineering

Notes

  1. Software engineering: an engineering discipline concerned with ALL aspects of software production, from specification to maintenance.

Exam angle

PredictionQ1

The primary focus of software engineering is:

Slide 5 / 62

Software costs

Slide 5: Software costs
Slide 6 / 62

Software Project Failure

Slide 6: Software Project Failure
Slide 7 / 62

Slide 7

Slide 7: Slide 7
Slide 8 / 62

Frequently asked questions about software engineering

Slide 8: Frequently asked questions about software engineering
Slide 9 / 62

Frequently Asked Questions about Software Engineering

Slide 9: Frequently Asked Questions about Software Engineering
Slide 10 / 62

Software Products

Slide 10: Software Products

Notes

  1. Generic products: sold on the open market; the DEVELOPER owns the specification. Customized (bespoke): built for one customer, who owns the specification.

Exam angle

PredictionQ1

For a generic software product, the specification is owned by:

Slide 11 / 62

Product specification

Slide 11: Product specification
Slide 12 / 62

Essential attributes of good software

Slide 12: Essential attributes of good software

Exam angle

PredictionQ1

Which is NOT one of the essential attributes of good software?

Slide 13 / 62

Software Engineering

Slide 13: Software Engineering
Slide 14 / 62

Importance of Software Engineering

Slide 14: Importance of Software Engineering
Slide 15 / 62

What is unique about software?

Slide 15: What is unique about software?
Slide 16 / 62

Wear Vs. Deteriorate

Slide 16: Wear Vs. Deteriorate

Notes

  1. Hardware WEARS OUT (bathtub curve); software doesn’t wear out but DETERIORATES as changes introduce defects.

  2. Trap Software deteriorates; it does NOT wear out.

Exam angle

PredictionQ1

Software does not deteriorate over time; it wears out.

Slide 17 / 62

General issues that affect software

Slide 17: General issues that affect software

Notes

  1. Issues affecting most software: heterogeneity, business and social change, security and trust, scale.

Slide 18 / 62

General issues that affect software

Slide 18: General issues that affect software
Slide 19 / 62

Software engineering diversity

Slide 19: Software engineering diversity
Slide 20 / 62

Application types

Slide 20: Application types

Notes

  1. Application types: stand-alone, interactive transaction-based, embedded control, batch, entertainment, modeling and simulation, data collection, systems of systems.

Slide 21 / 62

Application Types

Slide 21: Application Types
Slide 22 / 62

Application types

Slide 22: Application types
Slide 23 / 62

Software Engineering Fundamentals

Slide 23: Software Engineering Fundamentals
Slide 24 / 62

Internet Software Engineering

Slide 24: Internet Software Engineering
Slide 25 / 62

Web-based Software Engineering

Slide 25: Web-based Software Engineering
Slide 26 / 62

Web Software Engineering

Slide 26: Web Software Engineering
Slide 27 / 62

Web Software Engineering

Slide 27: Web Software Engineering
Slide 28 / 62

Attributes of Web-based software systems (WebApps)

Slide 28: Attributes of Web-based software systems (WebApps)
Slide 29 / 62

Software Engineering – A Layered Technology

Slide 29: Software Engineering – A Layered Technology

Exam angle

PredictionQ1

The foundation layer of software engineering is:

Slide 30 / 62

Software Engineering Layers

Slide 30: Software Engineering Layers
Slide 31 / 62

The Software Process

Slide 31: The Software Process
Slide 32 / 62

The Software Process

Slide 32: The Software Process
Slide 33 / 62

A Process Framework

Slide 33: A Process Framework

Notes

  1. Generic framework activities: communication, planning, modeling, construction, deployment.

  2. Memory trick C-P-M-C-D: Communication, Planning, Modeling, Construction, Deployment.

Exam angle

PredictionQ1

Which is NOT a generic framework activity?

Slide 34 / 62

Generic Software Process Framework

Slide 34: Generic Software Process Framework
Slide 35 / 62

Umbrella Activities

Slide 35: Umbrella Activities
Slide 36 / 62

Umbrella Activities

Slide 36: Umbrella Activities
Slide 37 / 62

Umbrella Activities

Slide 37: Umbrella Activities
Slide 38 / 62

Slide 38

Slide 38: Slide 38
Slide 39 / 62

Professional and Ethical Responsibilities in Software Engineering

Slide 39: Professional and Ethical Responsibilities in Software Engineering
Slide 40 / 62

Software Engineering Ethics

Slide 40: Software Engineering Ethics
Slide 41 / 62

Issues of Professional Responsibility

Slide 41: Issues of Professional Responsibility

Notes

  1. Professional responsibility: confidentiality, competence, intellectual property rights, computer misuse.

Slide 42 / 62

Issues of Professional Responsibility

Slide 42: Issues of Professional Responsibility
Slide 43 / 62

Why should we have professional code of ethics?

Slide 43: Why should we have professional code of ethics?
Slide 44 / 62

Why should we have professional code of ethics?

Slide 44: Why should we have professional code of ethics?
Slide 45 / 62

Professional Ethics

Slide 45: Professional Ethics
Slide 46 / 62

ACM/IEEE Code of Ethics

Slide 46: ACM/IEEE Code of Ethics

Notes

  1. ACM/IEEE code: 8 principles: public, client and employer, product, judgment, management, profession, colleagues, self. Act in the PUBLIC interest first.

Exam angle

PredictionQ1

According to the ACM/IEEE code, software engineers shall act consistently with the interest of:

Slide 47 / 62

Rationale for the code of ethics

Slide 47: Rationale for the code of ethics
Slide 48 / 62

The ACM/IEEE Code of Ethics

Slide 48: The ACM/IEEE Code of Ethics
Slide 49 / 62

Ethical principles

Slide 49: Ethical principles
Slide 50 / 62

Ethical Dilemma

Slide 50: Ethical Dilemma

Notes

  1. Ethical dilemmas: disagreeing with management policy, being asked to release unsafe software, working on military systems.

Slide 51 / 62

Case studies

Slide 51: Case studies
Slide 52 / 62

Insulin pump control system

Slide 52: Insulin pump control system

Notes

  1. Case studies: insulin pump (safety-critical embedded), Mentcare (patient information system).

Slide 53 / 62

Activity model of the insulin pump

Slide 53: Activity model of the insulin pump
Slide 54 / 62

Essential high-level requirements

Slide 54: Essential high-level requirements
Slide 55 / 62

Mentcare: A patient information system for mental health care

Slide 55: Mentcare: A patient information system for mental health care
Slide 56 / 62

Mentcare

Slide 56: Mentcare
Slide 57 / 62

Mentcare goals

Slide 57: Mentcare goals
Slide 58 / 62

The organization of the Mentcare system

Slide 58: The organization of the Mentcare system
Slide 59 / 62

Key features of the Mentcare system

Slide 59: Key features of the Mentcare system
Slide 60 / 62

Mentcare system concerns

Slide 60: Mentcare system concerns
Slide 61 / 62

Key points

Slide 61: Key points
Slide 62 / 62

Key points

Slide 62: Key points