TORC: test plan optimization by requirements clustering - Güldali, Baris; Funke, Holger; Sauer, Stefan; Engels, Gregor (Software Quality Journal)
Acceptance testing is a time-consuming task for complex software systems that have to fulfill a large number of requirements. To reduce this effort, we have developed a widely automated method for deriving test plans from requirements that are expressed in natural language. It consists of three stages: annotation, clustering, and test plan specification. The general idea is to exploit redundancies and implicit relationships in requirements specifications. Multi-viewpoint techniques based on RM-ODP (Reference Model for Open Distributed Processing) are employed for specifying the requirements. We then use linguistic analysis techniques, requirements clustering algorithms, and pattern-based requirements collection to reduce the total effort of testing against the requirements specification. In particular, we use linguistic analysis for extracting and annotating the actor, process and object of a requirements statement. During clustering, a similarity function is computed as a measure for the overlap of requirements. In the test plan specification stage, our approach provides capabilities for semi-automatically deriving test plans and acceptance criteria from the clustered informal textual requirements. Two patterns are applied to compute a suitable order of test activities. The generated test plans consist of a sequence of test steps and asserts that are executed or checked in the given order. We also present the supporting prototype tool TORC, which is available open source. For the evaluation of the approach, we have conducted a case study in the field of acceptance testing of a national electronic identification system. In summary, we report on lessons learned how linguistic analysis and clustering techniques can help testers in understanding the relations between requirements and for improving test planning.

Using rule overriding to improve reusability and understandability of Dynamic Meta Modeling specifications - Soltenborn, Christian; Engels, Gregor (Journal of Visual Languages & Computing)
Dynamic Meta Modeling (DMM) is a visual semantics specification technique targeted at languages based on a metamodel. A DMM specification consists of a runtime metamodel and operational rules which describe how instances of the runtime metamodel change over time. A known deficiency of the DMM approach is that it does not support the refinement of a DMM specification, e.g., in the case of defining the semantics for a refined and extended domain-specific language (DSL). Up to now, DMM specifications could only be reused by adding or removing DMM rules. In this paper, we enhance DMM such that DMM rules can override other DMM rules, similar to a method being overridden in a subclass, and we show how rule overriding can be realized with the graph transformation tool GROOVE. We argue that rule overriding does not only have positive impact on reusability, but also improves the intuitive understandability of DMM semantics specifications.

Physiologische Beanspruchungsreaktionen bei der Anwendung von kopfgetragenen AR-Displays - Böckelmann, Irina; Schenk, Daniel; Rößler, Thoralf; Adler, Simon; Senft, Björn; Grubert, Jens; Mecke, Rüdiger; Huckauf, Anke; Urbina, Mario; Tümler, Johannes; Darius, Sabine

User Centered Design Process of OSAMi-D - Developing User Interfaces for a Remote Ergometer Training Application - Klompmaker, Florian; Senft, Björn; Nebe, Karsten; Busch, Clemens; Willemsen, Detlev (HEALTHINF 2011 - Proceedings of the International Conference on Health Informatics, Rome, Italy, 26-29 January, 2011)

Palladio-based performance blame analysis - Brüseke, Frank; Becker, Steffen; Engels, Gregor (Proceedings of the 16th International Workshop on Component-Oriented Programming (WCOP; satellite event of the CompArch 2011), Boulder Colorado, CO (USA))
Performance is an important quality attribute for business information systems. When a tester has spotted a performance error, the error is passed to the software developers to fix it. However, in component-based software development the tester has to do blame analysis first, i. e. the tester has to decide, which party is responsible to fix the error. If the error is a design or deployment issue, it can be assigned to the software architect or the system deployer. If the error is specific to a component, it needs to be assigned to the corresponding component developer. An accurate blame analysis is important, because wrong assignments of errors will cause a loss of time and money. Our approach aims at doing blame analysis for performance errors by comparing performance metrics obtained in performance testing and performance prediction. We use performance prediction values as expected values for individual components. For performance prediction we use the Palladio approach. By this means, our approach evaluates each component’s performance in a certain test case. If the component performs poorly, its component developer needs to fix the component or the architect replaces the component with a faster one. If no omponent performs poorly, we can deduce that there is a design or deployment issue and the architecture needs to be changed. In this paper, we present an exemplary blame analysis based on a web shop system. The example shows the feasibility of our approach.

Semi-automatische Ableitung externer Anpassungsmechanismen für selbst-adaptive Systeme - Nagel, Benjamin (Proceedings of the Software Engineering 2011 (SE 2011), Karlsruhe (Germany))

Self-Stabilizing DeBruijn Networks - Richa, Andrea W.; Scheideler, Christian (Proceedings of the 13th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS))
This paper presents a dynamic overlay network based on the De Bruijn graph which we call Linearized De Bruijn (LDB) network. The LDB network has the advantage that it has a guaranteed constant node degree and that the routing between any two nodes takes at most O(log n) hops with high probability. Also, we show that there is a simple local-control algorithm that can recover the LDB network from any network topology that is weakly connected.

Selected papers on Integrated Formal Methods (iFM09) - Leuschel, Michael; Wehrheim, Heike (Science of Computer Programming)

Robust Distributed Computation in Dynamic Networks - Brandes, Philipp

