SYS 689 Engineering of Trusted Software Systems

Trusted systems are dependable, safe, and secure. None of this happens by accident – it all must be engineered in. The course goes beyond the traditional software engineering, quality and development courses to focus on the theory and practical techniques required to create trusted systems. The course covers software reliability engineering, software security engineering, control systems concepts, hazard analysis and management, trusted architecture patterns, and software fault and failure tolerance and management. Specific techniques such as analysis of attack patterns, degraded operation, simplex architectures and rejuvenations, are studied in depth to understand their usefulness and contribution to an overall trusted system solution. Case studies (e.g. Mars Rover) and team projects (e.g. analyzing and reengineering a system to be trustworthy) are used throughout.



Cross Listed Courses

SSW 689


Software Engineering Program Systems Engineering Program


Fall Semester Spring Semester