An INLP approach for simulated-based automatic object deployment

Correct deployment of objects over a set of computing resources has a great impact on the performance of a distributed software. In this paper an Integer Non-Linear Programming (INLP) object deployment approach which relies on previous simulation records of the software use-case scenarios is presented. To obtain the optimal deployment of objects, collaborating in a set of use-case scenarios, with respect to response time, the Sequence Diagram corresponding to each scenario is transformed into a set of Finite State Processes (FSP). The resulting FSP's are simulated by means of a discrete event simulator tool to obtain the value of some metrics such as utilization, population and mean response times of objects and threads. These values are good indicators for the execution load of the intended use-case scenarios and along with the resource capacities, are applied to form the objective function of the INLP model. The INLP model then is solved by a solver to determine the optimal object deployment and the best number of replicas corresponding to each active object.

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

[2]  Steven A. Demurjian,et al.  Two Optimization Techniques for Component-Based Systems Deployment , 2001, SEKE.

[3]  Steffen Becker,et al.  Automatically improve software architecture models for performance, reliability, and cost using evolutionary algorithms , 2010, WOSP/SIPEW '10.

[4]  Filip De Turck,et al.  Automated Deployment of Distributed Software Components with Fault Tolerance Guarantees , 2008, 2008 Sixth International Conference on Software Engineering Research, Management and Applications.

[5]  Tony Field,et al.  Performance engineering with the UML profile for schedulability, performance and time: a case study , 2004, The IEEE Computer Society's 12th Annual International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems, 2004. (MASCOTS 2004). Proceedings..

[6]  Debzani Deb,et al.  Towards Autonomic Distribution of Existing Object Oriented Programs , 2006, International Conference on Autonomic and Autonomous Systems (ICAS'06).

[7]  Lars Grunske,et al.  ArcheOpterix: An extendable tool for architecture optimization of AADL models , 2009, 2009 ICSE Workshop on Model-Based Methodologies for Pervasive and Embedded Software.

[8]  Michael Devetsikiotis,et al.  An Automatic Framework for Efficient Software Performance Evaluation and Optimization , 2007, 40th Annual Simulation Symposium (ANSS'07).

[9]  Simonetta Balsamo,et al.  Performance evaluation of UML software architectures with multiclass Queueing Network models , 2005, WOSP '05.

[10]  Paola Inverardi,et al.  Model-based performance prediction in software development: a survey , 2004, IEEE Transactions on Software Engineering.

[11]  Jeff Magee,et al.  Concurrency - state models and Java programs , 2006 .

[12]  C. Murray Woodside,et al.  Fast Allocation of Processes in Distributed and Parallel Systems , 1993, IEEE Trans. Parallel Distributed Syst..