图书管理系统-OOD-状态图和通信图

合集下载

图书管理系统的数据流图、程序功能图

图书管理系统的数据流图、程序功能图

数据流图:数据流图:读者读者图书资料图书资料管理系统管理系统管理员管理员读者读者 查询查询Book 图书信息图书信息Author 作者信息表作者信息表BookConcern 出版社信息表出版社信息表Type 类型信息表类型信息表管理员管理员添加图书添加图书信息信息删除图书信息信息修改图书信息信息Book 图书信息表管理员管理员添加作者添加作者删除作者删除作者修改作者修改作者Author 作者信息表作者信息表管理员管理员添加出版社删除出版社修改出版社BookConcern 出版社信息表社信息表管理员管理员添加图书添加图书 类型类型删除图书类型类型修改图书类型类型Type 图书类型信息表图书查询图书查询书名查询作者查询类型查询出版社查询显示作者名显示类型名显示出版社名显示查询结果显示查询结果按查询按钮按查询按钮图书管理图书管理添加修改删除显示信息显示信息查询查询图书管理图书管理添加类型类型 添加作者作者添加出版社版社添加 修改 删除 删除添加 添加 修改 修改 删除类型信息类型信息更新更新管理员管理员更新更新出版社出版社查询或更新图书图书书名书名备注备注类型类型出版社出版社作者作者更新更新 作者信息作者信息类型名类型名 备注备注备注备注出版社出版社 年龄年龄备注备注职务职务 姓名姓名性别性别n 1 1 n Author ID 作者名作者名 年龄年龄 性别性别 职务职务 备注备注BookConcern ID 出版社出版社 备注备注Type ID 类型类型 备注备注Book ID 书名书名作者作者 出版社出版社 类型类型 藏书份数藏书份数开始开始显示所有图书显示所有图书选择选择输入书名输入书名按查询按钮按查询按钮显示查询结果显示查询结果结束结束选择作者名者名选择出版社版社 选择类型名选择类型名。

图书管理系统图文说明

图书管理系统图文说明

图书管理系统数据流图第一:首先画图书管理系统和顾客(图书购买者)、出版社的数据流图第二:其次图书管理系统和学校学生的数据流图(顶层数据流图)第三:分成数据流图第四:从第三幅图的4里面继续细分的数据流图借阅信息表还书信息表第五:数据字典(1)分成数据流图的字典加工编号:1加工名:系统管理输入流:用户信息输出流:权限信息加工逻辑:检查用户信息输入请求的有效性加工编号:2加工名:书籍管理输入流:权限信息,借阅信息,图书人库信息输出流:书籍查询信息,书籍情况加工逻辑:检查用户的权限信息和借阅信息,以及图书入库信息加工编号:3加工名:读者管理输入流:权限信息,用户情况,读者录入信息输出流:读者类别信息,读者情况加工逻辑:检查读者的信息录入加工编号:4加工名:借阅管理输入流:借阅信息,图书管理,借阅类别输出流:图书借阅信息,借阅信息加工逻辑:检查读者借阅的图书(2) 从4里面继续细分的数据字典加工编号:4.1加工名:借书管理输入流:读者类别,图书信息,读者信息,续借情况,借阅信息,读者还书情况输出流:借书信息加工逻辑:整理读者的借阅信息,还书信息,续借信息,综合输出读者的借阅情况加工编号:4.2加工名:还书管理输入流:还书信息,读者类别,读者信息,罚款数输出流:过期信息,罚款信息,还书信息,丢失信息,加工逻辑:整理读者的还书记录和信息,综合输出读者还书情况,有无罚款和借书的时间是否过期,以及借了什么书等加工编号:4.3加工名:续借管理输入流:续借信息输出流:续借情况加工逻辑:根据续借信息,输出续借书籍的情况加工编号:4.2.1加工名:过期罚款管理输入流:过期信息输出流:罚款数加工逻辑:根据过期的信息,开出罚款的数额加工编号:4.2.2加工名:书籍丢失管理输入流:丢失信息输出流:罚款数加工逻辑:根据丢失的情况,开出罚款数额。

图书管理系统-OOD-设计模式

图书管理系统-OOD-设计模式


19

识别界类、控制类和实体类
• 办理借阅用例

边界类
控制类
实体类
22
根据分析及时序图,完善类的设计
• 借阅信息类:
–加上登记借阅信息、读取借阅图书信息方法

• 图书信息类:
–加:图书状态属性,修改图书状态方法
• 书目类:
–加馆藏册数、在馆数量两个属性,修改在馆数量方法
11

登录界面中,对 用户验证处理类 的使用
用户验证处理类
2011-10
12
BCE模式(BEC Pattern)
• BCE模式指(Boundary-Control-Entity Patterns)。 • 我们可以借助BCE模式迅速绘制出整合领域概念 (domain concept)和业务流程(business process)两方面的序列图。
5
设计原则(Design Principles)
• 还记得“春晓”吧?
设计1 设计2

设计3
设计4 设计5
• 同样的需求,可以采取不同的设计方式来完成。 • 设计的好坏会影响系统的可重用性、可维护性和 可扩展性。 6
设计模式(Design Pattern)

提高代码复用 提高可维护性

按照良好的设计 原则进行设计
16
边界类例(Example)

在这里,我们重点 关注显示的信息, 而非UI界面
17
通过两个用例看:
• 如何识别:
–边界类 –控制类 –实体类

18
分析办理借书用例的业务流程
• • • • • • 细化办理借书业务流程: 图书管理员点击“图书借阅”启动该用例; 输入借阅证编号。 办理借阅的步骤可细化为: 输入图书登录号。 a) 登记借阅信息; b) 修改图书状态 点击“借阅” c) 修改书目在馆数量 显示当前借阅信息(书名,ISBN,借阅时间,应归 还时间)

图书管理系统-动态设计-状态图解读

图书管理系统-动态设计-状态图解读

可行性研究
领域分析
需求分析
设计
编码
测试
交付
软件工程实践
状态图的概念和内容
我们的进度,在这里
• 状态图是UML中对系统动态方面建模的图之一。 • 状态图是一种特殊种类的图形,它拥有所有其他图一 样的公共特性,即名称和投影在一个模型上的图形。 状态图和其他图的区别在于它的内容。状态图通常包 括如下内容:(1)状态(2)转换 • 在UML中,图形上每一个状态图都有一个初始状态( 实心圆),用来表示状态机的开始还有一个终止状态 (半实心圆),用来表示状态机的终止,其他的状态 用一个圆角的矩形表示
开始
重填 图书借阅
软件工程实践
阅读“图书归还”用例描述
• 用例名称:图书归还 • 用例描述:图书馆工作人员输入图书登录号进行图书 归还。 • 参与者:图书馆工作人员。 • 前置条件:图书馆工作人员点击“图书归还” • 基本路径: • 输入图书登录号 • 点击“查询” • 显示该书借阅信息(书名,ISBN,借阅时间,应归还时 间) • 点击“归还” • 提示“归还成功” • 备选流程: • 点击重新填写,实现图书登录号重新填写
软件工程实践
状态图和活动图的区别
• 状态图:用来描述对象,子系统,系统的生命周期。通 过状态图可以了解一个对象所能达到的所有状态,以及 对象收到的事件对对象状态的影响。 • 活动图:显示动作及其结果。着重描述操作(方法)实 现中所完成的工作以及用例实例或对象中的活动,它是 状态图的一个变种。 • 状态图与活动图的区别:活动图主要描述动作及对象状 态改变的结果。状态图主要描述的是事件对对象状态的 影响。
事件、动作、参数、警戒(监护条件)
软件工程实践
1.2 状态(State)

图书馆管理系统数据流图

图书馆管理系统数据流图

1.1 系统分析1.1.1 图书馆管理信息系统的基本任务“图书馆管理信息系统”是一个面向具有万人以上用户,位于某中型企事业单位内的图书馆管理系统,藏书规模约100 多万册,每天的借阅量近万册。

在手工操作方式下,图书的编目和借阅等工作量大,准确性低且不易修改维护,读者借书只能到图书馆手工方式查找书目,不能满足借阅需求。

需要建立一套网络化的电子图书馆信息系统。

该系统服务对象有两部分人:注册用户和一般读者。

一般读者经注册后成为注册用户,注册用户可以在图书馆借阅图书,其他人员只可查阅图书目录,但不能借阅图书。

系统同时考虑提供电子读物服务,目前只提供电子读物的目录查询服务,不久的将来将提供电子读物全文服务。

用户可通过网络方式访问图书馆管理信息系统。

1.1.2 系统内部人员结构、组织及用户情况分析为了对系统有一个大致了解,现给出系统内部人员结构、组织及用户情况等基本信息。

