基于UML的面向对象系统分析与设计

时间:2022-10-16 09:43:14

基于UML的面向对象系统分析与设计

摘要:该文描述了面向对象方法的思想及主要的几种设计方法。探讨了基于UML进行面向对象的系统分析及设计思想,提出了一种实用的基于UML的分析设计过程,并论述了UML的应用及基于UML的Rational ROSE面向对象设计过程。

关键词:面向对象;UML;分析设计;ROSE

中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)36-3049-01

Based on the UML for Object-oriented Systems Analysis and Design

XU Jing-xiu

(Edong Institute of Vocation & Technology, Huanggang 438000, China)

Abstract: The paper described the idea of object-oriented approach and the idea of several major design. Based on the UML for object-oriented systems analysis and design ideas have been discussed, put forward a practical method of modeling based on UML, and discusses The application of the UML and UML-based Rational ROSE object-oriented design process.

Key words: object-oriented; UML; analysis and design; ROSE

1 面向对象分析(OOA)方法

面向对象程序设计提出了一种新的系统设计模型,它将系统看成通过交互作用来完成任务的对象的集合,每个对象用自己的方法管理数据[2]。它允许抽象化、模块化的分层结构,具有多态性、继承性和封装性。面向对象的程序设计考虑如何通过创建对象来简化程序设计,提高代码的可重用性。目前已经衍生出许多种OOA方法。每种方法都有各自的进行产品或系统分析的过程,有一组可描述过程演进的图形标识,以及能使软件工程师以一致的方法建立模型的符号体系。广泛使用的OOA方法有以下几种。

Booch方法包含“微开发过程”和“宏开发过程”。微开发过程定义了一组任务,并在宏开发过程的每一步骤中反复使用它们,以维持演进途径;Booch OOA宏开发过程的任务包括标识类和对象、标识类和对象的语义、定义类与对象间的关系,以及进行一系列求精,从而实现分析模型。

Rumbaugh方法和Rumbaugh同事提出的对象模型化技术用于分析、系统设计和对象级设计。分析活动建立三个模型:对象模型、动态模型和功能模型。

Coad和Yourdon方法常常被认为是最容易学习的OOA方法。建模符号相当简单,而且开发分析模型的导引直接明了。

Jacobson方法也称为面向对象软件工程。Jacobson方法与其他方法的不同之处在于它强调使用实例,用以描述用户与系统之间如何交互的场景 [3]。

统一建模语言UML已经在企业中广泛使用,它具有面向对象、可视化、独立于过程、独立于程序设计语言和易于掌握使用的特点。把Booch、Rumbaugh和Jacobson等各自独立的OOA和OOD方法中最优秀的特色组合成统一的方法, UML作为一种建模工具已成为国际标准。

2 基于UML面向对象分析设计过程

运用UML进行面向对象的系统分析设计,其过程通常由以下3个部份组成:

2.1 识别系统的用例和角色[1]

首先对项目进行需求调研,依据项目的业务流程图和数据流程图以及项目中涉及的各级操作人员,通过分析,识别出系统中的所有用例和角色;接着分析系统中各角色和用例间的联系,再使用UML建模工具画出系统的用例图,同时,勾画系统的概念层模型,借助UML建模工具描述概念层类图和活动图。

2.2 进行系统分析,并抽取类

系统分析的任务是找出系统的所有需求并加以描述,同时建立特定领域模型。建立域模型有助于开发人员考察用例,从中抽取出类,并描述类之间的关系。

2.3 系统设计,并设计类及其行为[5]

设计阶段由结构设计和详细设计组成。1) 结构设计是高层设计,其任务是定义包(子系统),包括包间的依赖关系和主要通信机制。包有利于描述系统的逻辑组成部分以及各部分之间的依赖关系。2) 详细设计就是要细化包的内容,清晰描述所有的类,同时使用UML的动态模型描述在特定环境下这些类的实例的行为。

3 基于UML的Rational ROSE面向对象设计过程

现以某金融贸易系统为例说明UML建模的具体过程。该过程主要包括:理解需求、分析、设计、实现、测试和配置。

首先进行需求分析,这是一个决定系统能否符合用户需求的关键步骤,该阶段的好坏直接影响到设计的进度以及质量。需求分析主要是定义用例,对该系统的主要功能进行描述,从而确定系统的功能需求,在这部分主要应用的是用例图,用例图要详尽地表示系统的各种关系。在该系统中各角色的关系如图1所示。

从中我们可以清楚地看出各个角色之间的关系,所以在进行系统的设计、实现时可以减少盲目性。在需求分析时,要注意领域分析以及类与对象的定义。

其次进行的是设计,设计一般分为架构设计和详细设计。这部分主要包括定义包、描述包间的相关性和基本的通信机制。注意要减少相关的二义性以及与用户的接口设计。

再进行的是实现,在这个过程中UML 的优点可以得到长足的体现:运用Rational ROSE提供的环境将前几步设计的图进行分析,然后可以转换成自己所熟悉的高级语言,并在高级语言中进行编辑,在高级语言的环境中我们可以看到UML 把图转换成系统的程序设计的结构框架。并且,在进行该系统扩展时只需要在前两步设计的图中进行更改,从而改变程序框架,彻底改变了传统设计中更改所带来的复杂性与潜在的危险性。

在进行测试的时候同样可以运用UML ,将整个系统分为不同的单元,然后将各个单元作为一个“黑盒”,运用不同的图进行“黑盒”测试。将测试后的结果再返回到设计实现中进行分析。将完整无误的软件与需求说明结合,从而可以顺利地进行配置[4]。

可以看出:UML的图运用于整个系统设计的全过程,减少了设计盲目性,提高了设计效率。

4 结束语

UML是一种功能强大的、面向对象的可视化系统分析的建模语言,它采用一整套成熟的建模技术,广泛地适用于各个应用领域。它的各个模型可以帮助开发人员更好地理解业务流程,建立更可靠、统一化、标准化且更完善的系统模型。使用户和开发人员对问题的描述达到相同的理解,以减少语义差异,保障分析的正确性。实现面向对象开发方法的标准化以后,可以避免不同方法的差异,提高软件重用效率。另外,统一面向对象开发方法也就是综合每个面向对象方法的优点,最大限度地发挥各种方法的长处。但是由于他自身发展的程度决定了目前他还不能取代现有的各种面向对象的分析与设计方法。但是随着 UML进一步发展,必将有助于实现软件自动化。

参考文献:

[1] 蒋慧,吴礼发,陈卫卫.UML设计核心技术[M].北京:北京希望电子出版社,2001:22-40.

[2] North K.面向对象的数据库程序设计[M].北京:电子工业出版社,1996:40-45.

[3] 陈增荣.软件开发方法[M].上海:复旦大学出版社,1997:35-50.

[4] 邓良松,刘海岩,陆丽娜.软件工程[M].西安:西安电子科技大学出版社,2000:70-80.

[5] 张龙详.UML与系统分新设计[M].北京:人民邮电出版社,2001:2-10.

上一篇:基于.NET平台的论文选题及指导系统研究 下一篇:物资开发管理系统的设计与实现