基于RUP的可视化建模研究与应用

2013-12-29 00:00:00张献忠崔玲
电脑知识与技术 2013年4期

摘要:简要介绍了RUP和UML的基本概念,重点阐述了在RUP开发过程中如何用UML进行可视化建模的过程。通过对物业管理信息系统的实例建模分析,强化了在面向对象环境下的建模模式。RUP与UML建模的结合,改善了传统建模中的不足,提高了系统开发效率。

关键词:RUP;UML建模;物业信息管理;分析;应用

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)04-0793-03

Research and Application of RUP Visualization Modeling

ZHANG Xian-zhong1, CUI Ling2

(1.School of Computer Information & Engineering, Changzhou Institute of Technology, Changzhou 213002, China; 2.Changzhou College of Information Technology, Changzhou 213002, China)

Abstract: Described the basic concepts of RUP and UML briefly, focused on how to process visual modeling using UML in RUP development process. Through the modeling case study of property management information system, it enhanced modeling patterns in object-oriented environment. The combination of RUP and UML modeling improved the traditional modeling deficiencies, and it also improved the efficiency of system development.

Key words: RUP; UML modeling; property information management; analysis; application

RUP(Rational Unified Process)是Booch等人在Rational公司支持下提出的一种面向对象的软件开发过程模型。它吸收了多种开发模型的优点, 克服了面向过程开发的瀑布模型的缺点,因此具有良好的可操作性和实用性[1]。在基于RUP的开发周期中,定义了四个阶段和九个核心工作流。四个阶段分别是初始化阶段、细化阶段、构建阶段和交付阶段。其中,初始化阶段的参与者是项目经理或领域专家,主要工作是完成系统的可行性分析, 创建基本需求来界定系统范围, 以及识别软件系统的关键任务;细化阶段的主要目标是分析问题领域,建立健全的体系结构基础,细化阶段的焦点是需求、工作流的分析和设计;构建阶段的目标是在细化阶段的基础上完成所有的需求、分析和设计,其焦点是实现工作流;交付阶段的工作是移交产品给用户, 包括开发、交付、培训、支持及维护, 直到用户满意。九个核心工作流由六个核心过程工作流(Core Process Workflows)和三个核心支持工作流(Core support workflow)组成[2]。核心过程工作流可以很好地描述整个系统开发的流程和工作内容。其中,商业建模和需求工作流描述系统目标及其需求;分析和设计工作流将需求转换为一个可行的设计模型;实现工作流描述以组件的形式实现类和对象;测试工作流用于验证对象间的交互作用是否正确。RUP提出了迭代的方法,这些工作流在整个生命周期中一次又一次被访问。在每一次迭代中以不同的重点和强度重复。

1 统一建模语言UML

UML(Unified Modeling Language)统一建模语言,是一种面向对象建模的可视化建模语言[3]。UML目前被广泛应用在包括程序、文档等在内的软件系统开发的各个阶段。UML拥有众多的视图模型来描述RUP模型。如在商业建模和需求工作流阶段,可以采用用例图(Use Case Diagram)、活动图(Activity Diagram)和业务类图(Business Class Diagram)实现;在分析和设计工作流阶段,可以采用实现类图(Implementation Class Diagram)、顺序图(Sequence Diagram)和协作图(Collaboration Diagram)实现。该文介绍的应用部分中,主要结合核心过程工作流进行系统分析和设计。

2 RUP中可视化建模应用实例

当前,“以消费者为中心”的新住宅文化,在房地产发展日趋理性化的今天,已经悄然兴起。适合现代人居住观念的物业管理已越来越被广大业主所接受,与此同时,物业管理的市场化、规模化、集约化进程,进一步扩大了物业公司的管理结构。采用传统的物业管理模式,已经无法解决因成本控制、内部沟通、管理难度增加而带来的问题。物业管理领域迫切需要一种能利用网络来传输信息,实现资源共享的物业信息管理系统。这种新型的物业管理系统,它以传统社区服务为基础,以社区局域网为依托,以因特网为纽带。该文以它为例,介绍如何使用RUP和UML可视化建模的开发过程。

2.1 需求分析建模

需求分析是软件开发的第一步,其主要任务是识别系统参与者,确立系统边界[4]。经过对物业管理信息系统进行详细的调查分析,确定了其功能性需求。系统用户主要有四类,分别是业主、物管人员、系统管理员和财务人员。业主经登录后可查看住房信息、新闻与公告信息、公共设施信息、投诉信息、欠费信息、车位使用信息以及报修信息等。并可进行发布业主投诉、业主报修功能。物业管理人员主要完成物业公司的日常工作,包括住房管理、业主信息管理、业主报修管理、业主投诉管理、停车位管理、访客管理等。财务人员主要进行小区业主的收费管理。对业主每年、每月产生的水费、电费、气费、物业费等进行系统化的录入和统计,生成每户的费用信息,便于业主及时交费和查询。系统管理员实现对系统公告、新闻和员工信息管理等功能。

1)建立用例图

在角色分析的基础上,可以得到系统的用例模型。从前面的分析中得知,物业管理信息系统的参与者有业主、物管人员、系统时钟和管理员。每个参与者都可以有相应的用例图。限于篇幅,此处只给出物业管理的用例图,如图1所示。

2)建立活动图

活动图是用来描述系统内部的动态关系[5],用来反映业务用例的具体处理流程。对于稍微复杂的用例,从活动图中可以进一步来确认系统子用例。此处以业主报修活动为例,其活动图如图2所示。

2.2 分析和设计建模

分析与设计工作流的功能是将需求转换为未来系统的设计,分析和设计的结果是一个设计模型和一个可选的分析模型。设计模型是源代码的抽象,它由设计类和一些描述组成。设计类反映了系统的静态结构,而描述则是体现类的对象如何协同工作实现用例功能。在UML中,可以用类图来实现设计类,顺序图来实现描述的功能。

1)建立类图

类图是用来描述系统的静态模型的,它定义系统中的类的内部结构及类之间的关系[6]。类有5种,分别是f50c2b8c1ecd950fa959f8db84e51f00ca73384b84314c855d53ff00a58199b9实体类、接口类、控制类、数据访问类和配置类[7]。根据RUP中基于用例驱动的思想,为每个用例设计其类图。限于篇幅,此处以物管人员的统计汇总为例,给出其类图,如图3所示。

2)建立顺序图

系统的静态模型类图建立后,可以用顺序图为其建立动态模型。顺序图显示多个对象如何按时间的顺序进行交互的细节,而对象间的交互通过发送各种消息进行。此处以业主缴费为例,其顺序图如图4所示。

图3 统计汇总类图

图4 业主缴费顺序图

2.3 实现与测试

本阶段主要完成代码编写和系统测试工作。在设计阶段产生的UML类图和顺序图,成为编写代码的重要依据。借助于ROSE或JUDE 建模工具生成Java 代码, 包括类、属性、操作、关系、组件等。以代码框架为基础,程序员可以完成每个类操作的具体代码,

系统前台设计人员设计图形用户界面。在系统测试前,UML模型继续在使用,根据需求分析和设计中产生的用例图和顺序图来设计测试用例, 以检验每一个用例的功能是否已经实现。

3 结束语

RUP 与传统的面向过程开发方法有很大的不同,它通过四个阶段和九个工作流来实现整个系统的开发过程。RUP的核心观念体现了当今面向对象软件开发的规律,借助于UML建模工具,真正实现了以需求为中心、以用例驱动为导向的开发模式。RUP与UML可视化建模工具的结合,进一步提高了软件的开发效率,对于大型软件项目的开发、协调开发团队之间的合作具有积极和深远的意义。

参考文献:

[1] 王璐,王永贵,曲海成.RUP可视化建模的研究与应用[J].计算机工程与科学,2009,31(3):101-102

[2] 苏亚丽.RUP在软件毕业设计课题中的应用[J].玉溪师范学院学报,2009,25(9):58.

[3] 蔡敏,徐慧慧,黄炳强.UML 基础与Rose建模教程[M]. 北京:人民邮电出版社,2006.

[4] 吕刚,冯昌琪.基于UML建模的新型农村合作医疗信息系统[J].计算机应用,2008,28(6):376.

[5] 李娟,王丹琦,杨勇.基于用例驱动和UML的教学信息反馈平台的分析与设计[J].新疆师范大学学报:自然科学版,2008,27(1):55-56.

[6] 王晖,郭燕慧,余安萍.面向对象软件分析设计与测试[M].北京:科学出版社,2004.

[7] 肖刚,孙慧.系统分析与设计方法[M].北京:机械工业出版社,2007.