当前位置:网站首页>Why does it take more and more time to develop a software?

Why does it take more and more time to develop a software?

2020-11-09 14:53:00 InfoQ

{"type":"doc","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":" We often hear such questions : Why is it so expensive to develop software ? Why does my team deliver software so slowly ? Why my software release didn't catch up with the plan ? Why does it take so long to develop a software ?"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":" The reason why we hear this kind of problem over and over again , There's a reason behind it . To stay competitive , Companies need new software features every day , But as time goes by , The speed with which we deliver software seems to be stagnant , Or worse , It's getting slower ."}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":" I want to explain why this is happening . however , To explore this topic , I need to know one of my most concerned topics first : Essential complexity and incidental complexity ."}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":" Different types of complexity "}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":" anytime , When you're solving a problem , It's not just about software , There are two types of complexity :"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"numberedlist","attrs":{"start":"","normalizeStart":1},"content":[{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":1,"align":null,"origin":null},"content":[{"type":"text","text":" Essential complexity —— It's the complexity involved in the problem . If you don't solve this complexity , You can't solve the problem . It's also called intrinsic complexity ."}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":2,"align":null,"origin":null},"content":[{"type":"text","text":" Accidental complexity —— This is the complexity of the methods and tools used to solve problems . This complexity is not part of the problem you're trying to solve , It's the complexity introduced into the solution . It's also called accidental complexity ."}]}]}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"IBM 360 Father of the system Fred Brooks In classic papers “ There is no silver bullet : The essence of software engineering and the work of attached properties ” This concept is put forward in . You can think so , If you're going to solve a math problem , Essential complexity is the understanding of mathematics , Because only if you understand mathematics can you solve problems . If you want to solve this problem , Or learn the math you need , Or ask someone who knows math to help . If you want to solve this problem , You can't escape learning mathematics ."}]},{"type":"image","attrs":{"src":"https:\/\/static001.geekbang.org\/resource\/image\/18\/bf\/18ac8b463e896285357ea3b729aaebbf.png","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":" Accidental complexity "}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}}]}

版权声明
本文为[InfoQ]所创,转载请带上原文链接,感谢