Tag Archives: design support

Analyzing runtime adaptability of collaboration patterns (extended journal version)

A significantly extended version of my ISR Technical Report 12-05 and CTS 2012 conference paper [blog] on “Analyzing runtime adaptability of collaboration patterns” has been accepted as a journal article:

Dorn C, Taylor R. N. (2014), Analyzing runtime adaptability of collaboration patterns (preprint), Concurrency Computat.: Pract. Exper., doi: 10.1002/cpe.3438 (early online access)

Architecture-centric Design of Complex Message-based Service Systems

Dorn, C., Waibel, P., Dustdar, S., (2014) Architecture-Centric Design of Complex Message-Based Service Systems. In Proceedings of the 12th International Conference on Service-oriented Computing (ICSOC 2014), Nov 2014, Paris, Springer LNCS [Supporting Online Material on this blog]

Abstract: Complex, message-based service systems discourage central execution control, require extremely loose coupling, have to cope with unpredictable availability of individual (composite) services, and may experience a dynamically changing number of service instances. At the topmost level, the architecture of such a complex system often follows a messaging style most naturally.
A major problem during the design of these systems is achieving an overall consistent configuration (i.e, ensuring intended message routing across producers, consumers, and brokers). While orchestration or choreography-based approaches support the design of individual composite services along a workflow-centric paradigm, they are an awkward fit for specifying a message-centric architecture.
In this paper, we present an architecture-centric approach to designing complex service systems. Specifically we propose modeling the system’s high-level architecture with an architecture description language (ADL). The ADL captures the message-centric configuration which subsequently allows for consistency checking. An architecture-to-configuration transformation ensures that the individual deployed services follow the architecture without having to rely on a central coordinator at runtime. Utilizing our provided tool support, we demonstrate the successful application of our methodology on a real world service system.

Software Prototype by Philipp Waibel for download at: https://bitbucket.org/pwaibel/archstudio-4-msa_extension

Talk at Frequentis on System Modeling and Simulation

As part of my current cooperation with Frequentis on “Technical-operational mapping for product development and safety” I will be participating in Frequentis’ RD InForm 05/2014 event on Thursday May 22nd.

Hosted by Thomas Mehofer (FRQ) and me, with support by Andreas Franz, Michael Mayerhofer, Gerhard Täubl (all FRQ), this RD InForm event is targeted at Frequents members for keeping them up-to-date with insights into active complexity management and providing collaboration support applied through all process chains for proactively preventing unmanageable product complexity. My contribution specifically focuses on System Simulation: from modelling to simulation, incl. presenting a FRQ based model simulation (Comms System).

Towards Collaboration-Centric Pattern-Based Software Development Support

Dorn, C., Egyed, A., (2013) Towards Collaboration-Centric Pattern-Based Software Development Support  (preprint), In Proceedings of the 6th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE 2013) co-located with the International Conference on Software Engineering (ICSE), May 2013, San Francisco, USA, to appear.

Abstract: Software engineering activities tend to be loosely coupled to allow for flexibly reacting to unforeseen development complexity, requirements changes, and progress delays. This flexibility comes a the price of hidden dependencies among design and code artifacts that make it difficult or even impossible to assess change impact. Incorrect change propagation subsequently results in costly errors.
This position paper proposes a novel approach based on monitoring engineering activities for subsequent high-level pattern detection. Patterns of (i) collaboration structures, (ii) temporal action sequences, and (iii) artifact consistency constraints serve as input to recommendation and automatic reconfiguration algorithms for ultimately avoiding and correcting artifact inconsistencies.

Workshop Poster

Analyzing Design Tradeoffs in Large-scale Socio-Technical Systems through Simulation of Dynamic Collaboration Patterns

Dorn C., Edwards G., Medvidovic N., (2012) Analyzing Design Tradeoffs in Large-scale Socio-Technical Systems through Simulation of Dynamic Collaboration Patterns, In Proceedings of the 20th International Conference on
Cooperative Information Systems (CoopIS 2012), Sep., 2012, Rome, Italy.

Supporting Online Material available on this blog.

Abstract: Emerging online collaboration platforms such as Wikipedia, Twitter, or Facebook provide the foundation for socio-technical systems where humans have become both content consumer and provider. Existing software engineering tools and techniques support the system engineer in designing and assessing the technical infrastructure. Little research, however, addresses the engineer’s need for understanding the overall socio-technical system behavior. The effect of fundamental design decisions becomes quickly unpredictable as multiple collaboration patterns become integrated into a single system.

We propose the simulation of human and software elements at the collaboration level. We aim for detecting and evaluating undesirable system behavior such as users experiencing repeated update conflicts or software components becoming overloaded. To this end, this paper contributes (i) a language and (ii) methodology for specifying and simulating large-scale collaboration structures, (iii) example individual and aggregated pattern simulations, and (iv) evaluation of the overall approach.