CS 3500: Course Schedule

I will post lecture topics, reading assignments, and problem sets here. I'll revise the table after each lecture to reflect what really happened.

Week Date Topic Material Reading
1 8/24 Lec 1: Introduction; brief history of programming languages Evolution of programming languages
Syllabus
8/25 No discussion    
8/26 Lec 2: Overview of software engineering; basics of C#; simple GUIs in C# Overview of software engineering
See TipCalculator in repository
Michaelis, Chapters 1-4
2 8/31 Lec 3: Version control Subversion Red Book. Skim for the ideas behind Subversion.
9/1 Dis 1: Setting up and using an SVN repository
Problem Set One
Lab material
 
9/2 Lec 4: Implementing classes in C# See Poly V09-02-2010 in repository Michaelis, Chapter 5
3 9/7 Lec 5: Unit Testing Unit Testing Reading
9/8 Dis 2: Visual Studio Unit Testing Tools
Problem Set Two
Lab material
 
9/9 Lec 6: Inheritance in C# See Inherit in repository Michaelis, Chapters 6
4 9/14 Lec 7: Debugging   Reading
9/15 Dis 3: Debugging with Visual Studio
Problem Set Three
Lab material
 
9/16 Lec 8: Interfaces See Interface in repository Michaelis, Chapter 7 and (parts of) 14
5 9/21 Lec 9: Discussion of PS 3; MVC architecture; testing GUI interfaces    
9/22 Dis 4: PS 3 Help Lab material
 
9/23 Lec 10: Enumerators, DLLs See Enumerators in repository  
6 9/28 Lec 11: Solution to PS 3    
9/29 Dis 5: Testing GUIs
Problem Set Four
Lab material
 
9/30 Lec 12: Delegates and Events See Delegates in repository
See SpreadsheetPanel in repository
Michaelis, Chapters 12 and 13
7 10/5 Lec 13: Introduction to threads See Threads in repository  
10/6 Dis 6: Debugging Threads
Problem Set Five (Initial Specs)
dictionary.txt
Lab material
 
10/7 Lec 14: Threads and Sockets See ClientServer in repository  
  10/12 Fall Break    
10/13 Fall Break    
10/14 Fall Break    
8 10/19 Lec 15: Asynchronous sockets See NumberServer in repository  
10/20 Dis 6: Boggle Assignment Lab material
 
10/21 Lec 16: Asynchronous sockets See NumberServer (version 1.1) in repository  
9 10/26 Lec 17: Testing client/server applications See NumberServer (version 1.2) in repository  
10/27 Dis 7: Boggle Assignment Lab material
 
10/28 Class Canceled: Study for Midterm Last Year's Midterm
Midterm Topics
 
10 11/2 Midterm Exam    
10/27 No lab section
Problem Set Six
   
10/28 Lec 18: Pair programming; introduction to database programming Pair Programming  
11 11/8 Lec 19: Unit testing LineSockets; MySQL and SQL See LineSocket (latest version) in repository for unit testing example  
11/9 Dis 8: Help session for PS 6    
10/28 Lec 20: SQL See DB-LINQ in repository Tutorial on SQL
12 11/16 Lec 21: Database, LINQ, and Performance improvements See DB-LINQ in repository
Performance Improvement
Michaelis, Chapter 15 (first section)
11/17 Dis 9: Creating a MySQL database
Problem Set Seven
Lab material  
11/18 Lec 22: Intellectual Property Pair Programming  
13 11/23 Snow day    
11/24 Dis 9: PS 7 Help    
11/25 Thanksgiving    
14 11/30 Lec 23: Team Dynamics; OO Patterns Working in Teams
See DesignPatterns in repository
Design Patterns in C#
12/1 Dis 9: PS 7 Help
Problem Set Eight
   
12/2 Lec 24: OO Patterns; UML See DesignPatterns in repository
UML
UML Class Diagrams
15 12/7 Lec 25: OO Patterns; Ethics See DesignPatterns in repository
Ethics
 
12/8 Dis 10: Help session    
12/9 Lec 26: Final Review Review Slides  


Last modified