Agile Software Development -  - E-Book

Agile Software Development E-Book

0,0
150,99 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.

Mehr erfahren.
Beschreibung

AGILE SOFTWARE DEVELOPMENT A unique title that introduces the whole range of agile software development processes from the fundamental concepts to the highest levels of applications such as requirement analysis, software testing, quality assurance, and risk management. Agile Software Development (ASD) has become a popular technology because its methods apply to any programming paradigm. It is important in the software development process because it emphasizes incremental delivery, team collaboration, continuous planning, and learning over delivering everything at once near the end. Agile has gained popularity as a result of its use of various frameworks, methods, and techniques to improve software quality. Scrum is a major agile framework that has been widely adopted by the software development community. Metaheuristic techniques have been used in the agile software development process to improve software quality and reliability. These techniques not only improve quality and reliability but also test cases, resulting in cost-effective and time-effective software. However, many significant research challenges must be addressed to put such ASD capabilities into practice. With the use of diverse techniques, guiding principles, artificial intelligence, soft computing, and machine learning, this book seeks to study theoretical and technological research findings on all facets of ASD. Also, it sheds light on the latest trends, challenges, and applications in the area of ASD. This book explores the theoretical as well as the technical research outcomes on all the aspects of Agile Software Development by using various methods, principles, artificial intelligence, soft computing, and machine learning. Audience The book is designed for computer scientists and software engineers both in research and industry. Graduate and postgraduate students will find the book accessible as well.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 578

Veröffentlichungsjahr: 2023

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.


Ähnliche


Table of Contents

Cover

Series Page

Title Page

Copyright Page

Preface

1 Agile Software Development in the Digital World – Trends and Challenges

1.1 Introduction

1.2 Related Work

1.3 Agile Architecture Trends in the Digital World

1.4 Challenges Faced in the Digital World Through Agile Software Development

1.5 Generic Guidelines to Improve the Agile Transformation in Digital World

1.6 Conclusion and Future Perspective

References

2 Agile Framework Adaptation Issues in Various Sectors

2.1 Introduction

2.2 Agile Followers

2.3 Proposed Work

2.4 Resolution Matrix

2.5 Conclusion and Future Work

References

3 Vulnerability Assessment Tools for IoT: An Agile Approach

3.1 Introduction

3.2 Agile Methodology: SCRUM

3.3 Scrum Agile Benefits for IoT

3.4 Critical Factors for Implementing Agile Methodology

3.5 Conclusion

References

4 Interoperable Agile IoT

4.1 Introduction

4.2 Agile Software Development

4.3 Internet of Things (IoT)

4.4 Agile–IoT Project for Interoperability

4.5 Agile–IoT Project for Smart Domains

4.6 INTER-IoT Framework for Interoperability

4.7 Conclusion

References

5 Functional and Non-Functional Requirements in Agile Software Development

5.1 Introduction

5.2 Agile Requirements Gathering

5.3 Types of Requirements

5.4 Functional Requirement Gathering

5.5 Non-Functional Requirement Gathering

5.6 Testing Functional and Non-Functional Requirements

5.7 Conclusion and Future Scope

References

6 Minimizing Cost, Effort, and Implementation Complexity for Adopting Security Requirements in an Agile Development Process for Cyber-Physical Systems

6.1 Introduction

6.2 Literature Review

6.3 Proposed Methodology

6.4 Conclusion

References

7 A Systematic Literature Review on Test Case Prioritization Techniques

7.1 The Motivation for Systematic Review

7.2 Results

7.3 What Subject Systems Have Been Used to Evaluate Test Case Prioritization Techniques? What is the Type of Programming Platform for Subject Systems?

7.4 Research Gaps

References

8 A Systematic Review of the Tools and Techniques in Distributed Agile Software Development

8.1 Introduction

8.2 Literature Review

8.3 Techniques for DASD

8.4 Tools for DASD

8.5 Conclusion

References

9 Distributed Agile Software Development (DASD) Process

9.1 Introduction

9.2 Distributed Software Development

9.3 Distributed Agile Software Development Team

9.4 Scrum in Global Software Development (GSD)

9.5 Tools and Techniques for Agile Distributed Development

9.6 Conclusion

References

10 Task Allocation in Agile-Based Distributed Project Development Environment

10.1 Introduction

10.2 Task Allocation

10.3 Machine Learning-Based Task Allocation Model

10.4 Conclusion

References

11 Software Quality Management by Agile Testing

11.1 Introduction

11.2 A Brief Introduction to JMeter

11.3 Review of Literature

11.4 Performance Testing Using JMeter

11.5 Proposed Work

11.6 Results and Discussions

11.7 Conclusion

References

12 A Deep Drive into Software Development Agile Methodologies for Software Quality Assurance

12.1 Introduction

12.2 Background Work

12.3 Understanding Agile Software Methodologies

12.4 Agile Methodology Evaluation Framework

12.5 Agile Software Development – Issues and Challenges

12.6 Conclusion

References

13 Factors and Techniques for Software Quality Assurance in Agile Software Development

13.1 Introduction

13.2 Literature Review

13.3 Agile Factors in Quality Assurance

13.4 Quality Assurance Techniques

13.5 Challenges and Limitations of Agile Technology

13.6 Conclusion and Future Scope

References

14 Classification of Risk Factors in Distributed Agile Software Development Based on User Story

14.1 Introduction

14.2 Software Risk Management

14.3 Literature Review

14.4 User Story-Based Classification of Risk Factors in Distributed Agile Software Development

14.5 Future Scope

14.6 Conclusion

References

15 Software Effort Estimation with Machine Learning – A Systematic Literature Review

15.1 Introduction

15.2 Method

15.3 Result

15.4 Discussion

15.5 Conclusion

15.6 Future Scope

References

16 Improving the Quality of Open Source Software

16.1 Introduction

16.2 Literature Review

16.3 Research Issues

16.4 Research Method and Data Collection

16.5 Results and Discussion

16.6 Conclusion and Future Scope

References

17 Artificial Intelligence Enables Agile Software Development Life Cycle

17.1 Introduction

17.2 Literature Survey

17.3 Proposed Work

17.4 Conclusion

References

18 Machine Learning in ASD: An Intensive Study of Automated Disease Prediction System

18.1 Introduction

18.2 Overview of ML

18.3 Case Study

18.4 Conclusion

References

Index

End User License Agreement

List of Tables

Chapter 1

Table 1.1 Agile methodology frameworks for software development.

Table 1.2 Summary of agile requirement engineering challenges and actions.

Table 1.3 Summary of challenges for small to mid-scale and large-scale agile p...

Chapter 2

Table 2.1 Need matrix.

Chapter 5

Table 5.1 Functional versus non-functional requirements.

Chapter 6

Table 6.1 Existing security methods.

Chapter 7

Table 7.1 Research questions.

Table 7.2 Techniques wise distribution of articles.

Table 7.3 Subject programs in literature.

Table 7.4 Evaluation criteria for prioritization in MBT.

Table 7.5 Subject programs for model based prioritization.

Table 7.6 Parameters of object-oriented prioritization.

Chapter 10

Table 10.1 Different agile approaches and their working mechanisms.

Chapter 11

Table 11.1 Parameters used for performance testing of Google and Yahoo.

Table 11.2 Aggregate report results for Google and Yahoo.

Chapter 12

Table 12.1 Evaluation framework for Extreme Programming (XP).

Table 12.2 Evaluation framework for Scrum.

Table 12.3 Evaluation framework for Lean Development (LD).

Table 12.4 Evaluation framework for crystal methodology.

Table 12.5 Evaluation framework for Kanban.

Table 12.6 Evaluation framework for Feature Driven Development (FDD).

Table 12.7 Evaluation framework for DSDM.

Chapter 13

Table 13.1 Success factors.

Table 13.2 Failure factor.

Chapter 14

Table 14.1 Risk category: Software development life cycle.

Table 14.2 Risk category: Project management.

Table 14.3 Risk category: Communication.

Table 14.4 Risk category: Technology-based.

Table 14.5 Risk category: External stakeholder.

Table 14.6 Risk category: Group awareness.

Table 14.7 User story-based classification of risk factors.

Chapter 15

Table 15.1 Journals and proceedings from conferences that have been selected.

Table 15.2 Excluded articles details.

Table 15.3 The finding of each author.

Table 15.4 Author affiliation details.

