1.引言1.1编写目的软件设计的任务是将软件需求变换成为软件的具体设计方案。概要设计根据软件需求导出软件的体系结构;详细设计给出软件模块的内部过程描述。该文档是设计结果的详细描述,也是程序员编写程序的功能依据。1.2项目背景开发软件名称:图书管理系统。项目开发者:怀化学院计算机科学系“图书管理系统”开发小组:×××(×号,组长),×××(×号),……用户单位:××学院1.3定义图书管理系统对于现代图书馆而言,是能否发挥其教学科研的作用的至关重要技术平台。对于读者和图书管理员来说,是能否方便快速获取信息的关键。所以,图书管理系统应该能够为用户提供充足的信息和快捷方便的操作手段。1.4参考资料钱乐秋等,《软件工程》,青还大学出版社;张害藩,《软件工程导论》(第四版),清华大学出版社;王珊等,《数据库原理及设计》,清华大学出版社;赵池龙等,《软件工程实践教程》,电子工业出版社。2.需求概述在图书管理系统中,管理员要为每个读者建立借阅账户,并給读者发放不同类别的借阅卡(借阅卡可提供卡号、读者姓名),账户内存储读者的个人信息和借阅记录信息。持有借阅卡的读者可以通过管理员(作为读者的代理人与系统交互)借阅、归还图书,不同类别的读者可借阅图书的范围、数量和期限不同,可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。借阅图书时,先输入读者的借阅卡号,系统验证借阅卡的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息(包括照片),供管理员人工核对。然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对。最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。归还图书时,输入读者借阅卡号和图书号(或丢失标记号),系统验证是否有此借阅纪录以及是否超期借阅,无则提示,有则显示读者和图书的基本信息供管理员人工审核。如果有超期借阅或丢失情况,先转入过期罚款或图书丢失处理。然后提交还书请求,系统接受后删除借阅纪录,并登记并修改可借阅图书的数量。图书管理员定期或不定期对图书信息进行入库、修改、删除等图书信息管理以及注销(不外借),包括图书类别和出版社管理。2.1目标本系统通过强大的计算机技术给图书管理人员和读者借、还书带来便利。本系统除了图书馆内管理的一般功能还外,还包括网上在线查询图书信息、查询本人的借阅情况和续借等功能。目标还包括:减少人力与管理费用;提高信息准确度;改进管理和服务;建立高效的信息传输和服务平台,提高信息处理速度和利用率;系统设计优良,界面设计精美、友好、快捷,人性化设计,后台管理功能强大、效率高;更简便、信息化程度更高的图书管理流程;2.2用户的特点本软件的最终用户是面向管理员(图书管理员和其它管理人员)、读者(老师和同学等),他们都具有一定的计算机应用基础,可以比较熟练操作计算机。管理员和读者都是经常性用户。系统维护人员为计算机专业人员,熟悉数据库、操作系统、网络维护工作。维护人员为间隔性用户。2.3功能需求本系统主要实现书籍管理、读者管理和借阅管理等主要的图书管理功能。(1)书籍管理书籍类别管理:增、删除、改等管理。书籍信息管理:新书入库,图书购入后由图书管理人员将书籍编码并将其具体信息录入书籍信息表。书籍信息修改,书籍信息由于工作人员的疏忽而出现错误时,可修改其信息。管理员按不同方式查询、统计,读者按不同方式查询。出版社信息管理:增、删除、改等管理。图书注销:某一部分图书会随着时间的增长及知识的更新而变得不再有使用的价值,或者图书被损坏,这些图书就要在图书籍信息表中的除去。即从书籍信息表中删去此书籍记录。(3)读者管理读者类别信息管理:增、删除、改等管理。读者信息管理:办理、挂失、暂停借、注销阅卡,录入、修改、删除读者信息。(4)借阅管理续借管理:提供读者在符合规定的情况下网上续借。还书管理:根据借阅卡编号、图书ID等,在借阅信息表中找到相应的记录,将借书记录删除,更新该记录的相应数据(图书信息表)。根据违反规定情况计算和登记罚款记录。借书管理:根据借阅卡编号和图书编号,进行借书登记。在借阅信息表中插入一条借书记录,该记录包括读者ID、图书ID、借出日期、借阅编号、操作员等信息,更新该记录的相应数据(图书信息表)。把超期图书以列表的形式显示出来,并以电子邮件或打印成书面通知读者。提供读者网上查询自己的借阅情况(包括超期提示)2.4数据描述通过对图书管理系统需求及其数据流图的分析,可以得出该系统涉及读者、书籍、借阅和还书信息表等数据实体。E-R图如下:读者信息表图书信息表借还书借阅信息表读者类别表图书类别表出版社信息表图书注销信息表2.5性能需求由于此开发项目针对图书馆,使用频度较高,使用性要求比较高。为防止对信息资料和管理程序的恶意破坏,要求有较为可靠的安全性能。总之,要求稳定、安全、便捷,易于管理和操作。查询速度:不超过10秒;其它所有交互功能反应速度:不超过3秒;可靠性:平均故障间隔时间不低于200小时。2.6其他需求能快速恢复系统和故障处理,方便系统升级和扩充,故障恢复时间不超过5小时。2.7运行环境2.7.1硬件环境服务器(1)处理器(CPU):Pentium900M(推荐Pentium41.2G)(2)内存容量(RAM):至少256M(推荐512M)客户端(1)处理器(CPU):Pentium133M或更高(2)内存容量(RAM):64M或更高2.7.2软件环境数据库服务器端(1)操作系统:MicrosoftWindows2000(2)数据库管理系统:Oracle,配置TCP/IP协议Web服务器端(1)操作系统:MicrosoftWindows2000(2)Internet信息服务(IIS)6.0管理器(3)VisualStudio.NET2003,配置TCP/IP协议客户端(1)操作系统:Windows98/2000/2003/XP(2)Web浏览器:InternetExplorer5.0以上或Netscape4.0以上,配置TCP/IP协议2.7.3接口硬件接口考虑到大量数据的备份等要求,需要保持与磁带机和光盘刻录机的接口,这较易实现。软件接口这里,主要考虑软件与操作系统、数据库管理系统的接口,以及局域网和互联网软件之间的数据交换。考虑到文档处理时有可能需要较常用的办公软件。例如Microsoft的Office系列,所以应尽量实现它们之间的数据格式的自动转换。3.总体设计3.1软件结构块层次图图书管理系统书籍管理读者管理借阅管理书籍信息管理出版社管理书籍类别管理注销管理读者类别管理读者信息管理还书管理借书管理续借管理过期罚款管理图书丢失管理3.2模块详细设计(1)书籍信息管理:对图书信息进行添加(入库)、修改、删除和查询。修改和删除前可对图书进行查询并显示查询结果。详细过程描述如下页“书籍信息管理”程序流程图:(2)借阅管理:借书、还书、续借在同一界面,但显示不同内容。过程详细描述如下:借书管理:A.输入读者编号;提示超期未还的借阅记录;B.输入图书编号;If选择“确定”thenIf读者状态无效或改书“已”注销或已借书数=可借书数then给出相应提示;Else添加一条借书记录;“图书信息表”中“现有库存量”-1;“读者信息表”中“已借书数量”+1;提示执行情况;Endif清空读者、图书编号等输入数据;EndifIf选择“重新输入”then清空读者、图书编号等输入数据;EndifIf选择“退出”then返回上一级界面;Endif返回A.等待输入下一条;书籍信息管理“书籍信息管理”程序流程图进入书籍管理功能选择显示新增(入库)界面显示书籍管理界面显示修改界面显示查询界面在书籍管理界面中选择要删除记录在“借阅信息表“查询该书的借阅记录值借阅记录值0?提示“该书已借出,不能删除”确认删除吗?删除该书在“图书信息表”、“注销信息表”中的所对应记录;提示删除是否成功。退出书籍管理界面返回系统主界面新增修改查询删除退出是否确认取消填写/选择“人工采集”,计算/调用”自动采集”的各项内容功能选择图书编号已存在?确定退出保存,并提示保存情况提示图示编号已存在清空各项清空是否填写查询条件,在“图书信息表”中查询在书籍管理界面中显示查询结果修改/选择“人工采集”,计算/调用”自动采集”的各项内容功能选择确定退出图书编号已存在?是保存并修改借阅、还书、注销信息表中等相应图书编号提示图示编号已存在否还书管理:A.输入读者编号;提示超期未还的借阅记录;If有超期then提示,调用“计算超期罚款金额”;EndifIf丢失then选择该书借阅记录;调用“计算丢失罚款金额”+调用“计算超期罚款金额”;EndifIf选择“确定”还书then//要先交罚款后才能还B.输入图书编号;If读者状态无效或该图书标号不在借书记录中then提示该读者借书证无效或该图书不是该读者借阅的;Else添加一条还书记录;删除该借书记录;“图书信息表”中“现有库存量”+1;“读者信息表”中“已借书数量”-1;提示执行情况;Endif清空读者、图书编号等输入数据;EndifIf选择“重新输入”then清空读者、图书编号等输入数据;EndifIf选择“退出”then返回上一级界面;Endif返回A.等待输入下一条;续借管理:A.输入读者编号;提示超期未还的借阅记录;If有超期then提示,调用“计算超期罚款金额”;Endif选择该书借阅记录;EndifIf选择“确定”续借thenIf该图书已超期或该图书续借次数=可续借次数then提示该读者该图书已超期或该图书续借次数可续借次数,不能续结借;Else修改该书借阅记录中的“应归还日期”;图书续借次数+1;提示执行情况;Endif清空读者、图书编号等输入数据;EndifIf选择“重新输入”then清空读者书编号等输入数据;EndifIf选择“退出”then返回上一级界面;Endif返回A.等待输入下一条;(3)图书注销管理:A.查询要注销的图书信息;B.选择要注销的图书信息记录;If选择“确定”注销thenIf该书有借阅记录then提示该书有人已借阅,不能注销;Else添加一条注销记录;“图书信息表”中设定该书“已”注销;提示执行情况;EndifEndifIf选择“退出”then返回上一级界面;Endif返回A.等待选择下一条或重新查询;(4)书籍类别管理、读者类别管理、读者信息管理和出版社信息管理:与书籍信息管理类似,具有添加、修改、删除和查询功能。这里不做详细描述。(5)书籍信息管理中的图书信息和借阅管理中的借阅情况询模块:与通常的查询类似,都是根据一定的查询条件在相应的数据库中查找满足条件的记录。这里不做详细描述。4.数据表结构设计用户信息表(user)字段类型长度格式约束采集方式用户账号(登录名和用户名与此相同)文本20主键,必须输入人工采集姓名文本20必须输入人工采集登录密码文本20必须输入人工采集系别文本20人工采集年级文本20人工采集性别文本10人工采集出生日期时间/日期50人工采集E-mail文本20人工采集开户日期时间/日期50自动采集本次上机时间时间/日期50自动采集本次下机时间时间/日期50自动采集上机累计时间时间/日期50自动采集当前余额文本10自动采集备注文本50人工采集上机信息表(online_information)字段类型长度格式约束采集方式用户机编号文本20主键,必须输入人工采集用户账号文本20自动采集使用状态文本20自动采集上次上机时间时间/日期50自动采集上次下机时间时间/日期50自动采集上机累计时间时间/日期50自动采集上机累计费用文本10自动采集机房信息表(computer_information)字段类型长度格式约束采集方式用户机编号文本20主键,必须输入人工采集内存大小文本20必须输入人工采集处理器型号文本20必须输入人工采集显卡型号文本20必须输入人工采集操作系统文本20必须