CPSC 462 Software Engineering, Software Design; Semester project.