Description of constituent characteristics of agile development processes for technical systems

Author(s):  
Gunther Schuh ◽  
Stephan Schroder ◽  
Florian Vogt ◽  
Michael Franz
Author(s):  
Michael Riesener ◽  
Christian Doelle ◽  
Sebastian Schloesser ◽  
Guenther Schuh

Abstract Agile development processes such as Scrum have been successfully applied in the software industry for many years. Based on experience, industrial practitioners indicate three predominant benefits of agile development processes compared to traditional software development processes. First of all, development results better fit customers’ and other stakeholders’ needs. That is because they are intensively involved in the development process by receiving, applying and assessing functional software increments in a defined cadence throughout the development process. Secondly, agile development processes better cope with unexpected changes in the development process due to the built-in process flexibility. Lastly, development speed has significantly increased in most of the agile software development projects, resulting in a shorter time-to-market. Especially in the context of radical innovations for technical systems, manufacturing companies are striving for approaches to optimize their development processes in a similar direction. Traditional plan-oriented development approaches such as VDI 2221 or Cooper’s Stage-Gate Process turn out to be insufficiently customer oriented, too inflexible and project duration is usually too long to reach an adequate time-to-market. For that reason, a large community in academia and industrial practice is developing and implementing approaches to adapt agile software development practices for the development of technical systems. However, a current study in industrial practice reveals that out of 23 objectives, that are expected when introducing agile development processes to technical systems, the three objectives mentioned above, show the largest negative deviations from expected benefit to realized benefit. Therefore, the overall goal of this research is to address these gaps by developing an explicit methodological approach for an agile development of technical systems. It turns out, that mainly the role of prototyping and the way product specifications are handled during the development process change significantly in the course of introducing agility to development of technical systems. Agile practitioners strive to not necessarily define product specifications comprehensively upfront, as it is postulated in plan-oriented development processes. In contrast, product specifications, which are of major importance to the overall development project, are specified and validated with customers and other stakeholders in early prototypes. Therefore, prototypes are realized in a defined cadence throughout the development process to gradually specify and validate the product. However, the way product specifications are prioritized and selected in the development of technical systems has to differ substantially from the general way Scrum or other existing agile development processes propose. That is because technical systems are characterized by multiple technical interrelations, resulting in informational dependencies for the development process. For that reason, a prioritization along criteria such as customer value, development effort and risk seems too narrow in the context of technical systems. In fact, the prioritization of product specifications has to consider both, the value being generated by their realization as well as the informational dependencies towards other specifications. Furthermore, when designing a prototype, time constraints need to be particularly considered due to lead times in parts delivery and prototype production. Therefore, this paper introduces a methodology to prioritize and select technical design parameters in agile development processes. The methodology can be applied in the cyclical sprint planning that aims at defining the scope of the next prototype to be developed. As outlined above, the major paradigms of value generation, informational dependencies as well as lead-time and effort are crucial when adapting agile for technical systems and are consequently implemented in the methodology. These paradigms are operationalized to explicitly address the mentioned major objectives of agile development processes, which are currently showing are large gap between expected benefit and realized benefit in industrial practice. The methodology is applied to the real development process of an RGB laser light source for digital cinema projectors, which is summarized as a case study in the paper. Insights from this application are equally discussed as the resulting next steps in further developing and aligning the methodology to the needs of industrial practice.


Author(s):  
Nihan Yildirim ◽  
Semih Ersöz ◽  
Bilal Altun

Adopting agile methodologies to software development processes helps software companies to sustain their growth through efficiency for long term. In the digital transformation era, Industry 4.0 as part of High-Tech Strategy 2020 for Germany involves agile principles and brings the latest technological trends in production process. The purpose of this chapter is to design a proper agile project management performance measurement model for start-up software companies. First, all key performance indicators related to agile development in the literature have been listed. Then KPIs that are provided from literature review with content analysis have been reviewed and categorized by expert opinions that were collected through in-depth interviews. Seven strategic KPIs and their data collection systems are defined and designed. Lastly, process and data collection improvements are recommended in order to sustain agile development measurement model.


Author(s):  
Ricardo Colomo-Palacios ◽  
Israel González-Carrasco ◽  
José Luis López-Cuadrado ◽  
Ángel García-Crespo

