过去一个月我都在推进团队项目流程上的改变:把APP界面和逻辑分开开发,让两个团队去做自己擅长的事。
为什么要分离界面和逻辑?传统的iOS开发流程是这样的:
从工程质量和进度上讲,有这样几个问题:
所以我希望推进的流程是从web开发中借鉴经验,让我们原本擅长用户体验的前端同学来进行APP界面开发,整个流程大概是这样:
关于API的制定和沟通细节,在后面的文章会单独讲。
理想状态下,这个方案能解决上面的所有问题。
但是在大公司推进新的流程往往不会很容易,仔细分析下,会有这样几个风险点:
其实信任是相对的,如果没有经验和产出,空口无凭让人信任是很难的。好在我曾经有iOS APP上架的经验,团队里还有一位Android开发经验的同学,所以就尝试在一个小项目中开始接入。从产品和设计入手,他们是最希望改进产品质量的人。然后拉开发leader求着接入代码权限,算是取得了小小的一步进展。
要在任何流程中做出改变,推进自己的理念,自己一定要让所有人都觉得比以前更舒服。所以第一点是要做超出自己责任外的事情,对开发而言,把界面的API第一时间给到他,跟他讨论,方便他设置信息。对PM而言,时刻主动反馈进度,在项目群里在互动沟通。第二点是对自己不熟悉的项目,反而要更快地输出成果,付出的代价就是自己要加倍工作。
比如自己评估一周可以完成的项目,就跟PM说预留一周的时间(甚至更短)。但是自己实际上工作可能不止是5天8小时了,可能是5天14小时。刚开始那段时间我基本每天都是9点以后离开。
说句比较鸡汤的话,要想人前显贵,必须人后受罪,还是很有道理的。
最终这个项目比较成功,跟我接口的开发对合作方式很满意,时间和质量上也让PM很满意,设计师更加高兴,所以一步一步,我终于能把自己的理念在更多、更大的项目中铺开,现在唯一的问题就是我们没有足够多的iOS和Android界面开发同学。
那就发个广告,腾讯ISUX招聘iOS和Android的界面开发,希望你:
所以本篇文章算是一个预告,自己在过去的界面开发中积累了一些经验,所以后面会分几篇文章沉淀一下。大部分内容都是自己已经整理的一些资料,然后进行一些编排。我个人主要是负责iOS端的代码,所以经验也只适用于iOS。