首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >开发大型项目时最大的瓶颈是什么?

开发大型项目时最大的瓶颈是什么?
EN

Software Engineering用户
提问于 2011-07-16 21:51:36
回答 7查看 2.6K关注 0票数 11

假设我的公司将开发MS的副本(就像一个例子)。假设您拥有无限可用的现金和像Microsoft这样的组织,那么开发过程的瓶颈是什么?换句话说,快速开发这种软件最常见的障碍是什么?让我们假设所有规范都已经到位,并且组织运行得很完美,所以我们只关注软件开发,直到产品准备好才能发货。一些替代方案可能是:-编写代码-编写测试-手动测试最终产品-首先重写代码,因为错误的设计首先-设计代码-代码审查经验丰富的开发人员设计GUI -重新设计基于alpha/beta用户反馈用户反馈处理反馈-等待alpha/beta用户反馈-用户反馈。

请在你的答案中使用参考资料,或说明你在这个问题上的经验。

EN

回答 7

Software Engineering用户

回答已采纳

发布于 2011-07-17 00:55:46

根据我的经验,主要的“瓶颈”是学习过程。当你的假设公司开始开发微软的下一个单词时,你需要知道的东西和你实际知道的东西之间有很大的差距。差距的大小取决于许多因素,它可能是在技术或领域。在你的问题中,你已经触及了其中的一些问题,比如设计、用户反馈等等。微软Word已经开发了30多年,所以在历史、代码、工具和人之间都有很多知识。

因此,如果我尝试这样做,我会尝试雇用最好的人在该领域的经验,包括技术和管理。试着阅读该领域的任何现有文献。我也会设法尽快得到客户的反馈。最大的问题是那些你不知道的关键的事情,并且可能会在你的过程中发现很晚。

顺便说一句,这并不是软件项目所独有的。对于每一个你尝试做新事情的大型项目来说,这都是真的。看看那架波音梦想飞机。有很多关于这方面的书。神话中的男人月就是其中之一。

票数 3
EN

Software Engineering用户

发布于 2011-07-16 22:13:29

让我们假设所有规范都已经到位,并且组织运行得很完美。

您已经假设软件开发过程中两个最大的“瓶颈”并不存在(根据我个人的经验)。

票数 37
EN

Software Engineering用户

发布于 2011-07-16 22:54:35

即使在你假设的完美世界里,我也能看到一些问题:

从我个人的观点来看,最重要的可能是与客户打交道。根据我自己的经验,企业必须与那些在项目开发过程中经常尝试更改项目的客户打交道。在某些情况下,他们试图将更改请求作为bug修复,以避免支付任何费用。这可能会导致大量的官僚作风,这可能会延迟一个项目,或者导致代码中的快速黑客攻击,从而进一步发展为技术债务。我读过并听说过处理这些问题的团队就像呼吸一样容易,我当然希望我在其中之一:)

第二个问题是缺乏合适的领域模型。Evans在他的书“领域驱动设计”中对此提供了很好的报道。缺乏良好的域模型会导致Glenn的回答中强调的一些问题,例如试图定位bug。如果没有干净的域模型,那么遍历/调试代码以隔离和修复问题是很费时的。我认为一个好的域模型可以让生活和调试变得更加容易,在维护和扩展应用程序的过程中更是如此。

上面提到的问题不会产生任何直接的问题,但是如果您需要长期维护此产品,它们可能会回来困扰您和您的团队。

票数 8
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/93437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档