Modeling Event-Based Communication in Component-Based Software Architectures for Performance Predictions

Modeling Event-Based Communication in Component-Based Software Architectures for Performance Predictions

Journal on Software and Systems Modeling manuscript No. (will be inserted by the editor) Modeling Event-based Communication in Component-based Software Architectures for Performance Predictions Christoph Rathfelder1, Benjamin Klatt1, Kai Sachs2, Samuel Kounev3? 1 FZI Research Center for Information Technology Karlsruhe, Germany frathfelder; [email protected] 2 SAP AG Walldorf, Germany [email protected] 3 Karlsruhe Institute of Technology (KIT) Karlsruhe, Germany [email protected] Received: date / Revised version: date Abstract Event-based communication is used in dif- 1 Introduction ferent domains including telecommunications, transporta- tion, and business information systems to build scal- The event-based communication paradigm is used in- able distributed systems. Such systems typically have creasingly often to build loosely-coupled distributed sys- stringent requirements for performance and scalability as tems in many different industry domains. The applica- they provide business and mission critical services. While tion areas of event-based systems range from distributed the use of event-based communication enables loosely- sensor-based systems up to large-scale business infor- coupled interactions between components and leads to mation systems [24]. Compared to synchronous com- improved system scalability, it makes it much harder for munication using, for example, remote procedure calls developers to estimate the system's behavior and perfor- (RPC), event-based communication among components mance under load due to the decoupling of components promises several benefits such as high scalability and ex- and control flow. In this paper, we present our approach tendability [25]. Being asynchronous in nature, it allows enabling the modeling and performance prediction of a send-and-forget approach, i.e., a component that sends event-based systems at the architecture level. Apply- a message can continue its execution without waiting for ing a model-to-model transformation, our approach in- the receiver to react on the message. Furthermore, the tegrates platform-specific performance influences of the loose coupling of components achieved by the mediating underlying middleware while enabling the use of differ- middleware system leads to an increased extensibility of ent existing analytical and simulation-based prediction the system as components can easily be added, removed, techniques. In summary the contributions of this paper or substituted. are: i) the development of a meta-model for event-based With the growing proliferation of event-based com- communication at the architecture level, ii) a platform munication in mission critical systems, the performance aware model-to-model transformation, and iii) a detailed and scalability of such systems are becoming a major evaluation of the applicability of our approach based on concern. To ensure adequate Quality-of-Service (QoS), it two representative real-world case studies. The results is essential that applications are subjected to a rigorous demonstrate the effectiveness, practicability and accu- performance and scalability analysis as part of the soft- racy of the proposed modeling and prediction approach. ware development process. In today's data centers, soft- ware systems are often deployed on server machines with over-provisioned capacity in order to guarantee highly available and responsive operation [28], which automati- cally leads to lower efficiency. Although the event-based communication model promises to improve flexibility and scalability, the complexity compared to direct RPC-based communication is higher since the application logic is ? This work was partially funded by the German Research distributed among multiple independent event handlers Foundation (grant No. KO 3445/6-1) with decoupled and parallel execution paths. This in- 2 Christoph Rathfelder et al. creases the difficulty of modeling event-based commu- tailed evaluation of our approach based on two real- nication for quality predictions at system design and world case studies representing different domains and deployment time. Thus, the evaluation of event-based communication styles of event-based systems. systems requires specialized techniques that consider the The contributions of the paper are i) the identifi- different characteristics and features of event-based com- cation and implementation of meta-model elements re- munication. quired for modeling event-based communication at the Performance modeling and prediction techniques for architecture level, ii) the design and realization of the component-based systems, surveyed in [33], support the two-step model-to-model transformation integrating plat- architect in evaluating the system architecture and de- form-independent and platform-specific aspects of event- sign alternatives regarding their performance and re- based communication into the prediction model, and fi- source efficiency. However, most general-purpose perfor- nally iii) a detailed evaluation of the presented approach mance meta-models for component-based systems pro- based on two representative real-world case studies. vide limited support for modeling event-based commu- nication. Furthermore, existing performance prediction Modeling event-based communication Modeling techniques specialized for event-based systems (e.g., [42, event-based communication at the architecture level 9,54]) are focused on modeling the routing of events in requires new meta-model elements. We extended our the system as opposed to modeling the interactions and work in [29], which was limited to direct point-to- message flows between the communicating components. point connections with elements enabling the mod- As an example of a representative mature meta-model eling of publish/subscribe communication in com- for component-based software architectures, we consider ponent-based systems. Theses extensions open up a the Palladio Component Model (PCM) [6]. PCM is ac- new application domain of industrial systems for our companied with different analytical and simulation-based approach. We implemented these meta-model exten- prediction techniques, e.g., [6,38,34] enabling quality pre- sions based on PCM, as a mature and representative dictions at system design time. Similarly to most com- meta-model for component-based architectures. ponent meta-models for component-based architectures, Platform-aware refinement transformation We de- PCM, in its original version did not provide support for veloped a two-step model-to-model transformation modeling of event-based communication. Performance responsible for integrating the performance relevant predictions are only possible using workarounds as demon- influence factors of event-based communication into strated in [48]. The modeling effort incurred by this man- the prediction model. The first step refines the event- ual workaround approach is very high and provides lim- based point-to-point and publish/subscribe commu- ited flexibility to evaluate different design alternatives. nication links with a detailed event-processing chain In [50], we briefly sketched the core elements required while the second steps integrates platform-specific for modeling event-based communication. In a follow components. The clear separation of platform-inde- up poster paper [49], we described our idea of using a pendent and platform-specific aspects supports ar- model-to-model transformation to map the newly intro- chitects in evaluating the influence of different mid- duced model elements to existing PCM model elements dleware implementations on the system performance. allowing to use the available prediction techniques, while Evaluation In order to provide a comprehensive eval- significantly reducing the modeling effort. In [29], we uation of our approach we selected two represen- presented an extension of the PCM combined with an tative real-world systems from different application initial implementation of such a model-to-model trans- domains and covering most aspects of event-based formation that was limited to modeling point-to-point systems. The first case study is based on a traffic- connections between components. monitoring system built on top of the distributed In this paper, we present our integrated approach peer-to-peer middleware SBUS [27]. In addition to enabling the comprehensive modeling and performance the prediction accuracy, we evaluated the adaptabil- prediction of event-based communication as part of ar- ity of our prediction model to reflect architectural chitecture-level models. We extend our work presented changes and deployment options, which are typical for distributed event-based systems. The SPECjms- in [29] to additionally support the modeling and predic- 1 tion of publish/subscribe systems and thus extends the 2007 benchmark , our second case study, is a sup- scope of our approach to a new domain of event-based ply chain management system representative for real- systems. The implementation of our approach is based world industrial applications built on top of a central- on PCM as a mature and representative meta-model 1 SPECjms2007 is a trademark of the Standard Perfor- for architecture-level performance predictions. The de- mance Evaluation Corporation (SPEC). The results or find- scribed meta-model elements combined with the pre- ings in this publication have not been reviewed or ac- sented model-to-model transformation cover point-to-po- cepted by SPEC, therefore no comparison nor performance int as well as publish/ subscribe communication and inference can be made against any published SPEC re-

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    25 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us