图书管理系统用例图类图时序图

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

软件系统分析与设计

实验报告

学院:计算机科学与技术学院

专业:软件工程

学号:*********

姓名:***

实验名称:图书管理系统用例建模

时间:

一、实验内容与要求

本实验要求学生对学校的图书馆管理系统进行需求分析,对系统功能进行用例建模,画出用例图,类图以及相应的时序图。在使用UML对系统建模时,学会使用UML建模工具,

熟悉工具中的功能。

二、用例分析

1、读者“借书还书系统”用例图

(f

还书

(from Use Cases)

1.1、行为者:

主要行为者:读者。

1.2、前置条件:

读者进入图书管理系统。

1.3、事件流:

1、3、1、主要事件流:

1、3、1、1:读者检索所需图书信息,并查瞧;

1、3、1、2:读者检索到所需图书,登录系统,开始借书;

1、3、1、3:系统查询图书信息,图书数目就是否可借;

1、3、1、3、1:图书显示可借,借书成功;

1、3、1、3、2:图书显示不可借,借书失败;

1、3、1、4:进入续借图书界面,续借图书;

1、3、1、5:系统查瞧预约记录,

1、3、1、5、1:没有冲突,续借成功;

1、3、1、5、2:有冲突,续借失败;1、3、3、1:

1、3、1、6:读者归还图书;

1、3、1、6、1:归还时间没有逾期,归还成功;

1、3、1、5、2:归还时间逾期,逾期处罚,归还成功;

1、3、

2、备选事件流:

1、3、

2、1:图书检索信息失败,未检索到图书,重新输入信息检索;

1、3、

2、2:未曾检索到用户检索的图书,系统显示相关联的信息的图书;

1、3、

2、3:用户名或密码输入错误,登录系统失败,重新输入用户名或密码登录;

1、3、

2、4:系统显示图书不可借后,进入图书预约界面,输入信息预约图书;

1、3、3、异常事件流:

1、3、3、1:读者登录系统失败,未曾注册用户;

1、3、3、1、1:返回系统注册用户后,重新登录。

1.4、后置条件:退出系统。

1.5、扩展点:无。

2、“图书信息管理系统”用例图

新书信息录入

(f

逾期通知

(from Use Cases)

(from Use Cases)

2.1、行为者:

主要行为者:管理员;

2.2、前置条件:管理员打开图书信息管理系统;

2.3、事件流:

2、3、1:主要事件流:

2、3、1、1:图书管理员输入管理员登录信息,登录系统;

2、3、1、2:进入图书信息管理界面,查瞧已有图书信息,就是否有需要购入图书;

2、3、1、2、1:录入新购进图书信息,并确认;

2、3、1、3:进入读者信息管理界面,管理已有用户信息;

2、3、1、4:进入信息通知界面,查瞧已有用户图书借阅、预约情况;

2、3、1、4、1:查瞧读者所预约图书,自动查询图书信息,确认就是否已有

可借图书,有则通知读者;

2、3、1、4、2:查询读者已借图书信息,根据已借时间及归还时间分类;

2、3、1、4、2、1:所借图书即将逾期,启动系统提醒功能;

2、3、1、4、2、2:所借图书已经逾期,启动逾期及处罚通知功能;

2、3、2:备选事件流:

2、3、2、1:管理员用户名或登录名错误,重新登录;

2、3、2、2:需要购进新图书,存储信息,通知相关人员;

2、3、2、3:读者预约图书没有可借图书,不予通知;

2、3、2、4:预约通知提醒后,删除该预约记录;

2、3、2、5:读者所借图书距离归还时间仍很久,无需通知;

2、3、3:异常事件流:

2、3、3、1:登录失败超过一定次数后,系统冻结该用户名,一段时间后可以重用;

2.4、后置条件:退出系统;

2.5、扩展点:无。

三、“图书管理系统”类图及关系

1、阅读者信息类:

1、1、类名:阅读者信息<<父类>>;

1、2、属性名:

1、2、1、private: ID<<阅读者证件号>> 类型:String;

1、3、方法:未定。

2、读者类:

2、1、类名:读者<<子类>>;

2、2、属性名:

1、2、1、private:ID<<阅读者证件号>> 类型:String;

2、3、方法:未定。

3、管理员类:

3、1、类名:管理员<<子类>>

3、2、属性名:

1、2、1、private: ID<<阅读者证件号>> 类型:String;

3、3、方法:未定。

4、Book类:

4、1、类名:book

4、2、属性名:

4、2、1、private: 书号<<图书编号>> 类型:String;

4、2、2、private: 书名<<图书名>> 类型:String;

4、2、3、private: 出版号<<图书出版编号>> 类型:String;

4、2、4、private: 出版社名<<图书出版社名>> 类型:String;

4、2、

5、private: 作者<<图书作者姓名>> 类型:String;

4、3、方法:未定。

5、Copy_book类:

5、1、类名:copy_book;

5、2、属性名:

5、2、1、private: 书号<<图书编号>> 类型:String;

5、2、2、private: 书名<<图书名>> 类型:String;

5、2、3、private: 出版号<<图书出版编号>> 类型:String;

5、2、4、private: 出版社名<<图书出版社名>> 类型:String;

5、2、5、private: 作者<<图书作者姓名>> 类型:String;

5、2、

6、private:count<<图书数量>> 类型:String;

5、3、方法:未定。

6、借还书记录类<<关联类>>:

6、1、类名:借还书记录;

6、2、属性名:

6、2、1、private: 书号<<图书编号>> 类型:String;

6、2、2、private: 书名<<图书名>> 类型:String;

6、2、3、private:读者姓名<<>> 类型:String;

6、2、4、private: 出版社名<<图书出版社名>> 类型:String;

6、2、5、private: 作者<<图书作者姓名>> 类型:String;

6、2、6、private:borrowdate<<所借图书日期>> 类型:Date;

6、2、

7、private:due_Date<<图书应还日期>> 类型:Date;

6、2、8、private:real_Date<<图书实还日期>> 类型:Date;

6、3、方法:

6、3、1、private:getDate() 返回值:Date;

6、3、2、private:isOverDate() 返回值:bool;

6、3、3、private:opname() 返回值:void;

7、预约类:

7、1、类名:Reservation;

7、2、属性:

7、2、1:private:书名<<预约书名>> 类型:String;

7、2、2:private:作者<<图书作者>> 类型:String;

7、2、4:private:读者ID<<预约者ID>> 类型:String;

7、2、4:private:预约时间<<预约时间>> 类型:Date;

7、3、方法:未定。

相关文档
最新文档