本节和大家学习一下UML面向对象分析设计,通过实例开放式学籍管理系统中的应用向大家讲解,相信通过本节的介绍你对UML面向对象分析设计过程一定会有所了解。
UML面向对象分析设计在开放式学籍管理系统中的应用
UML是一种建模语言,是系统开发的一个组成部分,本身并没有关于开发过程概念的定义和表示符号[2]。UML的创始者比Booch、Jacobson和Rumbaugh在Rational公司的支持下综合了多种系统开发过程的长处,提出新的面向对象的开发过程,称为Rational统一过程(RationalUnifiedProcess,RUP)。RUP过程的核心工作流包括:业务建模、需求分析、系统分析与设计、实现、测试和系统配置。下面通过UML来分析并构造学籍管理模型,并结合Rational统一过程加以描述,图形用RationalRose工具软件绘制。
1、开放式学籍管理系统概述
随着网络技术和软件技术的飞速发展,特别是Internet/Intranet的出现及其相关技术的迅速发展,信息革命带来了全球范围市场竞争的日益加剧,对传统的办公教学和生活方式产生了巨大的冲击。办公自动化就是采用Internet/Intranet技术,基于工作流的概念,使内部人员方便快捷的共享信息,高效的协同工作;改变过去复杂,低效的手工办公方式,实现迅速,全方位的信息采集,信息处理。校园网的建设,为开放式的学籍管理系统提供了技术保障。
开放式学籍管理系统是一个由学校学籍管理信息中心监控,各教学系(部)、教研室分级管理,由学生档案管理、导师管理、授课教师管理、选课管理、成绩查询管理、打印报表等几部分组成,选课学生甚至联网的邻近院校共同参与的管理系统。
学籍管理由学校学籍管理中心监控,各教学系部、教研室分级管理,任课教师,选课学生共同参与。
2、开放式学籍管理系统的用例和角色
UML面向对象分析设计中业务建模和需求分析的目的是对学籍管理进行评估,采集和分析系统的需求,理解系统要解决的问题,重点是充分考虑系统的实用性。结果可以用一个UseCase模型表达(图1),模型中的活动者代表外部与系统交互的角色,包括学生、系统管理员,UseCase是对系统需求的描述,表达了系统的功能和所提供的服务,包括学生档案管理子系统、导师档案管理子系统、课程管理子系统、授课教师管理子系统、选课管理子系统、成绩管理子系统、打印报表子系统。
图1中模型元素之间的实线表示二者存在关联关系,是学籍管理系统层的UseCase模型,只包含了最基本的UseCase模型,是系统的高层抽象,在开发过程中,随着对系统的认识不断加深,UseCase模型可以自顶向下不断精化,演化出更为详细的UseCase模型。
3、开放式学籍管理系统分析与设计
UML面向对象分析设计是研究欲采用的实现环境和系统结构,结果是产生一个对象模型,即设计模型。设计模型包含了UseCase的实现,可以表现对象是如何相互通信和运作来实现UseCase流的。对于系统的静态结构。可以通过对象类图、对象图、组件图和配置图来描述,对于系统的动态行为,可以通过顺序图、协同图、状态图、活动图描绘。这些图再加上支持说明文档就构成一个完整的设计模型。
(1)静态结构的分析设计
学籍管理系统中拥有大量数字化信息资源,这些资源是多种媒体、多种格式的,而且还是相互关联的。其数据量大,信息长度不定。非结构化信息与结构比信息并存。传统的数据库和信息管理系统在数据模型、系统结构、用户接口等方面都虚拟实现对这些数字化信息资源的管理和操作,这就决定了学籍管理必须采用面向对象的方法来建立数据模型和管理模型,建立面向对象的数据库。实现面向对象的信息管理系统。使用UML对学籍管理系统进行基于面向对象的分析和设计,可以从开发的第一步开始,从系统的底层就把握住学籍管理信息资源的特征,为下一步的具体实现打好基础。在为学籍管理系统建立模型时要涉及到处理大量的模型元素,如对象类、接口、组件、节点、图等。图2是学籍管理系统中的学生类。
在图2的学生类图中,包括学生类的属性和方法。例如:studentId是学生的学号,且数据类型为bigint(8),且为主码;selectCourse(courseId:bigint,studentId:bigint)returnint,是类的方法,其入口参数为课程编号courseId和学生学号studentId,此方法作用是学生进行选课。
(2)动态结构的分析与设计
UML面向对象分析设计对动态结构的分析与设计。学籍管理馆提供的各种服务都是建立在分布、开放的信息结构之上。依托高速、可靠的网络环来完成。每项服务都可以看成一个事件流,由若干相关的对象交互合作来完成。对于这种系统内部的协作关系和过程行为,可以通过绘制顺序图和协同图来帮助观察和理解。
一个对象在双生存期间所经历的状态序列。对于把握对象的行为和状态的迁移变化是非常重要的,可以通过状态回来了解一个对象的历史,引起一个状态向另一个状态转移的事件,以及由于状态的转移而引发的动作。
此外,描述工作流和并发处理行为还可以用活动图,表达从一个活动到另一个活动的控制流,顾序图和协同图适合描述多个对象的协同行为,而状态图适合描述一个对象穿越多个UseCase的行为。状态图与活动图的区别是:状态图描述的是对象类响应事件的外部行为。活动图描述的是响应内部处理的对象类的行为。图3是学生查询成绩的活动图。
图3中,学生登陆学籍管理系统,输入其用户名和密码,若用户名和密码有误则返回,否则进入下一步:首先选择查询类型(查询成绩),然后输入查询关键词,再进行查询,系统自动生成了成绩单。
4、开放式学籍管理系统的实现、测试和系统配置
经过系统对UML面向对象分析设计后.就可以根据设计模型在具体的环境中实现系统,生成系统的源代码、可执行程序和相应的软件文档,建立一个可执行的系统.然后需要对系统送行测试和排错,保证系统符合预定的要求。获得一个无错的系统实现,调试的结果将确认所完成的系统可以真正使用。最后系统配置的任务是在真实的使用运行环境中配置,调试系统,解决系统正式使用前可能存在的任何问题。
小结
UML是一种功能强大的、面向对象的可视化系统分析的建模语言,它采用一整套成熟的建模技术,广泛地适用于各个应用领域。它的各个模型可以帮助开发人员更好地理解业务流程,建立更可靠、更完善的系统模型。从而使用户和开发人员对问题的描述达到相同的理解,以减少语义差异,保障分析的正确性。
通过对学籍管理系统的开发可以看到,UML作为软件工程中的建模语言,代表了面向对象方法的软件开发技术的发展方向,具有重大的经济价值和国防价值,并获得了国际上的广泛支持,具有非常好的应用前景。
【编辑推荐】