CIS 350 Lecture Schedule (Spring 2014)


This schedule is tentative and subject to change!

Date Lecture Topics Assigned Readings & Other Info
All readings available in Canvas unless otherwise noted
Jan 15
  • Course intro
  • Software process models
Jan 20
  • No class today!
Jan 22
  • Snow day!
  • woo hoo!
Jan 27
  • Intro to Android programming
Jan 29
  • More Android programming
Feb 3
  • Agile software development
  • Overview of group project
Feb 5
  • Special Topic: "How Software is Engineered at Comcast"
Feb 10
  • Requirements: gathering and documenting
  • Braude & Bernstein, Software Engineering: Modern Approaches, chapters 10-11
  • Lecture notes
Feb 12
  • Requirements: analysis
Feb 17
  • "So You Think You Know Java?"
Feb 19
  • Design: architecture
Feb 24
  • No class today!
Feb 26
  • Design: concepts
  • Pressman, Software Engineering: A Practitioner's Approach, section 9.3
  • Lecture notes
Mar 3
  • Design: creational patterns
  • Shalloway and Trott, Design Patterns Explained, chp. 16 and 19
  • Lecture notes
Mar 5
  • Special Topic: "User Interface Design for Safety"
Mar 10
  • Spring Break!
Mar 12
  • Spring Break!
Mar 17
  • Design: structural patterns
  • Shalloway and Trott, Design Patterns Explained, chp. 9 and 15
  • Lecture notes
Mar 19
  • Design: behavioral patterns
  • Midterm exam review
Mar 24
  • Midterm Exam
  • The exam will be held in Cohen G17
Mar 26
  • Invariants and assertions
  • Test-driven development
  • Development: analyzability
  • Boswell and Foucher, The Art of Readable Code, chapters 2-3
  • Lecture notes (updated Apr 1)
Mar 31
  • Special Topic: "Software Development at Goldman Sachs"
Apr 2
  • Development: defensive programming
  • McConnell, Code Complete, chapter 8
  • Hunt & Thomas, The Pragmatic Programmer: From Journeyman to Master, chapter 4
  • Lecture notes
Apr 7
  • Development: efficiency
Apr 9
  • Development: refactoring
Apr 14
  • Testing: basics
  • Ammann & Offutt, Introduction to Software Testing, chapter 1
  • Lecture notes
Apr 16
  • Testing: black-box
  • Jorgensen, Software Testing: A Craftsman's Approach, chapters 5-6
  • Lecture notes
Apr 21
  • Testing: white-box
  • Braude & Bernstein, Software Engineering: Modern Approaches, chapter 26
  • Lecture notes
Apr 23
  • Privacy and software engineering
Apr 28
  • Software quality revisited
  • Final Exam review
Apr 30
  • Project demos
May 8
  • Final Exam
  • Scheduled by the university registrar for 6-8pm in CHEM 102