像微信,支付宝这样的超大型项目,如何保证每个版本稳定。 团队的是怎样分工的呢? 个人觉得这时候已经不是每个人分配需求的问题。 而是要有一整套的流程,并且相应的有完整的自动化工具去检测每个阶段的输出。
移动app大型项目的开发流程是怎样的,如何推进版本迭代?
技术leader角度
这个问题关注很久了,今天可以来回答下了。移动app和之前我们所说的软件开发,一个突出的问题就是同样的需求需要在多个平台上面完成。通常来讲是ios + andriod,有的做的终端再多一点,还会有pc + windows phone。所以我觉得移动应用的开发,多平台需求管理和研发管理是最大的问题。
我们开发的禅道项目管理软件,刚刚发布了7.4版本。这个版本最大的改动就是增加了多平台,多分支的管理。比如我们做一个移动app,可以建立一个产品,为这个产品选择是多平台类型的。然后维护这个产品的平台列表,比如andriod, ios。后面维护需求的时候就可以选择分支了。有的需求是适用于所有的平台分支的。有的是只适用于ios。在建立计划,项目,提交bug,创建发布的时候都可以选择相应的分支。一个适用于多个平台的需求只有每个平台都发布完毕才算是完毕。
复杂的,多人团队协作的软件,需要稳定少出错。开发环节,不同的模块或修改,在不同的分支进行。各自分支开发测试完成后,合进主干进行测试。都测试通过后,提交源码,自动构建系统进行构建,然后再跑测试脚本。测试的主干和源码的主干,轻易不提交,以保证稳定。
PM角度
非一线互联网公司,O2O项目的产品经理,试着回答一下你的问题,有不对还请随便喷。
大型app,不知道这个所谓的大型的定义是什么,是app本身的体量很大,还是说用户群很大呢,虽然我所在的公司的用户群不算大,但是我觉得从逻辑上来说我们的产品研发部也算是麻雀虽小五脏具全了。
首先要说明一个基础,那就是开发的流程和管理师围绕着产品经理(也就是我)来展开的。脱离产品经理而仅仅去谈开发流程是不现实的。
开发时一个广义的概念。我所理解的开发分为前端和后台。那就从一次版本迭代来说起吧。
推进版本迭代的动力是需求,是对现有产品的改进和优化。
1.需求的发起时由产品经理来负责的,他们会从运营,市场,客服,地推,CEO等多方面收到很多需求,这时候需要产品经理对需求进行评估,确定在下一个版本急需上线的需求,完成相关的准备工作。这些工作包括但不限于需求整理,原型绘制和PRD撰写,设计排期,开发排期。
2.面对众多的开发,产品经理需要将需求分类。苹果前端,安卓前端,微信公众号前端,数据库接口后台,运营后台等。
3.开发的流程是一般会接到需求文档,前端会接到相应的产品需求文档,运营后台会接到运营后台的需求文档,数据库接口后台可能会接到问题整理文档,需要去排查在上一个版本中出现的一些问题,例如支付接口失效,第三方登录接口实效等问题。
4.接到需求文档之后,开发们就会按照需求文档安排的排期开始写代码了,这一阶段,开发和产品经理的沟通就显得尤为重要了。
5.代码完成以后,就会走到测试那里。不同的测试会对接不同的开发内容,测试通过测试工具和手动等方法对代码的稳定性等问题进行测试反馈给开发修改,如此反复,直到产品达到预期的目标为止。
以上谈到的是和产品经理直接对接的一些开发。那还有一部分开发是不需要和产品经理对接的,他们更多的是做底层代码的优化,增强数据库的稳定性等工作,这时候一般是出了问题就会去找相应的人来解决。
网友评论