图书馆管理系统的组织结构如图1.1 所示。

图1.1 图书馆管理信息系统的组织结构图书馆由馆长负责全面工作,下设办公室、财务室、采编室、学术论文室、图书借阅室、电子阅览室、期刊阅览室和技术支持室。

各部门的业务职责如下。

办公室:办公室协助馆长负责日常工作,了解客户需求,制定采购计划。

财务室:财务室负责财务方面的工作。

采编室:采编室负责图书的采购,入库和图书编目,编目后的图书粘贴标签,并送图书借阅室上架。

学术论文室:负责学术论文的收集整理。

图书借阅室:提供对读者的书目查询服务和图书借阅服务。

电子阅览室:收集整理电子读物,准备提供电子读物的借阅服务,目前可以提供目录查询。

期刊阅览室:负责情况的收集整理和借阅。

技术支持室:负责对图书馆的网络和计算机系统提供技术支持。

1.1.3 系统业务流程分析系统的业务流程要达到的业务目标,业务流程分析是系统分析的基础环节。

图书馆管理信息系统的业务流程如图1.2所示。

图1.2 图书馆管理信息系统的业务流程通过业务流程调查,理清图书馆管理系统的主要业务和业务的流程。

4-图书管理系统-动态设计-状态图[整理版]

4-图书管理系统-动态设计-状态图[整理版]

可行性研究 领域分析 需求分析
设计
编码
测试
交付
我们的进度,在这里
在已有的状态图上加入新的状态和转换
软件工程实践
开始
登录失败
点击新办借阅证
重填
新办借阅 证
提交
重填
登录
登录成功 图书管理系 点击补办借阅证 补办借阅 查询
统主界面

返回
显示新办借 阅证信息
显示旧借 补办 显示新借
阅证信息
阅证信息
点击图书借阅
可行性研究 领域分析 需求分析
设计
编码
测试
交付
我们的进度,在这里
在已有的状态图上加入新的状态和转换
软件工程实践
开始
登录失败
点击新办借阅证
重填
新办借阅 证
提交
重填
登录
登录成功 图书管理系 点击补办借阅证 补办借阅 查询
统主界面

点击图书借阅
返回
显示新办借 阅证信息
显示旧借 补办 显示新借
阅证信息
阅证信息
点击新办借阅证
重填
新办借阅 证
提交
返回 显示新办借
阅证信息
登录
登录成功 图书管理系 统主界面
可行性研究 领域分析 需求分析
设计
编码
测试
交付 软件工程实践
我们的进度,在这里
图书管理系统的用例描述——补办借阅证
• 用例名称:补办借阅证 • 用例描述:图书馆工作人员输入学生信息进行
借阅证补办。 • 参与者:图书馆工作人员。 • 前置条件:图书馆工作人员点击“补办借阅证
• 最后得到完整的系统状态图。
可行性研究 领域分析 需求分析

图书馆管理系统的DFD图

图书馆管理系统的DFD图

图书馆管理系统的DFD图:数据字典:图书馆管理系统=用户管理+用户信息查询+图书管理+图书查询+借还登记用户管理=用户注册+修改口令+用户借阅状态+ 用户挂失补办+用户注销+用户信息查询用户注册=读者编号+姓名+性别+借书证号+登记日期+用户注册口令用户借阅状态={在借书本编号+书本条形码+是否续借+应还日期}+借阅次数用户挂失补办=读者编号+姓名+借书证号+是否挂失+原口令+新口令用户注销=读者编号+姓名+借书证号+是否注销用户信息查询=读者编号+姓名+{所借书名+图书编号+借阅日期+应还日期+是否续借}+修改口令修改口令=读者编号+姓名+借书证号+原口令+新口令图书管理=图书入库+图书借阅状态+图书归还+图书罚款+图书注销+图书查询图书入库=入库图书编号+书本条形码+书名+作者+ISBN+出版社+价格+所属类别+所放书架编号+现存量+入库日期+内容简介+借阅次数+是否注销+操作员图书借阅状态=图书编号+读者编号+借阅日期+应还日期+续借次数+操作员图书归还=图书编号+读者编号+归还日期+是否超期+操作员图书罚款=图书编号+读者编号+罚款日期+应罚金额+实收金额+是否交款+操作员图书注销=图书编号+注销数量+注销日期+操作员图书查询=图书编号+书本条形码+书名+作者+ISBN+出版社+价格+所属类别+所放书架编号+现存量+入库日期+内容简介+借阅次数借还登记={图书编号+书名+借阅日期+所属类别}+借阅次数2. 某事务系统具有如下功能:1)读入用户命令,并检查其有效性;2)按照命令的编号(1-4号)进行分类处理3)1号命令计算产品工时,能根据用户给出的各种产品数量,计算出各工种的需要工时;4)2号命令计算材料消耗,根据产品的材料定额和用户给出的生产数量,计算各种材料的需求量;5)3号命令编织材料订货计划;6)4号命令计算产品成本。

