@phdthesis{7569,
  abstract     = {{Dynamic Meta Modeling (DMM) is a semantics specification technique targeted at MOF-based modeling languages, where a language's behavior is defined by means of graphical operational rules which change runtime models. The DMM approach has first been suggested by Engels et al. in 2000; Hausmann has then defined the DMM language on a conceptual level within his PhD thesis in 2006. Consequently, the next step was to bring the existing DMM concepts alive, and then to apply them to different modeling languages, making use of the lessons learned to improve the DMM concepts as well as the DMM tooling. The result of this process is the DMM++ method, which is presented within this thesis. Our contributions are three-fold: First, and according to our experiences with the DMM language, we have introduced new concepts such as refinement by means of rule overriding, and we have strengthened existing concepts such as the dealing with universally quantified structures or attributes. Second, we have developed a test-driven process for semantics specification: A set of test models is created, and their expected behavior is fixed. Then, the DMM rules are created incrementally, finally resulting in a DMM ruleset realizing at least the expected behavior of the test models. Additionally, we have defined a set of coverage criteria for DMM rulesets which allow to measure the quality of a set of test models. Third, we have shown how functional as well as non-functional requirements can be formulated against models and their DMM specifications. The former is achieved by providing a visual language for formulating temporal logic properties, which are then verified with model checking techniques, and by allowing for visual debugging of models failing a requirement. For the latter, the modeler can add performance information to models and analyze their performance properties, e.g. average throughput.}},
  author       = {{Soltenborn, Christian}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Quality Assurance with Dynamic Meta Modeling}}},
  doi          = {{http://nbn-resolving.de/urn:nbn:de:hbz:466:2-12420}},
  year         = {{2013}},
}

@inproceedings{502,
  abstract     = {{Self-adaptation allows continuously running software systems to operate in changing and uncertain contexts while meeting their requirements in a broad range of contexts, e.g., from low to high load situations. As a consequence, requirementsfor self-adaptive systems are more complex than requirements for static systems as they have to explicitly address properties of the self-adaptation layer.While approaches exist in the literature to capture this new type of requirements formally, their achievement cannot be analyzed in early design phases yet. In this paper, we apply RELAX to formally specify non-functional requirements for self-adaptive systems. We then apply our model-based SimuLizar approach for a semi-automatic analysis to test whether the self-adaptation layer ensures that these non-functional requirements are met. We evaluate our approach on the design of a proof-of-concept load balancer system. As this evaluation demonstrates, we can iteratively improve our system design by improving unsatisfactory self-adaption rules.}},
  author       = {{Becker, Matthias and Luckey, Markus and Becker, Steffen}},
  booktitle    = {{Proceedings of the 9th ACM SigSoft International Conference on Quality of Software Architectures (QoSA'13)}},
  pages        = {{43--52 }},
  title        = {{{Performance Analysis of Self-Adaptive Systems for Requirements Validation at Design-Time}}},
  doi          = {{10.1145/2465478.2465489}},
  year         = {{2013}},
}

@misc{504,
  author       = {{Schwichtenberg, Simon}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Ontology-based Normalization and Matching of Rich Service Descriptions}}},
  year         = {{2013}},
}

@inproceedings{506,
  abstract     = {{Alle Dom{\"a}nen und Branchen der heutigen Wirtschaft sind auf eine effiziente und effektive Entwicklung von ben{\"o}tigten Softwaresystemen angewiesen. Das 40 Jahre alte Prinzip der Beschaffung von Softwaresystemen durch den Einkauf von teuren, relativ unflexiblen Standardl{\"o}sungen beziehungsweise der noch teureren Erstellung durch Softwareh{\"a}user oder eigene Softwareabteilungen muss deshalb in Frage gestellt werden. Mit dem Einsatz von Cloud Computing-Techniken wird es m{\"o}glich, Softwaresysteme und die f{\"u}r den Betrieb ben{\"o}tigten Ressourcen nur bei Bedarf und nur in der ben{\"o}tigten Form einzukaufen. Mit dem Ansatz der service-orientierten Architekturen stehen Methoden zur Verf{\"u}gung, Software zumindest unternehmensintern flexibel zusammenzustellen. Diese ersten Ans{\"a}tze f{\"u}r eine neue Art der Entwicklung und des Betriebs von Softwaresystemen bilden den Ausgangspunkt f{\"u}r die Forschungen in dem seit 2011 laufenden DFG Sonderforschungsbereich (SFB) 901 „On-The-Fly Computing“ an der Universit{\"a}t Paderborn. Die Vision des On-The-Fly Computing ist, dass die Softwaresysteme der Zukunft aus individuell und automatisch konfigurierten und zur Ausf{\"u}hrung gebrachten Softwarebausteinen bestehen, die auf M{\"a}rkten frei gehandelt werden und flexibel kombinierbar sind. Um zu erforschen, in wie weit diese Vision realisierbar ist, werden Konzepte, Methoden und Techniken entwickelt, die eine weitestgehend automatische Konfiguration, Ausf{\"u}hrung und Adaption von Softwaresystemen aus auf weltweiten M{\"a}rkten verf{\"u}gbaren Services erm{\"o}glichen. Um diese Ziele zu erreichen, arbeiten an der Universit{\"a}t Paderborn Informatiker aus unterschiedlichen Disziplinen wie Softwaretechnik, Algorithmik, Rechnernetze, Systementwurf, Sicherheit und Kryptographie mit Wirtschaftswissenschaftlern zusammen, die ihre spezifische Expertise einbringen, mit der die Organisation und Weiterentwicklung des Marktes vorangetrieben werden kann.}},
  author       = {{Engels, Gregor}},
  booktitle    = {{Proceedings of the Multikonferenz Sofware Engineering 2013 (SE 2013)}},
  pages        = {{17--18}},
  title        = {{{On-The-Fly Computing -- Das Entwicklungs- und Betriebsparadigma fürSoftwaresysteme der Zukunft}}},
  year         = {{2013}},
}

@article{515,
  abstract     = {{The as a service paradigm reflects the fundamental idea of providing basic coherent functionality in terms of components that can be utilised on demand. These so-called services may also be interconnected in order to provide more complex functionality. Automation of this service composition process is indeed a formidable challenge. In our work, we are addressing this challenge by decomposing service composition into sequential decision making steps. Each step is supported by a recommendation mechanism. If composition requests recur over time and if evaluations of composition results are fed back, a proper recommendation strategy can evolve over time through learning from experience. In this paper, we describe our approach of modelling this service composition and recommendation process as Markov decision process and of solving it by means of reinforcement learning. A case study serves as proof of concept.}},
  author       = {{Jungmann, Alexander and Kleinjohann, Bernd and Kleinjohann, Elisabeth}},
  journal      = {{International Journal of Business Process Integration and Management}},
  number       = {{4}},
  pages        = {{284--297}},
  publisher    = {{InderScience}},
  title        = {{{Learning Service Recommendations}}},
  doi          = {{10.1504/IJBPIM.2013.059135}},
  year         = {{2013}},
}

@inproceedings{516,
  abstract     = {{The as a Service paradigm reflects the fundamental idea of providing basic coherent functionality in terms of components that can be utilized on demand. These so-called services may also be interconnected in order to provide more complex functionality. Automation of this service composition process is indeed a formidable challenge. In our work, we are addressing this challenge by decomposing service composition into sequential decision making steps. Each step is supported by a recommendation mechanism. If composition requests recur over time and if evaluations of composition results are fed back, a proper recommendation strategy can evolve over time through learning from experience. In this paper, we describe our general idea of modeling this service composition and recommendation process as Markov Decision Process and of solving it by means of Reinforcement Learning. A case study serves as proof of concept. }},
  author       = {{Jungmann, Alexander and Kleinjohann, Bernd}},
  booktitle    = {{Proceedings of the 10th IEEE International Conference on Services Computing (SCC)}},
  pages        = {{97--104}},
  title        = {{{Learning Recommendation System for Automated Service Composition}}},
  doi          = {{10.1109/SCC.2013.66}},
  year         = {{2013}},
}

@inproceedings{517,
  abstract     = {{In the Semantic (Web) Services area, services are considered black boxes with a semantic description of their interfaces as to allow for precise service selection and conﬁguration. The semantic description is usually grounded on domain-speciﬁc concepts as modeled in ontologies. This accounts for types used in service signatures, but also predicates occurring in preconditions and effects of services. Ontologies, in particular those enhanced with rules, capture the knowledge of domain experts on properties of and relations between domain concepts. In this paper, we present a veriﬁcation technique for service compositions which makes use of this domain knowledge. We consider a service composition to be an assembly of services of which we just know signatures, preconditions, and effects. We aim at proving that a composition satisﬁes a (user-deﬁned) requirement, speciﬁed in terms of guaranteed preconditions and required postconditions. As an underlying veriﬁcation engine we use an SMT solver. To take advantage of the domain knowledge (and often, to enable veriﬁcation at all), the knowledge is fed into the solver in the form of sorts, uninterpreted functions and in particular assertions as to enhance the solver’s reasoning capabilities. Thereby, we allow for deductions within a domain previously unknown to the solver. We exemplify our technique on a case study from the area of water network optimization software.}},
  author       = {{Walther, Sven and Wehrheim, Heike}},
  booktitle    = {{Proceedings of the 18th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS)}},
  pages        = {{24 -- 32 }},
  title        = {{{Knowledge-Based Verification of Service Compositions - An SMT approach}}},
  doi          = {{10.1109/ICECCS.2013.14}},
  year         = {{2013}},
}

@misc{518,
  author       = {{Petrausch, Vanessa}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Klassifizierung unterschiedlicher Ansätze zum Matching von Services}}},
  year         = {{2013}},
}

@inproceedings{527,
  abstract     = {{In the future vision of software engineering, services from world-wide markets are composed automated in order to build custom-made systems.Supporting such scenarios requires an adequate service matching approach.Many existing approaches do not fulfill two key requirements of emerging concepts like On-The-Fly-Computing, namely (1) comprehensiveness, i.e., the consideration of different service aspects that cover not only functional properties, but also non-functional properties and (2) fuzzy matching, i.e., the ability to deliver gradual results in order to cope with a certain extent of uncertainty, incompleteness, and tolerance ranges.In this paper, I present a fuzzy matching process that distinguishes between different fuzziness sources and leverages fuzziness in different matching steps which consider different service aspects, e.g., behavior and quality properties. }},
  author       = {{Christin Platenius, Marie}},
  booktitle    = {{Proceedings of the Doctoral Symposium of the 9th joint meeting of the European Software Engineering Conference (ESEC) and the ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE)}},
  pages        = {{ 715--718 }},
  title        = {{{Fuzzy Service Matching in On-The-Fly Computing}}},
  doi          = {{10.1145/2491411.2492405}},
  year         = {{2013}},
}

@inproceedings{529,
  abstract     = {{Mechatronic systems reconfigure the structure of their software architecture, e.g., to avoid hazardous situations or to optimize operational conditions like minimizing their energy consumption. As software architectures are typically build on components, reconfiguration actions need to respect the component structure. This structure should be hierarchical to enable encapsulated components. While many reconfiguration approaches for embedded real-time systems allow the use of hierarchically embedded components, i.e., horizontal composition, none of them offers a modeling and verification solution to take hierarchical composition, i.e., encapsulation, into account. In this paper, we present an extension to our existing modeling language, MechatronicUML, to enable safe hierarchical reconfigurations. The two main extensions are (a) an adapted variant of the two-phase commit protocol to initiate reconfigurations which maintain component encapsulation and (b) a timed model checking verification approach for instances of our model. We illustrate our approach on a case study in the area of smart railway systems by showing two different use cases of our approach and the verification of their safety properties.}},
  author       = {{Heinzemann, Christian and Becker, Steffen}},
  booktitle    = {{Proceedings of the 16th International ACM SigSoft Symposium on Component-Based Software Engineering (CBSE)}},
  pages        = {{3--12}},
  title        = {{{Executing Reconfigurations in Hierarchical Component Architectures}}},
  doi          = {{10.1145/2465449.2465452}},
  year         = {{2013}},
}

@misc{530,
  author       = {{Buse, Dominik}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Entwurf kooperativer Verhaltensweisen heterogener Roboter}}},
  year         = {{2013}},
}

