Fall 2023 | Prof.
Philip Koopman
Carnegie Mellon University,
ECE Department
Fall 2023 Notes: Class weekly Thursday 6:00-9:00 PM US ET; delivery mode is "Remote Only (REO)"; fully inverted model (primary lectures pre-recorded; weekly class meeting is for discussion and special presentations). Synchronous attendance at the on-line weekly class meeting is required for all class meetings. Class meetings will not be recorded under any circumstance.
[Main Course Page] | [FAQ] |
[Policies]
Please read the FAQ before e-mailing the
instructor!
Archive.org has a complete set of lectures and slides from Fall 2021 here:
archive.org
link
Consult Canvas to determine when assignments are officially released. Links to materials will go live when updated on Canvas, so please don't worry about broken links until we get to that week. Content and schedule subject to change until the Canvas link goes live. Syllabus is subject to change as the instructor deems necessary based on resource limitations and other conditions.
Fall 2023 Lecture Date |
Lect. # |
Lecture Slides For reference |
Video Lectures Due on Wednesday night |
Homeworks Due on Following Monday Night |
Group Exercise Due on Following Wednesday Night |
Project Due on Following Friday Night |
Monday 28-Aug-2023 |
Classes Start | Project 1 intro video is playable on Canvas assignment page. | Proj #1 (Startup) Due Fri 1-Sep-2023 |
|||
Thursday 31-Aug-2023 Week 1 |
1 | Course Topics Overview | Embedded Software Code Quality, Safety, Security (44 min) |
HW #01 Self Intro (DUE Wed 30-Aug-2023) |
Proj #2 (Initial
Cleanup) Due Fri 8-Sep-2023 |
|
2 | Admin Info | Course Overview & Administrative Matters (Video on Canvas only) (40 min) |
HW #02 Computer Safety Literacy Stories; slide & video (DUE Tue 5-Sep-2023) |
|||
3 | SW Process | SW Process (49 min) |
HW #03 Software
Process Due Thu 14-Sep-2023 |
|||
128 | Autonomous Vehicles and Software Safety Engineering | Autonomous Vehicles and Software Safety Engineering (41 min) | ||||
120 | OPTIONAL Overview of Automated Vehicle Terminology and J3016 Levels (No quiz on Canvas) |
OPTIONAL AV: Overview of Automated Vehicle Terminology and J3016 Levels (20 min) |
||||
Live: | Discuss: Q&A on course policy & content | In-class video on self-driving cars | Discuss: Self-intro Part 1 (HW #1) | Fill out weekly survey after class each week. | ||
Mon 4-Sep |
Labor Day No office hours |
|||||
Thu. 7-Sep Week 2 |
4 | Code Style for Humans | Code Style for
Humans (15 min) |
Proj #3 (Code Style) Due 15-Sep-2023 |
||
5 | Code Style for Compilers | Code Style for
Compilers (21 min) |
||||
6 | Peer Reviews | Peer Reviews (33 min) |
GP Ex #06 Peer Review Exercise |
|||
7 | Spaghetti Code | Spaghetti (18 min) |
HW #7 Spaghetti Code | |||
Live: | 6:00 PM Guest: Deborah Prince. ULSE | Finish Self-Intro/ Peer Review Exercise |
||||
Thu. 14-Sep Week 3 |
8 | Global Variables | Globals (13 min) |
Proj #4 (Group Peer
Review & Display Change) Due 22-Sep-2023 |
||
9 | Requirements | Requirements (24 min) |
HW #9 Turtle Requirements | GP Ex #09 Alarm Clock Requirements |
||
10 | Stack Overflow | Stack Overflow (8 min + optional videos) |
||||
11 | Toyota UA Case Study | Toyota UA (60 min) |
HW #11 Case Study | |||
L131 | OPTIONAL: How Safe Is Safe Enough for Autonomous Vehicles? No Quiz; strictly optional |
OPTIONAL: How Safe Is Safe Enough for Autonomous Vehicles? (55 min) |
||||
Live: | Guest: 6:00 PM Charles Shelton, Bosch |
Discuss: HW #3, HW #7 | Discuss: HW #2 (failure stories) | |||
Thu. 21-Sep Week 4 |
12 | Software Architecture and HLD | Software Architecture
and HLD (15 min) |
GP Ex #12: Alarm
clock Sequence Diagrams |
Proj #5 (Refactor &
Design) Due 29-Sep-2023 |
|
13 | Statecharts | Statecharts (19 min) |
HW #13 Turtle Robot Statechart | |||
14 | Traceability | Traceability (11 min) |
||||
101 | AV: Software Safety for Vehicle Automation -- Intro | AV: Software Safety for
Vehicle Automation -- Intro (10 min) |
||||
Live: | Guest 6:00 PM Michael Lucido, General Motors |
Discuss: HW #9 | ||||
Thu. 28-Sep Week 5 |
15 | Testing Overview | Testing
Overview (20 min) |
GP Ex #16: Alarm
clock Statechart |
Proj #6 (Redesign SD and
Requirements) Due 6-Oct-2023 |
|
16 | Unit Testing | Unit Testing (18 min) |
HW #16 Test Design | |||
17 | Integration Testing | Integration
Testing (15 min) |
||||
18 | System Level Test | System Level
Test (18 min) |
||||
Live: | 6:00 PM Guest: Mallory Graydon, NASA |
Discuss: GP #12 | ||||
Thu. 5-Oct Week 6 |
19 | Date & Time | Date & Time (26 min) |
HW #19 Time Stories | GP #p05 Peer Review Proj 5 | Proj #7 (Redesign
Statechart and Code) Due 27-Oct-2023 |
20 | Race Conditions | Concurrency & Race
Conditions (21 min) |
HW #20 Mid-Semester
Cumulative Review HW (Start early! Due after break) |
|||
21 | SQA Isn't Testing | SQA Isn't
Testing (13 min) |
||||
22 | Software Maintenance | Software Maintenance
(15 min) |
||||
Live: | 6:00 PM Guest: Nat Beuse, Aurora |
Discuss: GP #16 | ||||
Thu. 12-Oct Week 7 |
23 | Key Metrics | Key Metrics (13 min) |
GP #p06 Peer Review of Proj
6 (due after break) |
||
24 | Lifcycle & CM | Lifecycle &
CM (19 min) |
||||
25 | Floating Point Pitfalls | Floating Point
Pitfalls (17 min) |
HW #25 Floating Point (due after break) | |||
102 | AV: Validating Machine Learning-Based Systems | AV: Validating Machine
Learning-Based Systems (30 min) |
||||
Live: | ||||||
Thu. 19-Oct |
No Class Mid-semester break No office Hours all week |
|||||
Thu. 26-Oct Week 8 |
26 | Safety Overview | Software Safety
Overview (16 min) |
HW #27 Dependability | GP #p07 Peer Review of Proj 7 | Proj #8 (Static Analysis, Build) Due 3-Nov-2023 |
27 | Dependability | Dependability (19 min) |
||||
28 | Critical Systems | Critical
Systems (21 min) |
||||
29 | Safety Plans | Safety Plan (26 min) |
||||
Live: | Guest 7:00 PM: Sagar Behere, Foretellix |
Retrospective Q&A | ||||
Thu. 2-Nov Week 9 |
30 | Single Points of Failure | Single Points of
Failure (17 min) |
HW #38 Security Stories 1 | GP #p08 Peer Review of Proj 8 | Proj #9 (Unit Test part
1) Due 10-Nov-2023 |
31 | Safety Requirements | Safety
Requirements (17 min) |
||||
32 | Critical System Isolation | Critical System
Isolation (17 min) |
||||
103 | AV: SOTIF and Edge Cases | AV: SOTIF and Edge
Cases (31 min) |
||||
Live: | Discuss: Time stories | |||||
Tue 7-Nov | Democracy Day (No office hours before 5 PM) |
Assignment due dates remain unchanged. | ||||
Thu. 9-Nov Week 10 |
33 | Redundancy Managment | Redundancy
Management (20 min) |
HW #39 Security Stories 2 | GP #P09 Peer Review of Proj 9 | Proj #10 (Unit Test part
2 & Runtime Monitor part 1) Due 17-Nov-2023 |
34 | Data Integrity | Data Integrity (29 min) |
||||
104 | AV: Implications of Removing the Human Driver | AV: Implications of
Removing the Human Driver (32 min) |
||||
105 | AV: Safety Architectures | AV: Safety
Architectures (28 min) |
||||
L123 | OPTIONAL: Trust Governance for Autonomous Vehicle Deployment (No quiz) |
OPTIONAL: Trust Governance for Autonomous Vehicle Deployment 2022(33 min) |
||||
Live: | Discuss: Security stories | Guest 7:00 PM: Finch Fulton, K&L Gates |
||||
Thu. 16-Nov Week 11 |
35 | Cryptography | Cryptography (33 min) |
HW #40 End of Semester
Cumulative Review (Must be completed -- due last week of class) |
GP #P10 Peer Review of Proj
10 Due Tuesday 28 Nov-2023 |
Proj #11 (Runtime Monitor
part 2) Due Wednesday 29 Nov-2023 |
36 | Security Plans | Security Plan (29 min) |
||||
37 | Security Threats | Security Threats (24 min) |
||||
Live: | Guest 6:00 PM: Vance Hilderman, Afuzion. |
Discuss: Security Stories | ||||
Thu. 23-Nov Week 12 |
No Class Meeting | Thanksgiving Break | GP #P11 Peer Review of Proj 11
Due Tue. 05-Dec-2023 |
Proj #12 (Final
Hand-in) COUNTS DOUBLE Due Mon. 11-Dec-2023 |
||
Do yourself a favor and finish rest of course lectures THIS week. | Work on HW #40 this week. | |||||
22-24 Nov | No Office Hours Wed-Fri this week | Thanksgiving Break | ||||
Thu. 30-Nov Week 13 |
38 | Security Vulnerabilities | Security
Vulnerabilities (29 min) |
Continue Working on Proj #12 | ||
39 | Security Mitigation & Validation | Security
Mitigation & Validation (34 min) |
||||
40 | Security Pitfalls | Security
Pitfalls (24 min) (This includes a review of previous concepts) |
||||
Live: | Guest 7:00 PM: Stephen Thomas |
|||||
Thu. 7-Dec Week 14 |
106 | AV: How Safe Is Safe Enough? | AV: How Safe
Is Safe Enough? (21 min) |
Continue Working on Proj #12 | ||
107 | AV: Building Trust | AV: Building
Trust (14 min) |
||||
108 | AV: Getting to Deployed + Safe | AV: Getting to Deployed
+ Safe (14 min) |
||||
Live: | Retrospective Q&A | |||||
Week 15 | FINALS WEEK No Class Meeting |
Please do end-of semester (W15) weekly survey after Project 12 hand-in. | Proj #12
(Final Hand-in) COUNTS DOUBLE Due MONDAY 11-Dec-2023 |
|||
Sat16-Dec-2023 | Last day to hand in late assignments. | No extensions past this date without an "Incomplete" grade request in writing. |
Supplemental materials: