5、敏捷方法的主要内容
四个核心价值观:沟通、简单、反馈、勇气。
简单:只要满足当前功能需求,不做假象设计。
勇气:用于抉择,用于实践,用于重构。
12条实践规则:简单设计、测试驱动、代码重构、结对编程、继续集成、现场客户、开发版本小型化、系统隐喻、代码集体所有制、规划策略、规范代码、40小时工作机制。
6、主要敏捷方法简介
极限编程
水晶系列方法
开放式源码,任何人发现Bug都可以将补丁发给维护者。
SCRUM
Coad的功用驱动开发方法:短时迭代阶段 和 可见可用的功能,一个迭代周期一般为两周,编程人员分为 类程序员、首席程序员。
ASD方法,猜测、合作、学习。
4.1.4 RUP
RUP把软件开发生命周期划分为多个循环(cycle),每个cycle生成产品的一个新版本,每个cycle依次由4个连续阶段(phase)组成:
初始:定义最终产品视图和业务模型,并确定系统范围。
细化:制定工作计划及资源要求。
构造。
移交。
迭代并不是重复地做相同的事,而是针对不同用例细化和实现,每一个迭代都是一个完整的开发过程。
每个阶段结束前有一个里程碑(milestone)评估该阶段的工作。如果未能通过该里程碑的评估,则决策者应该做出决定,是取消该项目还是继续做该阶段的工作。
RUP中的核心概念
角色(Role),who的问题,某个人或一个小组的行为与职责。
活动(Activity),how的问题,是一个有明确目的的独立工作单元。
制品(Artifact),what的问题,是活动生成、创建、修改 第一段信息。
工作流(Workflow),when的问题,每个工作流产生一些有价值的产品,并显示了角色之间的关系。
RUP的特点
RUP是用例驱动的、以体系结构为中心的、迭代和增量的软件开发过程。
用例驱动:需求分析、设计、实现、测试,都是用例驱动的。
以体系结构为中心:刻画了系统的整体设计,去掉了细节部分,突出了系统的重要特征。
不依赖于具体语言,是软件设计过程的一个层次。
体系结构层次的设计问题包括:总体组织和全局控制、通讯协议、同步、数据存取、给设计元素分配特定功能、设计元素的组织、物理分布、系统的伸缩性、性能 等。
一个系统不可能在所有特性上都达到最优,对于一个系统,不同人员所关心的内容也是不一样的,对于不同类型的人员,只需提供这类人员关心的视图即可。
分析和测试人员关心用例图,最终用户关心逻辑视图,程序员关心实现视图,系统工程师关心部署视图。
RUB强调采用迭代和增量的方法来开发软件,每次迭代中,之考虑系统的一部分需求,每次增加一些新的功能实现。
好处:
早期就可以对关键的、影响大的风险进行处理。
可以提出一个软件体系结构来指导开发。
处理不可避免的需求变更。
可以较早地得到一个可运行的系统,鼓舞开发团队的士气,增强项目成功的信心。
更有效工作的开发过程。
没有一个项目会使用RUP中所有的东西,用用RUP时要裁剪,裁剪步骤:
1.确定本项目 需要哪些工作流。
2.确定每个工作流要产出哪些制品。
3.确定四个阶段之间(初始阶段、细化阶段、构造阶段、移交阶段)如何演进。
4.确定每个阶段内迭代计划。
5.规划工作流内部结构。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |