Team Composition in Software Engineering Project Courses

Composing well-balanced, effective development teams for software engineering project courses is important for facilitating learning, fostering student motivation as well as obtaining a successful project outcome. However, team composition is a challenging task for instructors because they have to consider a variety of possibly conflicting criteria such as practical constraints, skill distribution, or project motivation. In this paper, we describe our process for composing development teams based on a pre-defined set of criteria that we have established from our experience conducting project courses since 2008 and constantly refined since. We reflect on these criteria by analyzing the team synergy and project satisfaction of participating students as well as their perspective on challenges in their teams in one concrete instance of a multi-project capstone course. Our findings show that lack of motivation, problems with interpersonal relationships and communication issues affect the less satisfied teams more than the others.

[1]  J.S. Reel,et al.  Critical Success Factors in Software Projects , 1999, IEEE Softw..

[2]  Cécile Péraire,et al.  Green-Lighting Proposals for Software Engineering Team-Based Project Courses , 2016, 2016 IEEE 29th International Conference on Software Engineering Education and Training (CSEET).

[3]  Edward P. Katz Software Engineering Practicum Course Experience , 2010, 2010 23rd IEEE Conference on Software Engineering Education and Training.

[4]  A. Ojha Impact of Team Demography on Knowledge Sharing in Software Project Teams , 2005 .

[5]  Luiz Fernando Capretz Personality types in software engineering , 2003, Int. J. Hum. Comput. Stud..

[6]  Narasimhaiah Gorla,et al.  Who should work with whom?: building effective software project teams , 2004, CACM.

[7]  Victor R. Basili,et al.  The role of experimentation in software engineering: past, current, and future , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[8]  Claes Wohlin,et al.  Achieving industrial relevance in software engineering education , 1999, Proceedings 12th Conference on Software Engineering Education and Training (Cat. No.PR00131).

[9]  Josefina Rodríguez-Jacobo,et al.  Competency Framework for Software Engineers , 2010, 2010 23rd IEEE Conference on Software Engineering Education and Training.

[10]  James M. Bieman,et al.  Software Metrics: A Rigorous and Practical Approach, Third Edition , 2014 .

[11]  James H. Cross,et al.  Team dynamics in student programming projects , 1994, SIGCSE '94.

[12]  Stefan Brandle,et al.  Software studio: teaching professional software engineering , 2011, SIGCSE.

[13]  Luiz Fernando Capretz,et al.  Making Sense of Software Development and Personality Types , 2010, IT Professional.

[14]  Timo Poranen,et al.  Risks in Students' Software Projects , 2009, 2009 22nd Conference on Software Engineering Education and Training.

[15]  GorlaNarasimhaiah,et al.  Who should work with whom , 2004 .

[16]  K. Seers Qualitative data analysis , 2011, Evidence Based Nursing.

[17]  Helen Sharp,et al.  Collaboration, Communication and Co-ordination in Agile Software Development Practice , 2010, Collaborative Software Engineering.

[18]  Amir Mujkanovic,et al.  Improving learning outcomes through systematic group reformation: the role of skills and personality in software engineering education , 2016, CHASE@ICSE.

[19]  Ivica Crnkovic,et al.  Student motivation in distributed software development projects , 2011, CTGDSD '11.

[20]  Sanjay Misra,et al.  Analysis of cultural and gender influences on teamwork performance for software requirements analysis in multinational environments , 2012, IET Softw..

[21]  Anna B. Kayes,et al.  Experiential learning in teams , 2005 .

[22]  Sallie Henry A project oriented course on software engineering , 1983, SIGCSE '83.

[23]  Bernd Brügge,et al.  Software Engineering Project Courses with Industrial Clients , 2015, TOCE.

[24]  Bernd Brügge,et al.  Rugby: an agile process model based on continuous delivery , 2014, RCoSE 2014.

[25]  Andrew J. Kornecki,et al.  Strengthening software engineering education through academic industry collaboration , 1997, Proceedings Tenth Conference on Software Engineering Education and Training.

[26]  Hee-Dong Yang,et al.  An exploratory study on meta skills in software development teams: antecedent cooperation skills and personality for shared mental models , 2008, Eur. J. Inf. Syst..

[27]  Mario Zagar,et al.  Picking the right project: Assigning student teams in a GSD course , 2013, 2013 26th International Conference on Software Engineering Education and Training (CSEE&T).

[28]  J. Miner Organizational Behavior 1: Essential Theories of Motivation and Leadership , 2005 .

[29]  Kurt Schneider,et al.  Media, Mood, and Meetings: Related to Project Success? , 2015, TOCE.

[30]  T. C. Timmreck Motivation--Hygiene Theory Adapted for Education. , 1977 .

[31]  David Bingham,et al.  Team effectiveness – development of an audit questionnaire , 2002 .

[32]  M. Cecilia Bastarrica,et al.  What Can Students Get from a Software Engineering Capstone Course? , 2017, 2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering Education and Training Track (ICSE-SEET).

[33]  Patricia Lago,et al.  Designing a Multi-disciplinary Software Engineering Project , 2009, 2009 22nd Conference on Software Engineering Education and Training.

[34]  Chris Rowley,et al.  Factors in team effectiveness: Cognitive and demographic similarities of software development team members , 2006 .

[35]  John V. Harrison Enhancing software development project courses via industry participation , 1997, Proceedings Tenth Conference on Software Engineering Education and Training.

[36]  Sallie M. Henry,et al.  Using software development teams in a classroom environment , 1999, SIGCSE '99.

[37]  D. Kolb,et al.  On Becoming an Experiential Educator , 2014 .

[38]  Sally Fincher,et al.  Computer Science Project Work , 2001 .

[39]  Georgios A. Dafoulas,et al.  Facilitating group formation and role allocation in software engineering groups , 2001, Proceedings ACS/IEEE International Conference on Computer Systems and Applications.

[40]  P. Kline Handbook of Psychological Testing , 2013 .

[41]  Robert L. Glass,et al.  Science and substance: a challenge to software engineers , 1994, IEEE Software.

[42]  C. Ghezzi,et al.  The challenges of software engineering education , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[43]  E. Berry,et al.  Teaching teamwork skills in software engineering based on an understanding of factors affecting group performance , 2002, 32nd Annual Frontiers in Education.

[44]  Fabio Q. B. da Silva,et al.  Motivation in software engineering: A systematic review update , 2011, EASE.

[45]  Carlos E. Otero,et al.  A systematic approach for resource allocation in software projects , 2009, Comput. Ind. Eng..

[46]  Luiz Fernando Capretz Implications of MBTI in software engineering education , 2002, SGCS.