一个完整的APP开发,基本都会经历需求分析、原型设计、UI设计、开发、验收等环节。不同公司的项目在具体的细节上会有所差异,但基本还是在标准流程的基础上进行变化的。
软件开发流程图
接下来具体讲一下各个步骤的工作内容和产出,以及涉及到的项目成员或角色。
1. 需求分析
App开发最基础也是最重要的工作,主要包括需求的梳理和评估。
首先对需求进行讨论研究,确定项目整体方案,包括做什么功能,怎么做,通过反复调研和讨论,得到产品功能架构图。
然后对项目的可行性进行评估,包括每个功能是否可以形成闭环、功能需求技术难度、评估设计需求可行性与体验评估、项目预期完成时间、实际开发费用等。
主要负责人:产品经理
主要产出:功能需求文档
涵盖内容:
项目名称
项目理念。为什么要做这个APP?用于解决什么问题?
项目定位及目标用户。所针对的用户群体是哪些?有什么特征?他们有哪些习惯?市场行情怎么样?以及竞争对手的产品和自己开发的产品有什么差异等…
需要运行的环境。如:Android、IOS、PC...
具体的产品功能需求。如需要建立用户个人档案、社交、分享、下单、支付等等…
2. 原型交互设计
App开发可行性确定后,就需要对软件的各项功能进行详细分析,模拟用户的使用场景和需求,明确重要功能的操作逻辑和业务规则,复杂业务可以绘制流程图。
然后确定App产品包含哪些页面、每个页面实现什么功能、以及各页面之间如何进行关联和交互。
2018年后英选的产品原型采用了Sketch高保真设计+墨刀批注及交互,提升客户的产品验收感受。
主要负责人:产品经理
主要产出:产品原型图
涵盖内容:
功能的规划
页面和布局设计
业务逻辑的交互
3. UI设计
在确认产品原型后,进一步设计用户界面,进行色彩调整、结构排版和页面美化等,以提高用户的使用体验和交互感受。
英选采用Sketch作为主要设计工具,通过蓝湖做设计评审及开发协作。
主要负责人:UI设计师
主要产出:UI设计图
4. 技术开发
我们把流程图中的前端制作和后端开发合在一起,统称为技术开发。
这就是我们通常所说的敲代码阶段了。
程序员们根据产品设计图,通过代码将产品的各个功能写出来,由前后端开发工程师共同完成,整个过程复杂且漫长。
前端就是用户界面,开发者根据Android和IOS的设备软硬件情况进行APP开发和优化,开发出与效果图一致的APP客户端。
后端就是数据库和服务器的搭建以及接口开发等工作,完成具体的业务逻辑实现。
主要负责人:开发工程师
主要产出:源代码、产品初稿
5. 测试优化
APP功能开发完成之后,将由专门的测试人员针对APP、后台管理系统进行测试,以确保产品功能方面不存在缺陷等问题,具体包括功能测试、接口测试、交互测试、回归测试等等。
开发人员会根据测试人员测试出来的一些问题进行调试修复,这是一个不断重复和迭代的过程。
这个环节不容忽视,很多个人和团队没有专业的测试人员,导致开发出来的项目出现很多逻辑问题并且在用户体验方面完全没有考虑,这会使后期推广错失很多用户。
主要负责人:测试工程师
主要产出:测试报告(包括不同阶段和不同类型的测试报告)、测试工作记录
6 结项验收
完成所有的研发和测试工作后,对最终产品、操作文档和部署文档等材料进行验收,确认功能与需求无误。
操作手册:测试工程师在测试验收过程中结合《概要设计》,将主流程操作进行截图及文字描述,重点注意描述一些用户容易忽略的、误解的内容。针对比较高频出现的问题,整理一个常见问题的板块内容。
部署文档:提供正式环境的部署文档,还需要在代码库中提供Dockerfile及docker-compose.yml
主要负责人:项目经理
7. 发布上线
对APP进行打包发布到应用市场。
正常情况下,上线苹果的App Store需要审核一周左右,安卓应用市场繁多,所以可以分批次先上主流的安卓应用市场,一般安卓应用市场的审核时间在3-7个工作日左右的时间。
主要负责人:项目经理

