Abstract
Software development is a fast-paced environment where developers need constant update to ever-changing technologies. Furthermore, process improvement initiatives have been proven useful in increasing the productivity of a software organization. As such, these organizations need to decide where to invest their training budget. As a result, training in technological update to their workforce or training in process conformance with its productive processes become conflicting alternatives. This paper presents a system dynamics simulation of a software factory product line. The objective of this simulation is to understand the changes in behavior when selecting either one of the above-training alternatives. The system dynamics model was validated with an expert panel, and the simulation results have been empirically validated—using statistical process control—against the performance baseline of a real software development organization. With the simulation under statistical control and performing like the baseline, the independent variables representing process conformance (process training) and technology skills (skills training) were modified to study their impact on product defects and process stability. Our results show that while both variables have positive impact on defects and process stability, investment in process training results in a process with less variation and with fewer defects.
Similar content being viewed by others
Notes
Model equations are given in online resource 1.
Survey form was submitted as Online Resource 2.
References
Abdel-Hamid, T., & Madnick, S. (1991). Software project dynamics: An integrated approach. New Jersey: Prentice Hall PTR.
Albrecht, A. J. (1983). Software function, source lines of code, and development effort prediction: A software science validation. IEEE Transactions on Software Engineering, 9(6), 639–648.
Anderson, D. (2003). Agile management for software engineering: Applying the theory of constraints for business results. In P. Coad (Ed.), Coad series on software engineering. New Jersey: Prentice Hall PTR.
Barros, M. O., Werner, C. M. L., & Travassos, G. H. (2000). Using process modeling and dynamic simulation to support software process quality management. XIV Simpósio Brasileiro de Engenharia de Software, Workshop de Qualidade de Software. João Pessoa: SBC.
CMMI Product Team. (2010). CMMI for Development, Version 1.3. Improving processes for developing better products and services. Software Engineering Institute.
Cocco, L., Mannaro, K., Concas, G., & Marchesi, M. (2011). Simulating Kanban and scrum versus waterfall with system dynamics. 12th International conference agile processes in software engineering and extreme programming, Madrid 2011. doi:10.1007/978-3-642-20677-1_9.
Feller, W. (1968). An introduction to the probability theory and its applications. New York: Wiley.
Florac, W. A., Park, R. E., & Carleton, A. (1997). Practical software measurement: measuring for process management and improvement (CMU/SEI-97-HB-003). Pittsburgh: Software Engineering Institute. Retrieved from http://www.sei.cmu.edu/library/abstracts/reports/97hb003.cfm.
Forrester, J. W. (1969). Urban dynamics. Waltham, MA: Pegasus Communications.
IEEE. (1990). IEEE STD 610.12-1990. Standard glossary of software engineering terminology. (Institute of Electrical and Electronics Engineers, (Ed) IEEE STD 610.12-1990.
ISO. (2008). ISO 9001:2008(E). Quality management systems—requirements. (International Standards Organization, Ed).
ISO. (2012). ISO 19011:2012—quality management system auditing. (International Standards Organization, Ed).
Kellner, M. I. (1999). Software process simulation modeling: Why? What? How? Journal of Systems and Software, 46(2–3), 91–105. doi:10.1016/S0164-1212(99)00003-5.
Madachy, R. J. (2008). Software process dynamics. New Jersey: Wiley-IEEE Press.
Matalonga, S., & San Feliu, T. (2009). Using defects to account for the investment in support process areas. Europe SEPG 09. Prague, Czech Republic.
Matalonga, S., & San Feliu, T. (2010). Using process and product quality assurance audits to measure process business alignment. International conference of software and systems engineering and their applications. Paris, France.
Müller, M., & Pfahl, D. (2008). Simulation methods. In F. Shull, J. Singer, & D. I. K. Sjoberg (Eds.), Guide to advances empirical software engineering. Lysaker, Norway: Springer.
Pfahl, D., Klemm, M., & Ruhe, G. (2001). A CBT module with integrated simulation component for software project management education and training. Journal of Systems and Software, 59(3), 283–298. doi:10.1016/S0164-1212(01)00069-3.
Pfahl, D., & Lebsanft, K. (1999). Integration of system dynamics modelling with descriptive process modelling and goal-oriented measurement. Journal of Systems and Software, 46(2–3), 135–150. doi:10.1016/S0164-1212(99)00007-2.
Pyzdek, T. (2003). The six sigma handbook: The complete guide for greenbelts, blackbelts, and managers at all levels (2nd ed.). New York: McGraw-Hill.
Schwaninger, M., & Grösser, S. (2008). System dynamics as model-based theory building. Systems Research and Behavioral Science, 25, 447–465. doi:10.1002/sres.914.
Senge, P. (2006). The fifth discipline: The art and practice of the learning organization (1st ed.). New York: Broadway Books.
Shewhart, W. (1980). Economic Control of Quality of Manufactured Product. American Society for Quality.
Software Engineering Institute. (2011). CMMI ® for SCAMPI class A appraisal results 2011 mid-year update. (S. E. Institute) CMMI Maturity Profile. Pittsburgh: Carnegie Mellon University. Retrieved from http://www.sei.cmu.edu/cmmi/casestudies/profiles/pdfs/upload/2011SeptCMMI-2.pdf.
Wohlin, C., Höst, M., Runeson, P., Ohlsson, M. C., Regnell, B., & Wesslén, A. (2000). Experimentation in software engineering: An introduction. Norwell, Massachusetts: Kluwer Academic Publishers.
Zhang, H., Kitchenham, B. A., & Pfahl, D. (2008a). Software process simulation modeling: Facts, trends and directions. ASPEC’08 15th Asia Pasific Software engineering Conference, (pp. 59–66). Beijing: IEEE. doi:10.1109/APSEC.2008.50.
Zhang, H., Kitchenham, B., & Pfahl, D. (2008b). Reflections on 10 years of software process simulation modeling: A systematic review. In Q. Wang, D. Pfahl, & D. Raffo (Eds.), Making globally distributed software development a success story (Vol. 5007, pp. 345–356). Berlin, Heidelberg: Springer. doi:10.1007/978-3-540-79588-9_30.
Author information
Authors and Affiliations
Corresponding author
Electronic supplementary material
Below is the link to the electronic supplementary material.
Rights and permissions
About this article
Cite this article
Matalonga, S., Solari, M. & Feliu, T.S. An empirically validated simulation for understanding the relationship between process conformance and technology skills. Software Qual J 22, 593–609 (2014). https://doi.org/10.1007/s11219-013-9214-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11219-013-9214-2