CSSE 120 – Introduction to Software Development (Robotics)
 
Summer 2012-2013 (aka 201340)
 
What to do, When
Day 1 of each week Day 2 of each week Day 3 of each week
Session 1: Introduction.
Before this session, watch Session 1 Videos.
Session 2: Input-Compute-Output. Unit testing.
Before this session, watch Session 2 Videos.
Session 3: Counted Loops. Objects. Application: RoseGraphics.
Before this session, watch Session 3 Videos.
Session 4: Functions and Parameters. Accumulators -- Summing. Coding to a specification. Test-first development.
Before this session, watch Session 4 Videos.
Session 5: Conditionals. Pair programming. Application: RoseRobots I -- Making a robot move.
Before this session, watch Session 5 Videos.
Session 6: Accumulators -- Counting, Graphical Patterns. Writing your own unit tests.
Before this session, watch Session 6 Videos.
Session 7: Debugging techniques, Part I. The Debugger. Test 1 Practice. More practice on all.
Before this session, watch Session 7 Videos.
Session 8: Waiting for Events. Indefinite Loops. Debugging techniques, Part II. Application: RoseRobots II -- Using sensors.
Before this session, watch Session 8 Videos.
Session 9: Test 1 (in class).
Before this session, watch Session 9 Videos.
Session 10: Sequences. Iterating through sequences.
Before this session, watch Session 10 Videos.
Session 11: Patterns for sequences. Accumulating sequences.
Before this session, watch Session 11 Videos.
Session 12: Boolean variables, more on conditionals. Iterative enhancement. Debugging techniques, Part III. Application: String processing.
Before this session, watch Session 12 Videos.
Session 13: Mutation. Accumulating sequences, revisited. Procedural decomposition.
Before this session, watch Session 13 Videos.
Session 14: Box and Pointer Diagrams. Application: RoseRobots, III.
Before this session, watch Session 14 Videos.
Session 15: Dictionaries. Test 2 Practice.
Before this session, watch Session 15 Videos.
Session 16: Defining your own classes. Inheritance. IS-A and HAS-A. UML Class Diagrams.
Before this session, watch Session 16 Videos.
Session 17: Test 2.
Before this session, watch Session 17 Videos.
Session 18: Project Kickoff. Agile/Scrum. Event-Driven Programming, Tkinter I. Teaming. Sprint 0 begins.
Before this session, watch Session 18 Videos.
Session 19: Integration testing. Debugging techniques, Part IV. Sprint 0 ends, Sprint 1 begins. Object-oriented design. Designing your own classes, Part I.
Before this session, watch Session 19 Videos.
Session 20: Designing your own classes, Part II. Tkinter II. Sprint 1 continues.
Before this session, watch Session 20 Videos.
Session 21: Sprint 1 ends. Application: Robot talking. Application: Image processing. Sprint 2 begins.
Before this session, watch Session 21 Videos.
Session 22: Tkinter III. Application: File I/O. Sprint 2 continues.
Before this session, watch Session 22 Videos.
Session 23: Test 3 Practice. Application: Multiple threads and processes. Sprint 2 continues.
Before this session, watch Session 23 Videos.
Session 24: Sprint 2 ends. Sprint 3 begins.
Before this session, watch Session 24 Videos.
Session 25: Test 3 (evening?).
Before this session, watch Session 25 Videos.
Session 26: Sprint 3 continues. Nested Loops I.
Before this session, watch Session 26 Videos.
Session 27: Sprint 3 continues.
Before this session, watch Session 27 Videos.
Session 28: Sprint 3 ends. Nested Loops II. Project show-offs.
Before this session, watch Session 28 Videos.
Session 29: Transitioning to Matlab and C? Python as a scripting language?. Final Exam Practice. Project show-offs.
Before this session, watch Session 29 Videos.
Session 30: Final Exam Practice.
Before this session, watch Session 30 Videos.
Resources Human Help
  • Students assistants are in the Moench F-217 every Monday through Thursday from 7 p.m. to 9 p.m.
  • Email csse120-staff AT rose-hulman.edu (replace the AT with an @ sign, no spaces)
  • Visit your instructor in his office: David Mutchler (Moench D-215). Drop in or make an appointment.