二. 设计阶段
1. 客户端进行需求拆分,相关开发和服务器同学讨论确定数据接口,并周知QA
2. 开发根据需求进行程序设计,评估实现复杂度,风险点,估计开发周期
3. 根据与服务器开发沟通,确定各模块开发所需时间,汇总告知PM同学
4. 客户端开发和设计人员确定设计图的分辨率,沟通各功能页面出设计图的优先级(包括标注图,对于切图开发和设计沟通协商)
三. 开发阶段
1. 高质量完成程序开发,要求有必要的注释查看编码规范
2. 开发中遇到突发问题(比如技术难题,风险评估不足等),可能影响开发周期的立即告知leader和PM,及时发现及时解决调整
3. 开发完成的模块,进行自我测试直到自己不能发现任何问题(尽可能找不同的机型测试)
4. QA编写用例完毕,开始全员用例评审
四. 测试阶段
1. 开发工程师提交程序,QA进行测试,测试过程中一般不做需求修改或增加(需求“冻结点”)
2. QA上报bug,要求必须说明机型,版本,是否必现以及必要日志或者截图
3. 对于升级,动态splash, push推送等基础功能每个迭代必须回归测试
4. “冒烟测试”完毕后,用monkey对程序进行必要压力测试
5. 产品确认无任何修改后(代码冻结),与工程师确定上线时间
1. QA发起客户端上线,打渠道包上线
2. 上线时PM随机抽取安装包,检测各个功能可用性,客户端开发检测引导页是否替换,代码混淆是否开启,配置文件是否需要更新等
3. 上线前务必保证客户端与服务端沟通的一致性
4. 上线后的30分钟内,所有开发人员不能下班或者离开
下面要介绍的APP定制开发的完整流程,即使是搞程序开发的也未必知道,因为这是一个产品经理完整详细的总结写出来的。流程不仅包括了开发标准流程,还包括了上线发布等阶段。需要在这里提醒的是,下面要说的是APP的定制开发,而不是其他的模板制作流程。一个移动APP项目研发规模可大可小,但都离不开以下几个成员:产品经理、ui设计师、前端开发、后端开发、测试等。如何合理安排项目成员工作、确保项目顺利进行呢?一个清晰合理的项目研发流程控制很重要。
我们可以按工作的性质不同先把APP的项目开发分成三个阶段,第一个阶段是需求阶段,第二阶段是研发阶段,第三阶段是发布阶段。每个阶段包括了多个步骤,循序渐进,最终完成项目的开发。
一、需求阶段
1、需求讨论:产品经理与客户沟通,做什么功能,怎么做,包括:开发类型、需要开发的平台、具体的产品功能需求、具体的产品设计需求、项目期望完成时间、开发预算,通过反复调研、讨论、输出交互方案。
2、需求评估:产品在输出交互方案后找相应的开发讨论需求方案是否可行,包括功能需求技术难度、评估设计需求可行性与体验评估、项目预期完成时间、实际开发费用。
3、项目技术开发与视觉规划。项目开始各个部门就开始项目的碰头会议,设计部门开始设计UI(产品界面)和UE(用户体验),针对产品开展创意设计,形成初步的效果图,经过首次客户的确认。在根据交流的具体结果进行二次修改,最终与客户确认高保真视觉图,开始进入研发阶段。
二、研发阶段
1、项目启动:开发根据产品需求文档进行需求评审,评估出研发周期、提测时间、预发布时间点、正式发布时间点。
2、程序开发流程:前端开发——程序开发——接口对接——第三方接入(支付宝等)——定期项目会议沟通和管控项目开发进展——开发预算审计。
3、程序测试:产品面向的平台多机型同步测试,包括:App内容测试、App性能测试、App功能测试、App视觉测试,对BUG调试修复。测试合格,确认没有bug后与客户进行沟通,开始验收。由客户进行测试,提出修改意见。
三、发布阶段
在上线发布前就需要提前准备好以下一些资料。
苹果的APP store审核一个应用需要一周左右时间,所以如果是计划上规定上线时间的项目,开发测试一定要提前半个月完成,以给上线审核预留时间。
安卓各市场一般审核较快,普遍在3天左右即可。
上线所需资料与注意事项
(一)申请成为开发者
1. 公司开发者上传营业执照扫描件(已年检)
2. 个人开发者上传个人有效身份证的正反两面扫描件
3. 所有上传证明材料必须真实有效;
4. 开发者提供的联系人,联系电话将作为手机应用市场与开发者联系的渠道,需真实有效
(二)上传软件资料注意事项
1.软件名称、文字介绍及截图不能违反国家相关规则;
2.软件介绍里有网址的,必须与软件开发者或者内容相关,不得有其他无关内容
3.软件图标、截图必须来源于上传软件且内容清晰,与当前版本对应
(三)app发布流程中需注意:
1.确保软件能正常安装、使用、卸载,保证良好的用户体验
2.不得抄袭,如有侵权行为则不会通过审核、已经上线软件将立即下架
3.不违反国家相关规则;
4.如软件有收费内容,必须给用户以明确的提示
5.如软件含有内置SDK(软件开发工具包),须不含违反国家相关法律的信息;
(四)手机App应用上线发布
1、App store发布
2、主流安卓市场发布
3、App下载页(web/wap)发布
4、二维码生成
5、App应用手册
从以上APP项目研发流程来看,每一个版本研发都要经历以上3个阶段12环节,理论图上看是一条完整的流水线,但是如何保证流程顺畅进行?如何使项目成员工作效率最大化?这十分考验产品经理/项目经理的版本规划能力。当然项目成员间的默契和沟通也很重要。
从笔者实践经验来看,要保证流水线顺畅,理想情况产品需求文档要领先前端开发2个版本,设计领先前端开发1个版本,后端开发领先前端开发半个版本。即在当前项目启动同时,产品经理已经在调研讨论下下版本需求;设计开始搞下版本的稿子;当前项目进行到一大半时,后端已经完成当前版本的需求,并开始准备下版本的需求预研。
参考:
http://mt.sohu.com/20160321/n441365181.shtml