The course introduces students to principles, concepts and techniques associated with team-based development of large, complex software systems. It is assumed that students know how to program and have developed programs using the Java language. Major topics include system and requirements engineering, object-oriented design, and systematic code testing techniques. Students will learn to use software tools such as Git, JUnit, and EclEmma in the context of a scrum-based agile development project.

See syllabus for instructor and teaching assistant information.
Classes begin Monday, Aug 22.
Website under construction, May 31.