Advertisement

Software Quality Journal

, 13:407 | Cite as

Virtual Software Engineering Laboratories in Support of Trade-off Analyses

  • Jürgen MünchEmail author
  • Dietmar Pfahl
  • Ioana Rus
Article

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.

Keywords

decision support software engineering laboratories software process modeling software process simulation trade-off-analyses 

References

  1. Abdel-Hamid, T.K. and Madnick, S.E. 1991. Software Project Dynamics—An Integrated Approach, Prentice-Hall.Google Scholar
  2. 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.Google Scholar
  3. 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
  4. 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.Google Scholar
  5. Basili, V.R., Selby, R., and Hutchens, D. 1986. Experimentation in software engineering. IEEE Transactions on Software Engineering 12(7): 733–743.Google Scholar
  6. Basili, V.R. and Weiss, D.M. 1984. A methodology for collecting valid software engineering data, Transactions on Software Engineering 10(6): 728–738.CrossRefGoogle Scholar
  7. 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
  8. 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.Google Scholar
  9. 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.Google Scholar
  10. Christie, A.M. 1999a. Simulation: An enabling technology in software engineering, CROSSTALK—The Journal of Defense Software Engineering 2–7.Google Scholar
  11. Christie, A.M. 1999b. Simulation in support of cmm-based process improvement, Journal of Systems and Software 46(2/3): 107–112.Google Scholar
  12. 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
  13. Forrester, J.W. 1961. Industrial Dynamics, Productivity Press, Cambridge.Google Scholar
  14. 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
  15. 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
  16. 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.Google Scholar
  17. Judd, C., Smith, E.R., and Kidder, L. 1991. Research Methods in Social Relations, Harcourt Brace Jovanovich College Publishers, 6th edn.Google Scholar
  18. 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
  19. Krahl, D. 2000. The Extend simulation environment, In Proc. 2000 Winter Simulation Conference, Orlando, Florida, USA, IEEE Press, pp. 280–289.Google Scholar
  20. Lee, B. and Miller, J. 2004. Multi-project management in software engineering using simulation modeling, Software Quality Journal 12: 59–82.CrossRefGoogle Scholar
  21. 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.CrossRefGoogle Scholar
  22. 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.Google Scholar
  23. Madachy, R.J. and Tarbet, D. 2000. Case studies in software process modeling with system dynamics, Software Process Improvement and Practice 5: 133–146.CrossRefGoogle Scholar
  24. 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.Google Scholar
  25. 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.Google Scholar
  26. 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.Google Scholar
  27. 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.Google Scholar
  28. 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.Google Scholar
  29. 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.CrossRefGoogle Scholar
  30. 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.CrossRefGoogle Scholar
  31. 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.Google Scholar
  32. Pfahl, D. and Ruhe, G. 2002. IMMoS—A methodology for integrated measurement, modelling, and simulation, Software Process Improvement and Practice 7: 189–210.CrossRefGoogle Scholar
  33. 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
  34. 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.CrossRefGoogle Scholar
  35. 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.Google Scholar
  36. 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.Google Scholar
  37. 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
  38. 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.CrossRefGoogle Scholar
  39. 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.Google Scholar
  40. 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.Google Scholar
  41. 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.Google Scholar
  42. 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.Google Scholar
  43. 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.Google Scholar
  44. 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
  45. 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.Google Scholar
  46. Stallinger, F. and Grünbacher, P. 2001. System dynamics modelling and simulation of collaborative requirements engineering, Journal of Systems and Software 59: 311–321.CrossRefGoogle Scholar
  47. Ventana Systems. 2004. http://www.vensim.com (last visited on 6 Sep 2004)
  48. 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
  49. 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.Google Scholar
  50. 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

Copyright information

© Springer Science + Business Media, Inc. 2005

Authors and Affiliations

  1. 1.Fraunhofer Institute for Experimental Software Engineering (IESE)KaiserslauternGermany
  2. 2.Schulich School of EngineeringUniversity of CalgaryCalgaryCanada
  3. 3.Fraunhofer Center MarylandUSA

Personalised recommendations