Short Description: Comp 312 focuses on emerging principles
of how to construct robust, reliable software systems through
"extreme programming" (incremental development, pair programming, unit testing, continual refactoring)
augmented by practical formal analysis methods.
The course covers both proven software development technology and promising leading edge
technologies using Generic Java, an extension of Java available for beta-testing from Sun
Microsystems, and C#. The course projects will involve
extending production programs, including DrJava which is written in Generic Java
and DrC# which is written in C#. The code developed in the course will be deployed in future
releases of these production programs.
Instructors:Teaching Assistants:Course Material: