统一软件过程(RUP)基于面向对象且基于网络的程序开发理论,是一种自适应方法学,也就是说,需要根据所开发的具体软件产品做出相应的修改。统一过程的某些特性不适合中小型软件,但却描述了如何有效地利用商业的可靠方法开发和部署软件,是一种重量级过程,因此特别适用于大型软件团队开发大型项目。[1] RUP的三个重要特征:(1)迭代式的增量开发。RUP将软件开发分为一系列小的迭代过程,在每次迭代过程中,逐步增加信息、进行细化,再根据具体情况决定迭代的次数、每次迭代的持续时间以及迭代工作流,并且每次都选择目前具有最大风险的用例进行迭代,以分解和降低风险。(2)用例驱动。RUP采用用例来捕获目标系统的功能需求,同时驱动软件的整个开发过程 ,保证需求的可跟踪性,确保系统所有功能均能实现。RUP将用户关心的软件系统的业务功能、实体功能模型和开发人员结合起来,提供一种贯穿整体软件生命周期的开发方式,使软件开发各个阶段的工作自然、一致地协调起来。(3)以软件体系结构为中心。RUP强调在开发过程的早期,识别出与软件体系结构紧密相关的用例,并通过对这些用例的分析、设计、实现和测试,形成体系结构框架。然后在后续阶段对已形成的体系结构框架进行不断细化,最终实现整个系统。在早期的开发过程中,形成良好的软件体系结构,有利于对系统的理解、重用和有效地组织软件开发。[1]
程序简介
根据Rational(Rational Rose和统一建模语言的开发者)的说法,好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模版以及事例支持。RUP和类似的产品--例如面向对象的软件过程(OOSP),以及OPEN Process都是理解性的软件工程工具--把开发中面向过程的方面(例如定义的阶段,技术和实践)和其他开发的组件(例如文档,模型,手册以及代码等等)整合在一个统一的框架内。