6 research outputs found

    Portability of Process-Aware and Service-Oriented Software: Evidence and Metrics

    Get PDF
    Modern software systems are becoming increasingly integrated and are required to operate over organizational boundaries through networks. The development of such distributed software systems has been shaped by the orthogonal trends of service-orientation and process-awareness. These trends put an emphasis on technological neutrality, loose coupling, independence from the execution platform, and location transparency. Execution platforms supporting these trends provide context and cross-cutting functionality to applications and are referred to as engines. Applications and engines interface via language standards. The engine implements a standard. If an application is implemented in conformance to this standard, it can be executed on the engine. A primary motivation for the usage of standards is the portability of applications. Portability, the ability to move software among different execution platforms without the necessity for full or partial reengineering, protects from vendor lock-in and enables application migration to newer engines. The arrival of cloud computing has made it easy to provision new and scalable execution platforms. To enable easy platform changes, existing international standards for implementing service-oriented and process-aware software name the portability of standardized artifacts as an important goal. Moreover, they provide platform-independent serialization formats that enable the portable implementation of applications. Nevertheless, practice shows that service-oriented and process-aware applications today are limited with respect to their portability. The reason for this is that engines rarely implement a complete standard, but leave out parts or differ in the interpretation of the standard. As a consequence, even applications that claim to be portable by conforming to a standard might not be so. This thesis contributes to the development of portable service-oriented and process-aware software in two ways: Firstly, it provides evidence for the existence of portability issues and the insufficiency of standards for guaranteeing software portability. Secondly, it derives and validates a novel measurement framework for quantifying portability. We present a methodology for benchmarking the conformance of engines to a language standard and implement it in a fully automated benchmarking tool. Several test suites of conformance tests for two different languages, the Web Services Business Process Execution Language 2.0 and the Business Process Model and Notation 2.0, allow to uncover a variety of standard conformance issues in existing engines. This provides evidence that the standard-based portability of applications is a real issue. Based on these results, this thesis derives a measurement framework for portability. The framework is aligned to the ISO/IEC Systems and software Quality Requirements and Evaluation method, the recent revision of the renowned ISO/IEC software quality model and measurement methodology. This quality model separates the software quality characteristic of portability into the subcharacteristics of installability, adaptability, and replaceability. Each of these characteristics forms one part of the measurement framework. This thesis targets each characteristic with a separate analysis, metrics derivation, evaluation, and validation. We discuss existing metrics from the body of literature and derive new extensions speciffically tailored to the evaluation of service-oriented and process-aware software. Proposed metrics are defined formally and validated theoretically using an informal and a formal validation framework. Furthermore, the computation of the metrics has been prototypically implemented. This implementation is used to evaluate metrics performance in experiments based on large scale software libraries obtained from public open source software repositories. In summary, this thesis provides evidence that contemporary standards and their implementations are not sufficient for enabling the portability of process-aware and service-oriented applications. Furthermore, it proposes, validates, and practically evaluates a framework for measuring portability

    Application Migration Effort in the Cloud

    Get PDF
    Over the last years, the utilization of cloud resources has been steadily rising and an increasing number of enterprises are moving applications to the cloud. A leading trend is the adoption of Platform as a Service to support rapid application deployment. By providing a managed environment, cloud platforms take away a lot of complex configuration effort required to build scalable applications. However, application migrations to and between clouds cost development effort and open up new risks of vendor lock-in. This is problematic because frequent migrations may be necessary in the dynamic and fast changing cloud market. So far, the effort of application migration in PaaS environments and typical issues experienced in this task are hardly understood. To improve this situation, we present a cloud-to-cloud migration of a real-world application to seven representative cloud platforms. In this case study, we analyze the feasibility of the migrations in terms of portability and the effort of the migrations. We present a Docker-based deployment system that provides the ability of isolated and reproducible measurements of deployments to platform vendors, thus enabling the comparison of platforms for a particular application. Using this system, the study identifies key problems during migrations and quantifies these differences by distinctive metrics

    Conception architecturale des systèmes robotiques orientée services

    Get PDF
    Robotics has experienced an increasing evolution and interest from the society in recent years. Robots are no longer produced exclusively to perform repetitive tasks in factories, they have been designed to collaborate with humans in several important application domains. Robotic systems that control these robots are therefore becoming larger, more complex, and difficult to develop. In this scenario, Service-Oriented Architecture (SOA) has been investigated as a promising architectural style for the design of robotic systems in a flexible, reusable, and productive manner. Despite the existence of a considerable amount of Service-Oriented Robotic Systems (SORS), most of them have been developed in an ad hoc manner. The little attention and limited support devoted to the design of SORS software architectures may not only hamper the benefits of SOA adoption, but also reduce the overall quality of robotic systems, which are often used in safety-critical contexts. This thesis aims at improving the understanding and systematization of SORS architectural design.La Robotique a connu une évolution remarquable au cours des dernières années, couplée à un intérêt croissant de la société pour ce domaine. Les robots ne sont plus fabriqués exclusivement pour effectuer des tâches répétitives dans les usines, mais ils sont aussi créés pour collaborer avec les humains dans plusieurs domaines d'application d'importance. Les systèmes robotiques qui contrôlent ces robots sont donc de plus en plus larges, complexes et difficiles à développer. Dans ce contexte, l'Architecture Orientée Services (SOA) a été identifiée comme un style d'architecture logicielle prometteur pour concevoir des systèmes robotiques de manière flexible, réutilisable et productive. Cependant, malgré le nombre considérable de Systèmes Robotiques Orientées Services (SORS) existants aujourd'hui, la plupart d'entre eux ont été développés de manière ad hoc. Le peu d'attention et le soutien limité portés à la conception d'architectures logicielles SORS peuvent non seulement masquer les avantages de l'adoption de la SOA, mais aussi réduire la qualité globale des systèmes robotiques, qui sont souvent utilisés dans des contextes de sécurité critiques. Cette thèse vise à améliorer la compréhension et la systématisation de la conception architecturale SORS. Elle décrit une taxonomie des services pour le domaine de la robotique, puis propose un processus ainsi qu'une architecture de référence afin de systématiser la conception d'architectures logicielles SORS. Les résultats obtenus dans les études d'évaluation montrent qu'à la fois le processus et l'architecture de référence peuvent avoir un impact positif sur la qualité des architectures logicielles SORS et, par conséquent, contribuent à l'amélioration des systèmes robotique

    Measuring the Installability of Service Orchestrations Using the SQuaRE Method

    No full text
    Service-oriented software consists of middleware, such as application servers and runtime engines, into which service applications are deployed. This middleware is often complex and difficult to install. The deployment of services requires the crafting of deployment descriptors and packaging of applications. As a consequence, the installation of service-oriented software systems can be a daunting task. Installability, however, is an important influencer of the portability of software. Portability in turn is one of the main goals of service orchestration languages based on open standards. In this paper, we investigate the installability of service orchestrations based on the Systems and software Quality Requirements and Evaluation (SQuaRE) method, the new series of software qual- ity standards currently under development by the ISO/IEC. We develop a measurement framework based on SQuaRE and tailored to evaluating the installability of service orchestrations and their runtimes. We validate the measurement framework theoretically and show its applicability in a case study

    Graph-based Pattern Matching and Discovery for Process-centric Service Architecture Design and Integration

    Get PDF
    Process automation and applications integration initiatives are often complex and involve significant resources in large organisations. The increasing adoption of service-based architectures to solve integration problems and the widely accepted practice of utilising patterns as a medium to reuse design knowledge motivated the definition of this work. In this work a pattern-based framework and techniques providing automation and structure to address the process and application integration problem are proposed. The framework is a layered architecture providing modelling and traceability support to different abstraction layers of the integration problem. To define new services - building blocks of the integration solution - the framework includes techniques to identify process patterns in concrete process models. Graphs and graph morphisms provide a formal basis to represent patterns and their relation to models. A family of graph-based algorithms support automation during matching and discovery of patterns in layered process service models. The framework and techniques are demonstrated in a case study. The algorithms implementing the pattern matching and discovery techniques are investigated through a set of experiments from an empirical evaluation. Observations from conducted interviews to practitioners provide suggestions to enhance the proposed techniques and direct future work regarding analysis tasks in process integration initiatives

    Stuttgarter Symposium für Produktentwicklung SSP 2017 : Stuttgart, 29. Juni 2017, Wissenschaftliche Konferenz

    Get PDF
    Veränderte Anforderungen in internationalen Märkten erfordern hohe Anstrengungen, um Prozesse in Innovation und Produktentwicklung zu optimieren. Das Stuttgarter Symposium für Produktentwicklung (SSP) ermöglicht die Diskussion der an Produktgestaltung und -entwicklung beteiligten Disziplinen aus Industrie und Wissenschaft. Das SSP zeigt, wie erfolgreiche Produkte effizient gestaltet und entwickelt werden. Neueste Forschungsergebnisse zu Methoden, Strategien und Werkzeugen werden vorgestellt, um Prozesse zu verbessern und die Digitalisierung zu unterstützen. Mit dem Ziel, nationale und internationale Fachleute unterschiedlicher Disziplinen der Produktentwicklung aus Industrie und Wissenschaft in den Dialog zu bringen, veranstaltet das Fraunhofer IAO gemeinsam mit dem Institut für Konstruktionstechnik und Technisches Design IKTD, dem Institut für Maschinenelemente IMA und dem Institut für Arbeitswissenschaft und Technologiemanagement IAT der Universität Stuttgart das Stuttgarter Symposium für Produktentwicklung SSP. Am 28. und 29. Juni 2017 fand das SSP bereits zum vierten Mal im Zentrum für Virtuelles Engineering des Fraunhofer IAO statt, nachdem die Symposien 2011, 2013 und 2015 mit jeweils über 200 Besuchern aus Wissenschaft und Wirtschaft großen Zuspruch gefunden hatten. Am Forumstag stand wie immer die Industrie im Fokus, am zweiten Tag die wissenschaftliche Konferenz. Die Konferenz bietet Wissenschaftlern eine Plattform zur Präsentation und Diskussion ihrer neuesten Forschungsergebnisse im Bereich der Produktentwicklung und fördert so den interdisziplinären Wissenstransfer. Aufgerufen waren in der SSP 2017 Beiträge aus folgenden Kategorien: • Wissensmanagement in der Produktentwicklung • Nachhaltige Produktentwicklung • Altersgerechte Produktentwicklung • Zuverlässige Produktentwicklung • Industrie 4.0/Cyber-Physical Products • Konstruktionsmethodiken • Leichtbau in der Produktentwicklung • Nutzerzentriertes Design • Innovations- und Technologiemanagement • Digital Engineering • Lean Development. Eingereicht wurden Beiträge zu Methoden, Strategien und Verfahren, die es ermöglichen, Produktentwicklungsprozesse zu vernetzen, digitale Werkzeuge zu integrieren und die Potenziale neuer Technologien und Werkstoffe optimal auszuschöpfen
    corecore