Cleanroom Software Engineering with Django
2021-06-04, 12:00–12:50, Secondary Room

Cleanroom software engineering process is a software development process developed at IBM intended to produce software with a certifiable level of reliability. A principal objective of the Cleanroom process is development of software that exhibits zero failures in use. In this workshop we will review how to implement it in a project with the help of Django.


The Software Engineering Institute defines the Cleanroom software engineering as "a theory-based team-oriented process for development and certification of high-reliability software systems under statistical quality control. A principal objective of the Cleanroom process is development of software that exhibits zero failures in use. The Cleanroom name is borrowed from hardware Cleanrooms, with their emphasis on rigorous engineering discipline and focus on defect prevention rather than defect removal. Cleanroom combines mathematically based methods of software specification, design, and correctness verification with statistical, usage-based testing to certify software fitness for use. Cleanroom projects have reported substantial gains in quality and productivity. "

This method was widely adopted in the 90's by organizations like IBM, Ericsson or the US Army with up to 20x gains in quality and 4.6x gains in productivity. It can be used for current technology projects, but it needs the help of tools like Django for implementing it in an organization.

In this workshop we will learn about this method and then we will do a practical exercise, first with basic tools and then using Django.