Towards Agile Cybersecurity Risk Management for Autonomous Software Engineering Teams
Abstract
:1. Introduction
1.1. Contribution
1.2. Organisation
2. Background
2.1. Agile Software Engineering Practices
2.2. The Software Development Life Cycle
2.3. Cybersecurity Risk Management
2.4. Five Challenges in Agile Risk Management
2.4.1. Software Development Life Cycle
2.4.2. Incremental Development
2.4.3. Security Assurance
2.4.4. Awareness and Collaboration
2.4.5. Security Management
3. Method
3.1. Literature Review
3.1.1. Data Collection and Extraction
3.1.2. Analysis and Reporting
3.2. Framework Development
3.2.1. Attitudes towards Identified Characteristics
3.2.2. Analysis and Sorting
4. Results
4.1. Software Development Life Cycle
4.2. Incremental Development
4.3. Security Assurance
4.4. Awareness and Collaboration
4.5. Security Management
4.6. Attitudes of Solutions Characteristics
- One possible solution of incorporating risk management into the rapid and dynamic nature of agile project () was characterised by injecting risk management activities early on and in an iterative fashion. As such, this characteristic was posed as two opposing statements that -1) daily stand-ups should include a short walk-through of new, current, and unmitigated cybersecurity risks along with a quick, initial assessment, and that -2) daily standups should only consider quick updates and getting to the point, there is no time to discuss cybersecurity risks.
- The challenge of continuously aligning identified risks with new code changes and features () was found to have been addressed by developing a form of reference model by which new features could be compared to. This was characterised as something that should occur early on in the project, and posed as two opposing statements that -1) sprint planning is a good time to include the prioritisation of security requirements, and that -2) security requirements should be managed separately and not included in sprint planning.
- Security testing to identify new vulnerabilities and conflicts with audit needs has been noted as one challenge within secure agile software development (). Solutions towards this particular challenge was characterised by activities to be taken throughout the project. As such, this characteristics was posed as two opposing statements that -1) backlog refinement is a good time to identify mitigation actions (e.g., new code changes to fix security risks), and that -2) backlog refinement should not explore details for new changes (e.g., configurations or code changes).
- Suggested solutions to the lack of security awareness and experience within the development team () were to build up this know-how either internally or externally, as the project moved ahead. This characteristics was therefore posed as two opposing statements that -1) sprint retrospective should document lessons learned from mitigated cybersecurity risks, and that -2) sprint retrospectives should not spend time on documenting lessons learned.
- The challenge of when to report to stakeholders and management on cybersecurity risks was addressed by continuous reporting via backlogs. As such, this characteristics was posed as two opposing statements that -1) all cybersecurity risks found should be collected and reported to stakeholders and management iteratively, and that -1) only severe cybersecurity risks should be collected and reported to stakeholders and management when necessary (ad hoc).
4.7. An Agile Cybersecurity Risk Management Framework
- Risk Collection:
- This step consists of two activities: (1) a daily walk-through of new, current and unmitigated risks, and (2) a quick initial risk assessment, RI creation and prioritisation (a maximum of a few minutes of assessment). These activities should be extensions of the daily stand-up, i.e., a natural part of the daily synchronisation work. Input to these activities should be established SA that are parts of the SDLC, e.g., static code analysis tools, monitoring or code review exercises, thus any type of SA should feed data to these daily activities. Any risk assessment framework can be used for the risk assessment part of the step.
- Risk Refinement:
- This step consists of a weekly, or bi-weekly, walk-through of the cybersecurity RB and could be an extension of the regular backlog refinement ceremony, hence the PO is part of this step. This activity aims to create better understanding and overall prioritisation of the current RB. A second risk assessment of the RI:s should occur with a deeper analysis than the initial activity in the previous step. A first element of knowledge transferring may happen within this step. In this step, each RI should also be described with a mitigation proposal and aligned with requirements (or lead to new requirements that affect the ordinary backlog). This step should produce RI:s that are ready for the next sprint planning. Any risk assessment framework can be used for the risk assessment part of the step.
- Risk Mitigation:
- This step’s aim is to enforce risk mitigation tasks, e.g., executing explicit code changes, introduction of new processes or knowledge-sharing activities. From the previous step, these mitigation activities should be part of the sprint goal and committed to by the team as usual user stories. Each mitigation task should describe activity and testability, i.e., what to do and how to test (validate) it. To clarify, this step starts with the sprint planning and continues throughout the sprint where the mitigation tasks are completed. We note that specific SA may be executed due to dependencies for certain mitigation tasks, e.g., renewed (architecture) threat modelling or code reviews to ensure the mitigation solution is secure.
- Knowledge Transfer:
- This step could be merged with the ordinary sprint retrospective. The aim is to draw conclusions from the risk mitigation work, hence building knowledge. It should also enable space for further knowledge sharing, e.g., by inviting security experts and others, and walk-through the mitigation and solution of a risk; from this activity the team broadens the cybersecurity competence and any key-takeaways should be systematically documented in a shared team space. It should also include low intensity training in all areas of SA in the SDLC.
- Escalation:
- A reporting activity to stakeholders and management with escalations is needed in an iterative manner. The team and PO provides a list of high risks to escalate to management and/or further assessment for RI:s that may have heavy impact on the budget or overall re-prioritisation. This step should be done frequently (at minimum weekly) and produce the top priority risks to share with management.
5. Discussion
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
References
- Chaouch, S.; Mejri, A.; Ghannouchi, S.A. A framework for risk management in Scrum development process. Procedia Comput. Sci. 2019, 164, 187–192. [Google Scholar] [CrossRef]
- Hauck, J.C.R.; Vieira, M. Towards a Guide for Risk Management Integration in Agile Software Projects. In Systems, Software and Services Process Improvement; Yilmaz, M., Clarke, P., Messnarz, R., Reiner, M., Eds.; Springer International Publishing: Cham, Switzerland, 2021; pp. 73–87. [Google Scholar]
- Tavares, B.G.; Keil, M.; da Silva, C.E.S.; de Souza, A.D. A Risk Management Tool for Agile Software Development. J. Comput. Inf. Syst. 2021, 61, 561–570. [Google Scholar] [CrossRef]
- Siddique, L.; Hussein, B.A. Practical insight about risk management process in agile software projects in Norway. In Proceedings of the 2014 IEEE International Technology Management Conference, Chicago, IL, USA, 12–15 June 2014; pp. 1–4. [Google Scholar] [CrossRef]
- Miler, J.; Górski, J. Risk identification patterns for software projects. Found. Comput. Decis. Sci. 2004, 29, 115–131. [Google Scholar]
- Agrawal, R.; Singh, D.; Sharma, A. Prioritizing and optimizing risk factors in agile software development. In Proceedings of the 2016 Ninth International Conference on Contemporary Computing (IC3), Noida, India, 11–13 August 2016; pp. 1–7. [Google Scholar] [CrossRef]
- Jøsang, A.; Ødegaard, M.; Oftedal, E. Cybersecurity Through Secure Software Development. In Information Security Education Across the Curriculum; Bishop, M., Miloslavskaya, N., Theocharidou, M., Eds.; Springer International Publishing: Cham, Switzerland, 2015; pp. 53–63. [Google Scholar]
- Tøndel, I.A.; Jaatun, M.G.; Cruzes, D.S.; Williams, L. Collaborative security risk estimation in agile software development. Inf. Comput. Secur. 2019, 27, 508–535. [Google Scholar] [CrossRef] [Green Version]
- Von Solms, R.; Van Niekerk, J. From information security to cyber security. Comput. Secur. 2013, 38, 97–102. [Google Scholar] [CrossRef]
- Von Solms, S.H.; von Solms, R. Cybersecurity and information security—What goes where? Inf. Comput. Secur. 2018, 26, 2–9. [Google Scholar] [CrossRef]
- Mansfield-Devine, S. The secure way to use open source. Comput. Fraud. Secur. 2016, 2016, 15–20. [Google Scholar] [CrossRef]
- CVE-2021-44228. Available online: https://cve.mitre.org/cgi-bin/cvename.cgi?name=cve-2021-44228 (accessed on 27 February 2022).
- Aurucci, P. Applications and Security Risks of Artificial Intelligence for Cyber Security in Digital Environment. In Intelligent Environments 2018; IOS Press: Amsterdam, The Netherlands, 2018; pp. 308–317. [Google Scholar]
- Oueslati, H.; Rahman, M.M.; Othmane, L.B. Literature Review of the Challenges of Developing Secure Software Using the Agile Approach. In Proceedings of the 2015 10th International Conference on Availability, Reliability and Security, Toulouse, France, 24–27 August 2015; pp. 540–547. [Google Scholar] [CrossRef]
- Ionita, D.; van der Velden, C.; Ikkink, H.J.K.; Neven, E.; Daneva, M.; Kuipers, M. Towards Risk-Driven Security Requirements Management in Agile Software Development. In Information Systems Engineering in Responsible Information Systems; Cappiello, C., Ruiz, M., Eds.; Springer International Publishing: Cham, Switzerland, 2019; pp. 133–144. [Google Scholar]
- Khaim, R.; Naz, S.; Abbas, F.; Iqbal, N.; Hamayun, M. A Review of Security Integration Technique in Agile Software Development. Int. J. Softw. Eng. Appl. 2016, 7, 49–68. [Google Scholar] [CrossRef]
- Tøndel, I.A.; Jaatun, M.G.; Cruzes, D.S.; Moe, N.B. Risk Centric Activities in Secure Software Development in Public Organisations. Int. J. Secur. Softw. Eng. 2017, 8, 1–30. [Google Scholar] [CrossRef]
- Almeida, F.; Simões, J.; Lopes, S. Exploring the Benefits of Combining DevOps and Agile. Future Internet 2022, 14, 63. [Google Scholar] [CrossRef]
- Takeuchi, H.; Nonaka, I. The New New Product Development Game. Harv. Bus. Rev. 1986, 64, 137–146. [Google Scholar]
- Beck, K.; Beedle, M.; van Bennekum, A.; Cockburn, A.; Cunningham, W.; Fowler, M.; Grenning, J.; Highsmith, J.; Hunt, A.; Jeffries, R.; et al. Manifesto for Agile Software Development. 2001. Available online: https://agilemanifesto.org (accessed on 27 February 2022).
- 15th State of Agile Report. Agile Survey, Digital.ai. 2021. Available online: https://digital.ai/resource-center/analyst-reports/state-of-agile-report (accessed on 27 February 2022).
- Kuhrmann, M.; Diebold, P.; Munch, J.; Tell, P.; Trektere, K.; McCaffery, F.; Garousi, V.; Felderer, M.; Linssen, O.; Hanser, E.; et al. Hybrid Software Development Approaches in Practice: A European Perspective. IEEE Softw. 2019, 36, 20–31. [Google Scholar] [CrossRef] [Green Version]
- Scrum Alliance. Available online: https://resources.scrumalliance.org (accessed on 27 February 2022).
- Kneuper, R. Sixty Years of Software Development Life Cycle Models. IEEE Ann. Hist. Comput. 2017, 39, 41–54. [Google Scholar] [CrossRef]
- Ross, R. Risk Management Framework for Information Systems and Organizations: A System Life Cycle Approach for Security and Privacy; National Institute of Standards and Technology: Gaithersburg, MD, USA, 2018. [CrossRef]
- ISO/IEC 27005:2018; Information Technology—Security Techniques—Information Security Risk Management. International Organization for Standardization: Geneva, Switzerland, 2018.
- Alberts, C.; Woody, C. An Approach for Integrating the Security Engineering Risk Analysis (SERA) Method with Threat Modeling; Technical Report; Carnegie-Mellon University: Pittsburgh, PA, USA, 2019. [Google Scholar]
- Lundgren, M.; Bergström, E. Dynamic interplay in the information security risk management process. Int. J. Risk Assess. Manag. 2019, 22, 212–230. [Google Scholar] [CrossRef]
- Jaatun, M.G.; Cruzes, D.S.; Bernsmed, K.; Tøndel, I.A.; Røstad, L. Software security maturity in public organisations. In International Conference on Information Security; Springer: Cham, Switzerland, 2015; pp. 120–138. [Google Scholar]
- Chiu, Y.; Chen, H.; Zhu, Y. Exploring IT/S Risk Management Agility. In Proceedings of the International Conference on Information Systems—Transforming Society with Digital Innovation, Seoul, Korea, 10–13 December 2017. [Google Scholar]
- Chu, Y.C.; Wei, Y.C.; Chang, W.H. A risk recommendation approach for information security risk assessment. In Proceedings of the 2013 15th Asia-Pacific Network Operations and Management Symposium (APNOMS), Hiroshima, Japan, 25–27 September 2013; pp. 1–3. [Google Scholar]
- Wei, Y.C.; Wu, W.C.; Chu, Y.C. Performance evaluation of the recommendation mechanism of information security risk identification. Neurocomputing 2018, 279, 48–53. [Google Scholar] [CrossRef]
- Lundgren, M.; Bergström, E. Security-related stress: A perspective on information security risk management. In Proceedings of the 2019 International Conference on Cyber Security and Protection of Digital Services (Cyber Security), Oxford, UK, 3–4 June 2019; pp. 1–8. [Google Scholar]
- Othmane, L.B.; Angin, P.; Weffers, H.; Bhargava, B. Extending the agile development process to develop acceptably secure software. IEEE Trans. Dependable Secur. Comput. 2014, 11, 497–509. [Google Scholar] [CrossRef] [Green Version]
- Mockel, C.; Abdallah, A.E. Threat modeling approaches and tools for securing architectural designs of an e-banking application. In Proceedings of the 2010 Sixth International Conference on Information Assurance and Security, Atlanta, GA, USA, 23–25 August 2010. [Google Scholar]
- Terpstra, E.; Daneva, M.; Wang, C. Agile Practitioners’ Understanding of Security Requirements: Insights from a Grounded Theory Analysis. In Proceedings of the 2017 IEEE 25th International Requirements Engineering Conference Workshops (REW), Lisbon, Portugal, 4–8 September 2017; pp. 439–442. [Google Scholar] [CrossRef]
- Oliveira, D.; Rosenthal, M.; Morin, N.; Yeh, K.C.; Cappos, J.; Zhuang, Y. It’s the Psychology Stupid: How Heuristics Explain Software Vulnerabilities and How Priming Can Illuminate Developer’s Blind Spots. In Proceedings of the 30th Annual Computer Security Applications Conference, New Orleans, LA, USA, 8–12 December 2014; Association for Computing Machinery: New York, NY, USA, 2014; pp. 296–305. [Google Scholar]
- McEvoy, T.R.; Kowalski, S.J. Deriving Cyber Security Risks from Human and Organizational Factors—A Socio-technical Approach. Complex Syst. Inform. Model. Q. 2019, 18, 47–64. [Google Scholar] [CrossRef]
- Bergström, E.; Lundgren, M. Stress amongst novice information security risk management practitioners. Int. J. Cyber Situat. Aware. 2019, 4, 128–154. [Google Scholar] [CrossRef]
- Wright, C.S. Software, Vendors and Reputation: An Analysis of the Dilemma in Creating Secure Software. In Proceedings of the Second international conference on Trusted Systems (INTRUST’10), Beijing, China, 13–15 December 2010. [Google Scholar]
- Acar, Y.; Fahl, S.; Mazurek, M.L. You are Not Your Developer, Either: A Research Agenda for Usable Security and Privacy Research Beyond End Users. In Proceedings of the 2016 IEEE Cybersecurity Development (SecDev), Boston, MA, USA, 3–4 November 2016; pp. 3–8. [Google Scholar] [CrossRef]
- Assal, H.; Chiasson, S. Security in the Software Development Lifecycle. In Fourteenth Symposium on Usable Privacy and Security (SOUPS 2018); USENIX Association: Baltimore, MD, USA, 2018; pp. 281–296. [Google Scholar]
- Levy, Y.; Ellis, T.J. A systems approach to conduct an effective literature review in support of information systems research. Informing Sci. 2006, 9, 181–212. [Google Scholar] [CrossRef] [Green Version]
- Okoli, C.; Schabram, K. A Guide to Conducting a Systematic Literature Review of Information Systems Research. 2010. Available online: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=1954824 (accessed on 2 March 2022).
- Webster, J.; Watson, R.T. Analyzing the Past to Prepare for the Future: Writing a Literature Review. MIS Q. 2002, 26, xiii–xxiii. [Google Scholar]
- Wangen, G.; Snekkenes, E. A taxonomy of challenges in information security risk management. In Proceedings of the Norwegian Information Security Conference/Norsk informasjonssikkerhetskonferanse-NISK 2013, Stavanger, Norway, 18–20 November 2013. [Google Scholar]
- Batterton, K.A.; Hale, K.N. The Likert Scale What It Is and How To Use It. Phalanx 2017, 50, 32–39. [Google Scholar]
- Nelson, C.R.; Taran, G.; de Lascurain Hinojosa, L. Explicit Risk Management in Agile Processes. In Agile Processes in Software Engineering and Extreme Programming; Abrahamsson, P., Baskerville, R., Conboy, K., Fitzgerald, B., Morgan, L., Wang, X., Eds.; Springer: Berlin/Heidelberg, Germany, 2008; pp. 190–201. [Google Scholar]
- Franqueira, V.N.L.; Bakalova, Z.; Tun, T.T.; Daneva, M. Towards agile security risk management in RE and beyond. In Proceedings of the Workshop on Empirical Requirements Engineering (EmpiRE 2011), Trento, Italy, 30 August 2011; pp. 33–36. [Google Scholar] [CrossRef] [Green Version]
- Tomanek, M.; Juricek, J. Project Risk Management Model Based on PRINCE2 and Scrum Frameworks. Int. J. Softw. Eng. Appl. 2015, 6, 81–88. [Google Scholar] [CrossRef]
- Dorca, V.; Munteanu, R.; Popescu, S.; Chioreanu, A.; Peleskei, C. Agile approach with Kanban in information security risk management. In Proceedings of the 2016 IEEE International Conference on Automation, Quality and Testing, Robotics (AQTR), Cluj-Napoca, Romania, 19–21 May 2016; pp. 1–6. [Google Scholar] [CrossRef]
- Maier, P.; Ma, Z.; Bloem, R. Towards a Secure SCRUM Process for Agile Web Application Development. In Proceedings of the 12th International Conference on Availability, Reliability and Security, Reggio Calabria, Italy, 29 August–1 September 2017. [Google Scholar] [CrossRef] [Green Version]
- Hammad, M.; Inayat, I. Integrating Risk Management in Scrum Framework. In Proceedings of the 2018 International Conference on Frontiers of Information Technology (FIT), Islamabad, Pakistan, 17–19 December 2018; pp. 158–163. [Google Scholar] [CrossRef]
- Odzaly, E.E.; Greer, D.; Stewart, D. Agile risk management using software agents. J. Ambient. Intell. Humaniz. Comput. 2018, 9, 823–841. [Google Scholar] [CrossRef] [Green Version]
- Ripolles, O.; Muntés-Mulero, V.; Matthews, P.; Gupta, S.; Dominiak, J.; Willeke, E.; Somoskoi, B. Agile Risk Management for Multi-Cloud Software Development. IET Softw. 2018, 13, 172–181. [Google Scholar] [CrossRef] [Green Version]
- Hurtado, G.P.G.; Gómez-Álvarez, M.C.; Muñoz, M.; Peña, A. A Gamified Proposal for Software Risk Analysis in Agile Methodologies. In Systems, Software and Services Process Improvement. EuroSPI 2019; Walker, A., O’Connor, R., Messnarz, R., Eds.; Communications in Computer and Information Science; Springer: Cham, Switzerland, 2019; Volume 1060. [Google Scholar]
- Newton, N.; Anslow, C.; Drechsler, A. Information Security in Agile Software Development Projects: A Critical Success Factor Perspective. In Proceedings of the 27th European Conference on Information Systems (ECIS), Stockholm & Uppsala, Sweden, 8–14 June 2019. [Google Scholar]
- De Souza Lopes, S.; de Souza, R.C.G.; de Godoi Contessoto, A.; de Oliveira, A.L.; Braga, R.T.V. A Risk Management Framework for Scrum Projects. In Proceedings of the 23rd International Conference on Enterprise Information Systems, Online Streaming, 26–28 April 2021. [Google Scholar]
- Kagombe, G.G.; Mwangi, R.W.; Wafula, J.M. Achieving Standard Software Security in Agile Developments. In Proceedings of the 2021 The 11th International Conference on Information Communication and Management, Tokyo, Japan, 12–14 August 2021. [Google Scholar] [CrossRef]
- Shrivastava, S.V.; Rathod, U. A risk management framework for distributed agile projects. Inf. Softw. Technol. 2017, 85, 1–15. [Google Scholar] [CrossRef]
- Albadarneh, A.; Albadarneh, I.; Qusef, A. Risk management in Agile software development: A comparative study. In Proceedings of the 2015 IEEE Jordan Conference on Applied Electrical Engineering and Computing Technologies (AEECT), Amman, Jordan, 3–5 November 2015; pp. 1–6. [Google Scholar] [CrossRef]
Paper | Year | Survey | Case Study Type | RM Methodology | |||||
---|---|---|---|---|---|---|---|---|---|
Nelson et al. [48] | 2008 | ✓ | Students, Industry | Using Scrum | |||||
Franqueira et al. [49] | 2011 | ✓ | ✓ | ✓ | ✓ | Using Scrum | |||
Tomanek, Juricek [50] | 2015 | ✓ | ✓ | ✓ | ✓ | PRINCE2 | |||
Dorca et al. [51] | 2016 | ✓ | ✓ | ✓ | Industry | COBIT using Kanban | |||
Maier et al. [52] | 2017 | ✓ | ✓ | ✓ | Industry | Using Scrum | |||
Hammad, Inayat [53] | 2018 | ✓ | ✓ | ✓ | Students | Brainstorming | |||
Odzaly et al. [54] | 2018 | ✓ | ✓ | Students | Agile Risk Tool | ||||
Ripolles et al. [55] | 2018 | ✓ | ✓ | ✓ | ✓ | Industry | Using agile practices | ||
Hurtado et al. [56] | 2019 | ✓ | ✓ | ✓ | ✓ | Students | Gamification | ||
Chaoucha et al. [1] | 2019 | ✓ | ✓ | ✓ | Using Scrum | ||||
Newton et al. [57] | 2019 | ✓ | ✓ | ✓ | Industry | Using agile practices | |||
Tavares et al. [3] | 2020 | ✓ | ✓ | ✓ | Industry | Rm4Am | |||
de Souza Lopes et al. [58] | 2021 | ✓ | ✓ | ✓ | ✓ | Students, Industry | RIMPRO | ||
Hauck and Vieira [2] | 2021 | ✓ | ✓ | ✓ | ✓ | Using agile practices | |||
Kagombe et al. [59] | 2021 | ✓ | ✓ | ✓ | Industry | Using Scrum |
Framework Step | Activity | Output | Challenge |
---|---|---|---|
Risk collection | Daily stand-up | Defined RI | |
1st risk assessment | Defined RI | ||
Risk refinement | Backlog refinement | Prioritisation | |
2nd risk assessment | Defined RI | ||
Requirement management | Requirements | ||
RI prioritisation | Prioritisation | ||
Risk mitigation | Sprint planning | Prioritisation | |
Task execution | Risk mitigation | ||
Knowledge transfer | Retrospective | Knowledge | |
Escalation | Escalation to stakeholder | Prioritisation |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Salin, H.; Lundgren, M. Towards Agile Cybersecurity Risk Management for Autonomous Software Engineering Teams. J. Cybersecur. Priv. 2022, 2, 276-291. https://doi.org/10.3390/jcp2020015
Salin H, Lundgren M. Towards Agile Cybersecurity Risk Management for Autonomous Software Engineering Teams. Journal of Cybersecurity and Privacy. 2022; 2(2):276-291. https://doi.org/10.3390/jcp2020015
Chicago/Turabian StyleSalin, Hannes, and Martin Lundgren. 2022. "Towards Agile Cybersecurity Risk Management for Autonomous Software Engineering Teams" Journal of Cybersecurity and Privacy 2, no. 2: 276-291. https://doi.org/10.3390/jcp2020015
APA StyleSalin, H., & Lundgren, M. (2022). Towards Agile Cybersecurity Risk Management for Autonomous Software Engineering Teams. Journal of Cybersecurity and Privacy, 2(2), 276-291. https://doi.org/10.3390/jcp2020015