Skip to main content
Log in

Virtual Software Engineering Laboratories in Support of Trade-off Analyses

  • Published:
Software Quality Journal Aims and scope Submit manuscript

Abstract

Due to demanding customer needs and evolving technology, software organizations are forced to trade individual functional and non-functional product quality profiles against other factors such as cost, time, or productivity. The ability to influence or even control these factors requires a deep understanding of the complex relations between process and product attributes in relevant contexts. Based on such understanding, decision support is needed to adjust processes so that they match the product quality goals without violating given project constraints. We propose to use a Virtual Software Engineering Laboratory (VSEL) to establish such decision support cost-effectively. VSELs can be considered as being complementary to existing (empirical) Software Engineering Laboratories. This paper gives an introduction into the cornerstones of VSELs, discusses how they complement traditional empirically based Software Engineering Laboratories (SELs), and illustrates with the help of case examples from industrial and research environments, how to use them in support of product-focused trade-off analyses.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Abdel-Hamid, T.K. and Madnick, S.E. 1991. Software Project Dynamics—An Integrated Approach, Prentice-Hall.

  • Angkasaputra, N. and Pfahl, D. 2004. Making software process simulation modeling agile and pattern-based. In Proc. 5th International Workshop on Software Process Simulation Modeling, Edinburgh, Scotland, pp. 222–227.

  • Basili, V.R., Green, S., Laitenberger, O., Lanubile, F., Shull, F., Sørumgård, S., and Zelkowitz, M.V. 1996. The empirical investigation of perspective-based reading, Empirical Software Engineering 1(2): 133–164.

    Google Scholar 

  • Basili, V.R., McGarry, F., Pajerski, R., and Zelkowitz, M.V. 2002. Lessons learned from 25 years of process improvement: The rise and fall of the NASA software engineering laboratory, In Proc. 24th International Conference on Software Engineering, Orlando, Florida, USA, pp. 69–79.

  • Basili, V.R., Selby, R., and Hutchens, D. 1986. Experimentation in software engineering. IEEE Transactions on Software Engineering 12(7): 733–743.

    Google Scholar 

  • Basili, V.R. and Weiss, D.M. 1984. A methodology for collecting valid software engineering data, Transactions on Software Engineering 10(6): 728–738.

    Article  Google Scholar 

  • Briand, L.C., Differding, C., and Rombach, D. 1996. Practical guidelines for measurement-based process improvement, Software Process Improvement and Practice 2: 253–280.

    Google Scholar 

  • Cartwright, M. and Shepperd, M. 1999. On building dynamic models of maintenance behaviour, In R. Kusters, A. Cowderoy, F. Heemstra, E. van Veenendaal, (Eds.), Project Control for Software Quality, Shaker Publishing.

  • Ciolkowski, M., Differding, C., Laitenberger, O., and Münch, J. 1997. Empirical investigation of perspective-based reading: A replicated experiment, Fraunhofer Institute for Experimental Software Engineering, Kaiserslautern, Germany, Technical Report 048.97/E.

  • Christie, A.M. 1999a. Simulation: An enabling technology in software engineering, CROSSTALK—The Journal of Defense Software Engineering 2–7.

  • Christie, A.M. 1999b. Simulation in support of cmm-based process improvement, Journal of Systems and Software 46(2/3): 107–112.

    Google Scholar 

  • Drappa, A. and Ludewig, J. 1999. Quantitative modeling for the interactive simulation of software projects, Journal of Systems and Software 46(2/3): 113–122.

    Google Scholar 

  • Forrester, J.W. 1961. Industrial Dynamics, Productivity Press, Cambridge.

    Google Scholar 

  • Höst, M., Regnell, B., Dag, J., Nedstam, J., and Nyberg, C. 2001. Exploring bootlenecks in market-driven requirements management processes with discrete event simulation, Journal of Systems and Software 59(3): 323–332.

    Google Scholar 

  • Houston, D.X., Mackulak, G.T., and Collofello, J.S. 2001. Stochastic simulation of risk factor potential effects for software development risk management, Journal of Systems and Software 59(3): 247–257.

    Google Scholar 

  • Jensen, C. and Scacchi, W. 2003. Simulating an automated approach to discovery and modeling of open source software development processes, In Proc. 4th Process Simulation Modeling Workshop, Portland, USA.

  • Judd, C., Smith, E.R., and Kidder, L. 1991. Research Methods in Social Relations, Harcourt Brace Jovanovich College Publishers, 6th edn.

  • Kellner, M.I., Madachy, R.J., and Raffo, D.M. 1999. Software process simulation modeling: why? what? how? Journal of Systems and Software 46(2/3): 91–105.

    Google Scholar 

  • Krahl, D. 2000. The Extend simulation environment, In Proc. 2000 Winter Simulation Conference, Orlando, Florida, USA, IEEE Press, pp. 280–289.

  • Lee, B. and Miller, J. 2004. Multi-project management in software engineering using simulation modeling, Software Quality Journal 12: 59–82.

    Article  Google Scholar 

  • Lin, C.Y., Abdel-Hamid, T.K., and Sherif, J. 1997. Software-engineering process simulation model (SEPS), Journal of Systems and Software 38: 263–277.

    Article  Google Scholar 

  • Madachy, R.J. 1996. System dynamics modeling of an inspection-based process, In Proc. 18th International Conference on Software Engineering Berlin, Germany, IEEE Computer Society Press, pp. 376–386.

  • Madachy, R.J. and Tarbet, D. 2000. Case studies in software process modeling with system dynamics, Software Process Improvement and Practice 5: 133–146.

    Article  Google Scholar 

  • Mišic, V.B., Gevaert, H., and Rennie, M. 2004. Extreme dynamics: Towards a system dynamics model of the extreme programming software development process, In Proc. 5th International Workshop on Software Process Simulation Modeling, Edinburgh, Scotland, 237–242.

  • Münch, J. and Armbrust, O. 2003. Using empirical knowledge from replicated experiments for software process simulation: a practical example, In Proceedings of 2nd ACM-IEEE International Symposium on Empirical Software Engineering, Rome, Italy, pp. 18–27.

  • Münch, J., Rombach, D., and Rus, I. 2003. Creating an advanced software engineering laboratory by combining empirical studies with process simulation, In Proc. 4th International Workshop on Software Process Simulation Modeling, Portland, Oregon, USA.

  • Neu, N., Hanne, T., Münch, J., Nickel, S., and Wirsen, A. 2002. Simulation-based risk reduction for planning inspections, In Proc. 4th International Conference on Product Focused Software Process Improvement, Lecture Notes in Computer Science 2559, Springer, pp. 78–93.

  • Pfahl, D. and Birk, A. 2000. Using simulation to visualise and analyse product-process dependencies in software development projects, In Proc. 2nd International Conference on Product Focused Software Process Improvement, Oulu, Finland, 88–102.

  • Pfahl, D., Klemm, M., and 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.

    Article  Google Scholar 

  • Pfahl, D. and Lebsanft, K. 2000a. Using simulation to analyse the impact of software requirement volatility on project performance, Information and Software Technology 42(14): 1001–1008.

    Article  Google Scholar 

  • Pfahl, D. and Lebsanft, K. 2000b. Knowledge acquisition and process guidance for building system dynamics simulation models: An experience report from software industry, International Journal of Software Engineering and Knowledge Engineering 10(4): 487–510.

  • Pfahl, D. and Ruhe, G. 2002. IMMoS—A methodology for integrated measurement, modelling, and simulation, Software Process Improvement and Practice 7: 189–210.

    Article  Google Scholar 

  • Powell, A., Mander, K., and Brown, D. 1999. Strategies for lifecycle concurrency and iteration: a system dynamics approach, Journal of Systems and Software 46(2/3): 151–162.

    Google Scholar 

  • Raffo, D.M., Kaltio, T., Partridge, D., Phalp, K., and Ramil, J.F. 1999. Empirical studies applied to software process models, Empirical Software Engineering 4(4): 353–369.

    Article  Google Scholar 

  • Raffo, D.M., Nayak, U., Setamanit, S., Sullivan, P., and Wakeland, W. 2004. Using software process simulation to assess the impact of IV&V activities, In Proc. 5th International Workshop on Software Process Simulation Modeling, Edinburgh, Scotland, pp. 197–205.

  • Raffo, D.M., Setamanit, S., and Wakeland, W. 2003. Towards a software process simulation model of globally distributed software development projects, In Proc. 4th Process Simulation Modeling Workshop, Portland, Oregon, USA.

  • Raffo, D.M., Vandeville, J.V., and Martin, R.H. 1999. Software process simulation to achieve higher CMM levels, Journal of Systems and Software 46(2/3): 163–172.

    Google Scholar 

  • Roehling, S.T., Collofello, J.S., Hermann, B.G., and Smith-Daniels, D.E. 2000. System dynamics modeling applied to software outsourcing decision support, Software Process Improvement and Practice 5: 169–182.

    Article  Google Scholar 

  • Rombach, H.D. 1999. Experimentation—engine for applied research and technology in software engineering, In Proc. NASA's 24th Annual Software Engineering Workshop, Software Engineering Laboratory, Greenbelt, Maryland, USA.

  • Rombach, H.D., Basili, V.R., and Selby, R.W. 1993. Experimental software engineering issues: Critical assessment and future directions, Lecture Notes in Computer Science, Springer.

  • Ruiz, M., Ramos, I., and Toro, M. 2004. Using dynamic modeling and simulation to improve the cots software process, In Proc. 5th International Conference on Product Focused Software Process Improvement, Kyoto, Japan, pp. 568–581.

  • Rus, I. 2002. Combining process simulation and orthogonal defect classification for improving software dependability, In Proc. 13th International Symposium on Software Reliability Engineering, Annapolis, USA.

  • Rus, I., Biffl, S., and Halling, M. 2002. Systematically combining process simulation and empirical data in support of decision analysis in software development, In Proc. 1st International Workshop on Software Engineering Decision Support, Ischia, Italy.

  • Rus, I., Collofello, J. S., and Lakey, P. 1999. Software process simulation for reliability management, Journal of Systems and Software 46(2/3): 173–182.

    Google Scholar 

  • Rus, I., Neu, H., and Münch, J. 2003. A systematic methodology for developing discrete event simulation models of software development processes, In Proc. 4th International Workshop on Software Process Simulation and Modeling, Portland, Oregon, USA.

  • Stallinger, F. and Grünbacher, P. 2001. System dynamics modelling and simulation of collaborative requirements engineering, Journal of Systems and Software 59: 311–321.

    Article  Google Scholar 

  • Ventana Systems. 2004. http://www.vensim.com (last visited on 6 Sep 2004)

  • Waeselynck, H. and Pfahl, D. 1994. System dynamics applied to the modelling of software projects, Software Concepts and Tools 15(4): 162–176.

    Google Scholar 

  • Wernick, P. and Hall, T. 2004. A policy investigation model for long-term software evolution processes, In Proc. 5th International Workshop on Software Process Simulation Modeling, Edinburgh, Scotland, 149–158.

  • Williford, J. and Chang, A. 1999. Modelling the FedEx IT division: A system dynamics approach to strategic IT planning, Journal of Systems and Software 46(2/3): 203–211.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jürgen Münch.

