适合APP的开发模式——敏捷开发

原创 2016年08月29日 15:22:41

最适合App的开发模式——敏捷开发

 

传统的软件开发模式需要经历问题评估、计划解决方案、设计系统架构、开发代码、测试、部署和使用系统、维护解决方案等过程,如下图




采用传统软件开发模式的最大问题是开发周期过长,迭代速度慢。移动互联网行业发展速度快,需求不断变化,产品更新迭代的频率高,基于移动互联网的以上特点,就引入了Scrum这个敏捷开发框架。

 

Scrum简介:Scrum是一个敏捷开发框架,是一个增量的,迭代的开发过程。在这个框架中,整个开发周期包括若干个小的迭代周期,每个小的迭代周期成为一个Sprint,每个Sprint的周期建议为2~4周。在Scrum中,使用产品Backlog来管理产品或项目的需求,产品Backlog是一个按照商业价值排序的需求列表。在每个迭代过程中开发团队从产品Backlog挑选最有价值的需求进行开发。Sprint中挑选的需求经过Sprint会议上的分析、讨论和估算得到一个Sprint的任务列表,称为Sprint Backlog

 

Scrum的流程如下图↓

 

Sprint 计划会议

Sprint计划会议前,产品经理所要实现的产品需求(产品Backlog)以用户故事(即从用户的角度去描述用户所需的功能)的形式确定下来,并画出原型图,UI根据原型图完成设计稿。产品经理同时确定各个产品需求的优先级。

Sprint计划会议期间(一般为2天),开发团队的成员不应该做任何开发工作,要将全部精力放在把产品需求分解成一个个开发任务,并估算开发时间。

估算开发时间需要注意以下几点。

1、对于所需要使用的新技术,要估算学习和调研的时间。

2、根据统计,每个程序员每天的有效工作时间是5个 小时左右,其他时间都被沟通、喝水、休息、上洗手间等琐事占据,如果某个任务估算超过5个小时,那就代表了这个任务完成需要超过一天的时间。

3、开发人员对于开发任务的估算尽可能精细,一般来说,每个任务的估算时间不应该超过5个小时,如果超过5个小时,就应该把这个任务再细分为多个更小的任务。只要尽可能精细地估算任务,总体估算时间是大概精确的,因为有的任务估算的时间比实际完成的多,有的比实际完成的少。

最后根据产品经理的优先级和开发人员的估算时间,确定这个迭代周期最终的开发任务和其对应的优先级,即完成Sprint Backlog

 

日常开发

 

App开发中,App通过APIApp后台交互,后台人员可以先设计好相关的API并让API返回假数据。

开发过程中遇到任何问题,必须及时找相关人员沟通。为了保证沟通的效果,可以采用下面的方法。

1、如果不是非常紧急的问题,可以等相关人员休息的时候再沟通。

2、解决一个问题,先梳理好情绪,沟通的时候对事不对人。

Scrum中有个关键的职位“Scrum master”,Scrum master一般有技术总监担任,团队和外部的沟通必须统一通过Scrum masterScrum master的最大作用是屏蔽外部对开发团队的影响,使开发的进度和开发的效率得到保证。

在开发的过程中需要注意:一个Sprint Backlog中,需求不能变更,UI确定后原则上只能做小修改。产品有新需求,下一个Sprint Backlog再考虑。

 

每日例会

 

每日例会前,团队成员应该整理各自的任务列表,包括:

1、昨天完成了哪些任务,每个任务使用了多少时间,没完成的任务估算还要多少时间。

2、剩余的开发时间

例会中产品经理和开发团队的成员都要参加,如果可以的话,让运营人员和市场人员也参与进来,这样可以使团队每个成员都对公司的产品有个整体的了解。

每个人在例会上报告一下3方面的事情。

1、昨天做了哪些工作?

2、今天准备做哪些工作?

3、有什么工作需要其他同事配合?

注意避免在会议上讨论问题,如果真的需要讨论,请在会议后和同事讨论,不要浪费整个团队的时间。

 

测试和修复BUG

 

产品开发完成就进入测试和修复BUG的阶段。

测试人员把测试得到的问题提交到BUG管理软件,每个BUG应该包含3个部分。

1、问题描述和重新步骤

2、测试人员

3、负责解决这个问题的人员,如果测试人员不知道具体负责人,把这个问题提交给技术总监,由技术总监指定解决问题的研发人员。

 

评审会议

 

