Recommended Methods Supporting Adoption of the Agile Philosophy for Hardware Development

2021 ◽  
Author(s):  
Matthew Peterson ◽  
Joshua D. Summers

Abstract The objective of this research is to understand the historical evolution of software development, identify desirable characteristics of methods supporting agile for hardware, and recommend potential methods enabling agile development of hardware products. As technology and markets change, product development increasingly operates in a volatile, uncertain, complex, and ambiguous (VUCA) environment. While originally applied to software development, organizations are starting to see opportunity in adapting the agile philosophy for hardware development. A comparison of philosophies is made between waterfall, spiral, and agile development. The historical evolutions of software development, after agile, including Continuous Integration Continuous Deployment (CICD), Development and Operations (DevOps), and Development Security and Operations (DevSecOps) is presented. Benefits and challenges in the application of agile methods for hardware are presented. Benefits include improvements in flexibility in response to change and soft factors such as team communication, transparency and commitment. However, many challenges still remain. These are grouped into theme areas including lack of product flexibility, difficulty in separating deliverables, challenges with breaking down tasks within a sprint, changes needed in culture and mindset, difficulty scaling beyond pilot programs, team distribution, and development of an integrated approach across the product lifecycle. Potential methods to aid in the adoption of agile for hardware are discussed using the phases of the hardware development lifecycle as a framework. Recommended methods include the adaptation of Model Based Systems Engineering (MBSE) for problem definition, the use of generative methods for design, the application of Virtual Reality (VR) for prototyping, leveraging additive manufacturing for production, and favoring software defined systems to help in operations. By reducing both the duration and person-hours, these methods enable higher iteration rates for hardware products needed for an agile philosophy. The paper concludes with a discussion on future research efforts supporting the enabling agile development of hardware.

Author(s):  
Torstein Nicolaysen ◽  
Richard Sassoon ◽  
Maria B. Line ◽  
Martin Gilje Jaatun

In this article, the authors contrast the results of a series of interviews with agile software development organizations with a case study of a distributed agile development effort, focusing on how information security is taken care of in an agile context. The interviews indicate that small and medium-sized agile software development organizations do not use any particular methodology to achieve security goals, even when their software is web-facing and potential targets of attack. This case study confirms that even in cases where security is an articulated requirement, and where security design is fed as input to the implementation team, there is no guarantee that the end result meets the security objectives. The authors contend that security must be built as an intrinsic software property and emphasize the need for security awareness throughout the whole software development lifecycle. This paper suggests two extensions to agile methodologies that may contribute to ensuring focus on security during the complete lifecycle.


Author(s):  
Nancy A. Bonner ◽  
Nisha Kulangara ◽  
Sridhar Nerur ◽  
James. T. C. Teng

There is little doubt that agile software development (ASD) methods have gained widespread acceptance in industry. Despite the attention these methods have received, there is little empirical affirmation of the benefits that accrue to those who use agile methodologies. Grounded in the conceptual foundations of innovation diffusion and agile philosophy of development, the authors' study validates a model to assess the perceived advantage of an iterative approach to software development. Consistent with their predictions, the results suggest that evolutionary development - the cornerstone of agile development – is perceived to be less complex and more compatible with the work habits of developers. Further, the findings support the hitherto unsubstantiated claim that iterative development yields benefits to software developers. However, process flexibility, yet another important characteristic of agile development, had no significant impact on complexity, compatibility, and relative advantage. The implications of the study for academics and practitioners, and directions for future research are discussed.


Author(s):  
Kamalendu Pal ◽  
Bill Karakostas

The adoption of agility at a large scale often requires the integration of agile and non-agile development practices into hybrid software development and delivery environment. This chapter addresses software testing related issues for Agile software application development. Currently, the umbrella of Agile methodologies (e.g. Scrum, Extreme Programming, Development and Operations – i.e., DevOps) have become the preferred tools for modern software development. These methodologies emphasize iterative and incremental development, where both the requirements and solutions evolve through the collaboration between cross-functional teams. The success of such practices relies on the quality result of each stage of development, obtained through rigorous testing. This chapter introduces the principles of software testing within the context of Scrum/DevOps based software development lifecycle.


2022 ◽  
pp. 1059-1076
Author(s):  
Kamalendu Pal ◽  
Bill Karakostas

The adoption of agility at a large scale often requires the integration of agile and non-agile development practices into hybrid software development and delivery environment. This chapter addresses software testing related issues for Agile software application development. Currently, the umbrella of Agile methodologies (e.g. Scrum, Extreme Programming, Development and Operations – i.e., DevOps) have become the preferred tools for modern software development. These methodologies emphasize iterative and incremental development, where both the requirements and solutions evolve through the collaboration between cross-functional teams. The success of such practices relies on the quality result of each stage of development, obtained through rigorous testing. This chapter introduces the principles of software testing within the context of Scrum/DevOps based software development lifecycle.