Table 15.5 Sources looked up for the years 2010 to 2021 (including articles up...

Chapter 16

Table 16.1 Smelly and non smelly classes in Eclipse.

Table 16.2 Selected metrics and quality attribute.

Table 16.3 Area under curve (ROC) for Eclipse.

Chapter 18

Table 18.1 Sample dataset.

List of Illustrations

Chapter 1

Figure 1.1 Agile software development life cycle.

Figure 1.2 The causes of project failure.

Figure 1.3 The agile implementation rate over projects.

Figure 1.4 Generic guidelines for improving agile transformation in the digita...

Chapter 3

Figure 3.1 IoT with agile practices.

Figure 3.2 Agile benefits for IoT.

Figure 3.3 Critical factors for implementing Agile practices.

Chapter 4

Figure 4.1 Traditional method.

Figure 4.2 Agile functionality [6].

Figure 4.3 Division of team members in Scrum process [7].

Figure 4.4 Scrum process [8].

Figure 4.5 XP methodology.

Figure 4.6 ASD methodology [8].

Figure 4.7 DSDM methodology.

Figure 4.8 Five-stage process of feature-driven development.

Figure 4.9 Internet of everything [16].

Figure 4.10 Agile-IoT pillars.

Figure 4.11 Pilot project milestone in AGILE-IoT project.

Figure 4.12 Interoperable agile INTER-IoT framework [23].

Chapter 5

Figure 5.1 Types of requirements.

Chapter 6

Figure 6.1 Agile development frameworks and methodologies.

Figure 6.2 Cost and time relation to apply security patches in software develo...

Figure 6.3 Proposed secure agile development methodology.

Figure 6.4 Impact of earlier avoidance and minimization through our methodolog...

Figure 6.5 Three stages of our proposed methodology.

Chapter 7

Figure 7.1 Publication trend.

Chapter 8

Figure 8.1 https://monday.com/ [10].

Figure 8.2 nTask [11, 21].

Figure 8.3 Jira [12].

Figure 8.4 ActiveCollab [13].

Figure 8.5 PivotalTracker [14].

Figure 8.6 Clarizen [15].

Figure 8.7 AxoSoft [16].

Figure 8.8 MeisterTask [17].

Figure 8.9 GitLab [18].

Figure 8.10 ProductBoard [20].

Figure 8.11 ZohoSprints [22].

Figure 8.12 TaskWorld [24].

Figure 8.13 CoSchedule [26].

Figure 8.14 Nostromo [27].

Chapter 9

Figure 9.1 Distributed agile teams.

Figure 9.2 Depiction of scrum process.

Chapter 10

Figure 10.1 Steps followed during SDLC.

Figure 10.2 Machine learning-based task allocation model.

Chapter 11

Figure 11.1 Performance testing process.

Figure 11.2 Listener-view result tree for Google Test Plan.

Figure 11.3 Listener-view result tree for Yahoo Test Plan.

Figure 11.4 Listener-aggregate graph for Google Test Plan.

Figure 11.5 Listener-aggregate graph for Yahoo Test Plan.

Chapter 13

Fig. 13.1 Agile process.

Fig. 13.2 Categorization of quality assurance techniques.

Chapter 14

Figure 14.1 Steps in risk management.

Figure 14.2 Steps in risk identification.

Figure 14.3 Risk assessment matrix using qualitative risk analysis.

Figure 14.4 Steps in risk analysis.

Figure 14.5 Risk management and control.

Figure 14.6 Risk monitoring.

Chapter 15

Figure 15.1 Year wise publication details.

Figure 15.2 Top 10 publications.

Figure 15.3 Top 10 authors.

Chapter 16

Figure 16.1 ROC curves for application of NN MLP model on four versions of Ecl...

Chapter 17

Figure 17.1 Artificial Intelligence enables Agile software development life cy...

Chapter 18

Figure 18.1 Machine learning (ML) steps.

Figure 18.2 Supervised learning.

Figure 18.3 Unsupervised learning.

Figure 18.4 Artificial neural network (ANN) diagram.

Figure 18.5 K-Means clustering

Figure 18.6 Agile menifesto.

Figure 18.7 Agile software development procedure.

Figure 18.8 Waterfall model vs. Agile software development procedure.

Figure 18.9 Waterfall model vs. Agile software development (ASD).

Figure 18.9 Methodology diagram.

Figure 18.10 The confusion matrix and F1-score accuracy curve.

Figure 18.11 GUI of automated disease predicting system.

Guide

Cover Page

Series Page

Title Page

Copyright Page

Preface

Table of Contents

Begin Reading

Index

WILEY END USER LICENSE AGREEMENT

Pages

ii

iii

iv

xv

xvi

xvii

xviii

xix

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

325

326

327

328

329

330

331

332

333

334

335

336

337

338

339

340

341

342

343

345

346

347

348

349

350

351

352

353

354

355

356

357

358

359

360

361

362

363

364

365

366

Scrivener Publishing100 Cummings Center, Suite 541JBeverly, MA 01915-6106

Publishers at ScrivenerMartin Scrivener ([email protected])Phillip Carmical ([email protected])

Agile Software Development

Trends, Challenges and Applications

Edited by

Susheela Hooda

Vandana Mohindru Sood

Yashwant Singh

Sandeep Dalal

and

Manu Sood

This edition first published 2023 by John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, USA and Scrivener Publishing LLC, 100 Cummings Center, Suite 541J, Beverly, MA 01915, USA© 2023 Scrivener Publishing LLCFor more information about Scrivener publications please visit www.scrivenerpublishing.com.

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, except as permitted by law. Advice on how to obtain permission to reuse material from this title is available at http://www.wiley.com/go/permissions.

Wiley Global Headquarters111 River Street, Hoboken, NJ 07030, USA

For details of our global editorial offices, customer services, and more information about Wiley products visit us at www.wiley.com.

Limit of Liability/Disclaimer of WarrantyWhile the publisher and authors have used their best efforts in preparing this work, they make no representations or warranties with respect to the accuracy or completeness of the contents of this work and specifically disclaim all warranties, including without limitation any implied warranties of merchant-ability or fitness for a particular purpose. No warranty may be created or extended by sales representatives, written sales materials, or promotional statements for this work. The fact that an organization, website, or product is referred to in this work as a citation and/or potential source of further information does not mean that the publisher and authors endorse the information or services the organization, website, or product may provide or recommendations it may make. This work is sold with the understanding that the publisher is not engaged in rendering professional services. The advice and strategies contained herein may not be suitable for your situation. You should consult with a specialist where appropriate. Neither the publisher nor authors shall be liable for any loss of profit or any other commercial damages, including but not limited to special, incidental, consequential, or other damages. Further, readers should be aware that websites listed in this work may have changed or disappeared between when this work was written and when it is read.

Library of Congress Cataloging-in-Publication Data

ISBN 978-1199639-5

Cover image: Pixabay.ComCover design by Russell Richardson

Preface

Agile Software Development (ASD) has become a popular technology because its methods apply to any programming paradigm. It is important in the software development process because it emphasizes incremental delivery, team collaboration, continuous planning, and learning over delivering everything at once near the end. Before finalizing anything, Agile goes through several iterations based on feedback. As a result, the process becomes more dynamic because everyone is working toward a common goal. Agile has gained popularity as a result of its use of various frameworks, methods, and techniques to improve software quality. Scrum is a major agile framework that has been widely adopted by the software development community.

Metaheuristic techniques have been used in the agile software development process to improve software quality and reliability. These techniques not only improve quality and reliability but also test cases, resulting in cost-effective and time-effective software. However, many significant research challenges must be addressed to put such ASD capabilities into practice. With the use of diverse techniques, guiding principles, artificial intelligence, soft computing, and machine learning, this book seeks to study theoretical and technological research findings on all facets of ASD. Also, it sheds light on the latest trends, challenges, and applications in the area of ASD.

This book will benefit the software development community by providing conceptual and technological solutions to problems that commonly arise when developing software. Furthermore, the 18 chapters herein were written by eminent experts in the fields of software testing, quality, and reliability in ASD. Following is a summary of the information presented in each chapter of the book.

Chapter 1

provides a theoretical foundation for ASD and discovers problems and challenges that small, medium and large agile projects face when it comes to requirement engineering, and structuring probable proposals for improving the overall RE process. The goal of this chapter is also to discover the challenges of putting Agile into reality in the digital era.

Chapter 2

sheds light on issues concerning the adaption of the Agile framework in various sectors. The issues found in various sectors could be resolved by addressing a need matrix, which will list a need of a particular sector, and a resolution matrix, which will list all proposed solutions for all listed needs in the need matrix. Also, different use cases are presented for more clarity on the resolution part in different sectors.

Chapter 3

discusses the agile methods adopted to develop software projects dealing with growing vulnerabilities and threat implications. This adoption is necessary because agile methods are iterative in nature and facilitate service/product delivery in smaller batches, allowing developers to add security activities to software development via agile methodologies. Moreover, the reiterative aspect of this approach encourages the expansion of software that can very well come up with growing threat variants and vulnerabilities.

Chapter 4

focuses on the importance of agile methodology in IoT. It highlights the functionalities of the AGILE-IoT project funded by the European Union and five pilot projects such as pollution monitoring, retail service, port-area monitoring, quantified self-application, and cattle monitoring. This chapter also discusses the interoperability of the AGILE-IoT project.

Chapter 5

discusses the concepts of software requirements and their types (functional and non-functional requirements). It presents the various ways of gathering functional and non-functional requirements and testing them in the context of ASD.

Chapter 6

presents the ASD framework and methodology and discusses the time and cost relation during software development. This study proposes a secure ASD methodology that includes three stages, namely aggressive training, prototype development stage, and actual development stage and maintenance.

Chapter 7

caters to a systematic literature review on test case prioritization using agile methodology. The study concludes that the field of prioritization has been explored considerably and many prioritization techniques have evolved. However, there are still possibilities for improvements, especially in implementation and analysis. The study also highlights the current status of prioritization and provides a comparative analysis with similar works.

Chapter 8

aims to provide deeper insights into the most current agile planning tools used by distributed agile professionals. The agile tools studied and compared are both open-source as well as proprietary tools. This chapter discusses the benefits of distributed ASD and the various distributed agile planning tools that are available to resolve these concerns.

Chapter 9

sheds light on the concept of distributed ASD, its benefits, and the challenges which are faced by an agile software team during the software development process. It also discusses the various tools and techniques which are being currently used for agile development. Scrum is also discussed in detail in this chapter.

Chapter 10

introduces an unsupervised learning-based model for assisting in project development activities such as task allocation and backlog prioritization. It also discusses how machine learning-based mechanisms can be applied at their lowest level to every activity of project management so that the processes of software project management become more useful, and may also help in faster, hassle-free delivery of the finished product.

Chapter 11

sheds light on the usage of the JMeter software tool in ASD. The authors also suggest that JMeter may be an extremely useful tool for evaluating how to modify your web application server setup to decrease bottlenecks and boost performance.

Chapter 12

analyzes software development agile methodologies from the viewpoint of software quality assurance and presents a technique to understand similarities in diverse agile processes. It also covers the various issues and controversies in ASD that are the grey areas of agile methodology related to innovative thinking, the cost of projects developed using agile methodologies, etc.

Chapter 13

provides a detailed introduction to ASD, addresses its importance in the information technology sector, and presents a comprehensive overview of the factors and techniques followed by challenges and limitations of agile technology.

Chapter 14

discusses the importance of software risk management in distributed agile software development (DASD) and also reviews the existing literature and presents risk factors associated with DASD. It further presents the current challenges in the existing literature and proposes a novel user story-based DASD risk classification technique, in addition to discussing the scope of improvement in DASD risk management that will help both practitioners and researchers.

Chapter 15

assesses the present state of research trends and patterns of software effort estimation with machine learning techniques. It also evaluates the effect of numerous factors, such as cost and effort, concerning the accuracy of the various models related to effort estimation.

Chapter 16

aims to develop a metrics-based code smells prediction model based on deep learning neural network technique. The research methodology proposed in this chapter is based upon the field of deep learning, which is an integrated field of machine learning associated with algorithms aroused by the arrangement and similarity of the brain, called artificial neural networks.

Chapter 17

presents a plan and fosters a specialist framework to help the product designer in the total programming advancement life cycle with various space experts like telecom, banking, coordination, medical services, satellite, and a lot more information procurement. This chapter also contains the study of artificial intelligence, along with a brief discussion of its pros and cons.

Chapter 18

introduces a module that was developed with the help of machine learning, which is very helpful in an emergency when a patient requires an immediate decision. Here, Agile software is designed to be very effective in detecting a particular disease more efficiently. In this specific system, preventing errors and malfunctions has been proven to be 95% effective in the medical field.

In closing, we would like to express our gratitude to our co-authors for their invaluable contributions, without which this book could not have been written. Also, our sincere thanks go to the reviewers for the timely manner in which they provided their insightful remarks. Last but not least, we give thanks to God for providing us with the wisdom and strength to complete this work effectively despite the challenging times.

We anticipate that the high-caliber research presented in this book will be useful to science, technology, and mankind.

Dr. Vandana Mohindru Sood

Assistant Professor, Department of Computer Science and Engineering, Chitkara University, Rajpura, Punjab, India

Dr. Ravindara Bhatt

Assistant Professor in the Department of Computer Science and Engineering, Chitkara University, Rajpura, Punjab, India

Dr. Yashwant Singh

Associate Professor & Head, Department of Computer Science & Information Technology, Central University of Jammu, J & K, India

Dr. Manu Sood

Professor, Department of Computer Science, Himachal Pradesh University, Shimla, Himachal Pradesh, India

Dr. Sandeep Dalal

Assistant Professor, Department of Computer Science and Applications, Maharshi Dayanand University, Rohtak, Haryana, India

January 2023

1Agile Software Development in the Digital World – Trends and Challenges

Kapil Mehta1 and Vandana Mohindru Sood2*

1Department of Computer Science & Engineering, Chandigarh Group of Colleges, Mohali, Punjab, India

2Chitkara University Institute of Engineering and Technology, Chitkara University, Punjab, India

Abstract

Traditional businesses face fast-changing client needs, increased marketplace changing aspects, and the constant appearance of new technological progressions in an increasingly digital world. Faced with the demands of a digital world, businesses are attempting to embrace agile methodologies on a bigger level to satisfy these demands. Researchers were compelled to design new techniques and methodologies to fulfill marketing needs as company requirements grew rapidly. Traditional-driven development approaches, which emphasize requesting and detailing requirements that take extra time in comparison to changing dynamics of the market, have been superseded by Agile methodology. On the other side, there is a need for a development process where customers can interact and collaborate in teams. Instead of the benefits of agile development and new tools introduction, various challenges are required to be discussed. In the agile software development process, various techniques have been used for improving software quality and reliability. The goal of such techniques is to improve test cases, which leads to cost-effective and time-effective software. Particularly, various theoretical perspectives have been provided by researchers on agile software development which contribute rich insights. This work provides a theoretical foundation for ASD. Agile has given an adequate solution to varying requirements of customers in the marketplace; it is built on iterative enhancement, with each line representing its minimal size and independent Software Development Life Cycle (SDLC). Essentially, using agile in the right way necessitates a thorough comprehension of the technique. Despite their benefits, which included a fresh strategy, the ability to adapt to changes fast, new tools, coordination, and cooperation concepts, several obstacles arose, necessitating their resolution. The goal of this article is to discover challenges of putting Agile into reality in digital era. Challenges necessitate answers for agile and its techniques towards progress, therefore novel trends and expansion technologies will now be mirrored in Agile.

Keywords: Agile software development, agile research, software development life cycle, agile methodology, software quality, reliability

1.1 Introduction

In today’s world, the growth of information and technology continues to gain strength and speed as it embarks on an expedition of digital transformation, posing a significant challenge in terms of how to develop individuals with digital and IT capabilities. The 21st-century skills encompass 16 aspects [1–3], which include required traits of communication as well as interpersonal skills, according to the World Economic Forum Survey [4] analyzing the demand for workforce and technological approaches in large scale organizations worldwide. In the digital age, technology becomes a multiplier [5]. The distinction between the development as well as production environments is increasingly blurred as a result of modern practices, technology, and tools, resulting in a combined ecosystem. In the digital age, agile architecture scales to grouped ecosystems, which can be influenced by novel techniques and approaches.

Agile is a scalable technique that gains a lot of traction in the software development world due to its major rate of success and impressive output. Agile software development (ASD) outpaces old-style development methodologies and procedures for a variety of details, including varying customer needs, business requirements, and flexibility. “Requirement engineering” (RE) is critical in software development since the overall effectiveness of the product is dependent on the requirements accuracy acquired during engineering phase [6]. As a result, when the nature of the demand changes, acquiring, analyzing, comprehending, and managing needs is not an easy task [7]. During the progress from start to end, the active character of needs and consideration of project conclusion becomes vital. Hence, change consideration is an important aspect that is employed in a big proportion of projects after maintenance.

As demonstrated in Figure 1.1, the agile methodology enables continuous development and testing throughout the project’s development of software life cycle which combines iterative aspect and levelled process concepts (SDLC). The focus of swiftly delivering a workable software solution is on process adaptability and customer satisfaction. The project is divided into incremental builds of small size by using the Agile SDLC. The customer may decide whether the outcome of agile SDLC meeting the expectations or not. The difficulty is that there are no fixed requirements to predict resources and cost of development as one of its flaws.

Figure 1.1 Agile software development life cycle.

This article provides a thorough analysis as well as relevant inferences and references. The goal of this article is to discover problems and challenges that small-, mid- and large agile projects face when it comes to requirement engineering, and to structure probable proposals for improving the overall literature RE process. We can evaluate and analyze the background that will be analyzed and evaluated to make a recommendation for future work. The post intends to address the aforementioned issues using recently published publications in the several ages using agile development, having the goal on the requirement engineering process, as well as finding challenges related to agile engineering activities/practices.

The digital world offers new issues that necessitate a creative approach to identifying effective solutions while keeping the larger ecosystem in mind. In this regard, current agile architecture trends and practices in the digital world must be thoroughly examined. No study systematically studies trends and techniques of agile in the digital era, based on available facts and statistics.

1.1.1 Organization of Chapter

This chapter is organized as follow: Section 1.1 introduces the concept of Agile Software Development. Section 1.2 characterizes the literature background. Section 1.3 elaborates on the trends in the digital world that offers new issues that necessitate a creative approach for identifying effective solutions Section 1.4 emphasizes the challenges faced in a digital world through agile software development. Section 1.5 presents the generic guidelines to improve the agile transformation in a digital world. Section 1.6 concludes the chapter.

1.2 Related Work

In studies on the large-scale application of agile methodologies, the concept of “agile” [8] and how large-scale agile development may be conceived are frequently explored [9]. Extensive application of agile methods includes a) agile methods use in large enterprises, b) agile methods use in extensive projects or teams, c) agile methods use in multiple teams, and d) the use of agile techniques and philosophies in extensive firms as a whole. Agile Software Development is a concept that examines and synthesizes the intangible framework for a learning process to improve team capabilities through project-based learning. Agile also examines suitability of a learning management approach for computer graduates, which encourages collaboration through project-based learning. The following phases are central to the literature.

