- The Agile Developer's Handbook
- Paul Flewelling
- 390字
- 2021-06-24 18:47:07
Estimates
One thing that was increasingly obvious in the software industry was that our approaches to estimating or predicting the outcome of a project were out of whack. As a software team, we were often passed detailed requirements to analyze, then do some initial design work, and provide a work breakdown with estimates.
We'd be working on one project and then at the same time asked to estimate on another. The estimates we were told would inform the decision on whether the project was viable and would be funded. Some teams tried to be sophisticated, using algorithmic estimating techniques such as Constructive Cost Model (COCOMO), COCOMO II, Source lines of code (SLOC), and Function Point. Most estimating methods incorporated rule of thumb or experience-based factors as well as factors for complexity and certainty.
Sometimes the estimates would be given by people who weren't going to work on the project. This was either because the project leadership group didn't want to disturb an existing project team, or because, without funding, the project teams weren't formed yet. This meant the involvement of someone like an architect or a technical leader who could break down the work and estimate based on the solution they devised. Most complicated problems have several solutions, so if those who had done the solution work breakdown weren't available to provide guidance on how to implement their solution, obviously this could cause trouble later on.
Either way, whoever provided the estimate would give it based on the best solution they could theorize with the information they were given. More often than not, the first estimate that was given would be used as a way to control the project, and it would be pretty much set in stone. This was a pattern that I stumbled across many times. When this continually happened, we tried to improve the accuracy of our estimates by spending time doing more upfront work. But the reality was to get an exact estimate of effort so that time frames and budget can be drawn, you pretty much have to complete all the work in the first place.
- Web安全防護(hù)指南:基礎(chǔ)篇
- Aptana Studio Beginner's Guide
- C++黑客編程揭秘與防范
- 物聯(lián)網(wǎng)安全(原書第2版)
- 物聯(lián)網(wǎng)檢驗(yàn)檢測技術(shù)
- 新一代物聯(lián)網(wǎng)架構(gòu)技術(shù):分層算力網(wǎng)絡(luò)
- JBoss EAP6 High Availability
- 智慧城市中的移動(dòng)互聯(lián)網(wǎng)技術(shù)
- C/C++串口通信:典型應(yīng)用實(shí)例編程實(shí)踐
- Echo Quick Start Guide
- Getting Started with Memcached
- 從實(shí)踐中學(xué)習(xí)手機(jī)抓包與數(shù)據(jù)分析
- Practical Web Penetration Testing
- 無線傳感器網(wǎng)絡(luò)定位技術(shù)
- 設(shè)備監(jiān)控技術(shù)詳解