05 Fakultät Informatik, Elektrotechnik und Informationstechnik
Permanent URI for this collectionhttps://elib.uni-stuttgart.de/handle/11682/6
Browse
11 results
Search Results
Item Open Access Towards building knowledge on causes of critical requirements engineering problems(2015) Kalinowski, Marcos; Spínola, Rodrigo Oliveira; Conte, Tayana; Prikladnicki, Rafael; Méndez Fernández, Daniel; Wagner, Stefan[Context] Many software projects fail due to problems in requirements engineering (RE). [Objective] The goal of this paper is to gather information on relevant RE problems and to represent knowledge on their most common causes. [Method] We replicated a global family of RE surveys in the Brazil and used the data to identify critical RE problems and to build probabilistic cause-effect diagrams to represent knowledge on their common causes. [Results] The survey was answered by 74 different organizations, including small, medium and very large sized companies, conducting both, plan-driven and agile development. The most critical RE problems, according to those organizations, are related to communication and to incomplete or underspecified requirements. We provide the full probabilistic cause-effect diagrams with knowledge on common causes of the most critical identified RE problems online. [Conclusion] We believe that the knowledge presented in the diagrams can be helpful to support organizations in conducting causal analysis sessions by providing an initial understanding on what usually causes critical RE problems.Item Open Access Where do we stand in requirements engineering improvement today? : first results from a mapping study(2014) Méndez Fernández, Daniel; Ognawala, Saahil; Wagner, Stefan; Daneva, MayaRequirements engineering process improvement (REPI) approaches have gained much attention in research and practice. So far, however, there is no comprehensive view on the research in REPI in terms of solutions and current state of reported evidence. This paper aims to provide an overview on the existing solutions, their underlying principles and their research type facets, i.e. their state of empirical evidence. To this end, we conducted a systematic mapping study of the REPI publication space. This paper reports on the first findings regarding research type facets of the contributions as well as selected methodological principles. We found a strong focus in the existing research on solution proposals for REPI approaches that concentrate on normative assessments and benchmarks of the RE activities rather than on holistic RE improvements according to individual goals of companies. We conclude, so far, that there is a need to broaden the work and to investigate more problem-driven REPI which also targets the improvement of the quality of the underlying RE artefacts.Item Open Access Does outside-in teaching improve the learning of object-oriented programming?(2015) Janke, Erica; Brune, Philipp; Wagner, StefanObject-oriented programming (OOP) is widely used in the software industry and university introductory courses today. Following the structure of most textbooks, such courses frequently are organised starting with the concepts of imperative and structured programming and only later introducing OOP. An alternative approach is to begin directly with OOP following the Outside-In teaching method as proposed by Meyer. Empirical results for the effects of Outside-In teaching on students and lecturers are sparse, however. We describe the conceptual design and empirical evaluation of two OOP introductory courses from different universities based on Outside-In teaching. The evaluation results are compared to those from a third course serving as the control group, which was taught OOP the "traditional" way. We evaluate the initial motivation and knowledge of the participants and the learning outcomes. In addition, we analyse results of the end- term exams and qualitatively analyse the results of interviews with the lecturers and tutors. Regarding the learning outcomes, the results show no signif- icant differences between the Outside-In and the “traditional” teaching method. In general, students found it harder to solve and implement algorithmic problems than to understand object oriented (OO) concepts. Students taught OOP by the Outside-In method, however, were less afraid that they would not pass the exam at the end of term and understood the OO paradigm more quickly. Therefore, the Outside-In method is no silver bullet for teaching OOP regarding the learning outcomes but has positive effects on motivation and interest.Item Open Access Fast feedback cycles in empirical software engineering research(2015) Vetrò, Antonio; Ognawala, Saahil; Méndez Fernández, Daniel; Wagner, StefanBackground/Context: Gathering empirical knowledge is a time consuming task and the results from empirical studies often are soon outdated by new technological solutions. As a result, the impact of empirical results on software engineering practice is often not guaranteed. Objective/Aim: In this paper, we summarize the ongoing discussion on "Empirical Software Engineering 2.0" as a way to improve the impact of empirical results on industrial practices. We propose a way to combine data mining and analysis with domain knowledge to enable fast feedback cycles in empirical software engineering research. Method: We identify the key concepts on gathering fast feedback in empirical software engineering by following an experience-based line of reasoning by argument. Based on the identified key concepts, we design and execute a small proof of concept with a company to demonstrate potential benefits of the approach. Results: In our example, we observed that a simple double feedback mechanism notably increased the precision of the data analysis and improved the quality of the knowledge gathered. Conclusion: Our results serve as a basis to foster discussion and collaboration within the research community for a development of the idea.Item Open Access SESAM - simulating software projects(1992) Ludewig, Jochen; Bassler, Thomas; Deininger, Marcus; Schneider, Kurt; Schwille, JürgenTeaching software engineering as well as researching in this area is very tedious due to the length and costliness of software projects. SESAM (Software Engineering Simulation by Animated Models') therefore is designed as a simulator for software projects, allowing students to gain reality-like experiences in project management and researchers to evaluate hypotheses on the mechanisms influencing software projects. This paper focuses on the basic assumptions for SESAM, its building blocks and the way hypotheses are affecting the simulation. After a short description of the requirements for SESAM, the authors introduce objects, attributes, actions, relationships between objects, and hypotheses as its basic concepts. They present attributed graph grammars as a means for representing hypotheses. Finally they position their project with respect to related work, and they show its present a state and future development.Item Open Access A case study on artefact-based RE improvement in practice(2015) Méndez Fernández, Daniel; Wagner, StefanBackground: Most requirements engineering (RE) process improvement approaches are solution-driven and activity-based. They focus on the assessment of the RE of a company against an external norm of best practices. A consequence is that practitioners often have to rely on an improvement approach that skips a profound problem analysis and that results in an RE approach that might be alien to the organisational needs. Objective: In recent years, we have developed an RE improvement approach (called ArtREPI ) that guides a holistic RE improvement against individual goals of a company putting primary attention to the quality of the artefacts. In this paper, we aim at exploring ArtREPI’s benefits and limitations. Method: We contribute an industrial evaluation of ArtREPI by relying on a case study research. Results: Our results suggest that ArtREPI is well-suited for the establishment of an RE that reflects a specific organisational culture but to some extent at the cost of efficiency resulting from intensive discussions on a terminology that suits all involved stakeholders. Conclusions: Our results reveal first benefits and limitations, but we can also conclude the need of longitudinal and independent investigations for which we herewith lay the foundation.Item Open Access What do practitioners vary in using scrum?(2015) Diebold, Philipp; Ostberg, Jan-Peter; Wagner, Stefan; Zendler, UlrichBackground: Agile software development has become a popular way of developing software. Scrum is the most frequently used agile framework, but it is often reported to be adapted in practice. Objective: Thus, we aim to understand how Scrum is adapted in different contexts and what are the reasons for these changes. Method: Using a structured interview guideline, we interviewed ten German companies about their concrete usage of Scrum and analysed the results qualitatively. Results: All companies vary Scrum in some way. The least variations are in the Sprint length, events, team size and requirements engineering. Many users varied the roles, effort estimations and quality assurance. Conclusions: Many variations constitute a substantial deviation from Scrum as initially proposed. For some of these variations, there are good reasons. Sometimes, however, the variations are a result of a previous non-agile, hierarchical organisation.Item Open Access Impedance analysis of automotive high voltage networks for EMC measurements(2011) Reuter, Martin; Tenbohlen, Stefan; Köhler, Wolfgang; Ludwig, A.This paper deals with a method of determining the high-frequency impedances of automotive HV power networks. A Vector Network Analyzer (VNA) is used to measure Scattering parameters of different HV power cables and an automotive Li-Ion accumulator battery. Matrix conversions allow calculating an impedance network, which is able to represent an automotive HV networks.Item Open Access Preventing incomplete/hidden requirements: reflections on survey data from Austria and Brazil(2015) Kalinowski, Marcos; Felderer, Michael; Conte, Tayana; Spinola, Rodrigo; Prikladnicki, Rafael; Winkler, Dietmar; Méndez Fernández, Daniel; Wagner, Stefan[Context] Many software projects fail due to problems in requirements engineering (RE). [Goal] The goal of this paper is analyzing a specific and relevant RE problem in detail: incomplete/hidden requirements. [Method] We replicated a global family of RE surveys with representatives of software organizations in Austria and Brazil. We used the data to (a) characterize the criticality of the selected RE problem, and to (b) analyze the reported main causes and mitigation actions. Based on the analysis, we discuss how to prevent the problem. [Results] The survey includes 14 different organizations in Austria and 74 in Brazil, including small, medium and large sized companies, conducting both, plan-driven and agile development processes. Respondents from both countries cited the incomplete/hidden requirements problem as one of the most critical RE problems. We identified and graphically represented the main causes and documented solution options to address these causes. Further, we compiled a list of reported mitigation actions. [Conclusions] From a practical point of view, this paper provides further insights into common causes of incomplete/hidden requirements and on how to prevent this problem.Item Open Access On the relationship of inconsistent software clones and faults : an empirical study(2016) Wagner, Stefan; Abdulkhaleq, Asim; Kaya, Kamer; Paar, AlexanderBackground: Code cloning - copying and reusing pieces of source code - is a common phenomenon in software development in practice. There have been several empirical studies on the effects of cloning, but there are contradictory results regarding the connection of cloning and faults. Objective: Our aim is to clarify the relationship between code clones and faults. In particular, we focus on inconsistent (or type-3) clones in this work. Method: We conducted a case study with TWT GmbH where we detected the code clones in three Java systems, set them into relation to information from issue tracking and version control and interviewed three key developers. Results: Of the type-3 clones, 17 % contain faults. Developers modified most of the type-3 clones simultaneously and thereby fixed half of the faults in type-3 clones consistently. Type-2 clones with faults all evolved to fixed type-3 clones. Clone length is only weakly correlated with faultiness. Conclusion: There are indications that the developers in two cases have been aware of clones. It might be a reason for the weak relationship between type-3 clones and faults. Hence, it seems important to keep developers aware of clones, potentially with new tool support. Future studies need to investigate if the rate of faults in type-3 clones justifies using them as cues in defect detection.