A Case Study on Teaching a Software Estimation Course

This paper describes a case study in designing and implementing a graduate-level course on software project estimation. The course’s objective was to introduce modern project estimation theory and practice through the process of learning through experience and reflection. We describe the goals and purpose that guided the course’s design and summarize our experience from teaching it for the first time in the 2018 spring semester. Our case study shows that a graduate-level course on software estimation can introduce several size and effort estimation methods, and that there are some affordable tools that can be used in academia. At the end students rated well our course and all of them would recommend it to a friend.

[1]  Aldo Dagnino Increasing the effectiveness of teaching software engineering: A University and industry partnership , 2014, 2014 IEEE 27th Conference on Software Engineering Education and Training (CSEE&T).

[2]  Emilia Mendes,et al.  An Empirical Investigation on Effort Estimation in Agile Global Software Development , 2015, 2015 IEEE 10th International Conference on Global Software Engineering.

[3]  Christian Quesada-López,et al.  Un Estudio sobre las Prácticas de la Ingeniería del Software en Costa Rica: Resultados Preliminares , 2017, CIbSE.

[4]  Colin Beard,et al.  The Experiential Learning Toolkit: Blending Practice with Concepts , 2010 .

[5]  Ricardo Britto,et al.  Effort Estimation in Co-located and Globally Distributed Agile Software Development: A Comparative Study , 2016, 2016 Joint Conference of the International Workshop on Software Measurement and the International Conference on Software Process and Product Measurement (IWSM-MENSURA).

[6]  Carol J. Williams,et al.  Experiential learning: Past and present , 1994 .

[7]  Anna Ch. Ceberio-Verghese Personal Software Process: a user's perspective , 1996, Proceedings of 9th Conference on Software Engineering Education.

[8]  Jane Huffman Hayes,et al.  Energizing Software Engineering Education through Real-World Projects as Experimental Studies , 2002, CSEE&T.

[9]  Barry W. Boehm,et al.  Software Development Effort Estimation: Formal Models or Expert Judgment? , 2009, IEEE Software.

[10]  Jorge Marques Prates,et al.  Teaching and learning software project management: A hands-on approach , 2015, 2015 IEEE Frontiers in Education Conference (FIE).

[11]  Richard E. Fairley,et al.  Guide to the Software Engineering Body of Knowledge (SWEBOK(R)): Version 3.0 , 2014 .

[12]  Sussy Bayona Oré,et al.  Teaching Team Software Process in Graduate Courses to Increase Productivity and Improve Software Quality , 2008, 2008 32nd Annual IEEE International Computer Software and Applications Conference.

[13]  Dennis J. Frailey Experience Teaching Barry Boehm’s Techniques in Industrial and Academic Settings , 2006, 19th Conference on Software Engineering Education & Training (CSEET'06).

[14]  Adam Trendowicz,et al.  Software Project Effort Estimation , 2014, Springer International Publishing.

[15]  Alain Abran,et al.  Verifying the Accuracy of Automation Tools for the Measurement of Software with COSMIC -- ISO 19761 Including an AUTOSAR-Based Example and a Case Study , 2014, 2014 Joint Conference of the International Workshop on Software Measurement and the International Conference on Software Process and Product Measurement.

[16]  Viljan Mahnic,et al.  A Capstone Course on Agile Software Development Using Scrum , 2012, IEEE Transactions on Education.

[17]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2012, Springer Berlin Heidelberg.

[18]  Alain Abran,et al.  Software Project Estimation: The Fundamentals for Providing High Quality Information to Decision Makers , 2015 .

[19]  Dietmar Pfahl,et al.  Evaluating the learning effectiveness of using simulations in software project management education: results from a twice replicated experiment , 2004, Inf. Softw. Technol..

[20]  Dennis J. Frailey Experience teaching Barry Boehm's techniques in industrial and academic settings , 2007, J. Syst. Softw..

[21]  J. B. Dreger,et al.  Function point analysis , 1989 .

[22]  Ricardo Colomo Palacios,et al.  A Systematic Mapping Study on Software Process Education , 2015, SPETP@SPICE.

[23]  He Zhang,et al.  Improving PSP education by pairing: An empirical study , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[24]  J. Paynter,et al.  Project estimation using Screenflow Engineering , 1996, Proceedings 1996 International Conference Software Engineering: Education and Practice.

[25]  Ye Yang,et al.  Engaging Software Estimation Education Using LEGOs: A Case Study , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering Companion (ICSE-C).

[26]  Dietmar Pfahl,et al.  An experiment for evaluating the effectiveness of using a system dynamics simulation model in software project management education , 2001, Proceedings Seventh International Software Metrics Symposium.

[27]  D. Kolb,et al.  Experiential Learning Theory: A Dynamic, Holistic Approach to Management Learning, Education and Development , 2009 .

[28]  James B. Fenwick,et al.  ClockIt: collecting quantitative data on how beginning software developers really work , 2008, SIGCSE 2008.

[29]  Silvia Mara Abrahao Gonzales On the functional size measurement of object-oriented conceptual schemas: design and evaluation issues , 2004 .

[30]  Magne Jørgensen,et al.  A Systematic Review of Software Development Cost Estimation Studies , 2007 .

[31]  Sreekumar P. Pillai,et al.  Consolidating evidence based studies in software cost/effort estimation — A tertiary study , 2017, TENCON 2017 - 2017 IEEE Region 10 Conference.

[32]  João Pablo S. da Silva,et al.  Cosmic User Story Standard , 2018, XP.

[33]  E.F. Barry,et al.  Work in progress - project ClockIt: profiling and improving student software development practices , 2005, Proceedings Frontiers in Education 35th Annual Conference.

[34]  Anders Wesslén,et al.  A Replicated Empirical Study of the Impact of the Methods in the PSP on Individual Engineers , 2000, Empirical Software Engineering.

[35]  Magne Jørgensen,et al.  The Impact of Lessons-Learned Sessions on Effort Estimation and Uncertainty Assessments , 2009, IEEE Transactions on Software Engineering.

[36]  Kjetil Moløkken-Østvold,et al.  A review of software surveys on software effort estimation , 2003, 2003 International Symposium on Empirical Software Engineering, 2003. ISESE 2003. Proceedings..

[37]  Watts S. Humphrey,et al.  Teaching Teamwork , 2002, IEEE Softw..

[38]  C. Symons,et al.  The COSMIC Functional Size Measurement Method : Measurement Manual : The COSMIC Implementation Guide for ISO/IEC 19761:2011 , 2015 .

[39]  Watts S. Humphrey,et al.  Teaching disciplined software development , 2008, J. Syst. Softw..