1.2.1 Teamwork Development

Teamwork development is a flexible, lively, and periodic strategy involving team members’ behaviors working together for achieving a mutual goal. Working in Teams is vital for successful performance, because it governs how tasks and goals are achieved in a group setting [10].

Israt Fatema and Kazi Sakib [11] recommended the use of critical inquiry in their observations “Factors Influencing Productivity of Agile Software Development Teamwork: A Qualitative System Dynamics Approach.” In an Agile software development approach, workgroup productivity impacts overall project performance. As a result, investigating the productivity of team members was of interest. Because agile teams are self-managed, they should be educated to evaluate and achieve productivity aspects frequently. Only if all of the variables are managed and monitored at the same time will productivity development programs be effective.

1.2.2 Project-Based Learning (PJBL)

Project-based learning is an education style that exposes students to real-world scenarios such as study, investigation, research, demonstration, production, and development for them to generate a major piece of work that they can apply in the real world [12]. The following are the characteristics of PJBL:

Interdisciplinary – PJBL is a program that focuses on involving students in real-world situations. Because practical difficulties are hardly resolved using data or abilities from a solitary topic area, this is an interdisciplinary approach.

Rigorousity – Not simply memory or identification, but the submission of skills required in PJBL. PJBL is more complicated than rote learning, which is focused on a single fact. Students applying a range of theoretical knowledge in novel circumstances can ensure that. Scholars follow a process that begins with inquiry when working on a project. The inquiry leads to more in-depth learning, not only in terms of academic subject but also in terms of applying that content in real-world circumstances [

13

].