Agile development is a crucial issue within software engineering because one of the goals of any project leader is to increase the speed and flexibility in the development of new commercial products. In this sense, project managers must find the best resource configuration for each of the work packages necessary for the management of software development processes in order to keep the team motivated and committed to the project and to improve productivity and quality. This paper presents ReSySTER, a hybrid recommender system based on fuzzy logic, rough set theory and semantic technologies, aimed at helping project leaders to manage software development projects. The proposed system provides a powerful tool for project managers supporting the development process in Scrum environments and helping to form the most suitable team for different work packages. The system has been evaluated in a real scenario of development with the Scrum framework obtaining promising results.


2017 ◽  
Vol 8 (1) ◽  
pp. 43-57 ◽  
Author(s):  
Kalle Rindell ◽  
Sami Hyrynsalmi ◽  
Ville Leppänen

Security concerns are increasingly guiding both the design and processes of software-intensive product development. In certain environments, the development of the product requires special security arrangements for development processes, product release, maintenance and hosting, and specific security-oriented processes and governance. Integrating the security engineering processes into agile development methods can have the effect of mitigating the agile methods' intended benefits. This article describes a case of a large ICT service provider building a secure identity management system for a sizable government agency. The project was a subject to strict security regulations due to the end product's critical role. The project was a multi-team, multi-site, standard-regulated security engineering and development work executed following the Scrum framework. The study reports the difficulties in combining security engineering with agile development, provides propositions to enhance Scrum for security engineering activities. Also, an evaluation of the effects of the security work on project cost presented.


IET Software ◽  
2010 ◽  
Vol 4 (6) ◽  
pp. 434 ◽  
Author(s):  
A. Amescua ◽  
L. Bermón ◽  
J. García ◽  
M.-I. Sánchez-Segura

2018 ◽  
Vol 15 (1) ◽  
pp. 79-109 ◽  
Author(s):  
Predrag Matkovic ◽  
Mirjana Maric ◽  
Pere Tumbas ◽  
Marton Sakal

Mechanisms of agile processes, suited for cost reduction and timely reaction to dynamic market changes, have also been recognized as useful in the development of complex software solutions. Recent studies focused on expansion of agile processes point to a viable possibility for coexistence and integration of complementary elements of agile and traditional development. Within the scope of this paper, this phenomenon is referred to as traditionalisation of agile processes. Software architecture modeling is one of the most sensitive issues associated with incorporation of elements of traditional development into agile processes. The goal of this paper was to determine how suitable particular explicit architectural practices are for incorporation into agile development processes. A mixed method research was carried out for this purpose. Qualitative component of the research resulted in identification of explicit architectural practices suitable for application in agile development processes. Their significances were determined by means of the quantitative component, realized in the form of an empirical research. The research confirmed that emergent architecture in agile processes is not sufficient for the development of complex software solutions, and that agile processes need to incorporate certain explicit architecture practices. Research results revealed that the agile community has an affirmative attitude towards the idea of incorporating explicit architectural practices into agile development processes, with overall agreement on the significances of particular explicit architectural practices for the development of architecture of complex software systems.


2019 ◽  
Vol 26 (2) ◽  
pp. 851-870 ◽  
Author(s):  
Benjamin Strenge ◽  
Thomas Schack

Abstract Ethical, legal and social implications are widely regarded as important considerations with respect to technological developments. Agile Worth-Oriented Systems Engineering (AWOSE) is an innovative approach to incorporating ethically relevant criteria during agile development processes through a flexibly applicable methodology. First, a predefined model for the ethical evaluation of socio-technical systems is used to assess ethical issues according to different dimensions. The second part of AWOSE ensures that ethical issues are not only identified, but also systematically considered during the design of systems based on information and communication technology. For this purpose, the findings from the first step are integrated with approaches from worth-centered development into a process model that, unlike previous approaches to ethical system development, is thoroughly compatible with agile methodologies like Scrum or Extreme Programming. Artifacts of worth-centered development called Worth Maps have been improved to guide the prioritization of development tasks as well as choices among design alternatives with respect to ethical implications. Furthermore, the improved Worth Maps facilitate the identification of suitable criteria for system evaluations in association to ethical concerns and desired positive outcomes of system usage. The potential of the AWOSE methodology has been demonstrated in the context of a technical system (smart glasses for cognitive assistance) that supports elderly and people with particular handicaps.


Sign in / Sign up

Export Citation Format

Share Document