软件工程课程设计图书管理系统.doc

上传人:文库蛋蛋多 文档编号:2885155 上传时间:2023-03-01 格式:DOC 页数:7 大小:2.56MB
返回 下载 相关 举报
软件工程课程设计图书管理系统.doc_第1页
第1页 / 共7页
软件工程课程设计图书管理系统.doc_第2页
第2页 / 共7页
软件工程课程设计图书管理系统.doc_第3页
第3页 / 共7页
软件工程课程设计图书管理系统.doc_第4页
第4页 / 共7页
软件工程课程设计图书管理系统.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《软件工程课程设计图书管理系统.doc》由会员分享,可在线阅读,更多相关《软件工程课程设计图书管理系统.doc(7页珍藏版)》请在三一办公上搜索。

1、目录1 设计时间22 设计目的23 设计任务24 设计内容24.1 设计内容概述24.1.1 组织机构介绍24.1.2业务流程介绍与分析24.1.3系统开发计划34.2 需求分析54.2.1总体目标54.2.2具体目标54.2.3系统数据建模64.2.4系统功能建模84.2.5数据字典134.3 总体设计144.3.1总体设计HIPO技术144.3.2数据库设计174.4 详细设计194.4.1读者管理模块详细设计194.4.2图书管理模块详细设计204.4.3借阅管理模块详细设计214.4.4查询模块详细设计224.4.5统计模块详细设计245 总结与展望25参考文献27成绩评定281 设计

2、时间第19、20周(2011年1月4日-2011年1月14日)2 设计目的使学生掌握软件工程的基本原理和基本方法,充分理解和掌握软件工程学的概念、原理、方法和技术。3设计任务运用软件工程的思想,严格按照软件生命周期各阶段的目的和任务,完成对系统的分析和设计。4 设计内容 4.1 设计内容概述4.1.1 组织机构介绍图书馆,是搜集、整理、收藏图书资料供人阅览、参考的机构,因此,它的信息化建设对国民教育有很大的影响。图书馆收藏着大量的文献信息资源,积极地开发,广泛地利用这些文献资源是图书馆的重要职能之一,它也是图书馆承担各种职能的基础。由于当今社会文献的生产数量大、增长快;社会文献的类型复杂、形式

3、多样;文献的时效性强;文献的传播速度加快;文献的内容交叉重复;文献所用语种在扩大,质量下降等特点,使人们普通感到利用起来十分不容易。图书馆通过对文献信息资源进行加工整理、科学分析综合、指引,形成有秩序、有规律、源源不断的信息流,进行更加广泛的交流与传递,使读者更好地利用它们。图书馆的文献资源开发包括下面几项内容:第一,对到馆的文献进行验收、登记、分类、编目、加工,最后调配到各借阅室,以便科学排架,合理的流通;第二,对馆外文献信息资源进行搜索、过滤,成为虚拟馆藏,形成更加宽广、快捷的信息通道;第三,通过最现代化的手段计算机网络操作技术使馆藏文献走向数字化。图书管理系统主要针对用户,图书,借阅三方

4、面进行管理,以提高管理员的工作效率,并针对某些数据做一些统计和查询,来方便地实现对图书馆的宏观掌握。4.1.2业务流程介绍与分析(1)业务流程描述为了实现用户的图书借阅功能,需要建立一张用户表来管理用户信息。只有注册过的用户且用户状态为正常状态才可以进行图书的借阅。用户表中可以增加借阅用户、可以对注册用户的信息进行修改、可以注销用户、可以查询用户。用户的信息必须包含用户名称、身份证号、性别、联系方式(手机号码)等重要识别信息。图书馆中的书籍是会发生量的变化的,图书管理中需要包含对图书内容的增加、删除、修改和查询功能。图书馆中的书籍被借阅时需要进行登记。如果书籍归还之后,需要将借阅的状态改成归还

5、。图书管理员可以按照书记名称、借阅名称、借阅日期等做为查询条件来对借阅信息进行管理。(2)业务流程图如图4-1所示4.1.3系统开发计划1.项目目的本项目的设计目标旨在方便图书管理员的操作,减少图书管理员的工作量并使其能更有效的管理书库中的图书,实现传统的图书管理工作的信息化建设。2.项目背景图书馆收藏着大量的文献信息资源,积极地开发,广泛地利用这些文献资源是图书馆的重要职能之一,它也是图书馆承担各种职能的基础。由于当今社会文献的生产数量大、增长快;社会文献的类型复杂、形式多样;文献的时效性强;文献的传播速度加快;文献的内容交叉重复;文献所用语种在扩大,质量下降等特点,使人们普通感到利用起来十

6、分不容易。随着现代信息科技的发展,软件产业对提高企事业单位效率起到了很大作用,实现了很多业务上的自动化和半自动化。而图书管理系统对图书管理事业的高效发展起着决定性的作用,社会迫切需要一款更优化的图书MIS来提高图书馆的自动化程度。3.项目工作内容按照需求分析中对软件的要求,使用如下配置编写程序,并编写使用说明书,指导图书管理员的操作。数据库管理系统:SQL server 2000集成开发环境:visiual studio 2005读者读者个人信息表读者信息库管理员读者添加读者信息修改注销读者查询读者挂失与解挂挂失信息查询结果显示管理员图书入库图书信息库书商发书清单批注架号删除图书修改图书查询图

7、书查询结果显示借书处理借阅记录库罚款记录库续借登记打印收据超期检查与还书欠款状态解除遗失登记管理员扫描条形码扫描条形码收罚款收据读者12统计查询查询结果显示统计结果显示管理员1221图4-1 业务流程图开发语言:C#,操作系统平台:Microsoft Windows XP Professional SP34.产品图书管理系统软件和使用说明书5.程序程序分为读者管理,图书管理,借阅管理,查询和统计五大模块。读者管理模块实现对读者的添加,读者的注销,读者的修改,读者的查询,借书证的挂失和解挂失;图书管理模块实现对图书的入库,图书的出库,图书的信息修改,图书的查询;借阅管理模块实现借书登记,还书登记

8、,续借登记,遗失登记和交付罚款;查询和统计分别为方便图书管理员的工作而设计,提供迅速而准确地信息搜索和统计功能。4.2 需求分析4.2.1总体目标本项目的设计目标旨在方便图书管理员的操作,减少图书管理员的工作量并使其能更有效的管理书库中的图书,实现传统的图书管理工作的信息化建设。本系统的服务对象为图书馆流通部门的工作人员,用户界面友好,不需计算机专业的专门训练即可使用本系统。软件主要分为读者管理,图书管理,借阅管理,统计与查询五大模块。读者管理包括读者的添加删除,修改,查询以及借书证的挂失与解挂。图书管理包括对图书的入库,出库,信息修改和查询。借阅管理则主要包括借书,还书,续借,遗失图书处理及

9、违章后赔偿处理。4.2.2具体目标主要包括以下几点:1.读者借书,管理员将读者信息,图书信息输入系统,系统则根据这些信息生成借阅单,存入借阅表。2.读者还书,管理员将图书信息输入系统。若未超期,系统根据图书信息将相应借阅单标记为已还和完结,若已超期,将相应借阅单标记为已还,管理员要求罚款。读者交钱后,借阅单标记为完结,系统将超期信息记录到超期表。3.读者要续借某书,管理员将书号和读者号输入系统,若相应借阅单允许续借,标记为已续借,否则,不予续借。4.读者将书遗失,管理员将遗失信息输入系统,系统执行遗失操作,并要求读者赔偿。5.管理员对图书进行录入,删除,修改,查询操作,系统根据信息对图书表进行

10、改变。6.管理员对读者进行添加,删除,修改,查询操作,系统根据信息对读者表进行改变。7.系统提供借出记录查询,未还记录查询,超期记录查询,罚款记录查询,遗失记录查询。8.系统提供图书统计,读者统计,读者借阅统计,罚款统计来方便管理员的管理工作。4.2.3系统数据建模ER图如下所示:图4-2 ER图总图图4-3 读者分ER图图4-4 读者类型分ER图图4-5 图书分ER图图4-6 借阅记录分ER图图4-7 罚款记录分ER图4.2.4系统功能建模数据流图如下所示:图4-8 系统顶层数据流图图4-9 P1模块一级细化图4-10 P2模块一级细化图4-11 P3模块一级细化图4-12 P4模块一级细化

11、图4-13 P5模块一级细化图4-14 P1模块二级细化图4-15 P2模块二级细化图4-16 P3模块二级细化图4-17 P4模块二级细化图4-18 P5模块二级细化 图4-19 P3.2模块三级细化图4-20 P3.4模块三级细化4.2.5数据字典数据字典如下图所示:图4-21 数据字典4.3 总体设计4.3.1总体设计HIPO技术(1)系统层次图系统层次图如图4-22所示,主要分为三个层次。图4-22 系统层次图(2)系统IPO图如图4-23到图4-27所示:图4-23 读者管理模块IPO表图4-24 图书管理模块IPO表图4-25 借阅管理模块IPO表图4-26 查询模块IPO表图4-

12、27 统计模块IPO表4.3.2数据库设计如下表所示:表4-1 读者表Table4-1 Reader Table 列名 数据类型 长度 允许空 文字描述 jszh char 10 借书证号xm char 5 姓名xb int 4 性别sfzh char 18 身份证号lxfs char 11 联系方式dzlx char 10 读者类型dzzt char 10 读者状态zy char 20 Y 职业表4-2 读者类型表Table4-2 Reader-Type Table 列名 数据类型 长度 允许空 文字描述 dzlx char 10 读者类型zcjq char 10 最长借期zdjycs in

13、t 4 最大借阅册数zcxq int 4 最长续期 表4-3 图书表Table4-3 Book Table 列名 数据类型 长度 允许空 文字描述 sh char 10 书号sm char 50 书名zz char 20 作者cbs char 30 出版社isbn char 30 ISBN号dj double 8 定价sfzk bool 1 是否在库sfys bool 1 是否遗失 rksj date 10 入库时间tsfl char 10 Y 图书分类jh char 10 Y 架号表4-4 借阅表Table4-4 Borrowing Table 列名 数据类型 长度 允许空 文字描述 jyh

14、 char 10 借阅号jszh char 10 借书证号sh int 10 书号jcrq date 10 借出日期ghrq date 10 Y 归还日期yhrq date 10 Y 应还日期sfzt bool 1 是否续借sfwj bool 1 是否完结表4-5 罚单表Table4-5 Fine Table 列名 数据类型 长度 允许空 文字描述 fdh char 10 罚单号fkje double 8 罚款金额fkyy char 50 Y 罚款原因jszh char 10 借书证号fkrq date 10 罚款日期jyh char 10 借阅号sfjq bool 1 是否交钱 4.4详细设

15、计4.4.1读者管理模块详细设计1.模块定义负责对读者信息的管理,包括添加,修改,注销,挂失和查询,并根据这些信息来维护读者表和读者类型表。2.输入项目F1:个人信息表F2:挂失信息表F7:查询请求3.输出项目F8:某读者信息D1:读者表D2:读者类型表4.程序过程设计如下图所示:图4-28 读者管理模块程序流程图5.测试要点(1)边界测试,测试用户输入框中的数值的最大数和最小数,以及为空时的情况。 (2)非法测试,例如在输入数字的地方输入字母。 (3)跟踪测试,跟踪一条数据的流程,保证数据的正确性。 (4)在开始测试时应保证数据的正确性,然后在从系统中找出各种BUG。 (5)接口测试,程序往

16、往在接口的地方很容易发生错误,要在此模块测试勿掉以轻心。 4.4.2图书管理模块详细设计1.模块定义负责对图书信息的管理,包括添加,修改,删除和查询,并根据这些信息来维护图书表。2.输入项目F3:发书清单F7:查询请求3.输出项目F9:某图书信息D3:图书表4.程序过程设计图4-29 图书管理模块程序流程图5.测试要点(1)边界测试,测试用户输入框中的数值的最大数和最小数,以及为空时的情况。 (2)非法测试,例如在输入数字的地方输入字母。 (3)限制输入框的数据格式。(4)在开始测试时应保证数据的正确性,然后在从系统中找出各种BUG。 (5)接口测试,程序往往在接口的地方很容易发生错误,要在此

17、模块测试勿掉以轻心。 4.4.3借阅管理模块详细设计1.模块定义负责对借阅的管理,包括借书登记,还书登记,图书续借,图书遗失,保持借阅表的最新状态2.输入项目F4:借书证条形码信息F5:图书条形码信息3.输出项目F10:收据D1:读者表D4:借阅表D5:罚单表4.程序过程设计图4-30 借阅管理模块程序流程图5.测试要点(1)代码重用测试,在开发过程中有些模块功能几乎相同,程序员在重用代码时可能忘记在原有代码上修改或修改不全面,而造成的错误。 (2)突发事件测试,服务器上可能发生意外情况的测试。 (3)外界环境测试,有些系统在开发时依赖于另外一个系统,当另外一个系统发生错误时, 这个系统所受到