Student Centric Approach – The teacher’s role in PJBL evolves from material delivery to facilitation and project management. Students work autonomously in the PJBL process than they would in a regular classroom, with the trainer only stepping in to help when necessary. Students are motivated to take their self-decision about the completion of a task and practice their comprehension.

Agile Scrum Software Development – In the early 1990s, to manage development on complicated projects, Scrum is a process framework. Scrum isn’t a strategy, method, or set of principles. Somewhat, it is an agenda that may be used to implement multiple procedures and techniques. Scrum highlights the comparative effectiveness of managing product and work management systems, allowing for continuous improvement of the product, team, and operating environment [

14

]. The Scrum framework is made up of Scrum Teams, as well as responsibilities, events, objects, and rules. People must improve their ability to live by these five qualities to implement Scrum effectively: Courage, Commitment, Focus, Openness, and Respect. Individuals make a personal commitment to the Scrum Team’s objectives.

Figure 1.2 The causes of project failure.

Traditional and linear development techniques have significant disadvantages as compared to agile software development. It is adequate to obtain components for deliberation that affects the process of development [15] but examine for a moment whether all of the factors affecting the system must be obtained. The response would be “no” empirically. An adaptive method should be utilized to deal with change, uncertainty, and unknown elements.

Many sources, obstacles, and unsuccessful factors of software research were highlighted in Standish Group International CHAOS Survey. According to studies, project development problems increase by 37% from the demand phase, as shown in Figure 1.1 [16, 17]. The issues and keys of condition traceability in ASD have been discussed, as well as various ARE (agile requirement engineering) principles. The popular software projects do not succeed, according to [18], because of the worst requirements administration and frequent obstacles that lead to project failure as shown in Figure 1.2.

1.2.3 Planning the Agile Software Development Methodologies

In light of the digital economy’s issues and industry-academic collaboration, this segment evaluates the prevalent agile software development approaches for identifying distinctiveness and added value. We’ll look at the following frameworks: Agile development methodologies include Extreme Programming (XP), Crystal methodology, Feature Driven Development (FDD), Kanban method, and Scrum. After a short-term overview of the most prominent agile methodologies for software development, Table 1.1 above summarizes each of these frameworks, containing team scope, responsibilities, iteration (sprint) length, issue, status of release, large project adaptability, and value-driven development, and iteration planning.

Table 1.1 Agile methodology frameworks for software development.

Parameter

Scrum

FDD

XP

Kanban

Crystal

Size of Team

Member size 3-9

Not Fixed

Maximum Twelve

Not Fixed

Variable Team Structure

Responsibility

Fixed Responsibilities contains: Scrum Master Product Author

Several may involve: Class Holder Feature Team Coder

Required: Customer Coder Variable: Tester Monitor

Project Leader Team Associate

Variable Roles: Executive Tester Team Associate Coordinative

Length of Iteration

Static and supreme One Month

Characteristics based Variable 2–10 days

Changed One to Two weeks

Constant movement

From week to four months

Release Announcement

Sprint End

Feature building

Constant Integration

Constant Delivery

Release strategy

Large adaptation of Project

Scaling Scrum for managing teams

Flowing the project topographies into lesser groups

Not Feasible

Appealing similar Method

Crystal transparent, yellow, orange, red and maroon

Planning of Iteration

Per sprint per size

Per feature per size

Release announcement Iteration planning

For each variant

Every step

Collaborative Interaction

Scrum functions Cross-functional team Self-managing Team

Communicate on documenting

Pair Coding

Optional Kanban meeting Customer Importance

Requires documenting Fast communication

In 1996, Extreme Programming (XP) was introduced [19]. Customer satisfaction is prioritized in this method, which is ensured by ongoing feedback. This strategy allows the software development team for responding changes in the program requirements as described by client [20]. It entails partnership between the customer and a development team of small size. The growth team consists of 2–10 people who work on software small components like an issue to for addressing a novel useful necessity.

The crystal technique is a light methodology with minimal documentation, organization, and writing requirements. It makes the procedure adaptable generically and flexibly. Conditioning on the project setting and team size, the adaption recommends different crystal approaches, including clear yellow shining, orange and red crystal [21]. Every methodology necessitates its own set of practices, procedures, and policies. The emphasis in this strategy is on human interactions, with process adaption based on what works best for the team, building on the finest practices in software engineering.

The Kanban approach [22] provides a visual SDLC workflow management framework. The three primary practices of Kanban are visualization of work in process limitation, and enhancement of workflow. Limiting work in the process means all pending tasks are completed before moving on to the next stage of the process.

In business, the most utilized framework of agile is Scrum. It is worth noting that it’s the framework of agile listed in the area of the world’s most famous job search sites [23]. This popularity stems to improve the process of software development, as well as the rapidity with which it is delivered and the quality of the program.

1.3 Agile Architecture Trends in the Digital World

The digital world offers new issues that necessitate a creative approach to identifying effective solutions while keeping the larger ecosystem in mind. In a digital world, current agile architecture trends and practices should be thoroughly evaluated. There has never been a systematic research studies trends and practices of agile architecture based on data availability. Several technological innovations are emerging that are having a substantial impact on agile architecture and design [24]:

Integration – new technologies and services must be able to link and integrate with existing technologies and services.

