公司成立不到几个月,团队一共3个人,决定做一个手机上的自动化测试软件,目标是一次编写在三个手机平台上运行,使用自然语言编写的自动化测试程序,产品介绍视频:iQA介绍。
这是我们两个月的研发成果,采用敏捷的方式研发:
1.首先团队经过几次讨论,对产品应该为客户解决的问题有一个大概的了解。讨论中,由于自己也不知道最后产品应该做成什么样子,只是知道要跨平台,要使用自然语言编程,而且当时也已经碰到客户明确有这样的需求。为了避免无休无止的讨论,大家一致决定就先做知道的功能。
2.明确第一阶段的目标之后,我们开了半天的会议,头脑风暴为了达到跨平台,自然语言编写的自动化测试程序,应该要做的事项,这时不预估任务的时间。
3.所有的任务列完后(即头脑风暴已经无法再想到新任务了,肯定有遗漏,没关系,毕竟还不懂要做的事情),我们制定第一阶段的交付日期(dead line)- 4月15号。
4.接下来对所有事项预估时间,很多任务的时间不好评估,因为团队成员对iphone、Windows Phone以及Android开发都不熟,甚至两个成员只用过Windows,主要都是.NET开发背景,Mac、Linux、Object C、Java开发都不熟,甚至是根本没有接触过。因此我们只对理解的任务预估时间,每个工作任务细分到1小时、3小时、5小时和8小时,说白了就是1小时、一个上午、一个下午和一天内完成。这是因为:“如果对任务理解透彻,必然可以细分;如果不能细分,则说明尚不完全理解任务。商业趋利避害,不懂的事情为何要干?”
5.每天早上10点开一个小会,过一下昨天完成的任务,今天要做的任务以及昨天碰到的问题,一般来说,只要一个任务在研发时碰到障碍,我们就将其砍掉,原则还是只做懂得事情。每天还会再大概预估一下任务的工作时间,因为随着研发的逐步推进,团队又理解了一些新的东西。
6.每天坚持开会的另一个原因就是督促团队成员每天都有进度,避免团队成员因为钻牛角尖发散对一个问题研究太深入。
7.有的时候,团队成员在研发过程中,对于三个平台通用的东西会有些争论,如果不能达成共识,搁置争议,当前先找一个临时的解决方案,争议放到下一个阶段再说。因为有争议,就说明团队尚未理解争议的内容。
8.阶段研发完成后,作一次总结会议(或者叫postmortem meeting),议程只有三个:
a)在上次项目里,我们哪些地方做得比较好?
b)哪些地方做得不好,做得不好如何改进?
c)接下来我们应该做什么?
团队成员轮流发言,主持人做会议记录。
总的来说,效果还可以,按时交付,实现了最初制定的目标。但在总结会议上,发现下面几个问题:
1.团队对整个产品的最终目标不明确,随着产品研发第一阶段的完成,现在视野更开阔了,可以列出更多的功能了。
2.在清明节的时候,原定是三个人去凤凰开发的,由于一个成员中途有点突发事件,不能去。而我又因为别的潜在业务机会提前去了武汉,原计划南下长沙-在张家界和女友会合-凤凰与团队成员会合的,团队初建,需要磨合,不能分布开发。但我女友又提前跟公司请了几天事假准备这次旅游,不好中途折回。在旅游间隙,我使用笔记本、iphone以及团队放在盛大云服务器的分布式源码服务器(mecurial)完成原定的研发任务,通过QQ语音进行三方会议通话。即使是这样,沟通效果还是差了很多,因此女友假期结束就急急赶回上海。
这次研发过程得到的经验嘛:
1.团队需要有一个放在公网的源码服务器,建议mecurial,svn无法做分布式开发,签入和合并太痛苦,GIT学习曲线有点陡。
2.团队成员每个人都需要有一个无线上网的手段,团队成员每个人都配备了一个无线上网卡,以应付突发的分布式开发合作需求。
3.使用TDD的方式开发,但不是每个类都是先写测试用例再实现类,对于一些设计起来比较复杂的类才会用TDD,在调试过程中,对于发现的BUG,就加上一个自动化的测试用例以便做回归测试。
不足:
1.Code review机制没有做好,一方面是因为团队有些时间不在一起,没有钱买webex、LiveMeeting这样的多人在线会议系统的服务。另一方面是没有一个好的工具,因为大家都是随心所欲的签入,推送,推送的时候没有邮件通知(没有时间设置这个功能,Mecurial的shelve changes这个功能还不大会用)。不过在研发过程中,有机会还是会用QQ的远程帮助来做两个人之间的code review。
2.当然还有很多不足,因为跟本文的经验分享没有关系,就不写了。
分享到:
相关推荐
视频直播社交产品原型源文件,主播产品客户端交互详细原型,直播产品原型,社交产品原型,主播产品原型,播客产品原型,安卓客户端产品原型,IOS产品原型,小程序产品原型 社交,直播,语音产品原型 视频直播社交...
原型开发方法和敏捷开发方法的简介 主要包括以下内容: 1、原型开发方法 2、它的优缺点 3、敏捷开发方法 4、它的优缺点
Graham Technologies(GT)| 敏捷开发服务(ADS)原型 描述: ADS项目展示了我们遵循美国数字服务手册的敏捷能力。 本文档包含有关我们的方法,托管环境,体系结构单元测试和持续集成以及安装说明的信息。 方法: ...
项目管理内部培训资料,包含项目管理的五大过程、十大知识领域以及敏捷开发模型
大学生 产品经理 项目实训 某理财产品原型图(线框图) 开发工具Axure RP.zip
绩效考核管理-产品原型设计.rp
产品经理必备的原型图案例大全,涵盖多个大型项目的原型图案例,实用性很强,让人人都可以成为专业的产品经理,不可过错的经验分享。
此资源为广场会员产品原型,其中包括财务管理系统,会员收银管理系统,会员运维管理系统,
Axure RP Pro是专为Rapid Prototype Design而生,它可以辅助产品经理快速设计完整的产品原型,并结合批注、说明以及流程图、框架图等元素将产品完整地表述给各方面设计人员,如UI、UE等等,并在讨论中不断完善。
原型开发方法的放弃了结构化开发的某些繁琐细节,并继承了其合理的内核,是对结构化开发方法的发展和补充,也可融入当今流行的敏捷迭代开发。
一份出色的原型设计,不仅能促进前期的深入讨论,更能让美工和开发人员更直观地理解产品特性,进而优化工作流程,减少不必要的时间消耗,提升整体工作效率。接下来,我想就产品经理与原型设计之间的关系进行简要的...
随后,您将了解到快速原型模型、螺旋模型以及近年来备受推崇的敏捷开发模型,包括Scrum框架的详细解读。这些模型各具特色,适应不同的项目需求,让您在软件开发过程中有更多选择。 进入软件测试模型的章节,您将...
原型法开发过程框架原型法开发过程框架原型法开发过程框架原型法开发过程框架
产品原型分享给大家,希望对0-2岁的产品经理、交互设计师有所帮助 首先是用户使用的难度,比如搜索,产品在刚开始上线的时候是不合适上线的,搜索是高级功能,用户很熟悉了以后才知道搜什么,前期是没有什么用的;...
产品原型实例,手机APP原型设计,旅行小蜜APP,参考使用
产品原型如何画,产品需求文档怎么写,需要包含哪些内容
产品需求文档与原型 产品原型设计前的必备功课,各细节
该文本是充值通用产品原型! 详细记录了整个充值流程,以及反馈页面!
【Axure产品原型】16种APP原型手机壳下载.rp