什么是RUP?

什么是RUP?

1、RUP是风险驱动的、基于Use Case技术的、以架构为中心的、迭代的、可配置的软件开发流程 2、我们可以针对RUP所规定出的流程,进行客户化定制,定制出适合自己组织的实用的软件流程。  因此RUP是一个流程定义平台,是一个流程框架。

RUP相当于计划,为开发提供步骤。所以说RUP是面向过程的。

RUP的宗旨:高效、准时满足需求

为什么产生RUP?

软件危机推动了RUP的产生。软件危机面临的问题有难以满足需求、难以定义需求、最后发现错误、质量差等问题。而RUP可以缓解这些问题,故产生了RUP.那么RUP是如何解决这些问题呢?这要从RUP的思路:Implementing Best Practices说起。

    什么是Implementing Best Practices?

    Implementing Best Practices是RUP的最佳实践。最佳实践的措施有:迭代式开发Develop Iteratively、管理需求Manage Requirements、使用构建架构Use Component Architectures、可视化建模Model Visually、检验质量Verify Quality、控制变更Control Changes。什么是RUP?_第1张图片

    从最佳实践措施可以看出,管理需求可以缓解难以满足用户需求,难以定位需求的问题;迭代式开发可以避免最后发现错误;检验质量可以保证软件开发的质量。

RUP的好处?

    提高了团队生产力。在开发过程中,为每个开发人员提供了必要的模板、准则和指导,并确保每个成员共享知识基础(共享同一个知识库、共享同一个开发过程、共享可视化建模、共享同一个建模语言)。

RUP的特征?

    迭代式增量开发、用例驱动(use case-driven 、以软件体系结构为中心

    迭代式的优点:减低了开发风险、更好的跟踪需求、加快了工作进度。

   (“迭代”,我们如何去理解呢?每次迭代都经历瀑布模型的过程,看似每次都一样,但迭代不同于重复。迭代并不是从零开始,而每次迭代都是对上一次迭代的细化,是在上一次的基础之上进行的。)

RUP的开发过程?

    通过下图来理解。

什么是RUP?_第2张图片

横轴是时间轴,即RUP的生命周期。初始阶段(Inception)、细化阶段(Elaboration)、构建阶段(Construction)和交付阶段(Transition)

    初始阶段为了建立业务模型用例,明确项目的范围。

    细化阶段为了分析问题域,建立一个健全的、合理的体系结构基础,明确项目中高风险元素,制定一个合理的项目开发计划。

    构建阶段为了开发一个完整的软件系统,准备给用户使用。

    交付阶段为用户安装部署软件。

纵轴是工作流。

    工作流分为6个核心过程工作流(Core Process Workflows)和3个核心支持工作流(Core Supporting Workflows)。

下图即为核心过程工作流的六个步骤:

什么是RUP?_第3张图片

核心支持工作流:配置和变更管理Configuration & Change Management、项目管理Project Management、环境environment。

每个阶段完成相应的目标,详细见百度。

小结:RUP为什么在UML课程内讲述呢?他和UML之间有什么关系呢?我们已经知道了UML是软件计划的画图工具,而RUP是为软件计划提供步骤,指导软件计划。

    RUP具有更强的计划性、可预见性,迭代式开发方式,使RUP坦然的重新开始,坦然面对中间制品的“不美观”,RUP要求尽早开发高风险项目,把困难工作放在开始。从这些观念中,我们同样可以学习到做人的道理。


    

你可能感兴趣的:(UML,C/S)