Reputation-based Reliability Prediction of Service Compositions - Besova, Galina; Wehrheim, Heike; Wagner, Annika (Electronic Notes in Theoretical Computer Science)
Today, the concept of service oriented architectures provides a way of building integrated solutions out of existing services. To this end, services from different providers are composed using advanced orchestration and choreography techniques. However, while this principle allows for greater flexibility at a smaller cost, the use of third party services also includes a risk: Deployed services might not work as claimed by their providers. In this paper, we propose a technique for analyzing the expected reliability of service compositions based on ratings given by (previous) service users. Every service thereby comes with a reputation, and the analysis computes an overall reliability of a service composition from the reputations of its constituent services. The proposed model-driven approach proceeds by translating statechart models of service compositions into input for a probabilistic model checker (PRISM) using state-of-the-art model transformations techniques. The approach has been implemented as an Eclipse plug-in and is fully compliant with UML.

Reengineering of Design Deficiencies in Component-Based Software Architectures - Platenius, Marie Christin

Precise Mappings between Business Process Models in Versioning Scenarios - Gerth, Christian; Luckey, Markus; Küster, Jochen; Engels, Gregor (Proceedings of the IEEE 8th International Conference on Service Computingt (SCC))
In the development process of service-oriented systems, business process models are used at different levels. Typically, high-level business process models that describe business requirements and needs are stepwise refined to the IT level by different business modelers and software architects. As a result, different process model versions must be compared and merged by means of model version control. An important prerequisite for process model version control is an elaborated matching approach that results in precise mappings between different process model versions. The challenge of such an approach is to deal with syntactically different process models that are semantically equivalent. For that purpose, matching techniques must consider the semantics of process modeling languages.In this paper, we present a matching approach for process models in a versioning scenario. Based on a term formalization of process models, we enable an efficient and effective way to match syntactically different but semantically equivalent process models resulting in precise mappings.

PeerfactSim.KOM: A PSP System Simulator - Experiences and Lessons Learned - Graffi, Kalman (Proceedings of the IEEE International Conference on Peer-to-Peer Computing (IEEE PsP))
Research on peer-to-peer (p2p) and distributed systems needs evaluation tools to predict and observe the behavior of protocols and mechanisms in large scale networks. PeerfactSim.KOM is a simulator for large scale distributed/p2p systems aiming at the evaluation of interdependencies in multi-layered p2p systems. The simulator is written in Java, is event-based and mainly used in p2p research projects. The main development of PeerfactSim.KOM started in 2005 and is driven since 2006 by the project “QuaP2P”,which aims at the systematic improvement and benchmarking of p2p systems. Further users of the simulator are working in the project “On-the-ﬂy Computing” aiming at researching p2p-based service oriented architectures. Both projects state severe requirements on the evaluation of multi-layered and large-scale distributed systems. We describe the architecture of PeerfactSim.KOM supporting these requirements in Section II, present the workﬂow, selected experiences and lessons learned in Section III and conclude the overview in Section IV.

Local Approximation Algorithms for the Uncapacitated Metric Facility Location Problem in Power-Aware Sensor Networks - Abshoff, Sebastan; Cord-Landwehr, Andreas; Degener, Bastian; Kempkes, Barbara; Pietrzyk, Peter (Proceedings of the 7th International Symposium on Algorithms for Sensor Systems, Wireless Ad Hoc Networks and Autonomous Mobile Entities (ALGOSENSORS))
We present two distributed, constant factor approximation algorithms for the metric facility location problem. Both algorithms have been designed with a strong emphasis on applicability in the area of wireless sensor networks: in order to execute them, each sensor node only requires limited local knowledge and simple computations. Also, the algorithms can cope with measurement errors and take into account that communication costs between sensor nodes do not necessarily increase linearly with the distance, but can be represented by a polynomial. Since it cannot always be expected that sensor nodes execute algorithms in a synchronized way, our algorithms are executed in an asynchronous model (but they are still able to break symmetry that might occur when two neighboring nodes act at exactly the same time). Furthermore, they can deal with dynamic scenarios: if a node moves, the solution is updated and the update affects only nodes in the local neighborhood. Finally, the algorithms are robust in the sense that incorrect behavior of some nodes during some round will, in the end, still result in a good approximation. The first algorithm runs in expected O(log_{1+ε} n) communication rounds and yields a \my^4(1+4\my^2(1+ε)^{1/p})^p approximation, while the second has a running time of expected O(log^2_{1+ε} n) communication rounds and an approximation factor of \my^4(1 + 2(1 + ε)^{1/p})^p. Here, ε > 0 is an arbitrarily small constant, p the exponent of the polynomial representing the communication costs, and \my the relative measurement error.

Function Specification Inference Using Craig Interpolation - Schremmer, Alexander

Fault attacks in pairing-based cryptography - Liske, Gennadij

Defining and Deploying Complex Applicances in Multi-Site Cloud Environments - Peuster, Manuel

Coverage Criteria for Testing DMM Specifications - Arifulina, Svetlana

Corona: A Stabilizing Deterministic Message-Passing Skip List - Nesterenko, Mikhail; Mohd, Rizal; Scheideler, Christian (Proceedings of the 13th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS))
We present Corona, a deterministic self-stabilizing algorithm for skip list construction in structured overlay networks. Corona operates in the low-atomicity message-passing asynchronous system model. Corona requires constant process memory space for its operation and, therefore, scales well. We prove the general necessary conditions limiting the initial states from which a self-stabilizing structured overlay network in message-passing system can be constructed. The conditions require that initial state information has to form a weakly connected graph and it should only contain identiers that are present in the system. We formally describe Corona and rigorously prove that it stabilizes from an arbitrary initial state subject to the necessary conditions. We extend Corona to construct a skip graph.

Complexity Classes for Local Computation - Swierkot, Kamil