@misc{533,
  author       = {{Borkowski, Richard}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Entwicklung eines Hybriden Planers zur verhaltensorientierten Selbstoptimierung}}},
  year         = {{2013}},
}

@misc{543,
  author       = {{Jagannath, Kavitha}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Comparison of Various Contract-Based Approaches for Specifying Behavior of On-The-Fly Computing Services}}},
  year         = {{2013}},
}

@phdthesis{547,
  abstract     = {{In recent years, the role of process models in the development of enterprise software systems has increased continuously. Today, process models are used at different levels in the development process. For instance, in Service-Oriented Architectures (SOA), high-level business process models become input for the development of IT systems, and in running IT systems executable process models describe choreographies of Web Services. A key driver behind this development is the necessity for a closer alignment of business and IT requirements, to reduce the reaction times in software development to frequent changes in competitive markets.Typically in these scenarios, process models are developed, maintained, and transformed in a team environment by several stakeholders that are often from different business units, resulting in different versions. To obtain integrated process models comprising the changes applied to different versions, the versions need to be consolidated by means of model change management. Change management for process models can be compared to widely used concurrent versioning systems (CVS) and consists of the following major activities: matching of process models, detection of differences, computation of dependencies and conflicts between differences, and merging of process models.Although in general model-driven development (MDD) is accepted as a well-established development approach, there are still some shortcomings that let developers decide against MDD and for more traditional development paradigms. These shortcomings comprise a lack of fully integrated and fully featured development environments for MDD, such as a comprehensive support for model change management.In this thesis, we present a framework for process model change management. The framework is based on an intermediate representation for process models that serves as an abstraction of specific process modeling languages and focuses on common syntactic and semantic core concepts for the modeling of workflow in process models. Based on the intermediate representation, we match process models in versioning scenarios and compute differences between process models generically. Further, we consider the analysis of dependencies between differences and show how conflicts between differences can be computed by taking into account the semantics of the modeling language.As proof-of concept, we have implemented major parts of this framework in terms of a prototype. The detection of differences and dependencies contributed also to the Compare & Merge framework for the IBM WebSphere Business Modeler V 7.0 [1] (WBM), which was released as a product in fall 2009.}},
  author       = {{Gerth, Christian}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Business Process Models - Change Management}}},
  doi          = {{10.1007/978-3-642-38604-6}},
  year         = {{2013}},
}

