UML系统建模的分析和应用

2016-09-25 05:37
无线互联科技 2016年15期
关键词:用例教务视图

杨 明

(南京铁道职业技术学院,江苏 南京 210031)

UML系统建模的分析和应用

杨明

(南京铁道职业技术学院,江苏南京210031)

文章以高职院校教务管理业务作为原型基础,通过该实例详细地介绍了UML建模技术。包含如何进行系统模型的分类,怎样区分外部视图和内部视图,如何绘制外部用例和活动图以及如何建立系统组织单元等,最后给出了完整的类图模型。

UML模型;教务管理;类图

统一建模语言(Unified Modeling Language,UML)是面向对象软件的标准化建模语言。UML因其简单、统一的特点,并且能表达软件设计中的动态和静态信息,目前已成为可视化建模语言的工业标准。在信息系统软件的开发过程中,统一建模语言可以在整个设计周期中使用,帮助设计者缩短设计时间,减少改进成本。

1 UML系统建模

建模,顾名思义,就是建立模型。在本文中,就是建立教务管理系统的业务模型。之所以要建立教务管理系统的业务模型,是因为业务系统模型是开发教务管理信息系统的基础。教务管理信息系统本质上是一个互联网技术 (Internet Technology,IT)系统,因此掌握和理解业务环境必不可少,对业务的分析和建模是IT系统开发的重要组成部分。

2 系统模型分类

业务建模通常包含如下两部分:

一是模型的动态方面,业务过程的分析。所谓的业务过程,即为了实现某个目标而必须经历的多个工序或者一系列事件。业务过程通常包含一些步骤,这些步骤称为活动集。例如,在教务管理中,为了实现转专业这个目标,必须包含的活动如图1所示。

图1 转专业流程

活动可以顺序执行,也可以并行执行,当学生进行转专业申请时,其仍然可以进行网上选课。通常,业务过程中的活动是相互依赖的。这个依赖关系是由各个活动之间的交互创建的,这些活动属于为实现某个共同目标的业务过程。

二是模型的静态方面,业务系统中的组织结构,业务对象和信息对象分析。高职院校中常见的教务管理组织机构如图2所示。

教务处和各个二级学院、部共同组成业务运行主体,教务的主要业务过程都在这3个核心部门运行。但是一个业务过程运行可能要跨越多个部门,需要多个业务部门共同完成,例如学生购买教材,需要教务处和财务处协助完成。

图2 组织结构

相对于组织结构,业务对象的分析要简单很多。业务对象,就是指在教务管理业务运行过程中产生的实物,例如转专业申请单,成绩单等。

3 系统外部和内部视图

外部视图就是从外环境来观察教务管理业务系统,外部环境包含学生、普通任课教师和除教务处之外的其他职能部门等,外部视图只关心和外部环境相关的业务过程,以及教务管理系统本身能提供什么服务,而教务管理业务系统本身则是被看作一个黑匣子。

从外部视图来观察教务管理业务系统,只考虑那些和外部用户相关的活动,并不关心教务管理业务系统是如何运转的,里面的业务过程有多少个环节,只关心教务系统能输出什么或者能给提供什么服务。

教务管理系统的输出可以分两种:实物输出和服务输出。实物输出是有形的,例如一张学生的成绩单,而服务输出是无形的,如查询学生成绩。

内部视图则是描述教务管理业务系统是如何给外部环境提供服务,内部视图包含很多业务对象和业务信息,例如教务处管理人员、二级学院教学秘书以及成绩单、申请表等,他们处理必要的业务过程,同时也是业务系统组织结构的一部分。内部视图对外部环境而言是不可见的。

内部视图描述的是教务管理业务系统内部的活动、过程、关系和结构。内部视图通过功能向外界提供服务,功能是存在业务系统内部的,它对于外部用户而言,既不可见,也不可以访问,它用来表示一个内部活动,或者一个业务过程。和业务用例一样,业务过程既可以手工执行,也可以基于IT系统执行。

4 系统的外部用例、活动图

本文将通过用例图和活动图来构建外部视图。用例,根据OMG的定义,是由系统执行的一系列操作,该操作为其他参与者或者相关涉众提供一个重要的结果。在教务管理系统中,用例可以是手工的,也可以是基于IT系统的。业务用例始终是由参与者发起的,或者说外部用户可以使用业务系统提供的服务了。参与者就是使用业务系统输出的外部用户,在教务管理业务系统中,外部用户就是学生、教师。参与者能够与业务系统中的人或IT系统进行交互,例如学生输入自己的学号,才能查询到自己的成绩。在教务管理业务系统内部的操作人员或IT启动的活动并不是外部视图中的业务用例。

在外部视图中,使用UML用例图来表示业务用例和参与者之间的交互关系。之所以采用用例图,是因为它有很好的沟通性,不涉及具体的技术细节。无论是对于设计者、开发人员还是客户,都能根据用例图进行深入的沟通,虽然用例图不能描述工序的细节,但能很好描述系统的功能。设计用例图,首先确定教务管理业务系统的外部参与者,参与者在其中发挥重要作用。

教务管理业务系统的外部参与者罗列如下:

教师:学校的一个员工,教学活动直接参与者,向学生传授知识技能。

学生:经过高考进入学校的一个人,在学校的目的主要是学习知识和技能。

辅导员:老师的一种,主要是从事学生的思想政治教育工作。

二级学院院长:老师的一种,主要负责二级学院的管理工作。

教务处处长:老师的一种,主要负责学校的日常教学管理工作。

其次,要标识从外部参与者来看,将会涉及的用例,如下所示:

U1:学生登陆系统可以查询成绩信息。

U2:学生可以进行网上公共选修课选课。

U3:学生可以进行网上体育课选课。

U4:选课完毕后,学生去听课。

U5:教师可以查询打印选课学生名单信息。

U6:教师可以查看课表。

U7:教师去上课。

U8:教师网上录入学生成绩。

最后,本文使用用例图可完整地展示上面提到的用例示意,如图3所示。

本文从图3中可以解读出如下信息:对于学生角色,他与4个业务用例进行关联,可以执行4个业务用例。而对于教师角色,他也和4个业务用例进行关联,可以执行4个业务用例。上课用例和录入成绩用例是包含关系,这意味着在和上课用例进行交互的过程中,将会在某个时候执行录入成绩用例。对于二级学院院长、教务处处长、辅导员的角色作了泛化,因为本质上他们都是教师的角色。

图3 用例示意

用例图虽然可以清楚地看到外部参与者和用例之间的关联,但是无法描述业务用例的细节,就是教务管理业务系统的业务过程。这些缺陷可以通过活动图来进行弥补,活动图可以描述外部参与者和业务系统之间的交互,这种交互包含并行、分支和顺序等。

活动图与程序流程设计相关,它用于表示活动集。在外部视图中,本文用活动图来描述这些业务过程,也就是描述业务系统的功能,从功能的角度思考问题,对业务过程建模很有帮助。

绘制活动图可以选择不同的详细程度。可以把他们逐步精细化,在外部视图中,活动图和用例图类似,只是从外部视角来观察业务过程和活动。本文不能描述业务过程的执行细节,这是内部视图考虑的事情。

从学生的角度观察,活动图如图4所示,活动图首先从学生登陆教务管理系统这个事件开始,然后沿着控制流到达一个决策点,如果没有登陆成功,活动结束。如果登陆成功,将会遇到一条粗线,学生可以进行选公选课或者选体育课,注意这2个用例是可以同时进行的。当这2个用例都进行完毕后,控制流进行了汇总,进行听课的用例执行,在听课结束后,学生可以查询自己的个人成绩。如图4所示,相比较用例图,本文可以看出用例之间是并行执行的还是顺序执行的。

图4 学生的活动示意

5 系统组织单元

要执行内部视图建模,首先是调查内部组织结构。组织单元结构对于教务管理业务系统内部视图而言是很重要的。在UML中,组织单元结构使用包图来描述,它可以包含教务处管理人员、业务对象以及其他组织单元。组织单元是能够负责执行业务过程活动的实体,组织单元是对组织中各种个体工作的抽象。

在UML中,一个组织单元是由工作者、业务对象、其他组织单元以及它们之间的关系构成的。组织单元必须位于业务系统之中,这是一个基本原则。在业务系统之外的组织单元是参与者。

6 系统的类图

包图可以反映每个管理单元所包含的内部工作人员和业务对象,但是包图并不能反映内部工作人员和业务对象之间的关系,类图可以弥补包图的缺陷。

类图5可以对教务管理业务系统的结构部分,即各个管理人员、业务对象以及外部参与者的关系进行描述。业务模型级的类图尽量保持了简化,只使用了很少部分的元素,这样做是为了便于阅读和沟通。因为UML所设想的目标就是简化相关参与者之间的沟通,如果过于复杂,这一优势就会丧失殆尽。

在图5中本文能读出如下信息,学籍管理人员会生成班级名单和学生名单,教学计划任务管理人员会使用班级名单,然后生成上课地点清单和公共、专业课任务清单。公选课管理人员会根据上课地点清单生成公选课任务清单。体育选项管理人员使用上课地点清单生成体育选项任务清单。成绩管理人员使用学生名单生成学生成绩单。排课管理人员使用体育选项任务清单、公选课任务清单、公共课专业课任务清单、学生名单来生成学生课表和教师课表。生成的教师课表发给人事系统使用。学生名单则供学工系统、一卡通、财务、图书馆系统使用。教师和学生作为系统外部参与者可以查看教师课表和学生课表。

7 结语

综上所述,UML统一了各种方法对不同类型的系统、不同开发阶段以及不同内部概念的不同观点,从而有效地消除了各种建模语言之间不必要的差异。UML建模能力比其他面向对象建模方法更强。它不仅适合于一般系统的开发,而且对并行、分布式系统的建模尤为适宜。

图5 类图

[1]PATRICK G,HENRIETTE B.UML 2.0 in Action[M].Birmingham:Packt Publishing,2007.

[2]MIKE D.Object-Oriented Analysis&Design[M].United States:O'Reilly Medi,2005.

[3]GRADY B, JAMES R, IVAR J.Unified Modeling Language User Guide(Second Edition)[M].United States:Pearson education inc,2013.

[4]张海藩,倪宁.软件工程[M].3版.北京:人民邮电出版社,2010.

Analysis and application of UML system modeling

Yang Ming
(Nanjing Institute of Railway Technology, Nanjing 210031, China)

This paper sets a high vocational college educational academic management as a prototype, introducing the UML modeling technology in details, including how to carry out the classifcation of the system modeling, how to distinguish between external view and internal view, how to draw external use cases and activity diagram, and how to set up system organization units. Finally, it gives the complete class diagram model.

UML system modeling; academic management; class diagram

江苏高校哲社研究立项课题;项目名称:大数据背景下职业院校教师的挑战与发展研究;项目编号:2016SJB880057。

杨明(1978— ),男,江苏徐州,硕士,工程师;研究方向:数据库应用,软件工程。

猜你喜欢
用例教务视图
UML用例间包含关系与泛化关系的比较与分析
UML用例模型中依赖关系的比较与分析
教务排课对高等院校教学运行的作用分析
联锁软件详细设计的测试需求分析和用例编写
浅析高校教务管理存在的问题及对策
從出土文獻用例看王氏父子校讀古書的得失
视图
Y—20重型运输机多视图
SA2型76毫米车载高炮多视图
浅谈新形势下高校教务管理人员的素质与培养