基于UML的高校选课系统优化分析

2013-10-15 06:10尹铁岩韩江霞李静波
吉林大学学报(信息科学版) 2013年4期
关键词:用例面向对象参与者

尹铁岩, 韩江霞, 李静波

(吉林大学 a. 商学院; b. 公共计算机教学与研究中心, 长春 130012)

0 引 言

近年来, 系统开发方法得到了飞速发展, 并且在高校选课系统中得到了广泛应用。其中, 生命周期法和原型法已成为应用最为广泛的系统开发方法。随着高校招生规模不断扩大, 学生选课及成绩管理的信息量大幅增加, 使用传统的生命周期法和原型法在可扩充性和交互性等方面往往无法达到用户的实际需求。主要表现在: 功能不稳定、 不支持封装, 易产生漏洞、 软件和硬件不支持灵活配置、 安全性不高, 用户账号被盗、 信息拥堵和系统崩溃。基于UML(Unified Modeling Language)开发方法的提出, 有效地解决了这些问题。

面向对象的系统开发方法, 具有反复迭代的特点, 使开发的系统能适应用户需求。UML统一建模语言, 融合了面向对象开发方法的主要技术, 使用统一的语义和符号为系统各开发阶段建立模型, 使系统建模过程标准化, 统一化和规范化, 避免了传统开发方法在不同开发阶段转换语义和表示方法的鸿沟。用例图、 静态结构图、 动态行为图和物理实现图4种图形化表现形式[1], 产生的模型易于理解, 便于开发人员与用户之间沟通, 从而能及时得到用户的反馈信息。由于UML建模方法可有效解决选课系统安全性低和信息拥堵问题, 提高选课系统管理水平, 因此已成为业界研究热点。

笔者以高校选课系统为研究对象, 基于面向对象的思想, 提出了UML建模方法, 分别从业务建模、 需求建模、 分析与设计、 部署与实现4个阶段进行了系统分析, 给出了多种UML视图。建模结果表明, 该方法保证了可重用性和封装性, 使用该方法开发的选课系统可满足用户实际需求。

1 业务建模

业务建模集中在业务本身及其与工作流相互作用的实体, 以便在设计系统前理解业务逻辑。因此, 高校选课业务可以作为一个业务用例图, 显示业务参与者(利用高校选课业务的实体)和业务用例(为业务参与者提供有价值的一组相关工作流)之间的关系。高校选课业务主要指提供在线选课、 退课和查询信息等服务。图1是高校选课业务用例图。

图1 选课业务用例图

如图1所示, 高校选课业务参与者有学生和教师。学生的业务用例主要有选课、 退课和查看成绩; 教师的业务用例主要是记录成绩。

2 需求建模

需求建模是在业务建模基础上, 结合系统的思想, 进行需求分析。好的需求管理是项目成功的第1因素。现今, 虽然系统开发技术日益完善, 但不能得到完整、 正确以及无二义性的需求, 仍然导致了大量系统开发以失败告终。可见, 系统需求分析在系统开发设计过程中具有不可忽视的重要性。高校选课系统的需求建模主要任务是识别系统参与者和用例, 从而构建系统用例模型。

从系统的角度看, 参与者是与系统进行交互的外部实体, 而用例是参与者在系统中执行的一系列动作。根据高校选课系统的需求调查, 可识别的系统参与者有: 学生、 教师和管理员[2]。而参与者涉及的主要用例及其用例描述[3]如表1所示。

表1 高校选课系统用例描述

根据上述识别的参与者和用例及其所属关系构建的高校选课系统用例模型[4]如图2所示。学生参与者的主要用例有: 选课、 退课、 教学质量评价及查询成绩、 课程介绍等信息; 教师参与者主要用例有: 录入成绩、 提交成绩及查询选课情况、 个人课表等信息; 管理员参与者主要用例有: 学生管理、 教师管理和课程管理。

图2 高校选课系统用例图

3 分析与设计

系统分析与设计是在系统需求建模基础上, 发现类及其联系, 从而构建系统的静态结构模型和动态行为模型, 以实现需求阶段捕获的功能和任务。

3.1 构建静态结构模型

高校选课系统的静态结构可通过类图描述。类图构建了一个系统蓝图, 是定义其他图的基础。而对类的分析则是绘制类图的基础。为实现高内聚和低耦合, 利用UML扩展机制, 可将高校选课系统所有类划分成如下模板类:

1) 用户类是所有参与者类的父类;

2) 学生、 教师和管理员类是用户类的子类;

3) 学生信息类负责学生信息处理;

4) 学生个人课表信息类、 自学重修信息类、 考试信息类、 选课情况信息类以及成绩信息类是学生信息类的子类;

5) 课程信息类负责课程信息处理;

6) 专业推荐课表信息类、 课程介绍信息类、 教室信息类以及选课学生信息类是课程信息类的子类;

7) 教师信息类负责教师信息处理;

8) 教师个人课表信息类是教师信息类的子类。

根据已确定的实体类及其联系构建的高校选课系统类图[5]如图3所示。该类图改良了源代码的可读性、 可维护性和可重用性, 且将属性和操作封装起来, 防止漏洞, 从而保障了系统安全性。

图3 高校选课系统类图

3.2 构建动态行为模型

为表达高校选课系统的内部动态和行为特点, 在系统静态结构构建基础上, 还需构建系统动态行为结构。选课系统动态行为模型构建可通过活动图、 序列图、 协作图和状态图加以描述[6]。它们从不同角度刻画了系统用例或对象在时间、 状态中的交互关系。由于活动图与状态图类似, 序列图与协作图可相互转换, 本节主要设计“选课”用例的活动图和序列图。

活动图描述了系统从一个活动到另一个活动的控制流, 即系统用例的具体功能实现流程。为形象化学生选课的合作进程, 构建了“选课”用例的活动图[7](见图4)。图4中有两个泳道: 学生和系统。学生在初始状态点击选课, 系统检验选课是否合理: 如不合理, 则拒绝选课; 如合理, 则添加课程。在此基础上, 系统判断添加课程是否成功: 如成功, 则显示添加成功; 如不成功, 则显示添加失败。

序列图和协作图称为交互图, 用来显示某个特定的用例在某个特定的场景下对象之间发生的交互, 其中序列图强调交互过程中的时间顺序。通过序列图的构建, 系统开发人员能发现潜在问题, 从而为在网络上测试应用程序做好准备。图5是“选课”用例的序列图, 对象之间消息的传递包括登录和选课两个过程。

1) 登录。 学生输入用户名和密码向选课系统请求身份验证, 系统检验用户名和密码, 保障成功登录。

2) 选课。学生在选课界面点击选课, 系统检验选课的合理性, 以保障成功选课[8]。

图4 选课活动图 图5 选课序列图

4 系统的配置与实现

完成选课系统的逻辑设计后, 下一步工作是设计系统的物理实现, 组件图和部署图是为面向对象系统的物理实现建模的两种图[9]。

组件图表达了组件之间的组织和依赖关系, 保证了系统的可重用性和可维护性。结合高校选课系统的用例建模和需求建模, 可识别系统的5种可重用组件有: 选课系统应用程序组件、 学生模块组件、 教师模块组件、 管理员模块组件和信息记录模块组件, 构建的组件图如图6所示。

选课系统设计的最终结果是部署图。部署图显示了系统中软件和硬件的物理架构, 包括网络布局及组件在网络中的位置, 阐明了系统网络中的所有节点及其之间的关系[10]。图7是高校选课系统的部署图[11]。为减轻选课服务器的压力, 将选课应用服务器和数据库服务器分布于两个不同的服务器节点上, 以提高系统反应速度, 从而解决了选课高峰期信息拥堵、 系统崩溃问题。

图6 高校选课系统组件图 图7 高校选课系统部署图

5 结 语

UML统一建模语言是一种功能强大的面向对象的建模语言, 它描述了一个系统的静态结构和动态行为。笔者以高校选课系统为例, 以UML建模方法为开发思路, 通过运用系统用例图、 类图、 活动图、 序列图、 组件图和部署图对系统分析和设计过程进行了重新优化。以此构建的系统具备可重用性, 无需更改代码即可对系统进行优化和重构。并且, 类图的封装性和组件图的可维护性提高了系统的安全性。部署图中选课应用服务器和数据库服务器的分布保障了信息的畅通。

笔者的研究说明数据模型的系统性和灵活性可通过运用先进的建模技术进行保障。面向对象方法能把系统中所有角色作为对象, 把隶属于每个角色的属性和操作封装在一起, 既符合人们的思维习惯, 也便于系统的修改与升级。UML统一建模语言能够对整个开发过程提供多视角、 易懂的表达, 并融合了多种建模方法的优点, 具有广阔的应用前景。

参考文献:

[1]BALRAM S, DRAGICEVIC S. Modeling Collaborative GIS Processes Using Soft Systems Theory, UML and Object Oriented Design [J]. Transaction in GIS, 2006, 10(2): 199-218.

[2]KARETSOS S, MANOUSELIS. Modeling an E-Government Observatory for Rural SMEs Using UML with RUP [J]. Operational Research, 2011, 11(1): 59-75.

[3]WU X, CHEN J, LI R, et al. Modeling a Web-Based Remote Monitoring and Fault Diagnosis System with UML and Component Technology [J]. Journal of Intelligent Information Systems, 2006, 27(1): 5-19.

[4]曹衍龙, 汪杰. UML2.0基础与RSA建模实例教程 [M]. 北京: 人民邮电出版社, 2011.

CAO Yan-long, WANG Jie. UML 2.0 Foundation and RSA Modeling Instance Tutorial [M]. Beijing: People’s Posts and Telecommunications Press, 2011.

[5]陈世基. 基于UML建模技术的智能选课系统设计与实现 [J]. 计算机与现代化, 2007(2): 46-48.

CHEN Shi-ji. Design and Implementation of Intelligent Elective System Based on the UML Modeling Technology [J]. Computer and Modern, 2007(2): 46-48.

[6]胡荷芬, 张帆, 高斐. UML系统建模基础教程 [M]. 北京: 清华大学出版社, 2010.

HU He-fen, ZHANG Fan, GAO Fei. UML-Based System Modeling Basic Course [M]. Beijing: Tsinghua University Press, 2010.

[7]刘锦萍. 基于UML及B_S架构网上选课系统的设计与实现 [J]. 嘉兴学院学报, 2007, 196(6): 89-92.

LIU Jin-ping. The Design and Implementation of Online Course Selection System Based on UML and B_S Architecture [J]. Journal of Jiaxing College, 2007, 19(6): 89-92.

[8]王安邦. 基于UML的网上选课系统的设计与实现[D]. 南京: 南京理工大学计算机科学与技术学院, 2009.

WANG An-bang. The Design and Implementation of Online Course Selection System Based on UML [D]. Nanjing: Computer Science and Technology Institute, Nanjing University of Science and Technology, 2009.

[9]王凤斌, 段隆振, 李向军. UML面向对象建模在管理信息系统中的应用 [J]. 计算机与现代化, 2005(2): 119-122.

WANG Feng-bin, DUAN Long-zhen, LI Xiang-jun. The Application of UML Object Oriented Modeling in the Management Information System [J]. Computer and Modern, 2005(2): 119-122.

[10]王少锋. 面向对象技术UML教程 [M]. 北京: 清华大学出版社, 2004.

WANG Shao-feng. The UML Tutorial of Object Oriented Technology [M]. Beijing: Tsinghua University Press, 2004.

[11]孙鹏飞, 黄磊. 基于面向对象的网上选课系统设计模型构建 [D]. 北京: 北京交通大学经济管理学院, 2012.

SUN Peng-fei, HUANG Lei. Modeling Build of the Online Course Selection System Based on Object-Oriented [D]. Beijing: School of Economics and Management, Beijing Jiaotong University, 2012.

猜你喜欢
用例面向对象参与者
休闲跑步参与者心理和行为相关性的研究进展
门限秘密分享中高效添加新参与者方案
UML用例间包含关系与泛化关系的比较与分析
UML用例模型中依赖关系的比较与分析
联锁软件详细设计的测试需求分析和用例编写
面向对象方法在水蓄冷PLC编程中应用分析
從出土文獻用例看王氏父子校讀古書的得失
基于代理的多方公平交换签名方案
海外侨领愿做“金丝带”“参与者”和“连心桥”
峰丛洼地农作物面向对象信息提取规则集