下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 acp敏捷开发中进度与文档的平衡 最近和同事讨论敏捷开发如何在进度和文档之间找到平衡?居然发现大家理解各异。什么是敏捷开发?敏捷开发是否意味着省略很多过程文档?具体如何实践?我们一起分享下“知乎”中大家的心得。一、什么是敏捷和敏捷开发首先,敏捷开发是一种过程控制论,通俗的说,就是一种做事情的方法。1. 它适用于软件,因为软件是软的,可以改。要是硬件,改起来就没那么方便了;3. 它适用于竞争激烈的市场,这样的情况下,赶在竞争对手前交付一个不完美但至少能用的产品非常重要;4. 它适用于快速变化的市场,你在埋头造一辆汽车的时候,客户已经想开飞机满天飞了,这就需要你能一步步的把汽车改成飞机,还能按时
2、交付;5. 它适用于在一个地方办公的小团队,一般10个人以内。这样能使敏捷中主要的沟通方式“face to face” 是可行的;其次,敏捷开发是一套工具集,里面有形形色色的工具,你可以不搞敏捷,但可以用那么一两个来提高工作效率。比如:1. 站会:三个问题,简洁有效的小团队沟通方式;2. 看板:直观反映工作进度,反映流程遵守情况,反映流程缺陷;3. 演示,计划,反思会:适合于小团队的协作和优化反馈方式;4. 用户故事:站在用户的角度讲需求;5. 持续集成:随时高质量交付的基础,有利于应对变化剧烈的市场;再其次,敏捷开发是一种企业管理方式。比如:1. 一线员工可以同时是架构师,scrum mas
3、t*r,开发工程师,测试工程师,发挥了他的主观能动性,有利于创新和效率;2. 敏捷不专注于敏捷团队中个人的绩效考核,而更多的侧重于整个团队的绩效,更好的避免了kpi驱动模式;二、为什么需要敏捷开发用两个词吧,一个是拥抱变化,一个是进度可视。1.任何软件类系统或项目,即使你前期花在需求上的时间足够长,你也很难在需求阶段真正的分析和挖掘出所有的需求。有些需求注定会在设计实现或用户使用过程中才逐渐出现。要承认软件开发中存在这种不确定性。而瀑布模型将这种识别变化延迟到最好的测试或用户使用阶段才发现,极大的增加了返工或变更成本。敏捷思想里面通过短周期迭代,尽可能早的交付可用的迭代版本来拥抱和适应变化。2
4、.任何一个软件项目,需求或设计做完我们并不清楚进度是否真正完成了60%或者更多,任何不是经过测试通过的功能我们都很难把握真正的完成进度情况。因此在敏捷里面换了一种思路,如讲这个项目拆分为100个粒度差不多的功能点,如果有60个功能点全部完成并通过验证和测试,我们就比较有把握说整体进度完成了60%。这种可视化的评估进度模式在瀑布里面较难以做到。三、敏捷开发是否意味不用写文档如果理解为敏捷开发后不用写文档是对敏捷开发很大的误解。敏捷开发的重点是轻文档,而不是不要文档。而这种轻我原来也讲过,对于全新的系统开发最好是在有总体方案或架构后再开始轻。敏捷开发是重沟通,轻文档。文档要适度,既不能成为项目团队
5、的累赘,也要出现争议的时候有具可查。先说需求文档,分为两部分,一方面是框架性的需求文档,对功能、交互方式、出错或边界情况的表现进行总体描述,这种文档不需要过于细致,因为产品经理组织语言写文档,开发读文档,理解文档都要消耗大量时间,最好是以总体概括的方式来做,开发在做需求设计时候与产品人员进行频繁密切沟通,最终一起形成完整文档,这中间开发、测试人员对于文档严谨性是有很大贡献,不必要求产品经理全部把边界细节都写出来。另外一方面,作为良好的协作习惯,任何沟通产生的结论都应该存档!邮件是一种比较好的形式。每次会议结束,问一句结论呢?谁出纪要?不是说文档不重要,而是通过见面沟通,把需要文档描述很细节的内
6、容达成共识。概要设计详细设计,视需求逻辑难易,规模大小而定。逻辑复杂的项目,概要设计作为帮助开发理解需求的一种手段。大型项目,详细设计架构设计不可避免。一句话规模的需求,随便做做就算了。这其中都要不断的当面沟通!前提是项目成员不能太死板,也有一定磨合,并能力较强。四、敏捷开发如何实践想一想我们做的项目有多少部分是做出来永远不会有人用的,交付出来到客户那儿才发现根本不是客户想要的,之后返工也好,客户重启项目也罢。只要付出了努力,却没能体现出相应的价值,那就是浪费。敏捷宣言的那拨人我相信就是想着如何才能尽可能消除浪费,在凑在一起吃吃喝喝滑滑雪之后,总结出来了4条消除浪费的方法:可工作的软件完备的文
7、档客户协作合同谈判个体与互动流程和工具响应变化遵循计划毕竟宣言是需要落地和实施的,说得挺热闹的,但我们该如何响应变化,如何客户协作,如何生产可工作的软件,都是问题。所以在统一了思想之后,接下来的实践各有不同,scrum、精益就应运而生,我们采用迭代的方式响应变化和增进客户协作,我们用持续交付持续生产可工作的软件,我们用站会、看板来促进个体与互动。上面说的东西都是改变生产关系层面的,生产力跟不上的话再好的生产关系都也是桎梏。比如我们的开发流程就是很长,大家代码质量不高,所以无法做到每个迭代结束后都能有所交付,我们代码结构不好,所以我们没法做到快速响应变化。为了提高生产力,所以又应运而生了一些技术工程实践:测试驱动、领域驱动、结对编程、持续集成、持续交付、重构等等。以上每一点都大得可以写一本书。所以说,敏捷开
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合同安全考核上限
- 工会代理记账合同
- 提现合同模板
- 2025年昭通货运资格证模拟考试
- 2025年青岛货运考试题库
- 2025年云南货运从业资格证试题和答案
- 2025年漯河货运从业资格证考试试题及答案
- 2025年甘肃道路货运驾驶员从业资格证考试
- 山西省旅游景点租赁合同
- 冷藏堆场租赁合同
- 商务ktv项目计划书
- 《微机系统与汇编语言》-课程设计-实时时钟的设计与实现
- 智能电网建设与发展趋势
- 门诊部预约诊疗制度
- 收发管理工作流程
- 幼儿园中班数学活动《数数有几个》
- 基于PLC的变频恒压供水控制系统设计
- 突发性耳聋的护理查房
- 物品移交接收单(模板)
- 小米科技公司的供应链管理策略分析(全面完整版)
- 2023-2024学年广东省中山一中物理高二上期末统考试题含解析
评论
0/150
提交评论