18、的影响的情况。 4.4.4查询模块详细设计1.模块定义负责对借阅记录的查询,包括借出查询,未还查询,超期查询,罚款查询,遗失查询。2.输入项目D1:读者表D2:读者类型表D3:图书表D4:借阅表D5:罚单表3.输出项目F11:借出记录查询结果F12:未还记录查询结果F13:超期记录查询结果F14:罚款记录查询结果F15:遗失记录查询结果4.程序过程设计图4-31 查询模块程序流程图5.测试要点(1)错字、错词测试,如果在系统中有用词不当的地方,我想这是不应该的。 (2)系统兼容测试,例如有些程序在IE6能运行正常,到IE5下不能运行。有些程序在WIN2000下能运行,而到WIN98却不能运行。

19、像一些很特别的用户去使用系统,你很有可能发现BUG。 (3)用户的易用性测试,往往用户的需求是不断的变化的,而其中一部份变化的原因,是由用户操作上不方便引起的。 4.4.5统计模块详细设计1.模块定义负责对读者和图书的统计,包括图书统计,读者统计,读者借阅统计,罚款统计。2.输入项目D1:读者表D2:读者类型表D3:图书表D4:借阅表D5:罚单表3.输出项目F16:图书统计结果F17:读者统计结果F18:读者借阅统计结果F19:罚款统计结果4.程序过程设计图4-32 统计模块程序流程图5.测试要点(1)缺陷验证:在程序员刚修复Bug之后的地方,一定要在次验证、测试,往往程序员只修复报告出来的缺

20、陷而不去考虑别的功能在修改时可能会重新造成错误。 (2)做好BUG管理工作,认真做好测试记录,在做完一天的测试记录之后,第二天再根据第一天的测试记录重复测试你会发现有未修正的错误。 5 总结与展望通过本次学习,我掌握了很多只有在实践中才能得到的知识及经验。软件工程作为一门以指导实践为中心的工程学科,必须与实际应用相结合。课本上的知识都是死的,抽象的,必须通过应用才能真正掌握其中的技巧。任意一个项目开发都是对软件工程知识结构的一次再现,从问题定义一直到运行与维护,其中的每一个细节都值得认真推敲。需求分析阶段是我感觉最迷惘的阶段,因为对图书管理系统并无多少理解,仅仅局限于借书,还书概念上。后来经过

21、网上的查询,才确定将该系统划分为五大功能模块,也才最终形成了上文的业务流程图。该图画完之后,我对于图书管理系统的认识也上升了一个台阶,知道了开发该系统的目的和详细要求。在这个基础上,我又认真的设计了系统的数据模型和功能模型。记得上课时候对这些个模型并不了解,就是俗话中的“知其一,不知其二”。随后,又趁热打铁,设计了系统的数据字典。由于篇幅和时间限制,只画了其中的重要数据元素。在总体设计阶段,任务主要是层次图,IPO图和数据库设计。层次图主要描绘了系统的层次和调用关系,将整个程序结构用图形表示了出来。IPO图则针对主要模块进行了记录,包括模块间的调用关系以及输入处理输出的内容,等于是对层次图的进

22、一步介绍。数据库设计则是将需求分析阶段的数据模型付之应用,建立数据表。详细设计阶段是对IPO图的加深,过程设计则描绘了程序的流程,为后期的编码做准备。其中,感觉重要的是测试要点的分析,因为,这时的测试对后期工作有很大的影响,包括程序的维护和健壮性,以及性能等方面。总而言之,通过这次实践,我对软件工程的概念有了深刻的认识,懂得了软件工程在软件开发中的重要意义。要想开发出来一套先进,科学的软件系统,必须有软件工程这一概念来支配。而软件工程学科在发展,必须不断用实践经验来给软件工程添加新鲜的血液。参考文献1 郑人杰 殷人昆 陶永雷实用软件工程清华大学出版社19972 赵池龙等,软件工程实践教程 电子工业出版社 2004.83 萨师喧 王珊数据库实用教程清华大学出版社2000.2 第3版4 张海藩软件工程导论清华大学出版社2008.2 第5版成绩评定成绩 教师签字

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号