如何估算实际的软件开发时间?

如何估算实际的软件开发时间?插图

定制软件开发是指根据业务的独特要求量身定制的特定软件。因此,“构建自定义软件需要多长时间”的问题没有直接和即时的答案。这总是一个估计值 – 我们为客户提供的估计值记住了很多因素。阅读文章,了解需要考虑哪些因素才能为你的自定义软件提供准确的时间估算,以及软件开发的特定阶段可以延长多长时间。

构建我的自定义软件应用程序需要多长时间?这是一个常见的问题,我们经常回答它 – 哦这取决于很多因素,首先,我们需要了解你的特定项目。

关于定制软件开发是否等同于建造房屋的问题一直在讨论。这个比喻在表面上是有意义的,但如果你深入挖矿,这就失去了动力。

推荐阅读
1的8,158

对于房屋,范围不会根据不断变化的要求而变化,开发中的突然复杂性不会蔓延,并且不需要对房屋的每个部分进行测试。因此,没有任何软件开发与构建房屋完全不同

但是,在开始任何软件开发项目之前,有必要评估软件项目应得的时间和精力。成本还取决于软件开发所需的时间。但估算并不容易。没有两个项目是相同的。因此,没有两个项目需要相同的开发时间。

“这听起来不错” – 这是客户在听取我们在设计和流程方面的决定后所说的话。我们欣喜若狂但是,当我们到处向他展示设计和流动时,他对此非常不满意。我们哪里出了问题?假设他口头理解一切而不是把一切都写下来是我们最大的错误

软件开发充满挑战通常估计失败和成本超支。

哪些困难会使软件开发估算面临风险?我们将上架一些使软件开发时间估计对软件开发公司构成挑战的因素。

(1)不断变化的业务需求使得很难坚持估计。这就是为什么“业务需求文档”应该是你的圣杯。任何略微偏离要求和需要重新开发的东西都需要额外的时间来开发。

(2)与研发相关的时间有时在提供模型时不予考虑,或者需要的时间比估计的时间长。避免这种情况的一种方法是携带一个基本的RnD来计算实际RnD可能需要多长时间。

(3)设计人员和开发人员的可用性也是项目延迟的主要原因。你雇用的软件开发公司可能会遇到危机情况,并且软件开发人员也会用完,或者他们可能处于能力状态。在这种情况下预计项目会延迟。

(4)从第1天开始不测试软件主要归因于软件项目的延迟。成品交付后产生的错误需要很长时间才能解决,也会很复杂。因此,时间估计与初始估计不匹配。

最后,根据过去的经验,员工技能和项目依赖性保留缓冲区。这将帮助你应对溢出时间估计的某些部分并购买团队额外的时间。

我们将定制软件开发的时间估算过程分为4个部分。我们为BinaryFolks在遵守时间估算方面非常成功并且从未动摇过我们承诺的事实感到自豪。请看下面的软件开发时间表估算流程:

1-业务需求讨论

注意:这标志着时间估计过程中最关键的阶段。请记住,这个阶段越充实,时间估计就越精确。

每个定制软件开发都是一些独特业务需求的结果。了解和理解完整的要求是定制软件开发的必要条件,而不是奢侈品 – 公司可以负担得起。

你如何确保进行详细的需求分析?

(a)在收到客户的RFP后,仔细检查并记下你看到的每一个逻辑缺口。

(b)准备好软件流程并以商定的格式记录下来,尽可能详细和准确。将RFP与流量进行比较,看看是否会出现更多逻辑缺口。

(c)面对面或通过音频/视频与客户会面并讨论RFP。问他所有的问题,并弥合你的任何逻辑差距。

(d)重复这个过程,直到双方对要求完全清楚。然后起草最终的业务需求文档(BRD)并获得客户的批准。坦率地告诉他/她,任何额外的更改或添加都会导致更多的费用,无论是在预算还是时间方面。

