Jira敏捷开发管理入门课程(二)
软件开发
浏览:1186 次

花了这么长时间,我认为不能再拖延了。就在2018年第一季度末,我对第一季度的敏捷开发实践进行了系统回顾,并总结了一些经验和教训。让我们继续我上次提到的内容。这一次,我想介绍敏捷开发的基本概念。
毕竟,Jira只是敏捷开发的管理工具。如果你想正确使用它,你需要有基本的理论知识。
瀑布流模型
在介绍敏捷开发之前,让我们先介绍一下引入敏捷开发之前的开发方法:瀑布模型。
瀑布模型将软件开发和交付分为几个独立的阶段:
需求收集
设计
密码
测验
这些步骤中的每一个只能在前一步完成后执行。它必须从上到下进行,因此被命名为“瀑布”。瀑布模型的概念有点“人征服自然”,其目的是在开发之前确定所有细节——经验丰富的开发人员知道这是不可能的。在建筑业等传统行业,由于可交付成果的规模和变更成本,我们不得不采用瀑布法。毕竟,我们只能在房子建成后简单地改变格局,其他改变只能推到重建上。对于软件开发,尤其是互联网软件开发,更改交付的软件并不容易。

敏捷开发
2001年,十几位强大的开发人员聚集在一起。经过大量沟通,他们发起了敏捷运动,并撰写了一份宣言——敏捷宣言。现在这个敏捷宣言托管在GitHub页面上。感兴趣的人可以看看:
图的底部是当时的十几名开发人员。搜索会发现他们在软件开发领域写了很多教科书级别的书目。
敏捷宣言的主要内容包括:
个人和互动高于流程和工具
工作软件优于详细文档
客户合作高于合同谈判
响应变化而不是遵循计划
也就是说尽管正确的项目有其价值,
我们更关注左侧项目的价值。

敏捷开发还有四个功能:需求、设计、编码和测试。然而,敏捷开发不是一个小瀑布。这四项职能紧密结合、相互融合、相互依存。瀑布不存在“功能筒仓”问题。文档、开发和测试通常是同步的。基于敏捷开发的概念,导出了精益开发、极限编程、测试驱动开发(TDD)等具体方法。Jira支持的Scrum就是其中之一。
Scrum在英语中的意思是在足球比赛中争夺球。据我所知,在为数不多的几场足球比赛中,西班牙队在2012年欧洲杯决赛中4-0血洗意大利队的战术也意味着大量的scrum,这意味着全队都在向前小步快速传球。
Scrum角色
Scrum团队中有三个角色:
1.负责产品的产品负责人定义需求列表、优先级和接受标准,并代表业务需求方,即产品经理。然而,产品经理往往有更多的职责,如项目管理、交互设计、用户研究等。
2.敏捷教练Scrum Master确保团队以Scrum方式运行良好。在没有全职员工的情况下,通常由研发经理担任教练是合适的。如果产品经理负责,他/她需要对软件开发技术有一定的了解,能够清楚地将产品所有者和scrum主管的职责分开,并在正确的时间做正确的事情,因为这两个角色之间的关系基本上是对立的。
3.团队成员,真正的编码和测试人员,估计故事和任务工作量,并交付最终可用的产品。
短跑周期
Sprint周期是Scrum执行的基本节奏。每个Sprint周期都是一个固定的时间框。在此时间框中,将确定要完成的故事和任务(即产品需求)。当周期结束时,这个时间框将结束,并准备开始下一个时间框,无论需求是否完成。在这样的周期中,我们可以不断交付有价值的产品,并通过快节奏的迭代冲刺不断修改产品。
在Sprint周期中,有几个主要会议:
