当前位置:文档之家› 软件设计师培训-软件新技术

软件设计师培训-软件新技术

极限编程
极限编程XP, eXtreme Programming 极限编程是一种高度动态的过程,它通过非常短的
迭代周期来应对需求的变化。它包括四个基本活动: 编码、测试、聆听与反馈,承认需求具有不断变化 的特性,通过最小化设计、重构、用户参与及反馈 等途径,应对需求的变化,减少需求变化对系统开 发过程的影响,提高系统的开发效率,缩短系统的 开发周期。 XP核心的四大价值观:沟通、简单、反馈、勇气。
软件设计师培训——第九讲
提纲
软件新技术 软件新技术相关试题件过程改进
卡内基梅隆大学软件工程研究所CMU/SEI提出的 软件过程能力成熟度模型Capacity Maturity Model SEI 给 CMM 下的定义是:对于软件组织在定义,
CMM 为软件企业的过程能力提供了一个阶梯式的进 化框架,它采用这种方式来安排它的组成部分,目 的是适应不同机构使用的需要。阶梯共有五级,从 第 1 级(初始级),第 2 级(可重复级),第 3 级(已定义级),第 4 级(已管理级)到第 5 级 (优化级)。
软件新技术(续)
那些与判定成熟度等级有关的组成部分处于 模型的顶层。它们是:成熟度等级 ( Maturity Levels )、关键过程域( Key Process Area, KPA )与各个关键过程域的 目标( Goals )。这个模型细节的组成部分 ――关键实践( Key Practices, KP )、从属 活动以及基础构造( Infrastructure or Activities )都是可参考的。这些可参考的部 分指导 CMM 的使用者运用他们的专业判断 力来做出应用上的决定。
勇气(Courage),要学会坚持,坚持选择的软 件设计和实现方法,相信它们能带来项目的成功
软件新技术(续)
极限编程思想关注五个基本原则:
提供快速反馈(Provide rapid feedback) 简单假设(Assume simplicity) 增量式变化(Incremental changes) 拥抱变化(Embrace changes) 优质的工作(Quality work)。
已定义级――用于管理的和工程的软件过程均已文档化、 标准化,并形成了整修软件组织的标准软件过程。全部项 目均采用与实际情况相吻合的、适当修改后的标准软件过 程来进行操作。
软件新技术(续)
已管理级――软件过程和产品质量有详细的度量标准。软 件过程和产品质量得到了有效的认识和控制。
优化级――通过对来自过程、新概念和新技术等方面的各 种有用信息的有效分析,能够不断地、持续性地对过程进 行改进。
小组软件过程(Team Software Process, TSP), 讲述了如何创建高效且具有自我管理能力的项目小 组,开发人员如何成为合格的项目组成员,管理人 员如何对小组提供指导和支持,如何保持良好的工 程环境使项目组能够充分发挥自己的水平等软件工 程管理问题。
软件新技术(续)
软件新技术(续)
软件新技术(续)
沟通(Communication),提倡通过最简洁的文 档,最直接的面对面沟通获得对任务环境的理解
简洁(Simplicity),设计和实现中总是寻找可 能满足要求的最简洁的实现方法
反馈(Feedback),认为反馈比前馈 (Feedforward)更重要,通过反馈获取系统设 计和实现等诸多方面存在的问题
CMM 的分级结构和其主要特征
初始级――软件过程的特点是无秩序的,有时甚至是混乱 的。软件过程定义几乎处于无章法可循的状态,软件产品 所取得的成功往往依赖极个别人的努力和机遇。
可重复级――已建立了基本的项目管理流程,可用于对成 本、进度和功能特性进行跟踪。对类似的应用项目,有章 可循并能重复以往所取得的成功。
软件新技术相关试题
美国卡内基—梅隆大学SEI提出的CMM模型将 软件过程的成熟度分为5个等级,以下选项中, 属于可管理级的特征是__(36)__。C (36)A.工作无序,项目进行过程中经常放弃 当初的计划 B.建立了项目级的管理制度 C.建立了企业级的管理制度 D.软件过程中活动的生产率和质量是可 度量的
软件新技术(续)
软件新技术(续)
软件新技术(续)
CMMI (Capability Maturity Model Integration)能力 成熟度模型集成,可以看作是把各种CMM集成到一 个系列的模型中,版本:CMMI1.1, CMMI2.0等
个体软件过程(Personal Software Process, PSP), 是一种用于控制、管理和改进个人工作方式的自我 改善过程。
软件新技术(续)
XP的12个实践原则
计划制定 小版本迭代 简单设计 测试 持续整合 重构 配对编程 代码共享 每周只工作40小时 现场客户 隐喻 编码标准
软件新技术(续)
极限编程是一整套软件设计实现方法,包含一些相 对独立的关键思想,如:计划制定(The planning game),小版本发布(Small releases),隐喻 (Metaphor),简单设计(Simple design),重构 (Refactoring),先测试后编码(Test and then code:Test – Code – Design),成对编程(Pair programming),代码共享(Collective ownership),持续集成(Continuous integration),每周只干40小时(40-hour week), 现场客户(On-site customer),编码标准 (Coding standards),等。
实现,度量,控制和改善其软件过程的进程中各个 发展阶段的描述。 CMM 把软件开发机构按照不同开发水平划分为 5 个级别: Initial (初始化)、 Repeatable (可重 复)、 Defined (已定义)、 Managed (已管理) 和 Optimizing (优化中)。
软件新技术(续)
相关主题