Fraunhofer Institute for Experimental Software Engineering
Fraunhofer Institute for Experimental Software Engineering
Falcao R.,Fraunhofer Institute for Experimental Software Engineering
Proceedings - 2017 IEEE/ACM 39th International Conference on Software Engineering Companion, ICSE-C 2017 | Year: 2017
Current requirements elicitation techniques do not deal with an essential part of context awareness: comprehension of the relationships among the numerous contextual elements of a certain domain and how they can positively influence the user task. As a result, solution providers continuously miss the opportunity to delight users by identifying contextual behaviors that will lead to better recommendations or adaptations. This paper discusses this problem and proposes a data-based solution. The expected scientific contributions of the ongoing research are delineated as well. © 2017 IEEE.
Tanveer B.,Fraunhofer Institute for Experimental Software Engineering
ACM International Conference Proceeding Series | Year: 2017
In agile development context, estimating effort of constantly evolving requirements is challenging. Moreover, expert judgment which is the most used estimation method in this context is prone to bias, utilizes limited information and affects the accuracy of estimates. In order to overcome these shortcomings, consideration of information like complexity and impact of changes (requirements) on the underlying system have been proposed in our earlier study. We introduced an improvement framework that integrates change impact analysis with effort estimation methods. In this paper, we are proposing guidelines on how to integrate and operationalize the impact analysis while estimating effort through utilizing our framework in an agile development context. Operationalization of this framework will provide practitioners with additional information about the impact and support them in making informed decisions regarding effort estimation. It will increase transparency in the whole estimation process at the same time. © 2017 ACM.
Braun S.,Fraunhofer Institute for Experimental Software Engineering
Proceedings - 2017 IEEE International Conference on Software Architecture Workshops, ICSAW 2017: Side Track Proceedings | Year: 2017
Optimistic data replication is an important enablingtechnology for high availability and scalability, but thedisadvantage is that it can only guarantee eventual consistency. Inconsequence, apps might observe stale data and write conflicts. Inpractice, optimistic data replication is usually part of databasesystems that implement detection and resolution of conflicts withpurely syntactic techniques. On the downside, this can lead toconflicts that are impossible to detect and resolve correctly byusing the database framework only, ultimately resulting inconcurrency anomalies. In order to avoid concurrency anomalies, developers are forced to use error-prone workarounds, therebyincreasing application complexity significantly. An alternative tousing existing database replication would be to implement acustom solution tailored to the application semantics that couldminimize the occurrence of write conflicts and concurrencyanomalies. However, the realization of custom solutions driven byapplication semantics is very difficult in practice, due to thecomplexity of concurrency control in distributed systems. In thisposition paper we demonstrate practical problems related to stateof-the-practice optimistic data replication and motivate the needfor semantics-driven solutions. Our research aims at simplifyingthe development of custom solutions by delivering a frameworkfor semantics-driven optimistic data replication. This frameworkconsists of a technical part and accompanying concepts for thedesign of extended domain models optimized for optimistic datareplication and conflict minimization. © 2017 IEEE.
Chen Y.,Fraunhofer Institute for Experimental Software Engineering |
Han Vinck A.J.,University of Duisburg - Essen
IEEE Transactions on Information Theory | Year: 2010
In this paper, we give a lower bound for the optimum distance profiles of the second-order Reed-Muller code in the dictionary order and in the inverse dictionary order. In particular, we investigate the second-order Reed-Muller codes of length ≤256. We show that the bound is tight in both orders for the codes of length ≤128. © 2010 IEEE.
Riegel N.,Fraunhofer Institute for Experimental Software Engineering
2012 20th IEEE International Requirements Engineering Conference, RE 2012 - Proceedings | Year: 2012
Requirements engineers in business-process-driven software development are faced with the challenge of letting stakeholders determine which requirements are actually relevant for early business success and should be considered first or even at all during the elicitation and analysis activities. In the area of requirements engineering (RE) and release planning, prioritization is an established strategy for achieving this goal. Available prioritization approaches, however, do not consider all idiosyncrasies of business-process- driven software development. This lack of appropriate prioritization leads to effort often being spent on (RE) activities of minor importance. To support the requirements engineer in overcoming this problem, the idea of applying different models during prioritization is introduced, which shall bring it to a more reliable basis. Through this notion it is expected to reduce unnecessary (RE) activities by focusing on the most important requirements. © 2012 IEEE.
John I.,Fraunhofer Institute for Experimental Software Engineering
IEEE Software | Year: 2010
Product line scoping is the process of determining which of an organization's products, features, and domains would find systematic reuse economically useful. Scoping is generally the first phase in product line engineering. For a decade, it has been recognized as its own discipline in product line engineering. Scoping, also called product line planning, is based on expert knowledge and information; in meetings and workshops, individuals must interactively elicit information on the features, products, and further plans in the expert's product line domain. But often, these domain experts don't have the time to really reproduce and formulate all the knowledge needed for scoping. They should be heavily integrated into the scoping knowledge elicitation process, but they're only minimally available. The CAVE (Commonality and Variability Extraction) approach and its industrial applications offer a solution to the problem of domain experts' availability. CAVE supports scoping and product line engineering in a development organization by systematically eliciting the needed information from user documentation of existing systems. This article describes the approach and its embedding in scoping, as well as results and lessons learned from three industrial applications of the approach. © 2010 IEEE.
Gotzhein R.,University of Kaiserslautern |
Kuhn T.,Fraunhofer Institute for Experimental Software Engineering
Computer Networks | Year: 2011
In this paper, we present Black Burst Synchronization (BBS), a modular protocol for multi-hop tick and time synchronization in wireless ad hoc networks, located at MAC level. For the successful operation of BBS, it is crucial that collisions of synchronization messages that are sent (almost) simultaneously by two or more nodes are non-destructive. This is achieved by collision-protected bit encodings with black bursts, periods of transmission energy of defined length on the medium, starting at determined points in time. Under reasonable assumptions, BBS provides low and bounded tick and clock offsets, guarantees a very small and constant convergence delay, has low and bounded complexity regarding computation, storage, time, and structure, and is robust against topology changes at runtime. This makes it a candidate for user level applications such as data fusion and networked control systems, and especially for system level tasks such as duty cycling and multi-hop medium slotting. To validate its predicted behavior, we have implemented and deployed BBS on MICAz motes. © 2011 Elsevier B.V. All rights reserved.
Adler R.,Fraunhofer Institute for Experimental Software Engineering
SAE Technical Papers | Year: 2013
A safety concept describes a plan for implementing safety. A bad safety concept compromises the achievement of safety or leads to unnecessarily high costs for implementing and proving safety. However, safety standards and research approaches do not provide any means for developing a good safety concept or for assessing the quality of a safety concept. Consequently, real-world safety concepts often lack information or have low quality. To overcome this practical problem, we systematically derive which fundamental information should be contained in a safety concept and introduce quality attributes for a safety concept. We also evaluate state-of-the-art approaches for developing a safety concept. Copyright © 2013 SAE International.
Adam S.,Fraunhofer Institute for Experimental Software Engineering
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) | Year: 2012
[Context & Motivation] Developing new software systems based on a software product line (SPL) in so-called application engineering (AE) projects is still a time-consuming and expensive task. Especially when a large number of customer-specific requirements exists, there is still no systematic support for efficiently aligning these non-anticipated requirements with SPL characteristics early on. [Question/problem] In order to improve this process significantly, sound knowledge about an SPL must be available when guiding the requirements elicitation during AE. Thus, an appropriate reflection of SPL characteristics in process-supporting artifacts is indispensable for actually supporting a requirements engineer in this task. [Principal ideas/results] In this paper, a validated template for elicitation instructions that aims at providing a requirements engineer with knowledge about an underlying SPL in an appropriate manner is presented. This template consists of predefined text blocks and algorithms that explain how SPL-relevant product and process knowledge can be systematically reflected into capability-aware elicitation instructions. [Contribution] By using such elicitation instructions, requirements engineers are enabled to elicit requirements in an AE project more effectively. © 2012 Springer-Verlag.
Weitzel B.,Fraunhofer Institute for Experimental Software Engineering
IEEE International Conference on Software Maintenance, ICSM | Year: 2012
The operation of large scale information systems requires investment into hardware infrastructure and causes running cost for keeping it in a productive state. This especially applies in an enterprise environment where also expenses for software licenses costs or penalties for downtime occur. The deployment of software influences these costs both in their amount and their composition. In order to optimize them a transparent view on these costs and the deployment is mandatory. In this paper, we present an approach for making deployment explicit on an architectural level. A conceptual model of deployment is defined that can be populated by reverse engineering of deployment descriptors, runtime traces and usage profiles. We envision fostering a comprehensive decision making and optimization of software deployment. © 2012 IEEE.