专业APP的设计和开发流程,关于这方面的文章也有很多,但大多数文章偏专业性。 下文以新星咨询公司APP项目评估的流程为例子,站在技术委托方(客户)关注的角度,为大家剖析一下在开发过程当中,哪些是重要的里程碑节点,以及在APP项目开发过程需要双方交付和对接一些项目资料,以及需要多少成本?
(全文约2000字,预计花费您5分钟阅读)
一、商务洽谈 & 合同阶段1. 功能需求思维导图:经过一些双方反馈调整后,产品经理跟甲方对接了解清楚整个项目需求,并绘制整个项目的功能思维导图策划方案(已经过技术和设计角度的可行性评估),最终产出清晰明确的功能需求说明。 例如下图:
2. 需求报价方案:产品经理跟客户确定好功能需求后,项目经理拿到清晰完整的需求规划,进行整个项目的设计和项目开发测试评估,并产出项目的需求报价方案。 如下图:
需求说明&报价单
3. 技术开发合同:初步确认合作意向后,提供技术开发合同,如果双方对合同协议会异议,双方协商修改。
4. 开发进度文档:签订合同后,根据总开发周期,制定各开发阶段节点,并根据开发计划,推进后续的整个设计开发过程。 例如下图:
技术节点示例
二、设计阶段1. 原型设计稿:产品经理根据合同确认的功能需求,进行整个项目前端界面的原型设计。 经过双方多次的沟通反馈调整,最终确认所有原型的设计。 例如下图:
产品原型图例
2. 原型交互流程图:在原型设计稿的基础上,加上每个页面的跳转交互流程标识,以便能够清晰了了解各个页面间的跳转和交互流程。 如下图:
产品原型交互示意
3. UI风格页:UI设计师会挑出几个主页面进行风格页的设计,一般会提供3-5个风格页的设计,确认整个UI的设计风格。
4. UI高保真设计稿:确认UI的风格设计后,便开始进行整个项目所有页面的高保真图设计,最终产出所有页面的高保真设计图,包括每一个页面的预览图,以及整个项目所有页面的预览大图。 如图所示:
产品高保真原型示意图
三、开发阶段1.注册相关账号:开发过程中,需要注册相关的开发者账号。 包括部分但也不限于以下的开发者账号:苹果开发者账号,应用宝账号,微信公众号,支付账号,推送账号,阿里云账号,APP统计开发者账号,短信开发者账号,地图开发者账号等。
2.购买服务器,注册域名,备案:一般在上线前半到一个月,需要购买云服务器(如阿里云服务器),根据项目预估的运营情况(如未来一段时间的注册用户数,日活用户数,用户增加预估,用户的并发访问等情况),确认服务器的采购配置。 如果项目需要分享到微信,或者有官方网站,则需要配备域名使用,需要提前购买好域名和服务器,并进行备案,备案一般需要7-10个工作日;
3.交付测试版本:完成项目的所有功能开发后(包括前后端功能的开发,一般在项目上线前的1-2周前交付,已经过内部初始几轮的测试,版本稳定),将打包发布测试的版本给甲方进行反馈测试。 在经过1-3周的测试与反馈后,最终版本功能达到稳定流畅的上线状态。 在此期间,双方都需要配置相关的人员进行项目的测试反馈问题。
四、项目上线:项目上线前,需要进行以下几步的操作:
1.准备上架相关的资料:如发布市场的打包版本,应用说明描述,截图,部署服务器和录入正式的数据等工作;
2.部署正式服务器:将数据库,后台系统部署到正式的服务器上面,并录入正式的上线数据到系统的后台;
3.发布APP应用到市场:国内的应用一般是发布到苹果的APPSTORE(iOS版本)和腾讯的应用宝(安卓版本)。 APPSTORE提交后一般需要10个工作日左右可以通过应用的审核并上架,应用宝一般当天提交APP,当天就可以通过应用的审核并上线
4.发布H5或小程序到微信公众号:如果是微信H5的网站,只需要将网站部署并挂到小程序的菜单上面;如果是微信小程序,则需要把小程序发布提交给微信团队审核并上架;
五、运维阶段1.免费运维阶段:项目上线后,项目便正式进入免费运维的阶段。 一般免费运维期为3-12个月。 在这个阶段中,技术开发方需要提供运维的服务,包括解答甲方的咨询服务,指导甲方的软件使用等事项,以及程序Bug的修复等内容。 由于刚上线的版本前期bug会比较多,所以在这个阶段,协助甲方收集相关的问题进行修复并定时迭代上线新的版本;
2.交付项目资料:免费运维期到后,项目运行基本达到稳定状态,技术开发方需定期打包所有的项目资料交付给甲方,包括但不限于前后端项目的所有最新源代码,数据库设计文档,API设计文档,所有的开发者账号资料(数据库账号,服务器账号,苹果账号,微信开发者账号,安卓应用市场账号等等),测试文档,原型设计稿,UI设计稿,项目相关文档等资料。
3.付费运维阶段:后续如果甲方需要供运维支持,需要签订运维合同。 一般运维费用为项目总开发成本的10% ~ 20%,根据项目的用户数量,功能量级及运维工作量进行费用的评估。
六、需要多少成本?不管你的APP想么多简单,但是固定的流程是不变的,成本要根据APP项目的功能需求来确定!
像你这样直接问“做一个简单的APP需要多少钱?”,
就好比直接问“人类的头发有多少根?”,
有的人是秃子,有的人是“地中海”……怎么回答你?