基于UML的校园一卡通系统的建模机制
文章出处:http://www.nexussmartsolutions.com 作者:刘香玉 河北政法职业学院 人气: 发表时间:2011年11月08日
1 UML概述
UML是一种定义良好、易于表达、功能强大且普遍适用的通用建模语言。它融入了软件工程领域的新思想、新方法和新技术,它的作用域不限于支持面向对象分析与设计,还支持从需求分析开始的软件开发的全过程。它代表了面向对象方法的软件开发技术的发展方向,具有广阔的发展前景。UML可以对任何具有静态结构和动态行为的系统进行建模。它由两部分组成,一部分是语义,用于描述元模型定义;另一部分是表示符,用于定义符号的表示法。UML可以通过两种建模机制,九种图形把系统的重要业务表示出来。其中静态建模机制包括用例图、类图、对象图、包图、构件图和配置图;动态建模机制包括顺序图、合作图、活动图和状态图。
2 “校园一卡通”系统概述
“校园一卡通” 是消费者手中持一张卡能实现多种功能,使该卡既是学生证,又是借书证,而且还能实现校内一卡通消费(食堂就餐、机房上机、INTELNETH上网计费、洗浴收费、图书借阅、考勤管理等),实行一卡多用,一卡通用。该系统是现代信息识别技术、自动控制技术以及网络技术相结合的产物。每位消费者都有一张储值卡,卡内记录着消费者的基本信息,帐户金额。消费时,消费者将卡放在读卡机上或者插入插槽,显示幕自动显示卡上的金额,营业员按读卡机上的数字键,显示屏自动计算并显示本次消费额和余额。这样管理中心可以随时监控每一笔消费,统计出各个部门的消费情况,如,食堂每个窗口的就餐人数;浴室部门的沐浴人数、机房的上网人数等,使得学校能够快速、准确地掌握每位学生、每个部门的收入、支出情况,便于统一管理。
3 UML在“校园一卡通”系统中的应用
3.1 “校园一卡通”的静态分析设计
“校园一卡通” 的参与者有消费者、营业员和管理员。这里的消费者也就是储值卡;营业员也就是收款机;管理员也就是服务器,其中消费者主要是消费,营业员主要是收款,管理员主要是对卡和事件进行处理。
3.1.1用例模型
根据消费者、营业员和管理员三种角色来确定系统的用例,经过分析,得到如下的用例:
用例图如图(1)所示:
3.1.2类模型
根据分析,可得到如下的类:
服务器类、收款机类、储值卡、消费事项类、经营结算事项类、卡的管理事项类、消费日志类。
● 服务器类
该类直接与系统进行交互, 与消费者、服务组进行业务联系,该类对象直接操作系统主程序。
● 收款机类
该对象直接与系统联系,模拟服务员的登录系统、收款等行为。
● 储值卡类
代表消费者与系统和收款机进行交互,模拟消费者进行充值、消费等活动。
● 消费事项类
消费者在某服务窗口进行一组消费,通过服务员连续操作POS完成收款活动,就称为一次消费事件。
● 经营结算事项类
对每一个服务组所有消费事件的数据按日志进行 总,从而实现服务中心与服务组的结算。
● 卡的管理事项类
此类事件主要是管理卡的注册、发放、充值、挂失、注销工作。
● 消费日志类
为提供消费清单查询和经营结算等行为实施监控提供详细记录,需要系统有实施日志。考虑到未来经营窗口的变更,比如窗口收款机的进一步扩充, 并以关联类和集合管理器为核心设计样式。类图如图2所示:
4 “校园一卡通” 系统的实现
4.1功能需求
高校有着大量的学生、员工、部门等对象,而且他们是动态变化的。从根本上讲,系统需要具有对各种信息的添加、修改、删除、查询和大量的统计功能。此外,还需要提供对上述对象的分组、对象属性的设置等功能。
4.2系统的运行环境
系统采用Windowsof公司的策略和产品,用B/S模式开发,系统开发完成后分成两个部分:系统初始化设置专为系统管理员提供的,放在OAS(0racle Application Server)上。数据库放在数据库服务器上。
●硬件环境:网络硬件由一台高档服务器组成。
●软件环境:
(1)服务器软件环境:
网络操作系统:WindowsNT4.0或Linux
数据库系统:SQL Server
Web服务器:OAS
(2)客户端软件环境
操作系统:Windows2000
浏览器:Intemet Explorer
(3)使用开发环境
web服务器与数据库服务器的连接技术是CGI/API。开发工具是PL/SQL。根据上面的分析,笔者使用Java语言进行了仿真,并且能够正常运行。
5 结束语
以上是利用UML对校园一卡通系统进行建模。采用UML及其它所支持的工具Rational Rose,就使得我们能够理解需求,对所开发的系统作出正确的分析和设计,并且在一个经过验证的规则上开发一个方案和作出最佳的实现,从而不仅可以大大提高应用程序的开发效率,而且可以明显地提升可扩展、易维护和便于长期使用软件的机会。实践表明:UML作为软件工程中的建模语言,代表了面向对象方法的软件开发技术的发展方向,获得了广泛的支持,具有广阔的应用前景。