Good examples for teaching software estimation (size, schedule, effort)? [closed]

I’m going to be teaching a class that covers a broad brush of estimation techniques. I intend to cover absolute estimation techniques based on SLOC (e.g. Function Points, COCOMO II etc.) and relativistic ones like T-shirt sizing, story-point estimation etc.

I was wondering what would be some good exercises to conduct in class to help understand the what, why and how of estimation. I hope to pique their interest with actual hands-on examples rather than death by powerpoint.

An example that was suggested by a colleague of mine was to bring a newspaper to class and ask them to estimate the number of words in the paper (for short papers or just a page for long ones). Since they can’t absolutely count it, they’ll be forced to come up with their own heuristics and they to take the lecture from there to help them gain insights into their own estimation technique.

Although a good example, it doesn’t seem to link well with software estimation IMHO. I was wondering what would be some good examples for teaching software estimation w.r.t. size, schedule and effort estimations that they’ll encounter in practice. I prefer practical examples that I can actually ‘conduct in class’ rather than ‘just talk about it’.

UPDATE: To throw some more light on the structure of the class – Yes, I’ll be covering the aspects of granularity i.e. at the RFP stage what’s the best one could do. How can the estimate be refined when more is known about the problem (e.g. FPs after prototyping is done) and how story-points can be useful once you have a list of stories to go by Or how COCOMO like models based on SLOC count can be applied post architecture/design. I.e. narrowing the cone of uncertainty as you progress towards completion of the project. My aim is to elicit examples that the student teams can practice in class to get a better feel for the techniques and understand its ease of use (or difficulty) and the level of accuracy that can be obtained at that level of granularity and knowledge.

PS: If you are downvoting, I’d appreciate a comment highlighting the same. This is not a subjective question and rather non-trivial to teach in a hands-on manner and does have the possibility of selecting the ‘best answer’

4

Steve McConnell’s Software Estimation: Demystifying the Black Art has a number of good examples presented through the book, some tied to a specific estimation methodology as well.

As an example, for presenting “count-compute-judge”, he presents the problem of counting the number of people in a large conference hall. I believe it goes something like this, since I don’t have the book in front of me right now. The counting technique involves individually counting all of the people in the room. Computing involves determining that each table was designed to hold five people, and many observable tables had about five people sitting at them, and then counting the number of tables in the room. Judgement was to look at the posted maximum capacity of the room and estimate the percentage of the room that was occupied, using that percentage and the maximum capacity.

He presents other examples, from both software and other estimates, to explain other estimation techniques. If you haven’t read it, I’d highly recommend reading it before you teach the course. If possible, I’d even suggest it as the course textbook (or a recommended textbook).

Estimation is something that’s difficult to teach though. It’s one of those things that gets better with experience. However, unlike other things in the “you learn by doing” category, estimation requires you to not only do (as in perform the estimate) but then do what you estimated and track your estimates and actuals and discuss why there are differences.

Although McConnell’s book will provide good examples of what it’s like to use a number of good estimation techniques, I’d consider using projects in the course. Not only do different estimation techniques provide different levels of accuracy, but some also require a certain amount of historical data with regards to both estimates and actuals. As you progress through more and more projects, you’ll gain more historical data while also giving students hands-on experience with using a particular estimation technique.

Depending on the experience level of the student, I might be more inclined to focus on teaching the techniques, when they are appropriate, and their advantages and disadvantages. This would especially be true for undergraduate students or even graduate students with limited professional experience. More experienced students with more large-scale projects under their belts can probably relate to their experiences more and will have a larger historical database of estimates and actuals to draw upon.

3

I suggest, that you start the class by giving them a very simple application that has 4 business processes or so. Ask them to do their estimate before learning any thing about the course, then use this application through the course and show how estimation techniques apply to it and where would someone go wrong. I guess what I am trying to say is have the class based on simple case study and apply the principles as you go and show how various factors and/or estimation techniques could give different results.

Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa Dịch vụ tổ chức sự kiện 5 sao Thông tin về chúng tôi Dịch vụ sinh nhật bé trai Dịch vụ sinh nhật bé gái Sự kiện trọn gói Các tiết mục giải trí Dịch vụ bổ trợ Tiệc cưới sang trọng Dịch vụ khai trương Tư vấn tổ chức sự kiện Hình ảnh sự kiện Cập nhật tin tức Liên hệ ngay Thuê chú hề chuyên nghiệp Tiệc tất niên cho công ty Trang trí tiệc cuối năm Tiệc tất niên độc đáo Sinh nhật bé Hải Đăng Sinh nhật đáng yêu bé Khánh Vân Sinh nhật sang trọng Bích Ngân Tiệc sinh nhật bé Thanh Trang Dịch vụ ông già Noel Xiếc thú vui nhộn Biểu diễn xiếc quay đĩa Dịch vụ tổ chức tiệc uy tín Khám phá dịch vụ của chúng tôi Tiệc sinh nhật cho bé trai Trang trí tiệc cho bé gái Gói sự kiện chuyên nghiệp Chương trình giải trí hấp dẫn Dịch vụ hỗ trợ sự kiện Trang trí tiệc cưới đẹp Khởi đầu thành công với khai trương Chuyên gia tư vấn sự kiện Xem ảnh các sự kiện đẹp Tin mới về sự kiện Kết nối với đội ngũ chuyên gia Chú hề vui nhộn cho tiệc sinh nhật Ý tưởng tiệc cuối năm Tất niên độc đáo Trang trí tiệc hiện đại Tổ chức sinh nhật cho Hải Đăng Sinh nhật độc quyền Khánh Vân Phong cách tiệc Bích Ngân Trang trí tiệc bé Thanh Trang Thuê dịch vụ ông già Noel chuyên nghiệp Xem xiếc khỉ đặc sắc Xiếc quay đĩa thú vị
Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa
Thiết kế website Thiết kế website Thiết kế website Cách kháng tài khoản quảng cáo Mua bán Fanpage Facebook Dịch vụ SEO Tổ chức sinh nhật