在测试和修复BUG完成后全体人员开评审会议。相关开发人员在评审会议中向全体人员演示APP的功能。

 

回顾会议

 

研发完成后开回顾会议,每个成员都在会议中提两点。

1、这轮迭代过程中做得好的地方。

2、这轮迭代过程中做得不好的地方。

这个过程走两轮,即每个成员都要提两点做得好和不好的地方。注意当一个成员提出自己的意见时,其他成员不做任何的评论。

 

及时反馈

 

可以通过建立相关QQ群收集意见,在APP中可以增加一个意见反馈的功能。

 

总结

 

敏捷开发不是万能的,敏捷开发更适用于需求多变,开发周期端的项目。


版权声明:本文为博主原创文章,未经博主允许不得转载。

android 敏捷开发系列(一)——《啥是敏捷开发》

原创作品,转载请注明出处 说起敏捷开发,大家或多或少会有些印象。而在android上的敏捷开发可能还并未普及。 博主将与大家共同讨论一起交流android上的敏捷开发、框架搭建等知识。 本博将通过 ...
  • baodinglaolang
  • baodinglaolang
  • 2013年07月27日 17:24
  • 6008

关于敏捷开发的26个心得

关于敏捷开发的26个心得 我收集各式各样的至理名言。最近我一直在研究敏捷软件开发;有收获吗?下面就是能够指导敏捷软件开发团队的26条核心原则。 用例一完全能够运行后再开发用例二...
  • u011225629
  • u011225629
  • 2015年08月12日 07:39
  • 1532

android 敏捷开发系列(二)——《敏捷开发架构图》

android 敏捷开发系列(二)——《敏捷开发架构图》 首先为大家解释里面的几个概念 Frame 整个项目的框架、组织者。里面并没有实际的代码,只是通过配置文件决定了项目需要哪几个模块 Model...
  • baodinglaolang
  • baodinglaolang
  • 2013年08月18日 12:01
  • 5056

瀑布开发模式和敏捷开发模式的区别和思考

瀑布开发模式: 瀑布开发模式有以下显著的特点: 1.严格把软件项目的开发分隔成各个开发阶段:需求分析,要件定义,基本设计,详细设计,编码,单体测试,结合测试,系统测试等。 使用里程碑的方式,...
  • vessalasd1
  • vessalasd1
  • 2017年04月12日 14:18
  • 5108

敏捷开发是一个什么样的开发模式

在信息技术高速发展的今天,有很多的开发任何要求开发人员增量交付,迭代式开发,能够持续集成。很显然传统的瀑布开发模式已经不能满足需要了,于是,敏捷开发这种模式就出现了。   接触过敏捷开发的朋...
  • Aweijun360
  • Aweijun360
  • 2016年08月29日 07:26
  • 2739

从瀑布开发模式到敏捷开发模式(scrum)的思路转换

部门推广scrum敏捷开发已经小半年了、团队也从不适应、慢慢地开始变的习惯。之前领导安排我作为我们组的scrum master、因为从来没有做过leader、然后直接之前也没有接触过scrum、更是非...
  • njafei
  • njafei
  • 2016年02月26日 18:12
  • 2297

敏捷开发 vs 传统模式

说起敏捷开发,并不是因为敏捷而敏捷。这几年的敏捷开发已经被很多敏捷咨询服务商神话了,这个东西并不是神器,实施了就可以解决所有软件公司的问题,而是要结合自己公司的特点和问题摸索出适合自己的一套模式。 ...
  • swebin
  • swebin
  • 2015年05月28日 22:40
  • 8114

敏捷开发流程总结

Agile——敏捷开发,作为CMM神话崩溃后被引入的一套新的软件开发模式,这几年来被广泛引起关注,并被寄予厚望。敏捷开发在其他业界的应用是否理想不得而知,但以下总结了我所在公司的敏捷开发试验,希望可以...
  • alvanchen
  • alvanchen
  • 2010年07月20日 15:36
  • 101192

什么是敏捷开发和瀑布开发

一:敏捷式开发(极限编程思想的体现) 敏捷开发(AD:Agile Development )以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切...
  • huadian417
  • huadian417
  • 2017年01月12日 17:36
  • 2346

Scrum敏捷开发模式详解[张振华.Jack]

  • 2015年09月22日 16:44
  • 2.04MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:适合APP的开发模式——敏捷开发
举报原因:
原因补充:

(最多只允许输入30个字)