Fall 2022 | Prof.
Philip Koopman
Carnegie Mellon University,
ECE Department
Fall 2022 Notes: Class weekly Thursday 6:30-9:20 PM US ET; delivery mode is "Remote Only (REO)"; fully inverted mode (primary lectures pre-recorded; weekly class meeting is for discussion and special presentations). Synchronous attendance at the on-line weekly class meeting is required. 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. Syllabus is subject to change as the instructor deems necessary based on resource limitations and other conditions.
Fall 2022 Lecture Date |
Lect. # |
Lecture Slides For reference |
Video Lectures Due on Wednesday night; (AV lectures due Sunday night) |
Homeworks Due on Following Monday Night |
Group Exercise Due on Following Wednesday Night |
Project Due on Following Friday Night |
Monday 29-Aug-2022 |
Classes Start | Project 1 intro video is playable on Canvas assignment page. | Proj #1 (Startup) Due Fri 2-Sep-2022 |
|||
Thursday 1-Sep-2022 Week 1 |
1 | Course Topics Overview | Embedded Software Code Quality, Safety, Security (44 min) |
HW #01 Self Intro (DUE Wed 31-Aug-2022) |
Proj #2 (Initial
Cleanup) Due Fri 9-Sep-2022 |
|
2 | Admin Info | Course Overview & Administrative Matters (Video on Canvas only) (40 min) |
HW #02 Computer Safety Literacy Stories; slide & video (DUE Tue 6-Sep-2022) |
|||
3 | SW Process | SW Process (49 min) |
HW #03 Software
Process Due Thu 12-Sep-2022 |
|||
100 | (See Canvas for important information about this assignment) | AV:
Look Who's
Driving (54 min) (PBS Nova) |
||||
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 | Discuss: Self-intro Part 1 (HW #1) | Fill out weekly survey after class each week. | |||
Mon 5-Sep |
Labor Day No office hours |
|||||
Thu. 8-Sep Week 2 |
4 | Code Style for Humans | Code Style for
Humans (15 min) |
Proj #3 (Code Style) Due 16-Sep-2022 |
||
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:30 PM Guest: Jackie Erickson |
Finish Self-Intro/ Peer Review Exercise |
||||
Thu. 15-Sep Week 3 |
8 | Global Variables | Globals (13 min) |
Proj #4 (Group Peer
Review & Display Change) Due 23-Sep-2022 |
||
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 | |||
Live: | Guest: 6:30 PM Beth Osyk, Seegrid |
Discuss: HW #3, HW #7 | Guest 7:30 PM: Charles Shelton, Bosch |
Discuss: HW #2 (failure stories) | ||
Thu. 22-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 30-Sep-2022 |
|
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:30 PM Christopher SanGiovanni, Joby Aviation |
Discuss: HW #9 | Guest 7:30 PM Finch Fulton, Locomation |
|||
Thu. 29-Sep Week 5 |
15 | Testing Overview | Testing
Overview (20 min) |
GP Ex #16: Alarm
clock Statechart |
Proj #6 (Redesign SD and
Requirements) Due 7-Oct-2022 |
|
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:30 PM Guest: Michael Lucido, GM |
Discuss: GP #12 | ||||
Thu. 6-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-2022 |
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: | Discuss: GP #16 | Guest 7:30 PM Reilly Brennan, Trucks.VC |
||||
Thu. 13-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: | 7:30PM Guest: Sagar Behere, Foretellix |
8:15 PM Guest: Special Guest |
||||
Thu. 20-Oct |
No Class Mid-semester break No office Hours all week |
|||||
Thu. 27-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 4-Nov-2022 |
27 | Dependability | Dependability (19 min) |
||||
28 | Critical Systems | Critical
Systems (21 min) |
||||
29 | Safety Plans | Safety Plan (26 min) |
||||
Live: | Guest 6:30 PM: Mallory Graydon, NASA LARC |
Retrospective Q&A | NTSB Hearing Intro
(6 min) |
|||
Fri 28-Oct | Tartan Community Day No office hours |
Free one-day extension for project (already included in Canvas due date) | ||||
Thu. 3-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 11-Nov-2022 |
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: | Guest 6:30 PM: Nat Beuse, Aurora |
Discuss: Time stories | ||||
Thu. 10-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 18-Nov-2022 |
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) |
||||
Live: | Guest 6:30 PM: Ensar Becic, NTSB |
Discuss: Security stories | Guest 7:30 PM: Amitai Bin-Nun, Motional |
|||
Thu. 17-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 Monday 28 Nov |
Proj #11 (Runtime Monitor
part 2) Due Tuesday 29 Nov |
36 | Security Plans | Security Plan (29 min) |
||||
37 | Security Threats | Security Threats (24 min) |
||||
Live: | Guest 6:30 PM: Deborah Prince, Underwriters Laboratories Standards & Engagement |
Discuss: Security Stories | Guest 7:30 PM: Vance Hilderman, AFuzion |
|||
Thu. 24-Nov Week 12 |
No Class Meeting | Thanksgiving Break | GP #P11 Peer Review of Proj 11
Due Mon 05-Dec-2022 |
Proj #12 (Final
Hand-in) COUNTS DOUBLE Due 12-Dec-2022 |
||
Do yourself a favor and finish rest of course lectures THIS week. | Work on HW #40 this week. | |||||
24-26 Nov | No Office Hours Wed-Fri this week | Thanksgiving Break | ||||
Thu. 1-Dec 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 6:30 PM: Stephen Thomas, NVIDIA |
Guest 7:30 PM: Barbara Czerny, Aptiv |
||||
Thu. 8-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 12-Dec-2022 |
|||
Sat17-Dec-2022 | Last day to hand in late assignments. | No extensions past this date without an "Incomplete" grade request in writing. |
Supplemental materials: