State dependence in performance evaluation of component-based software systems

Integrating rising variability of software systems in performance prediction models is crucial to allow widespread industrial use of performance prediction. One of such variabilities is the dependency of system performance on the context and history-dependent internal state of the system (or its components). The questions that rise for current prediction models are (i) how to include the state properties in a prediction model, and (ii) how to balance the expressiveness and complexity of created models. Only a few performance prediction approaches deal with modelling states in component-based systems. Currently, there is neither a consensus in the definition, nor in the method to include the state in prediction models. For these reasons, we have conducted a state-of-the-art survey of existing approaches addressing their expressiveness to model stateful components. Based on the results, we introduce a classification scheme and present the state-defining and state-dependent model parameters. We extend the Palladio Component Model (PCM), a model-based performance prediction approach, with state-modelling capabilities, and study the performance impact of modelled state. A practical influences of the internal state on software performance is evaluated on a realistic case study.

[1]  Raffaela Mirandola,et al.  CB-SPE Tool: Putting Component-Based Performance Engineering into Practice , 2004, CBSE.

[2]  Dorina C. Petriu,et al.  The Future of Software Performance Engineering , 2007, Future of Software Engineering (FOSE '07).

[3]  Heiko Koziolek,et al.  A QoS Driven Development Process Model for Component-Based Software Systems , 2006, CBSE.

[4]  B. Zimmerová Modelling and Formal Analysis of Component-Based Systems in View of Component Interaction , 2008 .

[5]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[6]  John Murphy,et al.  Performance management in component-oriented systems using a Model Driven Architecture/spl trade/ approach , 2002, Proceedings. Sixth International Enterprise Distributed Object Computing.

[7]  Dick Hamlet Subdomain testing of units and systems with state , 2006, ISSTA '06.

[8]  Chien-Chung Shen,et al.  MIDAS: Integrated Design and Simulation of Distributed Systems , 1991, IEEE Trans. Software Eng..

[9]  Heiko Koziolek,et al.  Performance evaluation of component-based software systems: A survey , 2010, Perform. Evaluation.

[10]  Heiko Koziolek,et al.  Parameter dependencies for reusable performance specifications of software components , 2010 .

[11]  Raffaela Mirandola,et al.  The Common Component Modeling Example: Comparing Software Component Models [result from the Dagstuhl research seminar for CoCoME, August 1-3, 2007] , 2007, CoCoME.

[12]  Steffen Becker,et al.  The Palladio component model for model-driven performance prediction , 2009, J. Syst. Softw..

[13]  Steffen Becker,et al.  Transforming Operational Profiles of Software Components for Quality of Service Predictions , 2005 .

[14]  Raffaela Mirandola,et al.  Modeling and Analysis of Non-functional Properties in Component-based Systems , 2003, Electron. Notes Theor. Comput. Sci..

[15]  Ada Diaconescu,et al.  Automating the performance management of component-based enterprise systems through the use of redundancy , 2005, ASE '05.

[16]  Klaus Meyer-Wegener,et al.  Estimating Non-functional Properties of Component-based Software Based on Resource Consumption , 2004, SC.

[17]  Séverine Sentilles,et al.  A Component Model for Control-Intensive Distributed Embedded Systems , 2008, CBSE.

[18]  Connie U. Smith,et al.  New Software Performance AntiPatterns: More Ways to Shoot Yourself in the Foot , 2002, Int. CMG Conference.

[19]  Steffen Becker,et al.  Parametric performance completions for model-driven performance prediction , 2010, Perform. Evaluation.

[20]  Steffen Becker,et al.  Putting Components into Context Supporting QoS-Predictions with an explicit Context Model , 2006 .

[21]  Alan Fekete,et al.  Design-level performance prediction of component-based applications , 2005, IEEE Transactions on Software Engineering.

[22]  Gabriel A. Moreno,et al.  Enabling predictable assembly , 2003, J. Syst. Softw..

[23]  John Daniels,et al.  UML Components: A Simple Process for Specifying Component-Based Software , 2000 .

[24]  Petr Hnetynka,et al.  SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model , 2006, Fourth International Conference on Software Engineering Research, Management and Applications (SERA'06).