Agile Embedded System Development versus European Space Standards

Author(s):  
Ville Rantala ◽  
Kaisa Könnölä ◽  
Samuli Suomi ◽  
Minna Isomäki ◽  
Teijo Lehtonen

Agile development methods are widely utilized in software development. There is a growing interest and effort to introduce them to other areas of technology, such as development of space systems. Space systems are typically safety- and mission-critical and therefore their development is strongly regulated and standardized. European Cooperation for Space Standardization (ECSS) has created a collection of standards which are extensively followed mainly in European space projects. In this paper, a review and discussion are presented to find out the conflicts between the agile development and the ECSS standards. The presented analysis and discussion show that the ECSS standards do not fully prevent the utilization of agile methods. However, there are aspects to be taken into account in the development methods, contracts and tailoring of standards.

Author(s):  
Angelia Sebok ◽  
Brett Walters ◽  
Christopher Plott

The Agile software development process offers many potential benefits, including a design approach that allows frequent customer input, rapid development of functionality, and the ability to identify and resolve potential misunderstandings in design requirements. This process has generally been highly successful and offered many benefits to the software development industry. It is being adopted by an ever-increasing number of industries and used for applications beyond software development, including hard ware development, training materials, and marketing materials, to name a few examples. This paper describes a project to examine the integration of Human-Centered Design principles with the Agile process, and evaluate the appropriateness of this integrated process for safety and mission critical systems design.


Author(s):  
Zoran Stojanovic ◽  
Ajantha Dahanayake ◽  
Henk Sol

Agile software development methods have been proposed as the way to address the problem of delivering high-quality software on time under constantly and rapidly changing requirements in business and IT environments. An agile development process is characterized by extensive coding practice, intensive communication between stakeholders, fast iterative cycles, small and flexible teams, and minimal efforts in system modeling and architectural design. This paper presents the state-of-the-art of agile methods and analyzes them along the selected criteria that highlight different aspects of their theory and practice. Certain limitations of agile methods are identified. The chapter presents the component paradigm as a way of balancing traditional (model-driven or plan-driven) and agile development, depending on the project settings. Service-based component concepts applied at the level of modeling, architectural design and development can ensure and strengthen agile development principles and practices, and at the same time introduce necessary agility to more traditional development. By using components, the software development process can easily scale in size, robustness, and the level of details. This provides an effective balance between the requirements for agility in software development and needs for a disciplined, design-driven way of building complex software.


Author(s):  
Michal Dolezel ◽  
Alena Buchalcevova

People rely on structures to make their worlds orderly. This chapter conceptually probes into the problem of the differences between organizational structures deployed in traditional and agile environments. The authors develop an argument that all common forms of organizational entities can be classified by involving a two-dimensional classification scheme. Specifically, they constructed a typology to examine the issues of formal vs. informal authority, and disciplinarity vs. cross-functionality in terms of their significance for traditional and agile software development workplaces. Some examples of concrete organizational forms—including traditional project team, independent test team, self-organizing agile team and developers' community of practice—are discussed. In sum, they argue that by employing this classification scheme, they can theorize the nature of the on-going structural shift observed in conjunction with deploying agile software development methods. They acknowledge that the structures have fundamentally changed, terming the move “democratization” in the software development workplace.


2022 ◽  
pp. 356-376
Author(s):  
VenuGopal Balijepally ◽  
Gerald DeHondt ◽  
Vijayan Sugumaran ◽  
Sridhar Nerur

Agile Development Methods, considered as an alternative to the traditional plan-based methods, have received much attention since their inception. These practices have evolved and developed over time, culminating in 2001 with the Agile Manifesto. Since that time, preferred methodologies, implementations, and best practices have continued to evolve with a focus on doing what works best for the individual company or project. However, the concept of agility in software development has remained quite nebulous, lacking in clarity particularly about its underlying dimensions. In this research the authors conceive agility in terms of four distinct dimensions. Drawing from the theoretical perspective of holographic organization, they develop a model explaining how each of these underlying dimensions of agility contributes to project value in software teams. The authors test the model using survey data collected from industry practitioners and discuss findings.


Author(s):  
M. Siponen ◽  
R. Baskerville ◽  
R. Kuivalainen

Software developers can use agile software development methods to build secure information systems. Current agile methods have few (if any) explicit security fea-tures. While several discrete security methods (such as checklists and management standards) can supplement agile methods, few of these integrate seamlessly into other software development methods. Because of the severe constraints imposed by agile methods, these discrete security techniques integrate very poorly into agile approaches. This chapter demonstrates how the security features can be integrated into an agile method called feature driven development.


Author(s):  
M. Siponen ◽  
R. Baskerville ◽  
T. Kuivalainen

Software developers can use agile software development methods to build secure information systems. Current agile methods have few (if any) explicit security fea-tures. While several discrete security methods (such as checklists and management standards) can supplement agile methods, few of these integrate seamlessly into other software development methods. Because of the severe constraints imposed by agile methods, these discrete security techniques integrate very poorly into agile approaches. This chapter demonstrates how the security features can be integrated into an agile method called feature driven development.


Author(s):  
Julie E. Kendall ◽  
Kenneth E. Kendall ◽  
Sue Kong

We introduce, define, and elaborate on agile development methods and how quality information systems are created via the values and practices of people using agile approaches. Key differences among agile methods, the SDLC, and other development methodologies are covered and suggestions for improving quality in IS through agile methods are given. We recommend adopting the principles of agile methods, encouraging more education about the values of agile approaches, including more types of people in the development of agile systems; adopting agile methods for a variety of organizational cultures; and renaming agile methods to signify the value system inherent in the approach.


2020 ◽  
Vol 25 (2) ◽  
pp. 105-116
Author(s):  
Oksana Ņikiforova ◽  
Kristaps Babris ◽  
Jānis Kristapsons

AbstractSoftware development method, which does not have any faults or gaps in project implementation, has not been elaborated so far. Due to this reason, the authors have decided to perform this study to make it easier for the companies, which use one of the agile development methods, to better foresee potential risks and to deal with their consequences. The aim of the research is to identify and classify risks in agile software development methods and the related projects based on the obtained survey data. To achieve the goal, the authors have developed evaluation criteria, as well as implemented practical questionnaire in various software development companies. From the obtained survey data, the risks are classified according to various factors, i.e., the changing highest and lowest priorities and needs in various projects. Thus, the obtained research results can be applied in various areas of project development, changing the order of priority factors.


2022 ◽  
pp. 929-946
Author(s):  
Kalle Rindell ◽  
Sami Hyrynsalmi ◽  
Ville Leppänen

Agile software development was introduced in the beginning of the 2000s to increase the visibility and efficiency software projects. Since then it has become as an industry standard. However, fitting sequential security engineering development models into iterative and incremental development practices in agile methods has caused difficulties in defining, implementing, and verifying the security properties of software. In addition, agile methods have also been criticized for decreased quality of documentation, resulting in decreased security assurance necessary for regulative purposes and security measurement. As a consequence, lack of security assurance can complicate security incident management, thus increasing the software's potential lifetime cost. This chapter clarifies the requirements for software security assurance by using an evaluation framework to analyze the compatibility of established agile security development methods: XP, Scrum, and Kanban. The results show that the agile methods are not inherently incompatible with security engineering requirements.


Sign in / Sign up

Export Citation Format

Share Document