Unit 1: Software Engineering

« Previous | Next »

After a brief introduction to programming concepts, this unit focuses on the importance of abstraction and modularity for managing complexity. General principles are developed in the context of state machines, with tangible applications in controlling the behaviors of a mobile robot.

Diagram of sensor input, brain, and action.

Topics procedures, data structures, objects, state machines
Lab Exercises implementing robot controllers as state machines
Abstraction and Modularity

Combinators

Cascade: make new state machine (SM) by cascading two SMs

Parallel: make new SM by running two SMs in parallel

Select: combine two inputs to get one output

Theme PCAP (Primitives, Combination, Abstraction, Patterns)

Looking for something specific in this course? The Resource Index compiles links to most course resources in a single page.

« Previous | Next »

Learning Resource Types
theaters Lecture Videos
theaters Recitation Videos
assignment Problem Sets
grading Exams with Solutions
notes Lecture Notes
menu_book Online Textbook
co_present Instructor Insights