TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

You Can't Do Software Estimates at All

34 点作者 SarasaNews大约 9 年前

7 条评论

douche大约 9 年前
The one I love is being asked for an estimate cold on some feature&#x2F;requirment I&#x27;ve never heard mentioned before.<p>&quot;How long will it take to add a feature to frobulate the fribbers?&quot;<p>&quot;What&#x27;s a fribber, and what, exactly, does it mean to frobulate them?&quot;<p><i>Handwave</i> &quot;How long? We need to schedule this.&quot;<p>&quot;Can I do some research about frobulating fribbers and how one goes about doing that?&quot;<p>&quot;No, we need an estimate&quot;<p>&quot;Ok, five minutes? Six weeks? Six years? Who the hell knows? What do you want me to say?&quot;
tyingq大约 9 年前
Guessing this won&#x27;t be a popular response, but all the hand-wringing about how management is unreasonable to ask for estimates (cost or time) just isn&#x27;t helpful.<p>Anything a business is going to invest in needs some kind of justification, and a metric to prioritize against other things the funds could be spent on.<p>I think it&#x27;s fair to push back with suggestions that might make a realistic estimate possible (reduce scope, proof of concept, etc). However, just suggesting you can&#x27;t provide any kind of reasonable time and cost estimate doesn&#x27;t help anyone.
评论 #11456121 未加载
评论 #11452163 未加载
评论 #11456102 未加载
评论 #11456401 未加载
评论 #11458361 未加载
Dr_tldr大约 9 年前
Trying to prove the impossibility of something that is never going to go away as a requirement isn&#x27;t very useful.<p>An alternative would be to describe potential break-points and conditionals in the planning process. For instance, if a third party library can help you with some core functionality, it takes a few hours to investigate and an hour to implement.<p>But if it&#x27;s not going to work for whatever reason, then you know you have to make your own, and the initial implementation could range from 4-6 weeks.<p>If you say &quot;this will take either 4 hours or 4-6 weeks&quot;, that&#x27;s far more useful and acceptable to management than saying &quot;this will take somewhere between 4 hours and 6 weeks.<p>No one sane is asking for exact estimates, and no one smart is promising a hard deadline based on the assumption that nothing goes wrong. A good engineer will pad their estimate slightly for the same reason that airplanes carry more fuel than the exact amount they need to reach their destination. It&#x27;s not a deceptive or inefficient practice, it&#x27;s managing uncertainty.
评论 #11452306 未加载
dpweb大约 9 年前
Companies have budgets so estimates are necessary. Volunteer or work in open source if you don&#x27;t like it. Those asking - business types usually - know (and often care) little about the craft, so they can&#x27;t be expected to be much help.<p>The best you can do is be experienced enough to be able to get it somewhat close. Nothing wrong with padding. How much.. is an art form. But remember technical people nine times out of ten, will under-estimate.
andyidsinga大约 9 年前
some thoughts:<p>1) it seems that the accuracy of an estimate is inversely proportional the length of time for which it applies. In my experience engineers aren&#x27;t too bad at estimating if a task can plausibly fit into a two week sprint<p>2) I think the boss should be taking an active part in the estimation process, not just asking &quot;how many hours&#x2F;days&quot;.<p>When I estimate with my teams I try to say &quot;given x,y,z and the current state and that A,B,C blocks are not quite understood can this item reasonably be completed within our sprint&quot;<p>..then we play poker &#x2F; vote &#x2F; comment etc. If the item isn&#x27;t plausible for a sprint I&#x27;m (likeaboss) going back to the drawing board on that item to define it better and get it into more manageable pieces (consulting the team as needed)<p>We&#x27;re striving to make sure work items are defined well enough to be fairly confident they can be done in a short amount of time.
bonniemuffin大约 9 年前
Still, some projects will take longer than others, and it&#x27;s possible to distinguish a 2-week project from a 2-quarter project, even if they actually end up taking 3 weeks and 3 quarters.<p>I feel like comparative sizing is the most important part of software estimates, so that you can make reasonable tradeoffs, e.g. &quot;if we take on this project, we can&#x27;t do these other 2 smaller projects&quot;. This is still a valuable exercise, even if all of the estimates are each individually quite inaccurate.
评论 #11458149 未加载
Retra大约 9 年前
Well, maybe not if you&#x27;re jumping to a new platform, API, framework, language, or library each time you start a project.
评论 #11458168 未加载