Distributing Responsibilities to Engineer Better Requirements: Leveraging Knowledge and Perspectives for Students to Learn a Key Skill

Getting students to appreciate the value of writing high quality requirements can be a difficult undertaking. This paper spotlights an educational experience in which students from across the globe were brought together to write the requirements for a software development competition in order to address this challenge. To account for a disparity of educational backgrounds while promoting quality, a model was designed to include requirements coaching, reinforced requirements auditing cycles and multi-perspective triggers for requirements change. The paper describes the multiplicity of roles that were created and the strategies that were undertaken in an attempt to improve the quality of the written requirements, summarizes the outcomes of the experience, and highlights the observed costs/benefits of teaching this skill and conveying its value in this manner. The application of such a model to distributed software development projects more generally is discussed.

[1]  Dewayne E. Perry,et al.  Software engineering education in the era of outsourcing, distributed development, and open source software: challenges and opportunities , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[2]  Richard Stevens,et al.  Writing Better Requirements , 2002 .

[3]  Daniela E. Damian,et al.  RE challenges in multi-site software development organisations , 2003, Requirements Engineering.

[4]  C. Scharff,et al.  Preparing Computer Science Students for Global Software Development , 2006, Proceedings. Frontiers in Education. 36th Annual Conference.

[5]  David Klappholz,et al.  A Framework for Success in Real Projects for Real Clients Courses , 2009 .

[6]  Olly Gotel,et al.  Introducing Global Supply Chains into Software Engineering Education , 2007, SEAFOOD.

[7]  M.J. Hawthorne,et al.  Software engineering education in the era of outsourcing, distributed development, and open source software: challenges and opportunities , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[8]  Benjamin L. Kovitz,et al.  Practical Software Requirements: A Manual of Content and Style , 1998 .

[9]  Didar Zowghi,et al.  Requirements Engineering challenges in multi-site software development organizations , 2004 .

[10]  Daniela E. Damian,et al.  Instructional design and assessment strategies for teaching global software development: a framework , 2006, ICSE.

[11]  Olly Gotel,et al.  Gameplay to Introduce and Reinforce Requirements Engineering Practices , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[12]  Alan M. Davis,et al.  Software Requirements: Objects, Functions and States , 1993 .

[13]  Didar Zowghi Does Global Software Development Need a Different Requirements Engineering Process , 2007 .

[14]  Thanwadee Sunetnanta,et al.  A Global and Competition-Based Model for Fostering Technical and Soft Skills in Software Engineering Education , 2009, 2009 22nd Conference on Software Engineering Education and Training.

[15]  James D. Herbsleb,et al.  Global Software Engineering: The Future of Socio-technical Coordination , 2007, Future of Software Engineering (FOSE '07).

[16]  Olly Gotel,et al.  Working Across Borders: Overcoming Culturally-Based Technology Challenges in Student Global Software Development , 2008, 2008 21st Conference on Software Engineering Education and Training.