A Process Architecture Model That Supports Cost And Effort Analysis For Agile Software Development Projects
Naval Postgraduate School Monterey United States
Pagination or Media Count:
The purpose of this thesis is to understand disparate organizational standard operating procedures SOPs covering agile software development and supporting functions, including business and technical feasibility analysis, contracts development, and personnel assessment. On the basis of SOP analysis, we developed a discrete-event software process simulation model of the architecture using Lifecycle Modeling Language LML action diagrams with the Model-Based Systems Engineering tool Innoslate. The action diagrams unify the SOPs to support both process architecture development and the ability to simulate actions independently or as a whole. The architecture illustrates that, in addition to the core function of software design and development, there are supporting functions that are necessary to successfully execute agile software development. The simulation model also serves as an accurate cost estimator for sprints. Historical data was available to calibrate model parameters for activity effort, staffing, and labor rates. The results of Monte Carlo simulations to forecast effort and cost for software sprints showed a high degree of accuracy against actuals. It is a viable alternative to other estimation methods and also provides risk assessment. The process model can be further calibrated and dynamically extended to support agile software development.
- Computer Programming and Software