Virtual Software Engineering Laboratories in Support of Trade-off Analyses

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.

[1]  Judson Williford,et al.  Modeling the FedEx IT division: a system dynamics approach to strategic IT planning , 1999, J. Syst. Softw..

[2]  A. R. Ilersic,et al.  Research methods in social relations , 1961 .

[3]  Walt Scacchi,et al.  Simulating an Automated Approach to Discovery and Modeling of Open Source Software Development Processes , 2003 .

[4]  Dietmar Pfahl,et al.  IMMoS: a methodology for integrated measurement, modelling and simulation , 2002, Softw. Process. Improv. Pract..

[5]  Raymond J. Madachy System dynamics modeling of an inspection-based process , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[6]  David Raffo,et al.  Software process simulation to achieve higher CMM levels , 1999, J. Syst. Softw..

[7]  Khaled El Emam,et al.  Fraunhofer Institute for Experimental Software Engineering , 1997, Softw. Process. Improv. Pract..

[8]  D. Krahl,et al.  The Extend simulation environment , 2000, Proceeding of the 2001 Winter Simulation Conference (Cat. No.01CH37304).

[9]  Stuart E. Madnick,et al.  Software Project Dynamics: An Integrated Approach , 1991 .

[10]  Dieter Rombach,et al.  Creating an Advanced Software Engineering Laboratory by Combining Empirical Studies with Process Simulation , 2003 .

[11]  Antony Powell,et al.  Strategies for lifecycle concurrency and iteration - A system dynamics approach , 1999, J. Syst. Softw..

[12]  Jürgen Münch,et al.  Using empirical knowledge from replicated experiments for software process simulation: a practical example , 2003, 2003 International Symposium on Empirical Software Engineering, 2003. ISESE 2003. Proceedings..

[13]  J. Forrester Industrial Dynamics , 1997 .

[14]  Victor R. Basili,et al.  Experimentation in software engineering , 1986, IEEE Transactions on Software Engineering.

[15]  Ioana Rus,et al.  Software process simulation for reliability management , 1999, J. Syst. Softw..

[16]  Alan M. Christie Simulation: An Enabling Technology in Software Engineering , 1999 .

[17]  James S. Collofello,et al.  System dynamics modeling applied to software outsourcing decision support , 2000 .

[18]  Forrest Shull,et al.  The empirical investigation of Perspective-Based Reading , 1995, Empirical Software Engineering.

[19]  Dietmar Pfahl,et al.  Using simulation to analyse the impact of software requirement volatility on project performance , 2000, Inf. Softw. Technol..

[20]  Victor R. Basili,et al.  Experimental Software Engineering Issues: Critical Assessment and Future Directions , 1993, Lecture Notes in Computer Science.

[21]  Stefan Biffl,et al.  Systematically combining process simulation and empirical data in support of decision analysis in software development , 2002, SEKE '02.

[22]  DIETMAR PFAHL,et al.  Knowledge Acquisition and Process Guidance for Building System Dynamics Simulation Models: an Experience Report from Software Industry , 2000, Int. J. Softw. Eng. Knowl. Eng..

[23]  Tracy Hall,et al.  A Policy Investigation Model for Long-term Software Evolution Processes , 2004, ICSE 2004.

[24]  Martin Höst,et al.  Exploring bottlenecks in market-driven requirements management processes with discrete event simulation , 2001, J. Syst. Softw..

[25]  Keith Phalp,et al.  Empirical Studies Applied to Software Process Models , 1999, Empirical Software Engineering.

[26]  Jochen Ludewig,et al.  Quantitative modeling for the interactive simulation of software projects , 1999, J. Syst. Softw..

[27]  Paul Grünbacher,et al.  System dynamics modelling and simulation of collaborative requirements engineering , 2001, J. Syst. Softw..

[28]  Victor R. Basili,et al.  A Methodology for Collecting Valid Software Engineering Data , 1984, IEEE Transactions on Software Engineering.

[29]  Marvin V. Zelkowitz,et al.  Lessons learned from 25 years of process improvement: the rise and fall of the NASA software engineering laboratory , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

[30]  Ioana Rus Fraunhofer Combining Process Simulation and Orthogonal Defect Classification for Improving Software Dependability , .

[31]  Denton Tarbet,et al.  Case studies in software process modeling with system dynamics , 2000, Softw. Process. Improv. Pract..

[32]  Joseph S. Sherif,et al.  Software-Engineering Process Simulation model (SEPS) , 1997, J. Syst. Softw..

[33]  Gerald T. Mackulak,et al.  Stochastic simulation of risk factor potential effects for software development risk management , 2001, J. Syst. Softw..

[34]  Dietmar Pfahl,et al.  System Dynamics Applied to the Modelling of Software Projects , 1994, Softw. Concepts Tools.

[35]  V. B. Misic Extreme dynamics: towards a system dynamics model of the extreme programming software development process , 2004, ICSE 2004.

[36]  Victor R. Basili,et al.  Empirical Software Engineering Issues. Critical Assessment and Future Directions, International Workshop, Dagstuhl Castle, Germany, June 26-30, 2006. Revised Papers , 2007, Empirical Software Engineering Issues.

[37]  Lionel C. Briand,et al.  Practical guidelines for measurement-based process improvement , 1996, Softw. Process. Improv. Pract..

[38]  Alan M. Christie,et al.  Simulation in support of CMM-based process improvement , 1999, J. Syst. Softw..

[39]  Eliot R. Smith,et al.  Research methods in social relations , 1962 .

[40]  Thomas Hanne,et al.  Simulation-Based Risk Reduction for Planning Inspections , 2002, PROFES.

[41]  Miguel Toro,et al.  Using Dynamic Modeling and Simulation to Improve the COTS Software Process , 2004, PROFES.

[42]  N. Angkasaputra Making software process simulation modeling agile and pattern-based , 2004, ICSE 2004.

[43]  James Miller,et al.  Multi-Project Management in Software Engineering Using Simulation Modelling , 2004, Software Quality Journal.

[44]  David Raffo,et al.  Using software process simulation to assess the impact of IV&V activities , 2004, ICSE 2004.

[45]  Raymond J. Madachy,et al.  Software process simulation modeling: Why? What? How? , 1999, J. Syst. Softw..

[46]  Dietmar Pfahl,et al.  A CBT module with integrated simulation component for software project management education and training , 2001, J. Syst. Softw..

[47]  David Krahl Extend: the Extend simulation environment , 2002, WSC '02.

[48]  Dietmar Pfahl,et al.  Using Simulation to Visualise and Analyse Product-Process Dependencies in Software Development Projects , 2000, PROFES.