uml系统分析设计论文

2024-08-17

uml系统分析设计论文(精选6篇)

篇1:uml系统分析设计论文

1.系统需求

系统的功能性需求描述如下:

·

图书管理系统为管理员提供主功能界面。

·

图书管理系统在启动时要求管理员输人口令,只有口令正确,才可以进入系统的主功能界面。

·

管理员负责对图书管理系统的维护工作,因此系统应赋予管理员对图书信息、读者信息和出版社信息进行录入、修改、查询和删除等功能的操作权限。

·

管理员作为读者的代理实现借书与还书业务。

·

图书信息、读者信息和出版社信息保存在对应的数据库表中。

在上述功能性需求分析的基础上,可以写出较为详细的需求规格说明书,作为进行系统分析、设计和实现的依据。需求分析规格说明书由系统最终用户提出需求,系统分析人员负责编写。图书管理系统需求分析规格说明书如下:

·

这是一个图书馆图书借阅管理的应用系统;

·

图书管理系统负责将图书、杂志借给读者,前提条件是这些读者在系统进行了注册,图书和杂志也在系统中进行了注册;

·

图书馆负责新书的购买,当书和杂志已经过时或者破旧不堪时,可以将这些图书和杂志从图书馆管理系统中删除;

·

图书管理员是图书馆的员工,负责与读者打交道,并且是在系统提供的支持下开展工作;

·

图书管理系统能够容易地建立、修改和删除系统中的信息,包括图书信息、读者信息、以及出版社信息等;

·

图书管理系统能够在所有流行的平台环境(windows,uNIx等操作系统)上运行,并具有一个美观的图书用户界面;

·

图书管理系统容易扩展新功能。

2.分析建模

 Use case diagram 分析

采用下列描述项撰写用例的脚本。

· 用例名称——表明用户的意图或用例的用途。

· 参与者——与该用例相关的参与者列表。

· 前置条件——一个条件列表,如果其中包含条件,则这些条件必须在访问用例之前得到满足。

· 后置条件——一个条件列表,如果其中包含条件,则这些条件将在用例完成以后得到满足。

· 基本事件流——描述用例中各项活动都正常进行时用例的工作方式。

· 分支事件流——描述用例中某项活动的子活动各项工作都正常进行时用例的工作式。

· 异常事件流——描述用例的变更工作方式,以及出现异常或发生错误的情况下所执行的路径。

图书管理系统中每个用例的脚本描述如下:

1.系统登录

用例名称:系统登录

参与者:图书管理员 1.1前置条件 无

1.2后置条件

如果用例成功,参与者可以启动系统,使用系统提供的功能。反之,系统的状态不发生变化。

1.3基本事件流

当图书管理员登录系统时,用例启动。

①系统提示用户输入用户名和密码。

②用户输入用户名和密码。

③系统验证输入的用户名和密码,若正确,则用户登录到系统中。

1.4异常事件流

如果用户输入无效的用户名/密码,则系统显示错误信息。用户可以选择返回基本事件流的起始点,重新输入正确的用户名/密码;或者取消登录,用例结束。

2.图书借阅

用例名称:借阅图书

参与者:读者,图书管理员 2.1前置条件

在这个用例开始之前,图书管理员必须登录到系统;否则,系统的状态不发生变化。

2.2后置条件

如果这个用例成功实现,则在系统中创建并存储借阅记录。2.3基本事件流

当读者借阅图书时,用例启动。

①登录系统。

②输人图书ID和读者ID。

③检索读者ID。

④检索图书ID。

⑤根据时间算法确定图书借出日期和归还日期。

⑥图书馆将图书借给读者。

⑦创建借阅记录。

⑧存储借阅记录。2.4异常事件流

①如果读者未注册,则系统显示提示信息,用例被终止。

②如果要借图书不存在,系统显示提示信息,用例被终止。

③如果要借图书都已借出,则系统提示信息,用例被终止。3.图书归还

用例名称:图书归还

参与者:读者,图书管理员 3.1前置条件

在这个用例开始之前,图书管理员必须登录到系统;否则,系统的状态不发生变化。

3.2后置条件

如果这个用例成功实现,则系统删除借阅记录;否则,系统的状态不发生变化。3.3基本事件流

当读者归还借阅的图书时,用例被启动。

①登录系统。

②输入图书ID和读者ID。③检索图书ID。

④检索读者ID。

⑤查询图书借阅记录。⑥删除借阅记录。3.4异常事件流

①如果归还图书不存在,则系统显示提示信息,用例被终止。②如果借阅记录不存在,则系统显示提示信息,用例被终止。4.读者维护

用例名称:读者维护 ‘ 参与者:图书管理员 ’ 4.1前置条件

在这个用例开始之前,图书管理员必须登录到系统;否则,系统的状态不发生变化。4.2后置条件

如果这个用例成功地实现,则系统添加、修改或检索读者信息;否则,系统的状态不发生变化。

4.3基本事件流

当图书管理员维护读者信息时,用例被启动。①登录系统。

②如果选择的活动是“添加读者信息”,则执行分支事件流4.3.1:添加读者信息。③如果选择的活动是“修改读者信息”,则执行分支事件流4.3.2:修改读者信息。④如果选择的活动是“检索读者信息”,则执行分支事件流4.3.3:检索读者信息。4.3.1分支事件流

①提供读者的信息,例如,读者ID,读者姓名、电话号码等。②系统存储读者信息。4.3.2分支事件流 ①输入读者ID。

②查询并显示读者信息。③更新系统中读者信息。4.3.3分支事件流 ①输入读者ID。

②查询并显示读者信息。4.4异常事件流

①如果读者已经存在,则系统显示提示信息,用例被终止。②如果查询不到读者,则系统显示提示信息,用例被终止。5.图书维护

用例名称:图书维护 参与者:图书管理员 5.1前置条件

在这个用例开始之前,图书管理员必须登录到系统;否则,系统的状态不发生变化。5.2后置条件

如果这个用例成功实现,则系统添加、修改或检索图书信息;否则,系统的状态不发生变化。

5.3基本事件流

当图书管理员维护图书信息时,用例被启动。①登录系统。

②如果选择的活动是“添加图书信息”,则执行分支事件流5.3.1:添加图书信息。③如果选择的活动是“修改图书信息”,则执行分支事件流5.3.2:修改图书信息。④如果选择的活动是“检索图书信息”,则执行分支事件流5.3.3:检索图书信息。5.3.1分支事件流

①提供图书的信息,例如,图书ID,图书名称、编著者、出版社、价格、出版年份筹 ②系统存储图书信息。5.3.2分支事件流 ①输人图书ID。

②查询并显示图书信息。⑨更新系统中图书信息。5.3.3分支事件流 ①输入图书ID。

②查询并显示图书信息。5.4异常事件流

①如果该图书已经存在,则系统显示提示信息,用例被终止。②如果查询不到该图书,则系统显示提示信息,用例被终止。

系统总体功能结构

 根据用例图定义分析包以及分析包(子系统)之间的关系。

图书管理系统分析包详细结构

 定义类、用例实现(序列图)、类关系图(1)系统登录

类图:

系统登录分析类图

用例实现:

登录系统成功顺序图

登录系统失败顺序图

(2)登录图书信息

类图:

登录图书信息分析类图

用例实现:

登录图书信息顺序图

(3)修改图书信息

类图:

修改图书信息分析类图

用例实现:

修改图书信息顺序图

(4)检索图书信息

类图:

检索图书信息分析类图

用例实现:

检索图书信息顺序图

(5)借阅图书 类图:

借阅图书分析类图

用例实现:

借阅图书顺序图

(6)归还图书

类图:

归还图书分析类图

用例实现:

归还图书顺序图

(7)借出图书一览表

类图:

借出图书一览表分析类图

用例实现:

借出图书一览表顺序图

(8)类关系图

系统实体类(业务类)之间的关系

(9)类的具体定义

1.图书表类

编号:A—l一0l

类名:图书表

职责:存放图书馆所能处理的所有图书的基本信息

属性:图书代号,图书名称,编著者,ISBN代码,出版社代码,出版年份,页数,价格,购入日期,过期日期,书架代码,备注

说明:该类存放所有图书类的公用信息,它是“图书借阅表”的父类。图书也有身份,可以通过不同的ISBN相区别。在图书管理系统中,图书也有相关的行为,图书因为使用期限等可以被销毁,所以图书表也是系统中的一个对象。

2.登录图书界面类

编号:A一1—02

类名:登录图书界面

职责:提供输入所有图书信息的界面

属性:图书代号,图书名称,编著者,ISBN代码,出版社代码,出版年份,页数,价格,购入日期,过期日期,书架代码,备注

说明:该类的所有属性是非持久性的,但它为用户保存永久性的图书属性提供了一个临时的输入接口。

3.登录图书信息控制类

编号:A—l—03

类名:登录图书信息控制类

职责:实现登录图书界面类与图书表类所提供信息的交互。

属性:图书代号,图书名称,编著者,ISBN代码,出版社代码,出版年份,页数,价 格,购人日期,过期日期,书架代码,备注

说明:该类的所有属性是非持久性的,但它为用户保存永久性的图书属性提供了一 个临时的输人接口。

4.出版社表类

编号:B—l—01

类名:出版社表

职责:存放图书表所使用的所有图书的出版单位

属性:出版社代码,出版社名称

说明:该类与出版社表之间存在着单向关联的关系。

5.读者表类

编号:C一1一Ol

类名:读者表

职责:存放图书馆的所有读者的基本信息

属性:读者代码,读者名,联络电话

说明:该类类描述了物理借阅者的信息,代表了系统中存储的物理借阅者的信息,即物理借阅者在系统中的账户。同时,读者表又是图书借阅表的组成成分之一。

6.图书借阅表类

编号:D—l—01

类名:图书借阅表

职责:存放图书馆所能处理的所有图书的基本信息

属性:图书代号,读者代号,借书日期,还书日期,说明:该类描述了从图书馆借阅图书的借阅记录。一个该类的对象对应一个借阅者和一本图书。该类的对象的存在表示借阅者借阅了借阅记录中记录的物理图书。当图书被归还时,要删除借阅记录(对象)。

 形成系统分析规约(注意规约可能会有活动图、状态图等)

3.系统设计

设计模型的主要工作: 1).软件平台设计

软件平台是系统开发和运行的环境。图书管理系统的开发和运行环境如下:

· 操作系统——操作系统是计算机系统中最重要的系统软件。图书管理系统可以运行在Windows 95/98/2000/NT/Windows XP等桌面操作系统上。

· 支撑软件——支撑软件是协助人们开发和维护软件的工具和环境软件。数据库系统、集成开发环境等都属于支撑型软件,例如,Delphi、Oracle、Java等。图书管理系统使用的DBMS是Access 2003,数据库中间件是JDBC。

· CASE平台——采用CASE开发环境可保证系统开发质量,提高开发效率,保证文档的一致性。图书管理系统的分析、设计j实现和部署模型是在Rose 2003建模环境下创建的,清晰地表达了在不同的开发阶段的系统模型。2).结构设计

结构设计是把软件分解成为多个子系统,并确定出由各子系统及其接口构成的软件结构。子系统是对软件分解的一种中间形式,也是组织和描述软件的一种方法。由多个子系统构成系统软件,每一个子系统又包括多个用例设计、设计类和接口。结构设计具体要做的工作是将系统划分成相对独立、功能相对完整的子系统(包),将系统模型中的元素划分到不同的包中,说明在什么地方定义包,各个包之间的依赖性和主要通信机制。从而得到尽可能简单和清晰的结构,各部分之间的依赖尽可能的少,并尽量减少双向的依赖关系。3).详细设计与界面设计

详细设计是对软件结构中确定出的各个子系统内部的设计,需要分析和确定每一个子系统中的用例设计、设计类和接口。详细设计还要描述每个类的细节,并用动态模型描述类的实例在具体环境中的行为。

界面设计是对人和外部系统与系统之间交互界面的设计,包括输入界面、输出界面和输入/输出界面的设计。另外,界面设计还涉及到人机交互方式、人机交互流程、输入输出设备和媒体等内容。4).数据库设计

数据库是系统存储和管理数据的主要技术手段,数据库设计的任务是根据给定的系统应用需求和系统环境,设计出合理的数据库结构。数据库设计可分为概念设计、逻辑设计和物理设计3个阶段。用UML进行数据库设计的主要思想,是利用UML的扩展机制定义一些版型,用于表示与数据库相关的一些概念。Rose 2003提供了对数据库设计的支持,所设计的模型可以直接生成具体数据库中的表、触发器、存储过程等。

 系统结构设计

系统框架视图

· 用户界面包(User Interface Package)——用于描述整个用户界面使用的类,这些类提供的操作允许用户浏览系统中的数据,允许用户输入新数据。用户界面类基于Java AWT包设计,AWT包是Java语言中用于编写用户界面应用程序的一个标准库。用户界面包与业务模型包相互协作,调用业务模型包中类实例的方法对图书信息进行检索和插入操作。

。业务模型包(Business Model Package)——包含分析阶段主要的类(借阅图书类、归还图书类、图书类、读者类、出版社类)。在设计阶段将进一步细化这些类,从而完整地定义它们的操作,并为它们增加永久性存储支持。业务模型包与数据库包相互协作,访问数据库中的数据。· 数据库包(Database Package)——为业务模型包中的类提供数据存取服务,以便这些类能够实现数据的永久性存储功能。

。组件包(Utility Package)——包含一些可以被系统中其他包所使用的服务。

 界面设计

 详细设计

图书信息管理详细设计:

1.设计类图

“图书信息管理’’是一个用例,在“图书信息管理”用例所提取的3个概念类的基础上,可以确定该用例有3个设计类:登录图书信息(LoginBook)、修改图书信息(UpdateBook)、检索图书信息(SelectRook)。如图13.2所示为“图书信息管理”用例的设计类图。

“图书信息管理”用例设计类图

·

BpFrame类——属于用户界面包,定义系统检索与修改界面的框架。

·

BpSelectFrame类——属于用户界面包,继承BpFrame类,定义检索界面框架。

·

BpUpdateFrame类——属于用户界面包,继承BpSelectFrame类,定义系统修改界面框架。

·

SelectBook类——属于用户界面包,继承BpSelectFrame类,与DbChoice类相关联,显示图书信息检索界面。

·

LoginBook类——属于业务模型包,继承BpUpdateFrame类,与DbChoice类相关联,实现图书信息登录功能。

·

UpdateBook类——属于业务模型包,继承BpUpdateFrame类,与DbChoice类相关联,实现图书信息修改功能。

·

DbChoice类——属于组件包,定义了用于数据库操作的实例变量和实例方法。

2.顺序图

为实现用例的功能,每个用例要实现的功能要通过用例中各个类的对象的操作的相互协作完成,这就要在顺序图或协作图中反映各个对象之间的消息调用过程。如图13.3所示为添加的图书ID不重复的情况下“登录图书信息”用例的顺序图。

“登录图书信息”顺序图

3.属性和方法设计

用例设计中识别出了大量的设计类,接下来要详细地设计所识别出来的每一个设计类,即设计类的属性和方法。属性设计应该注意的问题是:一要补充属性分析时没有考虑到的属性,确定属性的全部内容,其中包括属性名、可视性、范围、类型、初始值;二要尽量采用系统采用的程序设计语言的语法规范描述属性。

方法设计包括数据结构设计、算法设计和流程设计。方法设计要注意的是:一要立足于所采用的程序设计语言;二所选用的程序设计语言应该能够提供丰富的数据结构;三要根据所实现的功能确定算法设计;四是可以用程序流程图或活动图来描述流程设计的结果。

如图所示为添加了属性和方法“图书信息管理”用例的设计类图。

添加属性和方法后的“图书信息管理”类图

LoginBook类的属性和方法设计如下:

·

sql属性——定义执行插人操作的SQL命令字符串。

·

chpublish_id属性——定义出版社ID。

·

LoginBook()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供添加图书信息界面。

·

cheekInsea()方法——①检查各输入项的输人格式是否正确;②检查图书ID是否重复。

·

makelnsertStmt()方法——定义执行插人操作的SQL命令字符串。

·

afterlnsert()方法——清空登录图书界面的各输入项。

SelectBook类的属性和方法设计如下:

·

sql属性——定义执行插入操作的SQL命令字符串。

·

chpublish_id属性——定义出版社ID。

·

SelectBook()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供检索图书界面。

·

checkSelect()方法——检查是否输入要检索的图书ID。

·

makeSelectStmt()方法——定义执行检索操作的SQL命令字符串。

·

setSelectedData()方法——显示检索图书的结果。

·

clear()方法——清空图书检索界面各检索项。

UpdateBook类的属性和方法设计如下:

·

sql属性——定义执行插入操作的SQL命令字符串。

·

chpublish_id属性——定义出版社ID。

·

UpdateBook()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供检索图书界面;③提供修改图书功能。

·

checkSelect()方法——检查是否输人要检索的图书ID。

·

makeSelectStmt()方法——定义执行检索操作的SQL命令字符串。

·

setSelectedData()方法——显示检索图书的结果。

·

clear()方法——清空图书修改界面各修改项。

·

checkUpdate()方法——检查各修改项的修改格式是否正确。

·

makeUpdateStmt()方法——定义执行修改操作的SQL命令字符串。

读者信息管理详细设计: 1.设计类图

“读者信息管理”是一个用例,在“读者信息管理”用例确定了3个概念类:添加读者信息、修改读者信息、检索读者信息。但是,该用例的功能相对比较简单。可以用1个设计类Borrow实现这3个概念类的功能。如图所示为“读者信息管理”用例的设计类图。

图13.5 “读者信息管理”用例设计类图

· Borow类——属于业务模型包,继承BpupdateFrame类,实现读者信息添加修改和检索功能。

2.顺序图

如图13.6所示为添加的读者ID不重复的情况下“添加读者信息”用例的顺序图。

“添加读者信息”顺序图

通过分析如图所示的顺序图,可以得到下图所示为“读者信息管理”用例的设计类图。

图优化后的“读者信息管理”用例设计类图

3.属性和方法设计

如下图所示为添加了属性和方法“读者信息管理”用例的设计类图。

添加属性和方法后的“读者信息管理”类图

Borrow类的属性和方法设计如下:

· sql属性——定义执行插入操作的SQL命令字符串。

· Borrow()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供添加、修改和检索读者信

息界面。

· checkSelect()方法——检查是否输入要检索的读者ID。

· makeSeleetStmt()方法——定义执行检索操作的SQL命令字符串。

· setSelectedData()方法——显示检索读者的结果。

· ehecklnsert()方法——检查是否可执行插入操作。

· makeInsertStmt()方法——定义执行插入操作的SQL命令字符串。

· afterlnsert()方法——清空各输入项。

· checkUpdate()方法——检查是否可执行修改操作。

· makeUpdateStmt()方法——定义执行修改操作的SQL命令字符串。

· checkData()方法——检查各输入项的输人格式是否正确。

· clear()方法——清空各文本框。

出版社信息管理详细设计: 1.设计类图

“出版社信息管理”是一个用例,可以用1个设计类Publish实现添加出版社信息、修改出版社信息、检索出版社信息3个概念类。如图13.9所示为“出版社信息管理”用例的设计类图。

图13.9 “出版社信息管理”用例设计类图

· Publish类——属于业务模型包,继承BpUpdateFrame类,实现出版社信息添加、修改和检索功能。

2.顺序图

如图13.10所示为添加的出版社ID不重复情况下“添加出版社信息”用例的顺序图。

图13.10 “添加出版社信息”顺序图

3.属性和方法设计

如图13.1l所示为添加了属性和方法“出版社信息管理”用例的设计类图。

图13.11 添加属性和方法后的“出版社信息管理”类图

Publish类的属性和方法设计如下:

· sql属性——定义执行插入操作的SQL命令字符串。

· Publish()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供添加、修改和检索出版社信息界面。

· checkSelect()方法——检查是否输入要检索的出版社ID。

· makeSelectStmt()方法——定义执行检索操作的SQL命令字符串。· setSelectedData()方法——显示检索出版社的结果。· checklnsert()方法——检查是否可执行插入操作。

· makeInsertStmt()方法——定义执行插入操作的SQL命令字符串。· afterInsert()方法——清空各输人项。

· checkUpdate()方法——检查是否可执行修改操作。

· makeUpdateStmt()方法——定义执行修改操作的SQL命令字符串。· checkData()方法——检查各输入项的输人格式是否正确。· clear()方法——清空各文本框。

图书借还信息管理详细设计: 1.设计类图

“图书借还信息管理”是一个用例,在“图书信息管理”用例所提取的4个概念类的基础上,可以确定该用例有4个设计类:借阅图书(BorrowBook)、归还图书(RetumBook)、借出图书一览表(BorrowBookList)和未按期归还图书一览表(OverdueList)。如图所示为“图书借还信息管理”用例的设计类图。

图“图书借还信息管理”用例设计类图

· BorrowBook类——属于业务模型包,继承BpUpdateFrame类,与DbChoice类相关联,实现图书借阅功能。

· ReturnBook类——属于业务模型包,继承BpUpdateFrame类,与DbChoice类相关联,实现图书归还功能。

· BorrowBookList类——属于业务模型包,继承BpSelectFrame类,与DbChoice类相关联,显示借出图书清单一览表。

· OverdueList类——属于业务模型包,继承BpSelectFrame类,与DbChoice类相关联,显示未按期归还图书与读者清单一览表。

2.顺序图

如图所示为读者ID与图书ID都存在情况下的“借阅图书”用例的顺序图。

“登录图书信息”顺序图

3.属性和方法设计

如图所示为添加了属性和方法“图书借还信息管理”用例的设计类图。

添加属性和方法后的“图书借还信息管理”类图

BorrowBook类的属性和方法设计如下:

· sql属性——定义执行插入操作的SQL命令字符串。

· BorrowBook()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供添加图书信息界面。· checklnsert()方法——①检查各输入项的输入格式是否正确;②检查借阅图书ID是否存在。

· makeInsertStmt()方法——定义执行插入操作的SQL命令字符串。

· afterInsert()方法——清空借阅图书界面的各输入项。

· checkSelect()方法——检查是否输入读者ID和图书ID。

· makeSelectStmt()方法——显示检索结果。

· checkDelete()方法——检查是否可执行删除操作。

· makeDeleteStmt()方法——定义执行删除操作的SQL命令字符串。

· afterDelete()方法——清空删除操作后的各输入项。

· clear()方法——清空所有的文本框。ReturnBook类的属性和方法设计如下:

· sql属性——定义执行插人操作的SQL命令字符串。

· RetumBook()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供图书归还界面。

· checkUpdate()方法——检查各修改项的修改格式是否正确。

· makeUpdateStmt()方法——定义执行修改操作的SQL命令字符串。· afterUpdate()方法——清空所有的文本框。BorrowBookList类的属性和方法设计如下:

· sql属性——定义执行插入操作的SQL命令字符串。

· BorrowBookList()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供实现“借出图书一览表”功能的界面。

· makeSelectStmt()方法——定义执行检索操作的SQL命令字符串。

· setSelectedData()方法——显示检索结果。OverdueList类的属性和方法设计如下:

· sql属性——定义执行插入操作的SQL命令字符串。

· xOverdueList()方法——类的构造方法。①调用DbChoice类的对象实例,以实现加载JDBC驱动程序,创建数据库连接等功能;②提供实现“未按期归还图书一览表”功能的界面。

· makeSelectStmt()方法——定义执行检索操作的SQL命令字符串。

· setSelectedData()方法——显示检索结果。

组件包设计:

组件包包含被所有其他包使用的通用组件,图书管理系统的组件包由Const、DbChoice、BpUtil三个类组成,这三个类定义了系统所有其他类所使用的公共常量与公共方法。另外,IconCanvas(加载系统界面所使用的图标)、MsgDialog(信息显示对话框)、SQLExceptionDialog(显示数据库异常信息对话框)3个类也为系统所有其他类所公共使用。在此与组件包中的类一起进行说明。1.Const类

Const类定义了系统所使用的公共名称等常量,其类图如图所示。

Const类的类图

2.BpUtil类

BpUtil类定义了系统使用的公共方法,其类图如图所示。

BpUtil类的类图

BpUtil类的方法设计如下:

· repeateString()方法——返回指定个数的字符串对象。

· varchar2text()方法——返回按照指定长度调整的字符串对象。

· setComp()方法——在组件上按照CridBagConstraints布局配置Panel。· checkWaming()方法——检查数据库连接操作是否出现异常。· isNumeric()方法——验证字符串能否转换为数值。

· getToday()方法——以YYYY/MM/DD的格式返回今日的日期。

· getToday()方法——返回以今日为基点的指定为YYYY/MM/DD格式的日期。· isYMD()方法——验证能否识别YYYY/MM/DD格式的字符串。· GB2312Unicode()方法——GB2312转换为Unicode。· UnicodeGB2312()方法——Unicode转换为GB2312。

· getRowCount()方法——求数据表中满足条件的记录数。

· convYMD()方法——Java.util.Date类型数据转换为YYYY/MM/DD格式。

3.DbChoice类

DbChoice类定义了用于数据库操作的实例变量与实例方法,其类图如图所 示。

DbChoice类的类图

DbChoice类的属性和方法设计如下:

· con属性——定义用于数据库连接的实例变量。· query属性——定义用于SELECT语句的实例变量。· displayCol属性——定义用于检索结果的列数。

· valueCol属性——定义方法getSelectedVal()返回值的列数。

· vItem属性——定义用于保存方法getSelectedVal()返回值的Vector · DbChoice()方法——构造方法,用于初始化实例变量。· setQueryData()方法——执行检索操作。· getSelectedVal()方法——返回检索结果。· setValueCol()方法——设置列的值。· getValueCol()方法——返回列的值。

· setDisplayCol()方法——设置显示列的值。· getDisplayCol()方法——返回显示列的值。

· setDisplayhem()方法——设置显示项的列的值。4.IconCanvas类

IconCanvas类用于完成加载系统界面所使用图标的功能,其类图如图所示。

IconCanvas类的类图

IconCanvas类的方法设计如下:

· IconCanvas()方法——构造方法,用于完成加载图像文件的功能。· paint()方法——用于完成显示图像文件的功能。5.MsgDialog类

MsgDialog类用于完成显示系统界面所使用的信息对话框功能,其类图如图13.19所 示。

MsgDialog类的类图

MsgDialog类的属性和方法设计如下:

· MsgDialog()方法——构造方法,用于生成信息显示区域,定义信息对话框的标题、布局管理器等功能。

· actionPerformed()方法——用于处理发生的事件。

6.SQLExceptionDialog类

当发生数据库异常时,SQLExceptionDialog类定义了用于显示数据库异常信息对话框,其类图如图所示。

SQLExceptionDialog类的类图

SQLExceptionDialog类的属性和方法设计如下:

· SQLExceptionDialog()方法——构造方法,用于定义发生的SQL异常。· actionPerformed()方法——用于处理发生的事件。· setMessage()、方法——用于显示发生的异常信息。系统管理详细设计:

系统管理由Bookplate和LoginDialog两个类组成,Bookplate类用于显示系统主功能界面,LoginDialog类用于显示用户登录对话框界面。Bookplate类与LoginDialog类之间有单向关联关系,即Bookplate类中定义的实例变量dialog可以调用LoginDialog类的构造函数,以实现系统登录界面的显示,描述两者之间关系的类图如图所示。

“系统管理”用例设计类图

Bookplate类的方法设计如下:

· main()方法——系统执行的入口点,用于显示系统主功能界面。

· Bookplate()——构造方法,用于设置系统框架(Frame)、标题、菜单、按钮布局、标签等系统组件。

· aetionPerformed()——当用鼠标左键点击各功能按钮时,分别调用各个子功能系统,同时实现生成、显示和隐藏对应的框架的功能。LoginDialog类的方法设计如下:

· LoginDialog()方法——构造方法,用于设置用户登录对话框界面的标题、显示信息区域、设置标签和文本域、生成按钮等功能。

· actionPerformed()——当用鼠标左键点击功能按钮时,处理所触发的事件。· getStatus()——返回按钮的状态值。· getUserID()——返回用户ID。· getPassword()——返回用户口令。

 数据库设计(表略)

 完成设计规约

篇2:uml系统分析设计论文

一、本课题的研究意义

一个图书馆的图书资料库在正常运转中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。图书馆作为一个信息资源的集散地,图书和用户借阅资料繁多,包含着很多的信息数据。以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过限定借书时间的天数)的统计和核实等往往采用人工检查,对借阅者的借阅权限以及借阅天数等采用人工计算、手抄进行,数据信息处理工作量大,容易出错和丢失。因此,建立一个智能化、系统化、信息化的图书资料库是十分重要的。使用计算机软件对图书进行管理,是计算机应用的一部分。充分利用计算机的功能,实现对读者管理、书籍管理等自动化控制,将会使图书资料库的工作强度大大减弱,可以实现图书检索迅速、可靠性高、存储量大、寿命长、成本低,能最大限度地提高图书管理的效率,也是图书管理信息化、正规化管理的必然趋势。

二、图书馆图书管理系统的需求分析与设计过程

图书管理系统的开发和应用主要通过两个步骤来实现:首先是基于系统功能的需求分析,其次是系统模型的设计和实现。

2.1需求分析

需求分析是信息系统设计过程中的一个重要阶段,其中一个主要任务是确定系统的功能需求,并采用面向对象方法,即基于UML的可视化系统进行需求分析。需求分析的目标就是建立需求模型,即从功能需求出发建立图形模型, UML的视图从用户的需求中提取,以图形的方式描述待开发的系统的功能需求。每个图形都指定了客户的需求,即他们需要系统干什么。用图形为设计活动不仅记录需求而且还提供了一种挖掘的信息, 它记录了需求到设计结果之间的映射关系,能够确保设计结果具有明确的根据或者说具有可维护性,基于UML的信息系统设计过程是以建模图形驱动的。

首先我们进行角色的认识,对于一所大学的图书管理系统,基本的功能是完成图书的借阅和相关信息的管理,服务的对象有本科生,研究生,教师,及其他学校的学生,还有社会人员,这些人可归结为一类即读者。而为帮助读者顺利完成借还书的可以是工作人员,可以是自动借还书机,他们可以归结为一类即图书管理人员。因此对于一个图书管理系统主要有两类角色,读者、图书管理员。

其次,在主要角色的基础上,可以识别出与角色相应的用例,从而得到系统的用例模型图。与读者相关的过程包括:借书、还书、预借(想借的书已借出,预定要借的书籍)、图书信息检索、借阅查询(如查询本人借书记录、还书期限、是否超期)、个人相关信息查询及修改(如学号、姓名、性别、年级、专业、家庭住址、联系电话、出生日期、民族、政治面貌、身份证号等)。与图书管理员相关的过程包括:办理借书、办理还书、删除预借对象、图书订购、读者信息管理(增加/删除读者、修改读者权限及密码、借阅超期罚款)、图书信息管理(增加/删除数目、图书类别等相关信息的修改、流通情况)。系统管理(系统的登陆、退出、日志维护、系统更新)。以上分析中,与读者,图书管理员相关的过程构成了本系统的基本用例。

2.2 系统的整体结构

综上所述一个图书馆图书管理系统的整体结构可以分为三大模块:图书管理模块、读者管理模块、系统管理模块。

(1)图书管理模块包括与图书相关的一些过程,主要有图书的借出、图书的归还、预借、图书信息检索、图书订购、图书相关信息管理。

(2)读者管理模块主要包括与读者有联系相关的过程,主要有增加/删除读者、修改读者权限及密码、借阅信息查询、个人信息查询及修该、借阅超期和丢失罚款。

(3)系统管理模块包括系统的登陆、退出、系统维护、系统更新。综上我们画出系统的整体结构,如图一所示:

图一 图书管理系统的整体结构

2.3 图书管理系统的用例图

从以上分析中我们不难得出系统的基本用例图,如图二所示:

图二 系统的基本用例图

图书管理和图书管理是图书管理系统的重要组成部分,为此我们按照前文所述将图书管理模块和读者模块以及系统管理模块详细精化得出如下的用例图,如图

三、图

四、图五所示:

图三 图书管理模块的用例图

图四 读者管理用例图

图五 系统管理模块的用例图

2.4 图书管理系统的交互图

篇3:基于UML信息系统的分析与设计

关键词:面向对象,UML,仓库信息管理

1 引言

随着信息技术的快速发展和计算机应用技术的日益普及,各类信息系统软件的需求量正在不断上升。面对各种复杂软件系统的开发,对应的程序代码规模也越来越大,传统的软件工程方法已经无法满足大型工程的开发需求,利用对象的思想为软件系统建模是目前软件开发的首选方法,面向对象建模的一个重要点就是用图形标注方法表示系统的各个方面。UML是一种标准化图形化的建模语言,是面向对象开发中一种通用的、统一的图形模型语言,是近代软件工程中对象分析和设计的重要工具。使用UML建立信息系统模型,有利于提高系统的稳定性、可维护性和重用性,并为不同背景的开发人员以及用户提供一条标准的交流途径。

2 UML概述

UML(Unified Modeling Language)是一种通用的可视化建模语言,描述在软件开发方法中用于表示设计的符号(通常是图形符号),它是被广泛使用的一种面向对象分析和设计的表示方式。作为一种建模语言,UML的定义包括UML语义和UML表示法两部分。其中UML语义描述了UML的精确原模型定义,使开发者能在语义上取得一致,消除因人而异的最佳表达方法所造成的影响。UML表示法定义了UML的表示方法,为开发者或开发工具使用这些图形符号和文本语法进行系统建模提供了标准。UML标准的建立统一了面向对象的建模方法,消除了对象建模的差别。

UML具有可视化与表示能力强、独立于过程、独立于程序设计语言、易于掌握等特点。它通过建立各种类、类之间的关联、类/对象怎样相互配合实现系统的动态行为等成分来构建整个模型。U M L提供了用例图、类图、时序图、协作图和状态图等各种图形,通过这些图形,用户可以对软件系统进行面向对象的描述和建模,可以描述软件开发从需求分析直到实现和测试的全过程。

UML融合了众多面向对象建模语言的长处,在系统的分析和设计中对项目开发、团队的交流起到非常重要的作用;使用UML进行系统分析和设计,可以加速开发进程,提高代码质量,支持动态的业务需求,且UML适用于各种规模的系统开发。

3 UML的面向对象分析设计过程

运用UML进行面向对象的系统分析设计,其过程通常由以下三部分组成:

(1)识别系统的用例和角色

首先对项目进行需求调研,依据项目的业务流程图和数据流程图以及项目中涉及的各级操作人员,通过分析来识别系统中所有的用例和角色,其中,角色是与系统进行交互的外部实体,可以是系统用户,也可以是其他系统或硬件设备,用例是系统提供的功能;接着分析系统中各角色和用例间的联系,使用UML建模工具画出系统的用例图,同时也可勾画系统的概念层模型。

(2)进行系统分析,并抽取类

分析的任务是找出系统的所有需求并加以描述,同时建立特定领域模型。建立域模型有助于开发人员考察用例,从中抽取出类,并描述系统中类和类之间的关系,如关联、依赖、聚合等。

(3)系统设计,并设计类及其行为

设计阶段由结构设计和详细设计组成。结构设计是高层设计,其任务是定义包(子系统),包括包间的依赖关系和主要通信机制。详细设计就是要细化包的内容,清晰描述所有的类,同时使用UML的动态模型描述在特定环境下这些类的实例的行为。

图1系统主要功能模块图

4 基于UML的仓库信息管理系统的设计

(1)需求分析阶段

仓库在现代物流中起着非常重要的作用,为了实现仓库的现代化管理,减少无效和冗余的作业,使库存精度更准确,加快库存周转率及减少库存资金的占用,设计并开发仓库信息管理系统。本设计以新联电子仪器厂仓库管理系统项目中的仓库信息管理系统设计为模型进行需求分析和设计实现。

仓库信息管理的核心是入库、出库和库存管理之间的联系;另外,产品信息和客户信息管理也是仓库管理中必不可少的部分,它提供着与入库和出库相关的一些信息,使得整个系统更加完整。该系统的主要功能包括用户登录、仓库管理、业务查询和系统设置4个主功能模块,用户可以分为两种不同的身份登录,不同的身份会授予不同的权限,主要有系统管理员与库管员身份;系统设置:由供应商信息管理、仓库设置与库管员信息设置组成;供应商信息管理中用户可以输入详细的产品材料供应商的信息,仓库设置实现仓库货物的分类管理,库管员信息设置实现库管员的信息维护、操作权限设置。具体功能模块如图1所示。用户通过本系统的使用,可以优化仓库的空间。

基于需求分析所得的系统主要功能,可应用U M L对系统进行领域角色分析、

图2系统用例图

图4系统事务信息类图业务分析和建立用例模型。用例模型分析是十分重要的,它从用户角度描述系统功能,并指出功能的操作者。仓库信息管理系统的用例图见图2所示。

上述各个用例所具有的功能既可以用文档描述,也可以用顺序图描述。根据系统功能需求找出相关的对象,顺序图主要描述对象间的动态交互关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互,然后通过对象之间的关系表示出用例具有的功能,如系统进货入库顺序图3所示。

(2)设计阶段

此阶段主要任务是分析用例图和顺序图,得到相关系统类图。类图描述的是系统所包含的类以及各类之间的静态关系,类将属性和方法封装在一起,类间的关系有关联、实现和依赖等关系。包由包或类组成,包图用于描述系统的分层结构。分析仓库信息管理系统事务信息,图4是系统类图中的一部分,表明系统具有的事务类分别为:供应商信息维护管理类、用户登录类、入库类、库存查询类、出库类和盘点等类,并且包含类间的关系。

最后,仓库信息管理系统部署是整个项目实施过程中最后的阶段,在部署中有组件图和配置图。其中配置图用于描述环境元素的配置,定义系统中软硬件的物理拓扑结构以及在此结构上执行的软件。它可以显示实际的计算机和设备之间的连接关系,也可显示连接的类型及部件之间的依赖性,还可以显示网络之间的通信路径。该仓库信息管理系统采用B/S三层架构,前端是应用程序,后台包括Web服务器和数据库服务器。图5是仓库管理系统的配置图。

(3)编程实现和测试阶段

此阶段进行软件的开发和测试,选择面向对象编程语言C#作为开发工具。

5 结束语

随着面向对象技术的发展,U M L作为一种对软件系统进行可视化、详述、构造和文档化的标准语言,是近代软件工程中对象分析和设计的重要工具。本文通过UML设计仓库信息管理系统的建模应用,从中可以体会出使用UML开发管理的方法和过程。利用标准建模语言UML来对软件进行不同阶段的分析、可视化处理、构造并建立软件系统的文档,对提高软件开发的效率、维护性、重用性以及降低开发成本,都起到了重要的作用。

参考文献

[1]吴季,金贸中.UML面向对象分析(第一版)[M].北京:北京航空航天大学出版社.2002

[2]白尚旺.Power Designer软件分析设计技术[M].北京:电子工业出版社.2002.

[3]田保军.基于UML仓库信息管理系统的分析与设计[J].福建电脑.2008,(4).

篇4:基于UML的系统分析与设计

关键词:UML;系统分析;语言

中图分类号:TP311.52 文献标识码:A 文章编号:1674-7712 (2014) 18-0000-01

随着社会信息化程度的逐渐加快,软件的需求量变得越来越大,结构也变得越来越复杂,这无形中增加了软件开发的难度系数和复杂性。UML作为一种面向对象的建模方法,融入了软件工程领域的新方法、新技术、新思想,在软件不同的开发周期使用同一组概念和表示方法,并且在同一个模型中可以混合使用,具有功能强大、容易表达、适用度较高等优势。

一、统一建模语言

UML的简介。统一建模语言是OMG(Object Management Group)组织于1997年发布的。它是一种面向可视的、对象的且被广泛使用的建模工具。UML语言由元模型和图构成,图代表的是UML的语法,定义各种UML元素、框图、符号及使用方法。元模型是UML的语义,可以给出图的含义,所以UML是通过元模型描述的以图形表示方法为基础的一种建模语言。UML的特点如下:

(1)UML仅仅是一种标准的建模语言,它完全独立于开发过程;(2)UML是单一通用的建模语言;(3)UML擅长分布式、并行的系统的建模;(4)UML有许多新的概念,如扩展机制、模式等。

常见的UML模型图一般包括静态的用例图、动态的状态图和活动图的行为图。用例图包含类图、包图、对象图;状态图和行为图包含顺序图、协作图的交互图形以及构件图、配置图的实现图等5类10种模型。

二、UML在系统开发中的建模

(一)RUP

RUP(Rational Unified Process)是Rational軟件公司创造的一种面向对象且基于网络的软件工程方法。因为UML仅仅是一种建模语言而不是建模方法,本身独立于过程,因此在实际的开发中通常会将RUP和UML联系在一起,建立软件系统可视化模型,帮助人们提供管理软件复杂性的能力。RUP告诉我们如何通过可视化对软件系统建模,使建模变的直观、清晰,降低软件开发的风险系数,从而能更好的适应用户需求的经常性变动,控制整个系统的开发过程,维护系统完整性。

RUP软件生命周期在时间上一般可分为开始、细化、构建和移交4个阶段。开始阶段是为了系统建立案例,通过确定参与者、项目边界、用例及参与者与用例的关系这四个步骤确定用例图。此阶段主要完成用例图。细化阶段的目标是分析问题领域,在开始阶段的基础上,收集更详细的系统需求,建立健全的体系结构基础,制定项目计划,除去已知的高风险元素。此阶段主要包括计划,分析和结构设计。细化阶段需要完成初期评估,审查用例质量和风险调查。类图反应的是对象之间的抽象关系,如幻化、关联和聚合等,建立类图是细化阶段最重要的工作。生成类的三个步骤:(1)识别类;(2)确定类的属性和操作;(3)确定类之间的关系。

细化阶段完成的图主要有包图、类图、活动图、对象图、顺序图、状态图和协作图。在构建阶段中,所有剩余的构件和应用程序功能被开发并集成为产品,所有的功能被详细测试。构建阶段后期,需要配置系统运行的软硬件环境,这其中硬件环境可用配置图来表示。移交阶段是将设计完成的软件产品交给用户,接受用户的测试,提交用户手册,进行用户培训等,确保软件对最终用户是可用的。移交阶段可能是跨越了几次迭代,软件需求规范及用UML表示的用例图、类图、组件图和配置图要及时更新,保证软件和模型同步。

(二)面向对象的UML的建模

面向对象的UML建模过程主要包含了解需求、分析、设计、实现、测试和配置。首先进行业务流程建模,主要是为了评估系统、理解需求及系统将要解决的问题。其次需求分析,主要是用例模型的定义,采集和评价系统的需求。在这个过程中需要了解各角色间的关系以便进行系统设计及实现时减少盲目性,这一过程要注意对象和类的定义以及领域分析。然后进行的是系统分析与设计,设计分为框架设计和详细设计。系统分析与设计的结果是产生一个对象模型,即设计模式。最后进行的是实现,可运用Rational Rose或其他软件提供的平台分析前面所设计的图,再转化为自己熟悉的高级语言,这样可以看到UML把图转换成系统的程序设计结构的框架,并且系统扩张时仅需更改前两步的设计图,改变程序的框架,从而彻底改变传统设计所带来的复杂性和潜在的危险性。在系统测试的时候也可运用UML将系统划分为多个单元,将每个单元作为一个整块,分别对它们进行测试,再将测试结果返回到设计实现中进行分析。可以看出在整个系统设计的全过程,运用UML减少了系统设计的复杂性与盲目性,提高了设计效率。

三、结束语

UML作为一种面向对象的标准化的统一建模语言在系统开发中是非常重要的,特别是对于联系复杂,结构庞大的系统来说,利用基于UML的可视化建模软件工具,按照RUP的要求方便的管理项目需求、使基于组件的框架、验证软件质量、控制版本更新,从而实现整个软件系统的面向对象分析、设计与迭代。

参考文献:

[1]Booch G,Rumbaugh J,Jacobson I.UML用户指南(第2版)[M].北京:人民邮电出版社,2006.

[2]刘芳.UML语言及实际中建模的应用[D].山东科技大学,2003.

[3]成茜.ERP人力资源管理系统在企业中的应用[J].企业导报,2013(07):215-216.

篇5:uml系统分析设计论文

指导老师: 姓名: 学号: 班级:

【设计名称】 网络教学系统-使用UML进行系统的分析和设计 【设计目的】1.掌握UML建模的基础知识和其应用;

2.熟悉Rational Rose环境及功能,能够设计出完整系统。

【设计要求】1.对系统功能进行必要的描述;

2.绘制系统的主要模型图;

3.模型图要有说明性文字解释。【设计内容】1.网络教学系统的需求分析;

2.网络教学系统UML建模。

【设计步骤】

一: 网络教学系统的需求分析

1、系统功能需求

(1)学生可以登陆网站浏览和查找各种信息以及下载文件。

(2)教师可以登陆网站给出课程见解、发布、修改和更新消息以及上传课件。(3)系统管理员可以对页面进行维护和批准用户的注册申请。满足上述需求的系统主要包括下面几个模块

(1)数据库管理模块:提供使用者录入、修改并维护数据的途径。

(2)基本业务模块:教师可以上传文件、发布消息、修改和更新消息;学生可以下载文件;管理员可以维护页面,批准注册等。

(3)信息浏览、查询模块:主要用于对网站的信息进行浏览、搜索查询。

图 1.1系统功能需求

2、数据库管理模块

图 1.2数据库管理模块

(1)教师信息管理:负责教师信息的管理。

(2)课程简介信息管理:负责课程简介信息的管理。(3)文件上传信息管理:负责文件上传信息的管理。

3、基本业务模块

图 1.3基本业务模块

(1)文件上传:教师可以使用此模块将课程的数据上传到网站服务器。(2)文件下载:学生可以使用此模块从网站上下载课件及其他资料。

(3)消息发布:教师可以通过此模块发布学习方法、课程重点等和教学相关的文章,以及和课程相关的通知等。

(4)消息修改和更新:教师可以通过此模块对自己发布的信息进行修改和更新。(5)页面维护:网站管理员可以使用此模块对网站的页面进行维护。(6)用户注册批准:网站管理员可以使用此模块批准用户注册。

4、信息浏览、查询模块

图 1.4信息查询模块功能

(1)网页信息浏览:用户浏览网站信息。

(2)文章信息搜索:用户根据关键字搜索文章。

二: 系统的UML建模

1、系统的用例图

创建用例图之前首先需要确定参与者。① 在网络教学系统中,需要学生和教师的参与。学生可以浏览课程简介,教学计划,学习方法等教师发布的文章,并可以根据关键字查询文章。此外,学生可以从网站上下载课件。教师作为教学的主导者,使用此网站可以发布学习方法,课程重点等和教学相关的文章,以及和课程相关的通知等,还可以将某一门课程的课件上传。② 网站需要一个专门的管理者进行日常维护与管理,所以需要有系统管理员的参与。(1)系统用户参与的总的用例图

教师和学生都可以从“网站用户”这个参与者泛化而来,网站用户是指网站的注册用户,注册用户可以登录系统完成相应的操作。

系统用户参与的总的用例图如图所示。从图中可以清楚地看到泛化关系与各个参与者所参与的用例。

图 2.1系统用户参与的总的用例图

抽象参与者注册用户的用例只有登录系统(System Login)一个,学生和老师用户除了包含这个用例以外,还各自有相对应的用例。(2)学生参与者的用例图

学生参与者的用例图如下图所示。

图 2.2学生参与的用例图

① 文章浏览用例:学生可以浏览诸如课程简介,教学计划,学习方法等教师发布的文章。② 文章搜索用例:学生可以使用搜索功能根据关键字查询相应的文章。

③ 文章下载用例:学生可以使用下载功能将网站上的课件以及资料信息下载到本地机器上。〖用例图说明〗

① Download:文件下载用例。② Look through info:文章浏览用例。③ Article search:文章搜索用例。

④ Identify:权限认证用例。此用例用来认证文件下载是否具有下载文件的权限。

(3)教师参与者的用例图

教师参与者的用例图如下所示。

图 2.3教师参与的用例图 ① 添加课程简介用例:教师可以为自己所教授的课程添加课程简介。② 上传课件用例:教师可以将课程的课件上传到网站上供学生下载。③ 文章或消息发布用例:教师可以发布介绍学习方法,课程重点等和教学相关的文章,以及和课程相关的通知等。④ 文章或消息修改用例:教师可以修改自己发布的文章和通知。〖用例图说明〗

① Course Intro:添加课程简介用例。② Upload CAI:上传课件用例。③ Message Issue:文章或消息发布用例。④ Message Update:文章或消息修改用例。

(4)系统管理员参与者的用例图

系统管理员的用例图如下所示。

图 2.4系统管理员参与的用例图

① 页面维护。系统管理员可以对网站进行日常维护与管理。② 处理注册申请。系统管理员可以处理学生或教师用户的注册申请。〖用例图说明〗

① Page Maintenance:页面维护。

② CAI Process:教师上传的课件经过系统管理员的审批和处理。

③ Information Update:页面更新。系统管理员负责网站的页面更新,除了文章,消息,图片等的更新,还包括页面的美化和板块的调整。

④ Process Registration:处理注册申请。

2、系统的时序图

网络教学系统中的用例很多,所能画出的时序图也很多,在此不一一介绍。(1)系统管理人员管理网站的时序图

图 3.1 系统管理人员管理网站的时序图 〖时序图说明〗

① Login:登录系统的函数。

② Add_or_delete_Article:添加或删除的文章。③ UpdateCAI():更新CAI课件的函数。④ Add_or_delete_User:添加或删除用户。⑤ Show():刷新页面的函数。⑥ Notify():通知用户的函数。

系统管理人员通过与管理窗口的交互可以添加或删除文章,更新CAI课件,添加或删除用户。具体的操作由管理窗口与数据库交互完成,管理员操作后的结果会在页面上显示。(2)用户登录系统的时序图

图 3.2 用户登录系统的时序图

〖时序图说明〗

① Input(String,String):输入用户名和密码的函数。

② Send(String,String):将用户名和密码发送给服务器的函数。

③ Query_and_Validate():查询数据库并验证用户名和密码正确性的函数。

④ feedBack():发送反馈消息的函数,如果验证通过,发送OK;如果验证出错,发送Error.⑤ ShowInformation():将反馈信息显示给用户的函数。

用户要登录系统,首先要和登录窗口交互,输入用户名和密码。登录窗口负责和服务器交互,将用户输入的用户名和密码发送到服务器,服务器再与数据库交互,以验证用户名和密码的有效性,如果验证成功,则返回OK,验证失败返回Error。服务器将通过登录窗口将信息显示给用户。

(3)学生下载文件时序图

图 3.3 学生下载文件的时序图

〖时序图说明〗 ①Request:学生发送下载请求。

②Send(String,String):传递下载参数的函数。③Identity():验证用户权限的函。④authorize:返回认证信息的函数。

学生要下载文件,首先要向下载窗口发送请求,然后下载窗口的参数传递个服务器,服务器与数据库交互以获得用户的权限认证,认证信息再通过服务器及下载窗口传递给学生。

3、系统的协作图:、用户登录系统的协作图

图 4.1 用户登录系统的协作图

〖协作图说明〗

①Input(String,String):输入用户名和密码的函数。

②Send(String,String):将用户名和密码发送给服务器的函数。

③Query_and_Validate():查询数据库并验证用户名和密码正确性的函数。

④feedback():发送反馈消息的函数,如果验证通过,发送OK,否则,发送Error。⑤ShowInformation():将反馈信息显示给用户的函数。

2、学生下载文件的协作图

图 4.2 学生下载文件的协作图

〖协作图说明〗

①Request:学生发送下载请求。

②Request(String,String):传递下载参数的函数。③Identity():验证用户权限的函数。

④showStatus():返回下载状态的函数。如果认证成功,开始下载,不成功则报错。

4、系统的状态图:

图 5.1 系统的状态图

〖状态图说明〗

① HomePage:处于网站主页。② Certify:登录验证状态。③ SuccessPage:登录成功页面。④ UploadApplyPage:文件上传页面。⑤ Storing File:文件存储状态。⑥ OldPage: 页面未更新状态。⑦ NewPage:页面更新状态。

教师要上传文件,首先要登录网站,通过网站认证后转入文件上传页面,上传文件后处于文件存储状态。文件存储后,要经过管理员的认证才可以在页面上显示,如果通过认证,则刷新页面,如果未通过,页面维持不变。

5、系统的活动图:

(1)用户登录系统的活动图

图 6.1 用户登录系统的活动图

〖活动图说明〗 ①InputURL:输入网站的URL。②Show HomePage:显示网站主页。③Input Login Information:输入登录信息。④Press ”OK” Button:单击 “OK”按钮。

⑤Certify UserInfo:用户信息认证。⑥Show Success Page:显示登录成功界面。

用户登录系统时,首先要输入登录网站的URL,然后从首页的登录窗口中输入信息登录信息,如用户名和密码,点击页面上的登录按钮。用户输入的信息会与数据库中的信息对比验证,如果验证成功返回登录成功页面,如果失败,返回登录失败页面。(2)教师上传课件的活动图

图 6.2 教师上传课件的活动图

〖活动图说明〗

①Apply File Upload:申请文件上传。

②Certify Size And Other Aspact:验证文件的大小和其他信息。③Store:文件存储。

④Administrator Authorize:系统管理员认证。⑤Update Page:更新页面。⑥Delete File:删除文件。

教师要上传文件,先要进入文件上传页面,然后验证上传文件的大小和其他信息是否符合要求。验证成功后将文件存储,当系统管理员认证通过,更新页面;认证不通过删除文件。(3)系统管理员维护网站的活动图

图 6.3 系统管理员维护网站的活动图

〖活动图说明〗

①Login:登录系统。

②Process CAI:处理上传的课件。③Update Information:更新页面信息。④Modify Page:修改页面。

6、系统中的类

(1)参与者相关的类

系统中和参与者相关的类的类图如下:

图 7.1 参与者相关的类

〖类图说明〗 ①User类是所有类的父类,包括属性有Account(登录名)、Password(密码)、email(用户邮箱)等。方法有getEmail(获取邮箱)、getAccount(获取登录账户名)以及changePass(修改密码)。

②Student类是学生类,除了继承父类的属性和方法,还包括number(学号)、name(姓名)、sex(性别)、age(年龄)、class(班级)、和grade(年级)等属性。

③Teacher类是教师类,除了继承父类的属性和方法,还包括name(姓名)、sex(性别)、Identity Card(身份证号)、course(教授的课程)、以及TelephoneNum(电话号码)。

④Adminstrator是管理类,管理员有自己的属性,TelephoneNum(电话号码)。还有自己的方法:CertifyUpload(文件的上传认证)、UpdatePageInformation(更新页面信息)、AddUser(添加用户)和DeleteUser(删除用户)等。

(2)各类之间的关系

类不是单独一个模块,各个类之间是存在联系。网络教学系统各个类之间的联系如下图:

图 7.2 各类之间的关系

〖类图说明〗

①CourseIntro类表示课程介绍类。此类的属性有:courseName(课程名)、college(开课院校)、teacher(授课教师)、scorePoint(课程学分)、time(开课时间)、Place(上课地点)和teachingPlan(教学计划)等,它有一个修改课程信息的方法Modify()。

②Article类表示发表的文章类,包括articleNum(文章序号)、articleTitle(文章标题)、teacherToIssue(发布教师)、create Time(创建时间)以及文章内容。方法有Issue(文章发布)、Delete(文章删除)和Modify(修改)。③FileUploadOrDownload类表示上传的文件信息类,属性包括fileName(文件名)、fileType(文件类型)、fileSize(文件大小)、shortIntro(文件的简短介绍)、fileURL(文件地址)、create(文件的创建者)以及createTime(文件的创建时间)等。操作包括checkSize(检查文件大小)、Modify(修改文件信息)、Store(文件存储)以及Cancle(取消上传)等。

教师可以教授几门课程,所以有几门课程的课程简介;教师可以发布多条信息,也可以不发布;教师可以不上传文件,也可以上传多个文件。一个学生可以下载一个文件,也可以不下载文件。

7、系统的组件图

网络教学系统的组件图如下图,组成Web应用程序的页面包括:维护页面(Maintenance Page)、文件下载页面(File Download Page)、文件上传页面(FileUpload Page)、信息发布页面(Message Issue Page)和登录页面(Login Page)。

图 8.1 系统的组件图

8、系统的配置图

配置图主要是用来说明如何配置系统的软件和硬件。网络教学系统的应用服务器负责保存整个Web应用程序,数据库是负责数据库管理。此外还有很多终端可以作为系统的客户端。由于客户端很多,在此只画出3个客户端,系统配置图如下图:

图 9.1 系统的配置图

【小结】

篇6:UML网上售楼系统设计论文

[关键词] 网上售楼 UML ASp

网上售楼系统是一个B2C的电子商务流程,售楼本身业务繁多,涉及金额数量大,根据售楼的实际特点,网上售楼系统在售楼业务完成以后,可以为用户提供支付信息,将会员所要支付的款项收录在支付信息中,为后续服务提供依据。

一、系统分析与设计

1.系统用例分析与设计。用例是获取系统功能需求的一种技术,是从参与者的角度来描述系统行为。一个用例就是参与者与系统的一次交互,它表达了系统的功能和所提供的服务。因此,在识别出参与者的基础上,可确定在网上售楼系统中,有访客、会员、管理员三个参与者,访客可以浏览楼盘信息、注册成为会员。会员可以登录系统、管理个人信息、订购房屋、退订房屋、查询订单、查询退单、查询支付信息、在留言板上留言。管理员可以管理管理员专栏、管理楼盘房屋信息、管理公告信息、管理会员信息、处理订单、处理退单、管理支付信息、管理留言板。

在分析阶段我们分析了访客用例、会员用例和管理员用例,而在设计阶段,所描述的会员和管理员的用例图是编写程序代码、实现系统功能的依据。下面仅以角色权限最大的管理员为例说明(如图1)。

图1 管理员用例图

说明:管理员登录系统后台,主要实现几个大的功能模块,包括管理会员信息、管理管理员信息、管理留言板、管理公告、管理订、退、支付单等。在每个大模块中,又包含具体的基本功能,主要是增、删、改、查的操作。

2.系统类图分析设计与数据库逻辑设计。类图描述系统所包含的类、类的内部结构及类之间的关系,表示的是系统中各个对象及其间各种静态关系。这种静态关系主要有两种:关联和子类型。

类图分为分析阶段的类图和设计阶段的类图,本系统需要九个类:“会员”、“管理员”、“订单”、“退单”、“留言”、“公告”、“支付清单”、“楼盘信息”、“房屋信息”(如图2)。

说明:在对象模型向关系模型的转化中需将业务逻辑类进行转化,即将每个业务逻辑类映射为一个数据实体,在数据库中用一个或多个数据表表示;类属性映射为数据表的字段。本系统涉及的数据库表有:“会员表”、“管理员表”、“订单表”、“退单表”、“留言表”、“公告表”、“支付清单表”、“楼盘信息表”、“房屋信息表”。3.系统顺序图分析与设计。顺序图显示了对象之间的动态合作关系,强调对象之间消息发送的时间顺序,同时显示对象之间的交互,顺序图分为分析阶段的顺序图和设计阶段的顺序图。

设计阶段的顺序图是对分析阶段在内容上的补充和完善,在系统分析和设计中描述了管理员基本信息管理顺序图、留言顺序图、访客注册成为会员顺序图、管理员处理退单顺序图、会员提交订单顺序图。无法一一描述,仅以访客注册会员为例。访客注册会员顺序图描述为:两个参与者,即访客和管理员。访客进入售楼系统后可以注册成为会员。访客要先填写并提交注册信息,当还有必填内容没有填时,则会出现注册失败,系统会自动提示所要填的信息,此时,访客修改补充并提交,系统将显示注册成功。之后,管理员将审核会员信息,如果符合标准,则改变会员状态,由“未审核”转变为“已审核”,只有在已审核状态下的会员才能登录系统(如图3)。

二、系统实现

1.系统体系结构。本系统采用B/S架构,B /S模式把处理功能全部移植到了服务器端,用户的请求通过浏览器发出,无论是使用和数据库维护上都比传统模式更加经济方便.而且使维护任务层次化:管理员负责服务器硬件日常管理和维护,系统维护人员负责后台数据库数据更新维护。

2.系统开发工具。本系统采用采用ASp开发WEB应用程序。ASp(Active server pages动态服务器主页的简称)内含于Internet Information Server(IIS)中,是一套微软开发的服务器端脚本环境。通过ASp ,可以结合HTML网页、ASp 指令和ActiveX 元件,建立动态、交互且高效的WEB 服务器应用程序,所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。后台数据库系统是SQL Server 2000,网页设计软件是Macromedia Dreamweaver。

3.主要界面的实现。本系统分为前台和后台两个部分。前台主要的界面有:前台首页、楼盘信息页、房屋信息明细页、公告首页、公告内容页、注册页、留言页、会员修改个人信息页、提交订单页、查看订单页、提交退单页、查看退单页、支付信息明细页等;后台主要的界面有:审核会员页、发布公告页、公告保存页、管理留言板页、查看会员信息页、删除会员信息页、修改会员信息页、查看订单并受理页、订单生成支付信息页、订单生成支付信息明细页、管理员查看支付信息明细页等(如图4)。

三、总结

本文结合使用了UML 和ASp, 设计并实现了网上售楼系统。采用UML 建模语言进行分析,具有灵活、高效的特点,为进行可视化系统的开发提供了极大的方便。

参考文献:

[1]邝孔武王晓敏:信息系统分析与设计[M].清华大学出版社.2006

上一篇:初中物理家庭电路知识点下一篇:四年级半期小结