@inproceedings{551,
  abstract     = {{In the service-oriented computing domain, the number of available software services steadily increased in recent years, favored by the rise of cloud computing with its attached delivery models like Software-as-a-Service (SaaS). To fully leverage the opportunities provided by these services for developing highly flexible and aligned SOA, integration of new services as well as the substitution of existing services must be simplified. As a consequence, approaches for automated and accurate service discovery and composition are needed. In this paper, we propose an automatic service composition approach as an extension to our earlier work on automatic service discovery. To ensure accurate results, it matches service requests and available offers based on their structural as well as behavioral aspects. Afterwards, possible service compositions are determined by composing service protocols through a composition strategy based on labeled transition systems.}},
  author       = {{Huma, Zille and Gerth, Christian and Engels, Gregor and Juwig, Oliver}},
  booktitle    = {{Proceedings of the 11th International Conference on Service Oriented Computing (ICSOC'13)}},
  pages        = {{524----532}},
  title        = {{{Automated Service Composition for On-the-Fly SOAs}}},
  doi          = {{10.1007/978-3-642-45005-1_42}},
  year         = {{2013}},
}

@misc{556,
  author       = {{Nickel, Tobias}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Analyse von Benutzeranforderungen von Service-Kompositionen mittels Modelchecking}}},
  year         = {{2013}},
}

@inproceedings{560,
  abstract     = {{In the last decades, development turned from monolithic software products towards more flexible software components that can be provided on world-wide markets in form of services. Customers request such services or compositions of several services. However, in many cases, discovering the best services to address a given request is a tough challenge and requires expressive, gradual matching results, considering different aspects of a service description, e.g., inputs/ouputs, protocols, or quality properties. Furthermore,in situations in which no service exactly satifies the request, approximate matching which can deal with a certain amount of fuzziness becomes necessary. There is a wealth of service matching approaches, but it is not clear whether there is a comprehensive, fuzzy matching approach which addresses all these challenges. Although there are a few service matchingsurveys, none of them is able to answer this question. In this paper, we perform a systematic literature survey of 35 (outof 504) service matching approaches which consider fuzzy matching. Based on this survey, we propose a classication,discuss how different matching approaches can be combined into a comprehensive matching method, and identify future research challenges.}},
  author       = {{Platenius, Marie and von Detten, Markus and Becker, Steffen and Schäfer, Wilhelm and Engels, Gregor}},
  booktitle    = {{Proceedings of the 16th International ACM Sigsoft Symposium on Component-Based Software Engineering}},
  pages        = {{143--152}},
  title        = {{{A Survey of Fuzzy Service Matching Approaches in the Context of On-The-Fly Computing}}},
  doi          = {{10.1145/2465449.2465454}},
  year         = {{2013}},
}

@inproceedings{568,
  abstract     = {{A major goal of the On-The-Fly Computing project is the automated composition of individual services based on services that are available in dynamic markets. Dependent on the granularity of a market, different alternatives that satisfy the requested functional requirements may emerge. In order to select the best solution, services are usually selected with respect to their quality in terms of inherent non-functional properties. In this paper, we describe our idea of how to model this service selection process as a Markov Decision Process, which we in turn intend to solve by means of Reinforcement Learning techniques in order to control the underlying service composition process. In addition, some initial issues with respect to our approach are addressed.}},
  author       = {{Jungmann, Alexander and Kleinjohann, Bernd}},
  booktitle    = {{Proceedings of the 9th IEEE International Conference on Service Computing (SCC)}},
  pages        = {{701--702}},
  title        = {{{Towards the Application of Reinforcement Learning Techniques for Quality-Based Service Selection in Automated Service Composition}}},
  doi          = {{10.1109/SCC.2012.76}},
  year         = {{2012}},
}

@inproceedings{569,
  abstract     = {{Today's real-time embedded systems operate in frequently changing environments on which they react by self-adaptations. Such an approach needs adequate modeling support of these reconfigurations to enable verification of safety properties, e.g., by timed model checking. Component-based development of such systems realizes these self-adaptations by structural reconfigurations of components and their connectors. However, component models proposed in literature do not support reconfigurable components in real-time embedded context but focus on other domains like business information systems. In this paper, we present an extension of our modeling language MechatronicUML to support structural reconfigurations taking the specific requirements of our domain into account. Based on the proposed extension we outline our research roadmap to achieve verification and realization of systems modeled in MechatronicUML.}},
  author       = {{Becker, Steffen and Heinzemann, Christian and Priesterjahn, Claudia }},
  booktitle    = {{Proceedings of the 15th ACM SigSoft International Symposium on Component-Based Software Engineering (CBSE)}},
  pages        = {{23----28}},
  title        = {{{Towards Modeling Reconfiguration in Hierarchical Component Architectures}}},
  doi          = {{10.1145/2304736.2304742}},
  year         = {{2012}},
}

@inproceedings{571,
  abstract     = {{The paradigm shift from purchasing monolithic software solutions to a dynamic composition of individual solutions entails many new possibilities yet great challenges, too. In order to satisfy user requirements, complex services have to be automatically composed of elementary services. Multiple possibilities of composing a complex service inevitably emerge. The problem of selecting the most appropriate services has to be solved by comparing the different service candidates with respect to their quality in terms of inherent non-functional properties while simultaneously taking the user requirements into account. We are aiming for an integrated service rating and ranking methodology in order to support the automation of the underlying decision-making process. The main contribution of this paper is a ﬁrst decomposition of the quality-based service selection process, while emphasizing major issues and challenges, which we are addressing in the On-The-Fly Computing project.}},
  author       = {{Jungmann, Alexander and Kleinjohann, Bernd}},
  booktitle    = {{Proceedings of the 4th International Conferences on Advanced Service Computing (SERVICE COMPUTATION)}},
  pages        = {{43--47}},
  title        = {{{Towards an Integrated Service Rating and Ranking Methodology for Quality Based Service Selection in Automatic Service Composition}}},
  year         = {{2012}},
}