试用结构化分析方法画出该系统的DFD图。

欢迎您的下载,资料仅供参考!致力为企业和个人提供合同协议,策划案计划书,学习资料等等打造全网一站式需求。

图书管理系统体系结构图和数据流程图

图书管理系统体系结构图和数据流程图

图书管理系统需求分析—功能流程图一、功能结构图系统管理员身份认证信息 图书管理信息 借阅者 借阅者超时管理信息 管理信息借 图书 图 书目 借阅者 阅 借 借阅者 超时罚款 超时 借阅 图书信息表 信息 书 信息 信息表 者 阅者 分类 信息表 罚款 信息表 表 信息表 信息表 信息表 信息表 信息表二、各模块功能说明系统管理员系统分为4个模块:系统管理员身份认证模块、图书管理模块、借阅者管理模块和借阅超时管理模块。

(一)管理员身份认证① 接口描述:输入系统管理员身份认证信息② 模块功能:通过检验认证信息允许系统管理员进入系统管理员系统管理③ 过程陈述:将输入的管理员身份认证信息与管理员信息表中的信息惊喜对照,若管理员 编号、姓名和密码中的任意一项与信息管理员信息表中的信息不符合则认为 系统管理员管理系统 图书管理 借阅者管理 借阅超时管理身份认证 图书查看 图书删除 图书修改 借阅者查看 借阅者修改 借阅者删除 借阅超时查看 借阅超时修改输入有误,身份不通过,要求重新输入;只有三者都相同才能通过身份认证进入系统。

④约束:最多只允许系统管理员输入三次,若三次都有误,则认定该输入者为非法管理员,不允许其再输入。

(二)借阅者管理模块①接口描述:输出借阅者管理信息②模块功能:对借阅者信息|借阅者分类信息执行修改、查看和删除操作③过程陈述:输入借阅者编号,打开借阅者信息表可修改、查看和删除表中的信息,并将修改后的信息保存到借阅者信息表中,执行删除操作则需对借阅者分类信息表中的信息进行修改;输入借阅者职务/班次,可打开借阅者分类信息表,可修改、查看和删除表中的信息,并将修改后的信息保存到借阅者分类信息表中。

④约束:借阅者可分为学生和教师两类,以职务/班次为关键字进行索引。

(三)图书管理模块①接口描述:输出图书管理信息②模块功能:对图书信息|书目信息执行修改、查看和删除操作③过程陈述:输入图书编号,打开图书信息表可修改、查看和删除表中的信息,并将修改后的信息保存到图书信息表中,执行删除操作则需对书目信息表中的信息进行修改;输入图书名|图书类名,可打开书目信息表,可修改、查看和删除表中的信息,并将修改后的信息保存到书目信息表中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

28
课后任务(Tasks After Class)
• 继续完成对各系统用例运用BCE模式 • 画出系统中某对象例图书的状态图 • 思考界面设计,简单描述主窗口中的菜单设计

事件、动作、参数、警戒(监护条件)
20
例:员工下班回家
在员工下班回家的过程中,经 历的状态包括: • 到下班时间了,收拾东西 准备回家(不考虑加班); • 开始等待电梯; • 乘坐电梯到达楼下; • (发现没带家里钥匙,上 楼拿)乘坐电梯上楼; • 去公交车站等车; • 乘公共汽车去菜场; • 买菜; • 回到家。

3
用例1:登录
用例名称:登录 用例描述:输入帐号和密码进行系统登录。 参与者:图书管理员 前置条件:无 基本路径: 1. 系统管理员提交登录请求 2. 系统验证登录请求 3. 系统反馈验证结果

分析并绘制时序图
• 应用BCE模式,至少有登录界面类、密码验证控 制类和账号信息实体类。 • 还有系统主窗口边界类

完善时序图