这个过程将避免诸如 – 为什么你没有提供这个功能,我们应该有这个,na?专注且详细的BRD充当非正式合约,你可以随时回到这样的危机情况。

记录需求还有助于软件开发公司评估完成它所需的时间尺度和资源。

请记住,在分析阶段修复问题通常比完成软件交付时要快得多。

项目的需求分析部分大约需要1-4周,具体取决于项目的规模。

2-规划和建筑

在实际编码之前,彻底规划软件架构非常重要 – 无论是前端还是后端。这将在很大程度上有助于开发人员和设计人员的协作,并确保软件从一开始就是稳定和可扩展的。

无论你为软件选择何种架构,请始终牢记代码的结构必须满足软件的每个要求。选择软件架构时要考虑到灵活性,可扩展性,可行性,可重用性和安全性。

规划和体系结构通常包括堆栈选择,数据库选择,类图,ERD,第三方库,API等。还需要牢记部署体系结构。

此外,如果你的软件项目要划分为里程碑,那么该流程也需要在此阶段完成。

根据应用程序的大小和复杂程度,规划和架构大约需要1-2周。

如何估算实际的软件开发时间?插图(1)

3-设计与开发

既然你的开发人员和设计人员已经了解了需求和架构,那么向骨架添加肉体就是下一个工作。这是软件开发中最长且最耗时的部分。

设计应该是现代,直观和用户友好的。在里程碑之后,需要将开发部分分成更小的块,以便客户端可以预览在此过程中已完成的工作。这是至关重要的,因为客户将参与整个过程,一旦产品开发,你的开发人员将不会有任何最后的惊喜。

小规模项目的设计和开发大约需要2-3个月,中型项目需要4-6个月,大型项目需要长达一年的时间。

如何估算实际的软件开发时间?插图(2)

4 – 测试

所有项目都必须进行端到端测试和用户验收测试。跨浏览器测试也必须牢记在心。如果应用程序有许多用户同时登录并使用系统,则必须考虑负载和性能测试。

质量保证从一开始就需要参与。这是因为从一开始就涉及QA时,没有。意想不到的错误更低,并且更快被识别出来。这意味着对风险,成本和时间表的影响较小。

根据应用程序的大小和所需的测试程度,可能需要2-4周才能运行完整的测试。

– ::总结起来:: –

软件构建需要多长时间取决于软件的大小以及它将包含的所有功能和特性。没有。功能页面,UI级别,用户和帐户集成,日期和位置集成,CMS,社交媒体集成,计费和电子商务,分析,外部API和集成以及最终安全性 – 一切都将影响时间线估计。

对于定制软件开发公司,建议你查看类似项目的过去经验和历史数据。看看它是如何进行时间估算的。记在脑子里。问了很多问题。确保你100%确定需求和项目流程。记录一切。保持缓冲在手。

保持估计的真实性。了解你的设计师和开发人员各有两手牌。优先考虑活动和任务。沟通很好。

想要发展一些东西?有想法吗?我们有一些时间。通过免费咨询与我们联系,我们将帮助你。

最初发表于www.binaryfolks.com。

资讯来源:由0x资讯编译自HACKERNOON。版权归作者所有,原文链接:https://hackernoon.com/how-to-estimate-the-actual-software-development-time-b1bfe5c5f93a?source=collection_category—4——0———————。未经许可,不得转载
官方电报群加入我们的官方电报群,新闻实时推送,与大神一起互动🚀火速入群
Ledger超安全的加密货币硬件钱包Ledger Nano X,支持多币种,全球包邮,官网直购立即抢购
火币网世界一流的数字货币交易所,支持银行卡,支付宝与微信,提现有保障 ! 免代理直连即刻开通
币安支持OTC,Visa银行卡与支付宝,125倍高杠杆,20倍期货交易平台,全球第一交易所! 免代理直连即刻开通
关注我们:Twitter | Facebook | Linkedin | Medium | Telegram | Weibo | WeChat