CS292{C,W}. Software Development and Professional Practice

Combines a range of topics integral to the design, implementation, and testing of a medium-scale software system with the practical experience of implementing such a project as a member of a programmer team. In addition to material on software engineering, this course treats also includes material on professionalism and ethical responsibilities in software development and human-computer interaction.

Prerequisites: CS231C and CS246C, or CS221W and CS250W

Syllabus:

Units covered:
PF5 Event-driven programming   2 core hours (of 4)
HC1 Foundations of human-computer interaction   2 core hours (of 6)
HC2 Building a simple graphical user interface   2 core hours
GV1 Fundamental techniques in graphics   2 core hours
GV2 Graphic systems   1 core hour
SP2 Social context of computing   3 core hours
SP3 Methods and tools of analysis   2 core hours
SP4 Professional and ethical responsibilities   3 core hours
SP5 Risks and liabilities of computer-based systems   2 core hours
SE1 Software design   4 core hours (of 8)
SE2 Using APIs   3 core hours (of 5)
SE3 Software tools and environments   1 core hour (of 3)
SE4 Software processes   2 core hours
SE5 Software requirements and specifications   3 core hours (of 4)
SE6 Software validation   2 core hours (of 3)
SE7 Software evolution   3 core hours
SE8 Software project management   3 core hours

Notes:
[to be supplied]

Online resources for CS292


 
CC2001 Report
December 15, 2001