想要开发一款软件,需要先了解软件开发成本的构成。软件开发成本仅包括软件开发过程中的所有人力成本和非人力成本。
影响软件开发费用会有很多因素组成:
1.开发平台
在不同平台下开发出的产品,会导致研发人员数量和开发技术有一定差异 。
若功能一致的情况下,从成本的角度来看,原生APP>混合APP>PC网页>网页封装App、小程序>h5网页移动端(该成本计算为个人经验)
2.产品类型
不同类型的产品基础功能差异,直接就导致成本的差异非常大(天壤之别)。比如电商平台、直播平台、CRM、ERP、游戏开发、旅游平台、社交平台等等
3.功能模块
功能模块越多越复杂,导致的开发成本越大,就像盖茅草屋与别墅的差别。
4.开发深度
如果说功能模块就指你开发的产品多少功能,那开发深度更像是你用什么材质来装修,比如要考虑到产品的安全性、稳定性、结构框架、交互体验、营销方式等。
5.人力成本
确定好开发产品,就需要找到专业的开发公司或者自己的团队开发,开发一款软件所涉及到的部门人员有:销售人员、产品经理、前端研发、后台研发、Android人员、IOS人员、测试人员、运维人员等等(技术人员的能力高低,一线与二线城市的人工成本差别)。
6.时间预估
将开发过程拆分为下面六个部分:
①需求梳理:7天,输出物为包含功能点,功能描述及优先级排序的需求文档;
②产品设计:10天,输出物为流程图,产品原型和产品需求文档;
③UI设计:7天,输出物为UI设计图;
④开发任务分解及排期:1天,输出物为甘特图;
⑤开发:60天,包含客户端和服务端开发,客户端和服务端联调(客户端按照每天一个页面计算,服务端按每天一个功能点计算,因为客户端和服务端时间有重合端部分,所以算了60天)
⑥测试并修改bug:10天,输出物为最后可上线运行的产品。
7.迭代升级
任何一款产品都没有完美,只有不断迭代更新逐渐完善产品,迭代的过程也是增加成本的。
所以说,脱离了软件需求规划去谈软件成本是不切实际的。正确做法是先澄清APP开发软件功能需求,进而确定软件规模、软件开发工作量,根据软件工程造价评估各种方法进行评估才能得出一个确切的价格。