Additional information

Dr. Jürgen Münch is Department head for processes and measurement at the Fraunhofer Institute for Experimental Software Engineering (IESE), Kaiserslautern. Before that, Dr. Münch was an executive board member of the temporary research institute SFB 501 “Development of Large Systems with Generic Methods” funded by the German Research Foundation (DFG). Dr. Münch received his PhD degree (Dr. rer. nat.) in Computer Science from the University of Kaiserslautern, Germany. Dr. Münch's research interests in software engineering include: (1) modeling and measurement of software processes and products, (2) software quality assurance and control, (3) technology evaluation through experimental means and simulation, (4) generic methods for the development of large systems, (5) technology transfer methods.

Dr. Dietmar Pfahl joined the University of Calgary in July 2005. Before, he was department head with the Fraunhofer Institute for Experimental Software Engineering (IESE) in Kaiserslautern, Germany. He has more than 15 years of experience in conducting and leading national and international research and transfer projects with software industry, including organizations such as Bosch, DaimlerChrysler, Dräger, Ericsson, and Siemens. Dr. Pfahl received his PhD degree (Dr. rer. nat.) in Computer Science from the University of Kaiserslautern. He has more than 50 refereed publications. His current research interests include quantitative software project management, software process analysis and improvement, and simulation-based learning and decision support.

Dr. Ioana Rus is a scientist at the Fraunhofer Center for Empirical Software Engineering Maryland. She has experience in research, teaching, and software development. Her current research interests include software process modeling and simulation, dependability engineering, experience and knowledge management, process improvement, measurement and empirical studies in software development and technology transfer. She has a Ph.D. in Computer Science and Engineering and is a member of the IEEE Computer Society.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Münch, J., Pfahl, D. & Rus, I. Virtual Software Engineering Laboratories in Support of Trade-off Analyses. Software Qual J 13, 407–428 (2005). https://doi.org/10.1007/s11219-005-4253-y

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11219-005-4253-y

Keywords

Navigation