2016 ◽  
Vol 27 (3) ◽  
pp. 38-63 ◽  
Author(s):  
Nancy A. Bonner ◽  
Nisha Kulangara ◽  
Sridhar Nerur ◽  
James. T. C. Teng

There is little doubt that agile software development (ASD) methods have gained widespread acceptance in industry. Despite the attention these methods have received, there is little empirical affirmation of the benefits that accrue to those who use agile methodologies. Grounded in the conceptual foundations of innovation diffusion and agile philosophy of development, the authors' study validates a model to assess the perceived advantage of an iterative approach to software development. Consistent with their predictions, the results suggest that evolutionary development - the cornerstone of agile development – is perceived to be less complex and more compatible with the work habits of developers. Further, the findings support the hitherto unsubstantiated claim that iterative development yields benefits to software developers. However, process flexibility, yet another important characteristic of agile development, had no significant impact on complexity, compatibility, and relative advantage. The implications of the study for academics and practitioners, and directions for future research are discussed.


2010 ◽  
Vol 1 (3) ◽  
pp. 71-85 ◽  
Author(s):  
Torstein Nicolaysen ◽  
Richard Sassoon ◽  
Maria B. Line ◽  
Martin Gilje Jaatun

In this article, the authors contrast the results of a series of interviews with agile software development organizations with a case study of a distributed agile development effort, focusing on how information security is taken care of in an agile context. The interviews indicate that small and medium-sized agile software development organizations do not use any particular methodology to achieve security goals, even when their software is web-facing and potential targets of attack. This case study confirms that even in cases where security is an articulated requirement, and where security design is fed as input to the implementation team, there is no guarantee that the end result meets the security objectives. The authors contend that security must be built as an intrinsic software property and emphasize the need for security awareness throughout the whole software development lifecycle. This paper suggests two extensions to agile methodologies that may contribute to ensuring focus on security during the complete lifecycle.


2020 ◽  
Vol 12 (11) ◽  
pp. 4460 ◽  
Author(s):  
Mohammadsoroush Tafazzoli ◽  
Ehsan Mousavi ◽  
Sharareh Kermanshachi

Although the two concepts of lean and sustainable construction have been developed due to different incentives, and they do not pursue the same exact goals, there exists considerable commonality between them. This paper discusses the potentials for integrating the two approaches and their practices and how the resulting synergy from combining the two methods can potentially lead to higher levels of fulfilling the individual goals of each of them. Some limitations and challenges to implementing the integrated approach are also discussed. Based on a comprehensive review of existing papers related to sustainable and lean construction topics, the commonality between the two approaches is discussed and grouped in five categories of (1) cost savings, (2) waste minimization, (3) Jobsite safety improvement, (4) reduced energy consumption, and (5) customers’ satisfaction improvement. The challenges of this integration are similarly identified and discussed in the four main categories of (1) additional initial costs to the project, (2) difficulty of providing specialized expertise, (3) contractors’ unwillingness to adopt the additional requirements, and (4) challenges to establish a high level of teamwork. Industry professionals were then interviewed to rank the elements in each of the two categories of opportunities and challenges. The results of the study highlight how future research can pursue the development of a new Green-Lean approach by investing in the communalities and meeting the challenges of this integration.


2021 ◽  
pp. 1063293X2110152
Author(s):  
Qing Yang ◽  
Yingxin Bi ◽  
Qinru Wang ◽  
Tao Yao

Software development projects have undergone remarkable changes with the arrival of agile development approaches. Many firms are facing a need to use these approaches to manage entities consisting of multiple projects (i.e. programs) simultaneously and efficiently. New technologies such as big data provide a huge power and rich demand for the IT application system of the commercial bank which has the characteristics of multiple sub-projects, strong inter-project correlation, and numerous project participating teams. Hence, taking the IT program management of a bank in China as a case, we explore the methods to solve the problems in multi-project concurrent development practice through integrating the ideas of program and batch management. First, to coordinate the multi-project development process, this paper presents the batch-based agile program management approach that synthesizes concurrent engineering with agile methods. And we compare the application of batch management between software development projects and manufacturing process. Further, we analyze the concurrent multi-project development practice in the batch-based agile program management, including the overlapping between stages, individual project’s activities, and multiple projects based on common resources and environment to stimulate the knowledge transfer. Third, to facilitate the communication and coordination of batch-based program management, we present the double-level responsibility organizational structure of batch management.


Sign in / Sign up

Export Citation Format

Share Document