This course will overview the field of software process modeling, and address current research issues with student simulation projects. Process modeling techniques for both continuous systems and discrete systems will be covered, with a concentration in system dynamics modeling (continuous systems). This course is designed for students and software engineering professionals who are interested in understanding the dynamics of software development and assessing process strategies. Examples of process and project dynamics covered are Rapid Application Development (RAD), the effects of schedule pressure, experience, work methods such as reviews and quality assurance activities, task underestimation, bureaucratic delays, demotivating events, process concurrence, other socio-technical phenomena and the feedback therein. These complex and interacting process effects are modeled with system dynamics using continuous quantities interconnected in loops of information feedback and circular causality. Knowledge of the interrelated technical and social factors coupled with simulation tools can provide a means for software process improvement.
The objectives of the course are to:
- Review the field of software process modeling.
- Develop simulation term projects that address critical software issues.
- Describe the systems thinking paradigm for developing increasingly deep understandings of software process structures.
- Show basic building blocks and model infrastructures for software development processes.
- Provide sufficient introductory material including exercises and executable models on the Internet.
- Describe the modeling process, including calibration of models to software metrics data.
- Show recent developments on how others have used the principles of system dynamics to analyze and improve their processes.
- Provide detail of critical implementation issues and future research motivations.
The course project for the semester will be a simulation study. Each student will define his/her research topic to be addressed by software process simulation.
Graduate standing or consent of the instructor
Madachy R. Boehm B., Software Process Dynamics, IEEE Computer Society Press, 2000
Lecture Time and Location:
Tuesday 5:00- 8:00 PM, GFS 220
Assignments and Grading:
Term project 60%
Dr. Ray Madachy, firstname.lastname@example.org and Dr. Barry Boehm, email@example.com
Tuesday 4:00-5:00 PM, or after appointment, Salvatori 320
TA Office hours:
TBD, Salvatori 327