实验报告面向对象的分析设计实现—图书管理系统一.需求分析1.1系统需求描述一般图书馆管理系统主要用于对图书馆日常工作的管理,主要任务是用计算机对读者、图书等各种信息进行日常管理,如查询、修改、增加、删除、图书借阅和归还的管理等。
本系统实现了图书馆的信息化管理,完成了图书馆管理系统的基本功能。
一般图书馆管理系统主要包括用户登录子系统、用户管理子系统、图书管理子系统、图书借阅与归还、图书和用户信息查询子系统四个部分,各部分主要功能如下:用户登录子系统:用于数据库的连接,主界面的设计和不同身份用户的登录管理。
用户管理子系统:用于用户信息的管理,如用户添加、用户信息修改、用户删除。
图书管理子系统:用于图书信息的管理,如新书入库、图书信息修改、图书信息删除。
图书借阅与归还子系统:用于用户借阅和归还图书。
图书和用户信息查询:图书和用户信息的查询。
1.2系统功能结构图图 1.1 图书管理系统分析系统流程图1.3 系统解决方案以上述一般的图书管理系统分析为构思原型。
为简化系统,忽略掉其他复杂琐碎的功能需求,仅保留图书信息的录入、修改和读者借、续借、还的功能。
读者与管理员通过界面对象调用控制类对象,控制对象进行各种操作并把信息写入数据库。
二.系统设计2.1 系统E-R图图 1.2 用户实体图图1.3 书籍实体图图 1.4 实体属性图2.2数据库表结构表2.1 图书信息表表2.2 用户借阅表表2.3用户信息表2.3用例文档本系统共设置四个活动者。
分别是TT_People、TT_Registrar、TT_Reader 和TT_Database。
其中TT_People泛指与系统发生关系的人;TT_Registrar为系统管理员,负责添加、修改图书信息;TT_Reader为所有读者,读者可能发生借书、续借、还书的行为;TT_Database为存储各种信息的数据库对象。
另:考虑到现实图书馆中还存在“图书馆管理员”这一角色,但其所起的作用仅为代替读者完成各种系统操作,故没有设置此活动者。
系统中共有五个用例。
TT_Addinfo、TT_Modifyinfo、TT_Borrow、TT_Renew 和TT_Return。
TT_Addinfo表示管理员添加图书信息;TT_Modifyinfo表示修改图书信息;TT_Borrow表示读者借阅图书;TT_Renew表示读者续借图书;TT_Return表示读者归还图书。
图 2.1 整体用例图2.4 静态模型图 2.2 静态模型图3.进入借书事件流第2步A2:图书流通状态冲突1.系统提示图书流通状态冲突2.读者确认3.进入借书事件流第2步图 2.3 TT_Addinfo序列图图 2.4 TT_Modifyinfo序列图图 2.5 TT_Borrow序列图图 2.6 TT_Return序列图图 2.7 TT_Renew序列图图 2.8 TT_Book对象状态图图 2.9 TT_Addinfo活动图图 2.10 TT_Modifyinfo活动图图 2.11 TT_Borrow活动图图 2.12 TT_Return活动图图 2.13 TT_Renew活动图三.数据处理3.1 主要代码实现//Source file: F:\\我的文档\\uml\\s\\FormObject.javapublic class FormObject{public TT_ControlObject theTT_ControlObject;public TT_Book theTT_Book[];public FormObject(){}public void DisplayBookInfo(){}public void DisplayBookList(){}public void ShowSuccessInfo(){}public void SelectCommand(){}public void GetBookInfo(){}public void GetReaserInfo(){}public void GetBookReaderInfo(){}public void GetRegistrarInfo(){}public void ShowBookInfo(){}}//Source file: F:\\我的文档\\uml\\s\\TT_Book.java public class TT_Book{private Date Data;private String Id;private String Name;private String State;private int Type;public TT_ControlObject theTT_ControlObject;public TT_Book(){}public void CreatBook(){}public void DestoryBook(){}public void GetBook(){}public void GetId(){}public void SetId(){} /**@return Date**/public Date GetDate(){return null;}public void SetDate(){} /**@return ng.String * /public String GetState(){return null;}public void SetState(){}}//Source file: F:\\我的文档\\uml\\s\\TT_ControlObject.java public class TT_ControlObject{public FormObject theFormObject;public TT_Book theBook[];public TT_Database theTT_Database;public TT_ControlObject(){}public void CanAdd(){}public void CanModify(){}public void CheckBook(){}public void CheckOverTime(){}public void CheckReader(){}public void CheckPassword(){}public void VerifyBook(){}public void VerifyReader(){}public void VerifyBookReader(){}public void VerifyRegistrar(){}}//Source file: F:\\我的文档\\uml\\s\\TT_Database.java public class TT_Database{private String DBPath;public TT_Database(){}public void AddBookInfo(){}public void ModifyBookInfo(){}public void ModifyReaderInfo(){}public void QueryBook(){}public void QueryReader(){}public void QueryPassword(){}public void GetDBPath(){}public void SetDBPath(){}public void OpenDB(){}}//Source file: F:\\我的文档\\uml\\s\\TT_People.java public class TT_People{public String Id;public String Name;public TT_People(){}public void GetId(){}public void SetId(){}public void GetName(){}public void SetName(){}}//Source file: F:\\我的文档\\uml\\s\\TT_Reader.java public class TT_Reader extends TT_People{private Integer Qua;private Integer MaxQua;public FormObject theFormObject[];public TT_Reader(){}public void GetMaxQua(){}public void SetMaxQua(){}public void GetQua(){}public void SetQua(){}}//Source file: F:\\我的文档\\uml\\s\\TT_Registrar.java public class TT_Registrar extends TT_People{private String Password;public FormObject theFormObject;public TT_Registrar(){}public void GetPassword(){}public void SetPassword(){}}3.2 系统运行测试图 3.1 主界面图 3.2 管理员登陆图 3.3 添加图书图 3.4 删除图书图 3.5 修改图书图 3.6 删除用户图 3.7 修改用户图 3.8 添加用户图 3.9 借书窗口图 3.10 借书成功窗口图 3.11 还书窗口图 3.12 还书成功窗口图 3.13 借书列表图 3.14 书籍列表图 3.15 用户列表3.3 报告小结以面向对象的分析系统需求,建立模型和设计实现,系统基本实现了图书信息的录入和修改和读者借、续借、还的功能。
读者与管理员通过界面对象调用控制类对象,控制对象进行各种操作并把信息写入数据库。
在实验上机过程中,得到了老师和同学们的解答和帮助,顺利完成这次实验报告。
不足之处:系统只是简单基本实现了图书信息录入修改和读者借、续借、还等功能,在应用中还需要不断修改和完善。