Lean Learning of Risks in Students’ Agile Teams

Risk—the possibility of resulting in an unsatisfactory outcome—is an important driving force for a software development project to progress. Although techniques like identifying a project’s top-10 risk items are taught commonly in software engineering courses, little work has been carried out to examine how students working in agile teams perceive and mitigate the risks over multiple software development cycles. In this chapter, we summarize our recent work where we discovered the collaborative nature of students’ risk management strategies. Furthermore, we show that students also followed lean practices by wasting little effort on non-actionable risks. Linking collaboration and waste-elimination provided additional insights into teaching a wider range of lean principles in agile settings, e.g., students should deliver as fast as possible the non-collaborative risk mitigations but should decide as late as possible when facing interdependent mitigations.

[1]  B. Boehm Software risk management: principles and practices , 1991, IEEE Software.

[2]  Xiaoyu Jin,et al.  A Novel Coupling Pattern in Computational Science and Engineering Software , 2017, 2017 IEEE/ACM 12th International Workshop on Software Engineering for Science (SE4Science).

[3]  Suresh L. Konda,et al.  Taxonomy-Based Risk Identification , 1993 .

[4]  Carla Purdy,et al.  Students' Perceptions of Software Risks , 2017 .

[5]  Nan Niu,et al.  A semantic relatedness approach for traceability link recovery , 2012, 2012 20th IEEE International Conference on Program Comprehension (ICPC).

[6]  A. Agresti An introduction to categorical data analysis , 1997 .

[7]  Yoginder S. Dandass,et al.  Research toward a Partially-Automated, and Crime Specific Digital Triage Process Model , 2012, Comput. Inf. Sci..

[8]  Barry W. Boehm,et al.  A look at software engineering risks in a team project course , 2013, 2013 26th International Conference on Software Engineering Education and Training (CSEE&T).

[9]  James S. Collofello,et al.  Integrating risk management into an undergraduate software engineering course , 1997, Proceedings Frontiers in Education 1997 27th Annual Conference. Teaching and Learning in an Era of Change.

[10]  Matthias Holweg,et al.  The genealogy of lean production , 2007 .

[11]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[12]  Vladan Deved Teaching Agile Software Development: A Case Study , 2011 .

[13]  Nan Niu,et al.  On the role of semantics in automated requirements tracing , 2014, Requirements Engineering.

[14]  Nan Niu,et al.  Analysis of Early Aspects in Requirements Goal Models: A Concept-Driven Approach , 2007, LNCS Trans. Aspect Oriented Softw. Dev..

[15]  Annabelle Klarl,et al.  Teaching agile software development through lab courses , 2012, Proceedings of the 2012 IEEE Global Engineering Education Conference (EDUCON).

[16]  Kalle Lyytinen,et al.  Components of Software Development Risk: How to Address Them? A Project Manager Survey , 2000, IEEE Trans. Software Eng..

[17]  Zhendong Niu,et al.  Traceability-enabled refactoring for managing just-in-time requirements , 2014, 2014 IEEE 22nd International Requirements Engineering Conference (RE).

[18]  M. L. Emiliani,et al.  Improving business school courses by applying lean principles and practices , 2004 .

[19]  Simone Paolo Ponzetto,et al.  WikiRelate! Computing Semantic Relatedness Using Wikipedia , 2006, AAAI.

[20]  Narinder Kaur Gosall,et al.  The Doctor's Guide to Critical Appraisal , 2009 .

[21]  Leon Sterling,et al.  Disincentives for communicating risk: a risk paradox , 1999, Inf. Softw. Technol..

[22]  D. Sharpe Your Chi-Square Test Is Statistically Significant: Now What?. , 2015 .

[23]  Donald J. Reifer Ten Deadly Risks in Internet and Intranet Software Development , 2002, IEEE Softw..

[24]  Mary Poppendieck,et al.  Lean Software Development: An Agile Toolkit , 2003 .

[25]  Frank Maurer,et al.  An Experience Report at Teaching a Group Based Agile Software Development Project Course , 2015, SIGCSE.

[26]  Zhendong Niu,et al.  A Systems Approach to Product Line Requirements Reuse , 2014, IEEE Systems Journal.

[27]  Jeff Sutherland,et al.  Manifesto for Agile Software Development , 2013 .

[28]  David F. Rico,et al.  Use of Agile Methods in Software Engineering Education , 2009, 2009 Agile Conference.

[29]  Hassan Rashidi,et al.  Classification and Analysis of Risks in Software Engineering , 2009 .

[30]  Yichuan Wang,et al.  Deploying Lean in Healthcare: Evaluating Information Technology Effectiveness in U.S. Hospital Pharmacies , 2014, Int. J. Inf. Manag..

[31]  Sjaak Brinkkemper,et al.  Requirements Engineering and Continuous Deployment , 2018, IEEE Software.

[32]  Evgeniy Gabrilovich,et al.  Computing Semantic Relatedness Using Wikipedia-based Explicit Semantic Analysis , 2007, IJCAI.

[33]  Ling Li,et al.  Optimal Group Size for Software Change Tasks: A Social Information Foraging Perspective , 2016, IEEE Transactions on Cybernetics.