由此我们发现
• 在LoginCtrl类中,我们需要一个方法(例:验证 身份)用来验证账号口令的正确性,该方法需要 返回一个boolean值,根据返回的结果,决定下 一步的动作; • 在账号信息实体类中需要一个方法(例:查询用 户),用来查询是否确有这样一个用户存在。

修改类图
• 为LoginCtrl控制类添加方法:验证身份 • 为账号信息类添加方法:查询用户
新状态
开始
结束
转换
19
状态机的各种元素(Elements)
初始状态
开始 关闭 首页面
entry/ 播放音乐()

最终状态
结束
状态
转换
<<类型>>
嵌套状态
NewState2 NewState 4 NewState 5 NewState 3 NewState 6
入口动作
事件( 参数 )[ 监护条件 ] / 动作

SWEG

电 话 系 统 的 状 态 图
SWEG
16
状态图(State Diagram)
• 状态图中所涉及到的几个概念 –状态 –事件

SWEG
状态图(State Diagram)
• 状态是任何可以被观察到的系统行为模式,一个 状态代表系统的一种行为模式。状态规定了系统 对事件的响应方式。系统对事件的响应,既可以 是做一个(或一系列)动作,也可以是仅仅改变系 统本身的状态。

办理归还用例

添加图书用例

对每一个系统用例运用BCE后

暂不考虑预约、续借功能
状态图(State Diagram)
• 状态机视图通过对类对象的生命周期建模来描述 对象随时间变化的动态行为。 • 事件表示对象可以探测到的各种变化——如何接 收到从一个对象到另外一个对象的调用或显示信 号、某些值的改变或者时间的流逝。

状态图(State Diagram)
• 考虑图书的状态:
–思考图书有哪些状态? –这些状态之间的转换是什么事件触发的?


• 图书的状态
状态图概述(State Diagram Overview)
• 状态图(也称为状态转换图)通过描绘系统的状态 及引起系统状态转换的事件,来表示系统的动态 行为。 • 例:电话系统的状态图
–例 电话的闲置、通话、忙音

• 事件是引起系统状态转换的控制信息。
–例 拿起电话、接通、占线
18
状态图的概念和内容(Concepts and Contents)
• 状态图是UML中对系统动态方面建模的图之一。 • 在UML中,图形上每一个状态图都有一个初始状 态(实心圆),用来表示状态机的开始,还有一 个终止状态(半实心圆),用来表示状态机的终 止,其他的状态用一个圆角的矩形表示
监护条件 动作

源状态 目标状态
2010-10 2009-09 25

26
注意事项(Notice Items)
• 根据阅读习惯,在绘制状态图的时候,把初始状 态放置在左上角,把最终状态放置在右下角。

27
状态图和活动图的区别

• 状态图:用来描述对象,子系统,系统的生命周 期。通过状态图可以了解一个对象所能达到的所 有状态,以及对象收到的事件对对象状态的影响。 • 活动图:显示动作及其结果。着重描述操作(方 法)实现中所完成的工作以及用例实例或对象中 的活动,它是状态图的一个变种。 • 状态图与活动图的区别:活动图主要描述动作及 对象状态改变的结果。状态图主要描述的是事件 对对象状态的影响。
图书管理系统-通信图和状态图
计科系 段恩泽 email:duanenze@
2014年8月
BCE模式(BEC Pattern)
B:Boundary,边界 C:Controler,控制器 E:Entity,实体

2
BCE模式(BEC Pattern)
对主要系统用例应用BCE模式: • 登录 • 办理归还 • 添加(修改/删除/查询)图书 • 添加(修改/删除/查询)用户 • 新办(补办/注销)借阅证 • ......
内部转移

NewState2
entry/ 入口动作 exit/ 出口动作 do/ 动作
子状态1
NewState 3 NewState 6
NewState 5
23
状态规范卡(State Specification Card)

三种常见活动动作
24
转移(Transfer)
• 转换是状态间的关联。它们用于对一个实体的 不同状态间的关系建模:转换由5个部分组成, 它们分别是:源状态、目标状态、触发事件、 监护条件和动作。 触发事件

21
状态(State)
• 一个完整的状态有5个组成部分:
–(1)名字(name) –(2)入口/出口动作(entry/exit action) –(3)内部转换(Internal Transition) –(4)延迟事件(Deferred Event) –(5)子状态(Substate)

22
状态(State)
相关文档
最新文档