Modeling and Selection of Software Service Variants

Modeling and Selection of Software Service Variants

Modeling and Selection of Software Service Variants Zur Erlangung des akademischen Grades eines Doktors der Ingenieurwissenschaften (Dr.-Ing.) von der Fakultät für Wirtschaftswissenschaften des Karlsruher Institut für Technologie (KIT) genehmigte DISSERTATION von Dipl.-Wi.-Ing. John Erik Wittern Tag der mündlichen Prüfung: 14. Mai 2014 Referent: Prof. Dr.-Ing. Stefan Tai Korreferent: Prof. Dr.-Ing. Stefan Jähnichen Karlsruhe, Mai 2014 Abstract Providers and consumers have to deal with variants during the development and the delivery of software services. Variants are alternative instances of a service’s design, implementation, deploy- ment, or operation. Making decisions about variants is parts of any software service development activities. Providers need to deliver variants to address diverse or changing consumer needs, which are best served by a specific variant. Approaches to deal with variants from software product line engineering lack desirable capabilities for representing characteristics, collaboration in modeling, and (participatory) selection of variants, even among services. This thesis presents service feature modeling, a novel approach consisting of a variability modeling language and a set of methods to address these challenges in modeling and selecting software service variants. The service feature modeling language extends standard feature modeling from software product line engineering. A typology of feature types differentiates their semantics with the goal to utilize service feature models (SFMs) in novel ways, like realizing comparability of variants across ser- vices. Attribute types represent concerns common to multiple attributes within an SFM to reduce modeling efforts and for attribute aggregation. A novel modeling method considers SFMs to be composed by services, addressing the collaboration of experts in modeling and the integration of dynamic or complex attribute values. Making use of SFMs, a structured selection process flexibly combines a set of methods for decision-makers to determine which variant to develop or deliver. A configuration set determi- nation method, extending existing approaches with attribute aggregation, produces all valid ser- vice variants represented by an SFM. Determined configuration sets are narrowed down with a novel, fuzzy requirements filter. Skyline filtering, adapted from database systems, dismisses ser- vice variants that are dominated by others. Preference-based ranking applies a well-known multi- criteria decision making approach to rank service variants based on their fulfillment of preferences. Through abstractions, it aims to enable participation by involving non-technical decision-makers in service variant selection. This thesis presents an evaluation of the outlined concepts, consisting of multiple parts. A proof- of-concept implementation and a performance evaluation of a SFM tool suite show the realizability and applicability of service feature modeling, including the composition of SFMs from services and all outlined usage methods. A first use case concerns the development of public services under consideration of service variants, whose selection was driven by citizen participation. A second use case concerns the modeling and selection of Infrastructure as a Service (IaaS) variants and their automatic consumption and usage. Finally, an empirical evaluation indicates good usability, expressiveness, and usefulness and interpretability of service feature modeling. i Acknowledgment This thesis could not have been completed, had it not been for numerous people who supported and influenced me during the last 4 years. Firstly, a big thank you to my supervisor, Prof. Dr.-Ing. Stefan Tai. He considerably shaped the way I think about research and computer science in particular. His contributions to both my work and my understanding of research always combined deep technical knowledge with the urge to motivate one’s work based on relevant problems in relevant contexts. Stefan’s approach to conducting research will always be the gold standard for me. I further thank Prof. Dr.-Ing. Stefan Jähnichen, who kindly acted as my Korreferent and pro- vided me with the opportunity to present and discuss especially the feature modeling aspects of this work with him and his team at TU Berlin. I also thank Prof. Dr. Rudi Studer and Prof. Dr. Ir. Marc Wouters, who completed the thesis committee. Dr. Christian Zirpins helped me shape this work from the beginning. I thank him for the great time working in the COCKPIT project together, the fantastic journeys we undertook in this context, and his valuable advice and guidance that expanded beyond his time at our research group. I started my time at eOrganization writing my Diplomarbeit in 2009. I thank my two supervisors, Robin Fischer and Dr. Ulrich Scholten, who invoked my scientific curiosity, ensured a smooth transition into my time as a doctorand, and became dear friends. I thank my eOrganization colleagues in Karlsruhe, Dr.-Ing. David Bermbach, Bugra Derre, Dr. Christian Janiesch, Jörn Kuhlenkamp, Markus Klems, Tilmann Kopp, Michael Menzel, Steffen Müller, Dr.-Ing. Nelly Schuster, and Raffael Stein for providing such a great environment to work in and for the various, fruitful collaborations. I thank my FZI colleagues Dr. Gregory Katsaros, Luise Kranich, Alexander Lenk, David Müller, Prof. Dr.-Ing. Frank Pallas, and Mandy Schneider in Berlin, who made the Aussenstelle a great place to work and taught me a lot about Tischfussball. I further thank all my colleagues from AIFB, FZI/IPE, and KSRI. I am especially thankful for the great administrative support I received from Heike Döhmer and Rita Schmidt. I thank my collaborators from the COCKPIT project and the many students I had the pleasure to work with. I thank my family and friends - they supported me throughout these years and gave me the strength and perseverance required to finish this work. I especially appreciated the inspiring dis- cussions about my work and its context with my father, Prof. Dr. Klaus-Peter Wittern, and with Dr. Timm Gudehus. Finally, I thank my great love Gesina. Berlin, May 2014 Erik Wittern iii Contents Abstract ............................................ i Acknowledgment ....................................... iii 1 Introduction ........................................ 1 1.1 Examples for Variants in Software Services ................... 2 1.1.1 Public Service Design ........................... 2 1.1.2 Financial Web Service Consumption ................... 4 1.1.3 IaaS Configuration ............................. 5 1.2 Motivations for Software Service Variants .................... 7 1.3 Problem Statement ................................. 9 1.3.1 Problems Regarding Modeling Service Variants ............ 9 1.3.2 Problems Regarding Selecting Service Variants ............ 11 1.4 Research Design and Contributions ........................ 13 1.4.1 Concepts and Methodology ........................ 14 1.4.2 Modeling Language ............................. 15 1.4.3 Methods ................................... 15 1.4.4 Tools ..................................... 16 1.5 Structure of this Dissertation ............................ 17 2 Concepts and Methodology .............................. 19 2.1 Service Concept ................................... 19 2.1.1 Generic Services .............................. 19 2.1.2 Software Services .............................. 21 2.2 Software Service Life-Cycle Model ........................ 23 2.2.1 Software Life-Cycle Models ........................ 23 2.2.2 Service Life-Cycle Models ......................... 24 2.2.3 Our Software Service Life-Cycle ..................... 25 2.3 Service Variants and Variability .......................... 30 2.3.1 Origins of Service Variability ........................ 32 2.3.2 Variability Subject .............................. 32 2.3.3 Affected Service Roles ........................... 33 2.3.4 Time of Occurrence ............................. 33 v Contents 2.3.5 Realization of Variability .......................... 34 2.4 Fundamentals of Modeling ............................. 37 2.4.1 Characteristics of Modeling ........................ 37 2.4.2 Generic Modeling Process ......................... 38 2.5 Methodology of Service Feature Modeling .................... 39 3 Modeling Service Variants ............................... 43 3.1 Standard Feature Modeling ............................ 43 3.1.1 Appeal of Feature Modeling ........................ 43 3.2 Service Feature Modeling Language ....................... 44 3.2.1 Basics of the Service Feature Modeling Language ........... 45 3.2.2 Feature Types in Service Feature Modeling ............... 51 3.2.3 Representation of Service Variability with Feature Types ....... 53 3.2.4 Attribute Types in Service Feature Modeling ............... 55 3.3 Service Feature Modeling Process ........................ 57 3.3.1 Involved Stakeholders ........................... 58 3.3.2 Modeling Procedure ............................ 58 3.3.3 Modeling SFMs with Similar Structure .................. 59 3.4 Coordinated Composition of Service Feature Models .............. 61 3.4.1 Composition Model ............................. 63 3.4.2 Roles ..................................... 64 3.4.3 Coordination Rules ............................. 65 3.4.4 Service Binding ............................... 66 3.5 Related Work on Modeling Service Variants ................... 67 3.5.1 Variability Modeling Languages ...................... 67 3.5.2 Feature-based Modeling of Service Variability .............

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    207 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