11(采用结构化方法实现)2图书馆信息系统的需求是大学生较熟悉的,编程语言VB是高职生最容易掌握的,提供的设计、实现、测试是系统的,核心源码以文字的方式说明,全部源码单独附录。与学生管理信息系统等系统相似,图书馆信息系统的规模(或工作量)不大不小,既非常实用,又比较熟悉,希望将学生划分为多个项目组,每组3-5人,确定1名项目经理,按照需求、设计、美工、编程、测试进行分工,组员之间既分工又协作,一边上课,一边看书,一边模仿着做项目,用1-2个月完成这项任务。验收内容包括需求文档、设计文档、源代码、可执行程序、测试文档、用户指南。对于不熟悉VB语言的读者,可以用其他数据库开发语言加以实现,例如Delphi语言。如果釆用VC++或Java语言,编程难度系数会大一些,收获也会多一些。概述3对读者的要求要求具体内容了解1)系统立项背景2)开发计划与项目管理理解1)需求分析2)架构设计3)编程实现掌握1)数据库概念设计和物理设计2)登录窗体、系统管理、书籍管理和读者管理详细设计3)借阅管理详细设计和系统测试4一、系统立项背景1.图书馆信息系统立项背景该系统为图书馆管理员提供一个个性化的门户。要求系统界面友好,方便直观,管理员可以针对不同需求分类、排序、查询、统计,方便读者和其他部门根据自己的需求能准确快速地查询图书信息,从而实现以计算机辅助的形式代替传统的手工查找的形式,减轻图书信息管理人员的劳动强度,提高工作质量和效率,从而使图书和读者的管理更加合理化和科学化。2.软件开发环境(1)开发方法:面向过程开发方法+面向对象开发方法(2)开发模型:瀑布模型(3)开发工具:VisualBasic6.0+RationalROSE(或Visio2003)+MicrosoftAccess.鉴于图书馆信息系统属于中小型的信息系统,因此我们用VB+ACCESS的设计方案能够满足用户的需要,缩短开发周期。开发工具:VisualBasic6.0+RationalROSE(或Visio2003)+MicrosoftAccess鉴于图书馆信息系统属于中小型的信息系统,因此我们用VB+ACCESS的设计方案能够满足用户的需要,缩短开发周期。RationalROSE主要用于UML建模,Visio2003用于概念数据模型设计和物理数据模型设计,及UML建模。5开发计划与项目管理项目管理是建立在项目开发计划基础之上的。计划是管理的路线图,管理是计划执行的保证。路线图需要管理者去跟踪、监督、评审、审计和修正。1.项目管理简述管理信息系统是一种需求不断变化,不确定因素较多,风险较大的工程项目。因此,对它的开发必须进行有效的计划和控制,即项目管理。项目开发计划,是通过项目每个阶段的开始时间和提交时间所制定的实施任务,利用任务驱动,以便有效的落实分工和责任,使每位成员都能分工到位,并在限定的时间内完成自己的任务,及时在各个阶段结束后交付文档、进行总结,为下一个阶段工作的开展做好准备。62.开发管理过程项目开发计划制定的工具有很多,我们采用一种专门的开发计划评审技术PERT(ProgramEvaluationandReviewTechnique),对该信息系统进行开发计划管理。PERT是一种网络图技术,它能够直观和较好地反映工序之间的关系和影响计划进度的关键因素,并通过各个开发阶段的时间,得出系统开发计划进度的关键路径。与传统的项目管理方法甘特图相比,PERT网的优势,在于能够在工序进度发生变化时,反映出对整个工程的影响,从而进行灵活的调整,实现动态的计划管理。图-1是图书馆信息系统系统开发的PERT网络图,其中数字“1、2、3、……”表示检查点,字母“A、B、C、……”表示工序号。管理信息系统是一种需求不断变化,不确定因素较多,风险较大的工程项目。因此,对它的开发必须进行有效的计划和控制,即项目管理。项目开发计划,是通过项目每个阶段的开始时间和提交时间所制定的实施任务,利用任务驱动,以便有效的落实分工和责任,使每位成员都能分工到位,并在限定的时间内完成自己的任务,及时在各个阶段结束后交付文档、进行总结,为下一个阶段工作的开展做好准备。7图-1图书馆信息系统PERT网络图1234111213145678910ABCDFGHIJKLMNO1538需求分析采用瀑布模型,就要对需求分析说明书进行冻结,使它成为凝固可靠的基线。万一要求变更基线,开发者和用户双方,都必须执行基线变更程序,此变更程序在合同中已做了明确规定。系统需求分析作为项目开发的第一阶段,是整个项目开发的重头戏,它的成功与否,直接影响后续工作是否能够围绕客户的需求展开,因此开发人员必须给予高度的重视。现针对图书馆信息系统对图书馆的组织结构、业务流程、用户角色职能、系统数据流进行分析。我们利用了结构化分析和UML中的用例况从大到小,从粗到细进行系统建模。2.组织结构调查系统的组织结构,是单位内部各个部门的划分和它们之间的关系。系统的组织结构关系调查,是从总的方面对系统进行宏观的了解和分析。信息的流动关系是以组织结构为背景,而且总是伴随着组织部门之间的资金流和物流的传递而产生的。图-2是图书馆的内部组织结构图。3.系统用户分析图书馆信息系统是针对图书借阅次数的大量处理工作而开发的管理软件。有三种用户:管理员、操作员和读者。9图-2图书馆内部组织结构图图书馆采编部馆长室阅览室藏书部服务部借书部仓库行政关系资金流关系资料传递关系物流关系104.UML用例图建模(面向对象分析方法)图书信息查询图书续借图书借阅读者交纳罚金图书归还extend图-3读者用例分析114.UML用例图建模(面向对象分析方法)图书管理员读者信息查询借阅图书书籍信息查询归还罚金书籍归还处理借书证办理读者信息管理图书注销书籍信息管理extendextendextendincludeinclude图-4图书管理员用例分析125.系统数据流的调查和分析(面向过程分析方法)数据流的分析要利用到数据流图(DFD,DataFlowDiagram),它能够精确地在逻辑上对系统的数据输入、数据输出、数据处理过程和数据存储进行描述。对图书馆信息系统的数据流分析中,我们首先画出整个系统的顶层图,以保证对整个系统的概况有个整体了解,然后把顶层图中的细节用下一层次的数据流程图来表示,按照由粗到细,逐层细化的原则对系统的各个模块进行深入的分析。进行分层数据流图设计的时,应该要遵守“数据平衡”的原则:1.下层图的输入和输出应与上层图保持一致,即父图和子图之间的数据流必需保持一致。2.每张数据流图加工的输入数据流和输出数据流要平衡,即加工的输出数据流要有与其相对应的输入数据流。图-5是图书馆信息系统的顶层数据流图。13图-5是图书馆信息系统的顶层数据流图图书馆信息系统系统时钟图书管理员当前时间读者管理请求信息读者信息图书信息读者情况图书情况借还书信息图书查询信息图书借阅情况罚款信息图书馆信息系统系统时钟图书管理员当前时间读者管理请求信息读者信息图书信息读者情况图书情况借还书信息图书查询信息图书借阅情况罚款信息14图-6第二层数据流图15图-9图书借阅管理数据流图166.其他用户需求(1)性能要求查询服务部分:用户通过多媒体电脑,在提交查询命令到返回结果,本地计算机不超过5秒钟。数据管理部分:提交一次录入到结果返回不超过5秒钟。借阅等对资源不能满足借阅要求时,应首先予以提示,不能出现死循环或无限等待。(2)灵活性要求各种字典数据的编码要尽可能采用行业标准,自行编码也应合乎规范,征得相关业务部门认可;数据库的设计应考虑可扩充性,以适应今后图书馆发展和系统升级的需要。(3)故障处理要求正常使用时不应出错,若运行时遇到不可恢复的系统错误,也必须保证数据库完好无损。在系统出错后,应能恢复回原来备份的数据库。(4)其他要求17概要设计概要设计也叫总体设计,或架构设计,它是软件开发的第二个阶段,在完成系统需求分析的基础上确定系统“怎么做”。概要设计注重于宏观上和框架上的设计,它是软件系统的总体结构设计、全局数据库(包括数据结构)设计、外部接口设计、功能部件分配设计、部件之间的接口设计。它要覆盖需求规格说明书中的功能点列表、性能点列表、接口列表,若为B/A/S结构设计,则要说明部件运行在网络中的哪一个节点上。概要设计的任务,一是要覆盖《需求规格说明书》的全部内容,二是要作为指导详细设计的依据。(1)系统模块的划分概要设计的核心问题是确定系统总体架构和模块划分。系统功能要层层划分,直到每一个模块可以作为一个可以执行的程序单元为止。功能模块的划分最终的结果,是系统功能结构图,图-10是图书馆信息系统的功能架构图。(2)功能需求与程序模块的关系,如表-1所示。(3)基本处理流程,如图-11所示。18图书馆信息系统书籍管理系统管理系统帮助读者管理借阅管理图-10系统功能结构图:模块名功能名arrangementreaderbookinforborrowhelp系统管理√读者管理√图书管理√借阅管理√系统帮助√表-1功能需求与程序模块的关系19按身份选择登录系统管理员输入账号和密码进入系统单击所需更新的模块进入更新子系统退出系统或继续更新操作员输入账号和密码进入系统单击所需查询的模块输出所需的资料退出系统或继续查询图-11系统基本处理流程:20数据库概念设计(图-12图书借阅部分E-R图:)R1R2R5R3读者读者ID读者标号读者姓名性别出生日期办证日期读者状态已借书数证件编号证件名称读者单位读者部门联系电话联系地址电子邮件备注操作员piNOVA20VA20VA2DDTXTNVA20VA20TXTTXTTXTTXTTXTTXTVA10MIdentifier_1pi书籍图书ID图书编号图书名称ISBN类别编号类别名称书架位置作者译者出版社名出版地点图书页数图书价格现存量库存总量借阅次数是否注销入库日期出版日期内容简介备注操作员piNOVA20VA50VA20VA20VA20TXTTXTTXTTXTTXTNNNNNBLDDTXTTXTVA10MIdentifier_1pi图书借阅归还借书ID图书编号图书名称读者编号读者名称借阅数量借阅日期应还日期实还日期过期天数是否交款超期罚款续借次数操作员piNOVA20VA50VA20VA20NDDDNBLNNVA10MIdentifier_1pi罚款罚款ID图书编号图书名称读者编号读者姓名图书价格图书数量应罚金额实收金额罚款日期罚款原因操作员piNOVA20VA50VA20VA20NNOMN5,2MN5,2DTXTVA10MIdentifier_1pi图书注销注销ID图书编号注销数量注销日期操作员piNVA20NDVA10MIdentifier_1pi21详细设计思路(以登录窗体为例说明)登录窗体功能操作员选择自己用户名并输入正确密码登录系统,如表6-17所示。l1.输入项用户名以及该用户所对应的密码。l2.输出项相应的系统登录提示信息。l3.界面设计如表6-17所示。用户名:【cmbox用户名】密码:【txt密码】【确认cmdok】【取消cmdexit】l4.测试要点三次密码错误是否退出程序。22编程实现23数据库物理设计数据库物理设计是指设计出数据库的物理数据模型,是数据库在物理设备上的具体实现,即数据库服务器物理空间上的表空间、表、字段、索引、视图、储存过程、触发器,以及相应的数据字典设计。(1)数据库命名标准与规范(略)。(2)表和视图的汇总(略)。(3)表设计详解(略)24图-16主窗体25图-17增加删除用户26图-19书籍信息管理27图-24修改书籍资料28图-25查询书籍资料29图-31读者信息管理30图-35借书管理31图-38还书管理32图-40续借管理33系统测试下面以读书类别管理为例,说明测试思路:读者类别管