Micro-services – Such services are on the rise, with a slew of little add-ons, apps, and other specialized and specialized technologies and services enhancing user functionality, technology customization, and flexibility. Microservices are an important part of the evolutionary and revolutionary development chain for technologies, software, infrastructure, and consumers.

Digital Behaviors and Routines – Users will no longer need to shift systems and technologies since digital architecture and technology are becoming increasingly invisible and incorporated into their daily work. Many technologies are now speech or behavior activated, and they learn from the users’ behavior and routines, resulting in increased productivity through automation.

Agile Adaptation – Adaptation and anticipating user requirements are at odds. While many agile software and technology development cycles are adaptable, they also require a high level of creativity, invention, and foresight into future technologies, architecture, and software.

Speed – The increase in the speed with which technologies adapt and respond to user requirements and demands has been an important trend in technology-based evolution and revolution. As a result, many modern technologies and software are intrinsically flexible to user preferences to some extent and have some level of learning capability built-in, which accelerates their progress.

Continuous monitoring – Many modern technologies and applications are ‘linked to the base,’ allowing designers to collect real-time data about usage, issues, and, to a degree, demands. Furthermore, the capacity of designers to update technology or software on-the-fly and discreetly to the user is becoming increasingly popular. It has been discovered that this improves technological adaptability and learning.

The Systematic Literature Review (SLR) approach and the Kitchenham criteria [25] were used to experiment on the agile architecture trends and practices in the digital era. SLR is a technique for conducting secondary research based on the findings of primary research. The SLR procedure was used to specify the following: research topic, searching procedure, addition/prohibition criteria, quality valuation, information-gathering technique, and analytic method. The purpose is to find answers to the below mentioned research-based questions (RQ):

RQ1-What are the recent trends in Agile architecture, given the rise of multiple software engineering methodologies such as Continuous, Lean, and Evolutionary?

RQ2-In a modern digital context, what are the best approaches for building and executing Agile architecture?

1.3.1 Agile Implementation at Scale

A greatly expanded project is defined by a company objective or by complete measures like the count of developers participating, the size of the budget, the complexity, or the count of developing expanded teams [25]. Agile adoption is quickly replacing traditional approaches, and the positive performance and possible achievement rate of agile adoption in small grouped projects piqued curiosity of teams of software development and the agile adoption by industry in large projects. The authors illustrate how the environment aids and supports distributed agile frameworks in [26].

The large-scale adoption of software project coding may provide management of project issues. Despite challenges, the implementation of agile at a broad stage is fast expanding [27, 28].

According to the analysis by Jørgensen [29], the results of many software projects have been reviewed, and they show that the implementation rate of agile methodology is high in various ranges of projects. The results of Projects as compared to agile application rate are shown in Figure 1.3.

On the other hand, adopting agile at scale has significant limits in some circumstances, for example, SCRUM is best suited for short projects with less team size, and used on larger projects which slows down expansion. Abrar et al. [30] identified 21 promoters for large-scale agile implementation. Furthermore, they were analyzed and classified, for example, into essential factors, using predetermined criteria. Studies, questionnaires, and an experiential investigation of the availability and assistance of agile software development experts validate the identified motivators. The challenges for the SCRUM technique in a distributed context were identified by Khalid et al. [31].

Figure 1.3 The agile implementation rate over projects.

1.4 Challenges Faced in the Digital World Through Agile Software Development

Apart from the specific field of large-scale agile transformations, various challenges are a recurring issue in agile techniques study. Examples include exploring agile method adaption and building on development related to process customer, developer, and organization-related difficulties for a better understanding of organizations’ motives to modify agile techniques [32]. Furthermore, earlier studies discuss the difficulties of applying agile techniques in enterprises SD departments, addressing concerns like selecting an effective agile method and the problem of a lack of developer competence [33]. Current empirical investigations, however, provide useful information on this subject. This article provides a thorough analysis as well as relevant decisions and suggestions. The goal of the study is to discover problems and challenges that small-, mid-and large agile projects face when it comes to requirement engineering, which designs various suggestions for improving the agile process based on literature. Table 1.2 lists the public challenges encountered in agile projects at the time of the requirement engineering phase, as well as their actions.

Table 1.2 Summary of agile requirement engineering challenges and actions.

Requirement engineering (phase)

Agile activities

Challenges

Effect

Elicitation

Questionnaire and Interview

Problematic scoping, mistake

requirement analysis is affected by the ill-defined requirements.

Elicitation

Brainstorming

Group Brainstorming

Ambiguity

Elicitation

Prototyping

Safety, Scalability, and Strength

Maintenance issues

Investigation

Prioritization

Idea Conflicts

Uncertainty

Documenting

User feedback

Absence of customers

Misleading code

Documenting

Product Accumulation

Reduced documentation

Knowledge Loss

Authentication

Client stories

Unavailability of proper prototyping issues

Reduced Quality

Managing

Change control

Tool selection

Time Consumption

Managing

Traceability of Requirements

Ineffective requirement management

Non-traceability

1.4.1 Challenges for Small to Mid-Scale and Large-Scale Agile Projects

Although agile implementation addresses the shortcomings of the serial paradigm, it nevertheless has limitations [34]. The problems of Requirements Engineering are incompatible interfacing, non-functional requirement neglect, lack of clarity, and Requirements Engineering activities. Agile techniques reduced a solid framework for sufficient citation and documenting user requirements, and because requirements are variable, labor must be redone. De Lucia and Qusef offered few rules for their long term because a lack of good documentation could cause problems for the team. These criteria include assigning certain employees to write minimal documentation, modeling with computer tools, and developing reverse engineering procedures [35]. The challenges analyzed by the authors are presented in the Table 1.3:

Table 1.3 Summary of challenges for small to mid-scale and large-scale agile projects.

Requirement engineering (phase)

Challenges

Elicitation Requirements

Clarity issues, requirement prioritizing, and tricky scoping

Management Requirements

Prioritization, Absence of variable management, and adequate managing tools

Documentation Requirements

Absence of enough documentation, non-availability of customer representative

Validation Requirements

Non-availability of approaches or tools

Software businesses are concentrating on adopting agile approaches in disseminated environments known as distributed software development, due to rapid development rates and lower development costs [36]. The research focuses on identifying desired challenges and prioritization in an agile development context in a dispersed setting. To discover these problems, a literature review was undertaken, and they were then classified into four divisions: team, process, current technology, and management.

Agile methodologies are becoming increasingly popular in the software business due to their multiple advantages. If a predictable process model is employed in complicated projects of software development like supply chain management with unbalanced and variable requirements, implementation becomes complex [37]. Understanding and managing high-level needs are essential in large development initiatives. As a result, understanding and handling high-level needs are critical, as this is widely known that issues in requirements have an impact on quality.

1.4.2 Reported Challenges – Cause and Potential Solutions

The following are the issues with the software, according to Lee et al. [38]: (a) Due to scheduling slippage, it is seldom delivered on time, resulting in cancellation; (b) ineffective software that is unable to tackle the correct problem because the software requirement is incompatible with the need; (c) When employees depart or their interests shift, they become burnt out; and (d) modest adjustments take a lot of time and effort. Issues we discovered in the literature are listed below:

Less Direct Client/Stakeholder communication – The issue of requirement trackless is caused by less direct communication [

39

]. It can happen for a variety of reasons, including a lack of time, a distance element, a lack of client councils, and so on. Client engagement and presence have a direct impact on requirement change and validation from a business standpoint. Requirements are prioritized when users aren’t engaged in the process of decision-making process.

Solution – Direct conversation, questionnaires, and meetings should be performed to address this issue. When acquiring requirements from clients, avoid collecting long-term requirements and conducting lengthy formal interviews.

Reduced Documentation Focus – Shortage of sufficient reports can generate challenges for the development team as well as the issue with requirement tracking. Minimal documentation throughout the requirement gathering process leads to challenges such as a lack of staff assistance and no support for reverse engineering procedures [

40

].

Solution – Do some documentation, and pay more attention and care to the criteria, as it will help to trail, manage, and check them. As a result, the agile process and RE activities must be standardized.

Missing Ambiguity and Conflicting Requirements – The inconsistency of user stories and the multiple levels of abstraction generate issues. As a result, unclear criteria have a significant impact on quality and schedule. More rework in the future version due to a missing interface between requirements [

41

].

Solution – To accommodate the missing, confusing, and contradictory needs, more formal methods for requirement formulation are required. To integrate evolving requirements, use more explicit techniques to specify requirements. RE-COMBINE is a model used to formally express needs and is more adaptable to change.

Prototyping Issues – We can pick design thinking based on empathizing, defining, ideating, prototyping, and testing over traditional approaches. The usage of prototyping and agile development creates a misunderstanding regarding development speed among stakeholders. Too much coding in early prototyping generates concerns like excellence issues caused by the practice of code reusability in prototypes, and investors may be unwilling to adopt more scalable and resilient development cycles [

42

].

Solution – Prototyping should not include a lot of implementations. It is preferable for using paper prototyping rather than wizard prototyping, which saves time and eliminates user confusion by displaying a wizard prototype that you implemented quickly. In this scenario, paper prototyping will aid in a variety of ways, including acting as a design test before coding, being readily adjustable, and eliminating the specific technology variables.

Tacit Knowledge – Tacit knowledge is what one knows but can’t say; it’s what we’ve learned from personal experience and can be difficult to describe at times. Because this data is not specified in the requirement, transferring business information to the development team is difficult.

Solution – Tactic information is commonly reduced via direct conversation, observation, surveys, and interviews. The three aspects of domain experts, the conversion process, and the audience will assist in overcoming the tacit knowledge issue. Allowing practice for information distribution of both positive and negative experiences, will benefit team members and allow them to get from, as knowledge allocation is a significant achievement concern in the phase of development.

Changing Requirements – The produced product in a prior iteration may cause interface compatibility concerns due to changing client needs [

43

]. The agile project gets costly as requirements change, resulting in increasing project and maintenance costs. System failure is caused by a failure to manage to change needs.

Solution – ARCM-RM (agile requirement change management readiness model) was proposed consisting of primary modules: maturity, factor and valuation level. The prototype encourages worldwide software development for ARCMRM measurement and improvement.

Figure 1.4 Generic guidelines for improving agile transformation in the digital world.

Requirement Prioritization – Because investors are not participating in the process of decision-making and customers are not always available for daily meetings, prioritizing requirements in an agile approach after each step is difficult owing to the lack of technique.

Solution – In agile development, a methodology for prioritizing requirements builds a framework consisting of identification, verification, estimation, and prioritizing. The methodology offered will also assist in dealing with change at any phase of the software development.

Negligence of non-functional requirements – There is no approach for obtaining and evaluating non-functional requirements (NFRs), agile techniques, extreme programming, and SCRUM are famous because of yielding high-quality functional requirements. The excellence of the developed product is assessed after each iteration.

Solution – NORMATIC, a java-based simulation tool for non-functional requirement modeling in the process of agile development, is proposed. To implement the NFRs in agile projects, a planning and visualization approach is proposed [44–46]. By conducting experimentation on master’s students from the SED (software engineering department), we were able to examine the process of NFR elicitation and acquire encouraging results.

1.5 Generic Guidelines to Improve the Agile Transformation in Digital World

Many academics have provided a variety of guidelines and approaches, including agile implementation processes, agile principles, guidelines, and conventions for corporate distributed plans, among alternatives. The Figure 1.4 depicts some broad suggestions for improving the requirement engineering process, which will aid in incorporating agile development issues.

Requirement elicitation, clarification, analysis, prioritization, documentation, and decision are all major issues connected with agile Requirements Engineering activities. It has been claimed that the agile software development approach also mixes and ensures software security. The authors suggested a strategy for developing acceptably safe software that provides security assurance and claims to partially mitigate associated hazards. These discoveries represent obstacles to agile development success.

1.6 Conclusion and Future Perspective

It has been remarked that the Agile implementation as a Scrum framework module is apt, as evidenced by the Strongly Agree grade, as an effect of their evaluation of the Learning Process Design in a digital world. This chapter emphasizes that Agile Software Development is adaptable, which allows students to maximize their learning capacity. Students are more forceful when they are motivated and stimulated to think systematically at every step. It encourages students to share their expertise while also strengthening relationships and friendships. The challenges and recommendations from the study may be utilized to improve the abilities and competencies of development organizations during agile software development.

Researchers interested in this field may find our findings useful as a starting point. It’s ideal for researchers who want to get involved in this subject, which necessitates realistic discoveries and studies employing several agile approaches including crystal and extreme programming. Conflicts and difficulties that occur after the procedure are non-stated. As a result, the study indicates that the agile domain is still in its early stages and that establishing standards and standardizing the process is key to achieving better results. There is a requirement for rules and uniformity in our industry.

References

1. Kanbul, S. and Uzunboylu, H., Importance of coding education and robotic applications for achieving 21st-century skills in North Cyprus.

Int. J. Emerg. Technol. Learn.

, 12, 1, 130–131, 2017.

https://www.onlinejournals.org/index.php/i-jet/article/view/6097/4264

.

https://doi.org/10.3991/ijet.v12i01.6097

.

2. Cavus, N. and Uzunboylu, H., Improving critical thinking skills in mobile learning.

Procedia Soc. Behav. Sci.

, 1, 1, 434–438, 2009.

https://doi.org/10.1016/j.sbspro.2009.01.078

.

3. Resnick, M., Kafai, Y., Maloney, J., Rusk, N., Burd, L., Silverman, B.,

A Networked, Media-Rich Programming Environment to Enhance Technological Fluency at After School Centers in Economically-Disadvantaged Communities

, Proposal to National Science Foundation, Cambridge, United States, 2003.

4. World Economic Forum,

New Vision for Education: Fostering Social and Emotional Learning Tthrough Technology

, pp. 4–5, 2016, retrieved from

http://bit.ly/2NWzer3

.

