Dr Eduardo Miranda
Carnegie Mellon University
SEI QUELCE initiative
Experienced professionals are capable of spotting an impossible estimate at a glance. This ability, which some will call “expert knowledge” is acquired over years of practice and observation of what works and does not work. Expert knowledge is mostly tacit and in consequence difficult to pass on.
The proposed workshop comprises two activities: A class showing the use of common decomposition techniques to estimate an unknown quantity in general and a software project in particular and a discussion on the value of these techniques to teach judgment based software estimation to
practitioners researchers and students in the field of software engineering.
The content is largely based on the experience of the presenter in teaching an estimation course to students in the Master of Software Engineering Program at Carnegie Mellon University.
Educators and consultants teaching estimation courses. Practitioners might benefit from specific techniques taught.
Workshop format and content
The format of the workshop includes the delivery of a mock class, followed by a discussion session. The
total duration for the workshop will be three hours, distributed as follows:
1. Delivery of the theory around Fermi Questions. One and a half hour. Topics to be covered:
- Using Fermi questions to estimate everyday quantities
Fermi questions, named after Enrico Fermi ‐ a Nobel Laureate in Physics, seek to produce a quick, rough estimate of a quantity that is either difficult or inconvenient to measure directly or for which we do not have all necessary data to calculate.
- Cost behavior and activity analysis
Cost behaviors are the typical patterns of growth exhibited by an activity over changes in the level of a certain cost driver. Activity analysis encompass the breakdown of the object of estimation into its component parts and the assignment of unit costs
- Using Fermi questions to estimate software development
Applying cost behavior and activity analysis to estimate the effort of project management, configuration management, unit testing, coding, design and integration activities
- The limits of decomposition
Several authors have found that too much of a good thing is not better. Decomposing a small task might lead to higher or lower estimates.
- Inverting the question: Sanity checks
Carl Gustav Jacob Jacobi was a German mathematician who lived in the 1800s. Jacobi once said “man muss immer umkehren” which translates to “Invert, always invert.” Jacobi believed that the solution for many difficult problems in mathematics could be found if the problems were expressed in the inverse. We will apply this technique to establishing the feasibility of an agile project with a fixed budget
2. Discussion topics. One hour. This activity will be organized either as a Q&A session or as a panel discussion.
- Is there a place for judgment‐based estimation in planning a software project?
- Can judgment‐based estimation be taught?
- What is the role of theory and practice in teaching judgment‐based estimation?
- Using historical data to support judgment‐based estimation
- Combining formal and judgment‐based estimation
- Calibration training: Using insights from prospect theory to improve the estimation process
3. Conclusion and further actions. This activity will foster contact between workshop participants wishing to learn more or share experiences.
If you want to participate in this workshop, you have to register to the conference for at least the day of the workshop. If you already registered to the conference, you can attend to this workshop free of charge.
Date & time
Wednesday, October 8
11.00 – 15.00 Noordam room (B-deck)