Fitting Security into Agile Software Development

Author(s):  
Kalle Rindell ◽  
Sami Hyrynsalmi ◽  
Ville Leppänen

Security objectives in software development are increasingly convergent with the business objectives, as requirements for privacy and the cost of security incidents call for more dependable software products. The development of secure software is accomplished by augmenting the software development process with specific security engineering activities. Security engineering, in contrast to the iterative and incremental software development processes, is characterized by sequential life cycle models: the security objectives are thus to be achieved by conflicting approaches. In this study, to identify the incompatibilities between the approaches, the security engineering activities from Microsoft SDL, the ISO Common Criteria and OWASP SAMM security engineering models are mapped into common agile software development processes, practices and artifacts.

Author(s):  
Kalle Rindell ◽  
Sami Hyrynsalmi ◽  
Ville Leppänen

Security objectives in software development are increasingly convergent with the business objectives, as requirements for privacy and the cost of security incidents call for more dependable software products. The development of secure software is accomplished by augmenting the software development process with specific security engineering activities. Security engineering, in contrast to the iterative and incremental software development processes, is characterized by sequential life cycle models: the security objectives are thus to be achieved by conflicting approaches. In this study, to identify the incompatibilities between the approaches, the security engineering activities from Microsoft SDL, the ISO Common Criteria and OWASP SAMM security engineering models are mapped into common agile software development processes, practices and artifacts.


2005 ◽  
Vol 16 (4) ◽  
pp. 62-87 ◽  
Author(s):  
Daniel Turk ◽  
France. Robert ◽  
Bernhard Rumpe

Author(s):  
Muhammad Aminu Umar ◽  
Sheidu Salami Tenuche ◽  
Sahabi Ali Yusuf ◽  
Aminu Onimisi Abdulsalami ◽  
Aliyu Muhammad Kufena

As the popularity and acceptance of agile software development methodologies increases, the need to integrate usability engineering in the design and development processes is imperative. While, agile the focus is on technical and functional requirements not on end-user interaction, usability is usually only dealt with on the side. Combining this two in practice will go a long way in development of better product. Since the success and acceptance of software product depends not only on the technologies used but how well it integrates user-oriented methods. Therefore, this chapter puts together works on how usability engineering has been integrated with agile processes.


2020 ◽  
Vol 14 ◽  
pp. 8-13
Author(s):  
Tomasz Bławucki ◽  
Siarhei Ramanovich ◽  
Maria Skublewska-Paszkowska

The article presents a comparison in terms of hardware requirements of applications that supports the agile software development processes. For research purposes, popular mobile and internet applications supporting agile software development were chosen. In order to determine the significance of individual technical requirements for end-users, a series of research experiments, based on scenarios of typical and boundary use was conducted. In addition to research, the application supporting agile software development process was implemented. The results of research were recorded by specialized monitoring and profiling tools. The results of performed work are presented in tabular form.


Author(s):  
Samar Alsaqqa ◽  
Samer Sawalha ◽  
Heba Abdel-Nabi

<p>Software engineering is a discipline that undergone many improvements that aims to keep up with the new advancements in technologies and the modern business requirements through developing effective approaches to reach the final software product, agile software development is one of these successful approaches. Agile software development is a lightweight approach that was proposed to overcome the convolutional development methods’ limitations and to reduce the overhead and the cost while providing flexibility to adopt the changes in requirements at any stage, this is done by managing the tasks and their coordination through a certain set of values and principles.</p><p>In this work, a comprehensive review that outlines the main agile values and principles, and states the key differences that distinguish agile methods over the traditional ones are presented. Then a discussion of the most popular agile methodologies; their life cycles, their roles, and their advantages and disadvantages are outlined. The recent state of art trends that adopts agile development especially in cloud computing, big data, and coordination are also explored. And finally, this work highlights how to choose the best suitable agile methodology that must be selected according to the task at hand, how sensitive the product is and the organization structure.</p>


DYNA ◽  
2019 ◽  
Vol 86 (209) ◽  
pp. 79-90
Author(s):  
Wilson Alfredo Ortega Ordoñez ◽  
César Jesús Pardo Calvache ◽  
Francisco José Pino Correa

Currently, there is a broad portfolio of agile approaches to software development, however, in many cases their implementation is done informally and without a proper institutionalization of the agile values and principles. Although there are some proposals related to the adoption and assessment of agile approaches, efforts have been made without having a common terminology which has led to confusion and terminological conflict affecting the implementation of these approaches in organizations. This article proposes the ontology called OntoAgile, which aims to suggest a common and consistent terminology that allows sharing the knowledge generated around the implementation of the agile approaches in the software processes in a generic and formal way. Similarly, OntoAgile facilitates the assessment of the agility of the software processes from the identification of the relationships between the elements of the software processes and the agile principles and values. OntoAgile was assessed satisfactorily by three cases of application.


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