5. WEF & Accenture,

Digital Transformation Initiative

, 2017, Retrieved March 12, 2018 from:

https://www.accenture.com/t20170116T084450__w__/us-en/_acnmedia/Accenture/Conversion-Assets/WEF/PDF/Accenture-DTI-executivesummary.pdf

.

6. Ochodek, M. and Kopczynska, S., Perceived importance agile requirements engineering practices-a survey.

J. Syst. Softw.

, 143, 29–43, 2018.

7. Sebega, Y. and Mnkandla, E., Exploring issues in agile requirements engineering in the South African software industry.

Electron. J. Inf. Syst. Dev. Ctries

, 81, 1, 1–18, 2017.

8. Rolland, K.

et al.

, Problematizing agile in the large: Alternative assumptions for large-scale agile development.

39th International Conference on Information Systems

, Association for Information Systems (AIS), 2016.

9. Sharma, M. and Gupta, A.K., An algorithm for target detection, identification, tracking and estimation of motion for passive homing missile autopilot guidance, in:

Mobile Radio Communications and 5G Networks

, pp. 57–71, Springer, Singapore, 2021.

10. Sales, E., Shuffler, M., Thayer, A., Bedwell, W., Lazzara, E., Understanding and improving teamwork in organizations: A scientifically based practical guide.

Hum. Resour. Manage.

, 54, 4, 599–622, 2015.

11. Fatema, I. and Sakib, K., Factors influencing productivity of agile software development teamwork: A qualitative system dynamics approach.

24th Asia

-

Pacific Software Engineering Conference

, Nanjing, China, December 4–8, 2017, pp. 737–742, 2017,

https://doi.org/10.1109/apsec.2017.95

.

12. Bansal, A., Mehta, K., Arora, S., Face recognition using PCA and LDA algorithm.

2012 Second International Conference on Advanced Computing & Communication Technologies

, IEEE, 2012.

13. Mehta, K. and Kumar, Y., Implementation of efficient clock synchronization using elastic timer technique in IoT.

Adv. Math. Sci. J.

, 9, 6, 4025–4030, 2020.

14. Garg, R., Garg, M., Chadha, A., Mehta, K., Brain gate technology-an analysis.

Int. J. Adv. Sci. Technol.

, 28, 19, 890–93, Dec. 2019.

http://sersc.org/journals/index.php/IJAST/article/view/2676

.

15. Szalvay, V.,

An Iintroduction to Agile Software Development

, vol. 3, Danube Technologies, Bellevue, WA, 2004.

16. Arora, T. and Dhir, R., Geometric feature-based classification of segmented human chromosomes.

Int. J. Image Graph.

, 20, 01, 2050006, 2020.

17. Hussain, A., Mkpojiogu, E.O., Kamal, F.M., The role of requirements in the success or failure of software projects.

Int. Rev. Manage. Mark.

, 6, S7, 306– 311, 2016.

18. Kumar, S.A. and Kumar, T.A., Study the impact of requirements management characteristics in global software development projects: An ontology-based approach.

Int. J. Softw. Eng. Appl.

, 2, 4, 107, 2011.

19. Fojtik, R., Extreme programming in the development of specific software.

Procedia Comput. Sci.

, 3, 1464–1468, 2011. [CrossRef.]

20. Wells, D.,

Extreme Programming

, 2009, Extremeprogramming.org., [Online], Extremeprogramming, US. Available online:

http://www.extremeprogramming.org/

(accessed on 20 November 2020).

21. Jones, C.,

Software Methodologies: A Quantitative Guide

, Auerbach Publications, Boca Raton, FL, USA, 2017.

22. Zayat, W. and Senvar, O., Framework study for agile software development via scrum and Kanban.

Int. J. Innov. Technol. Manag.

, 17, 04, 2030002, 2020.

23. García-Barriocanal, E., Sicilia, M.A., Sánchez-Alonso, S., Cuadrado, J.J., Agile methods as problem-based learning designs: Setting and assessment, in:

Proceedings of the Sixth International Conference on Technological Ecosystems for Enhancing Multiculturality (TEEM’18)

, Salamanca, Spain, October 24–26, 2018, Association for Computing Machinery, New York, NY, USA, pp. 339–346, 2018. [CrossRef.]

24. Dragičević, Z. and Bošnjak, S., Agile architecture in the digital era: Trends and practices.

Strategic Manage.

, 24, 2, 12–33, 2019.

25. Conboy, K. and Carroll, N., Implementing large-scale agile frameworks: Challenges and recommendations.

IEEE Softw.

, 36, 2, 44–50, 2019.

26. Lous, P., Tell, P., Michelsen, C.B., Dittrich, Y., Kuhrmann, M., Ebdrup, A., Virtual by design: How a work environment can support agile distributed software development, in:

Proceedings of the 2018 IEEE/ACM 13th International Conference on Global Software Engineering (ICGSE)

, IEEE, Gothenburg, Sweden, pp. 97–106, May 2018.

27. Moe, N.B. and Dingsøyr, T., Emerging research themes and updated research agenda for large-scale agile development: A summary of the 5th international workshop at XP2017, in:

Proceedings of the XP2017 Scientific Workshops

, Cologne, Germany, pp. 1–4, May 2017.

28. Fuchs, C. and Hess, T., Becoming agile in the digital transformation: The process of a large-scale agile transformation, in:

Proceedings of the 39th International Conference on Information Systems (ICIS 2018)

, San Francisco, USA, December 2018.

29. Jørgensen, M., Do agile methods work for large software projects?, in:

Proceedings of the International Conference on Agile Software Development

, Springer, Montreal, QC, Canada, pp. 179–190, May 2018.

30. Abrar, M.F., Khan, M.S., Ali, S.

et al.

, Motivators for largescale agile adoption from a management perspective: A systematic literature review.

IEEE Access

, 7, 22660–22674, 2019.

31. Khalid, A., Butt, S.A., Jamal, T., Gochhait, S., Agile scrum issues at large-scale distributed projects.

Int. J. Softw. Innov.

, 8, 2, 85–94, 2020.

32. Rai, V.

et al.

, Automated biometric personal identification-techniques and applications.

2020 4th International Conference on Intelligent Computing and Control Systems (ICICCS)

, IEEE, 2020.

33. Mehta, K.

et al.

, Enhancement of smart agriculture using internet of things.

ECS Trans.

, 107, 1, 7047, 2022.

34. Rasheed, A., Zafar, B., Shehryar, T., Aslam, N. A., Sajid, M., Ali, N., ... & Khalid, S., Requirement engineering challenges in agile software development.

Math. Probl. Eng.

, 2021, 1–18, 2021.

35. Heck, P. and Zaidman, A., A systematic literature review on quality criteria for agile requirements specifications.

Softw. Qual. J.

, 26, 1, 127–160, 2018.

36. Mehta, K., Kumar, Y., Aayushi, A., Enhancing time synchronization for home automation systems.

ECS Trans.

, 107, 1, 6197, 2022.