图书管理系统概要设计说明书.doc_第1页
图书管理系统概要设计说明书.doc_第2页
图书管理系统概要设计说明书.doc_第3页
图书管理系统概要设计说明书.doc_第4页
图书管理系统概要设计说明书.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

概要设计说明书目 录1引言31.1编写目的31.2背景31.3定义31.3.1 专门术语31.3.2缩写41.4参考资料42总体设计42.1需求规定42.2运行环境42.3基本设计概念和处理流程52.3.1体系结构设计52.3.2基本处理流程62.3.2.1借书程序流程图62.3.2.1还书续借程序流程图62.3.3整体结构72.4功能需求与程序的关系82.5尚未问决的问题93接口设计93.1外部接口93.1.1用户界面93.2 软件接口93. 3 硬件接口93.4内部接口104运行设计104.1运行模块组合1042 运行控制104.3运行时间105系统数据结构设计115.1逻辑结构设计要点115.2物理结构设计要点115.2.1图书类表115.2.2图书信息表115.2.3借阅记录表115.2.4预订图书记录表125.2.5管理员信息表125.2.6读者信息表125.3数据库概念结构设计135.3.1部分E-R图135.3.1.1图书135.3.1.2管理员135.3.1.3读者135.3.2整体E-R图146系统出错处理设计146.1出错信息146.2补救措施156.3系统维护设计156.4 安全保密设计151引言1.1编写目的在本图书借阅管理系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对图书馆及相关人员的实地调研中获得,并在需求规格说明书中得到详尽得叙述及阐明。本阶段已在系统的需求分析的基础上,对图书借阅管理系统做概要设计。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对图书借阅管理系统所做的模块结构设计的基础上,对系统进行详细设计。在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。该文档预期读者为开发组设计人员。1.2背景本项目名称:图书借阅管理系统项目开发人员:续期读者:所有在校的学生(包括专科,本科,研究生),老师(包括在职老师和离退休老师),以及其他行政人员1.3定义1.3.1 专门术语SQL SERVER: 系统服务器所使用的数据库管理系统(DBMS)。SQL: 一种用于访问查询数据库的语言事务流:数据进入模块后可能有多种路径进行处理。主键:数据库表中的关键域。值互不相同。外部主键:数据库表中与其他表主键关联的域。ROLLBACK: 数据库的错误恢复机制。1.3.2缩写系统:若未特别指出,统指本图书借阅系统。SQL: Structured Query Language(结构化查询语言)。ATM: Asynchronous Transfer Mode (异步传输模式)。1.4参考资料图书借阅管理系统需求说明书2总体设计2.1需求规定本项目是为了方便读者,图书管理员而设计的,读者可以直接输入相关书名、作者、出版社或者关键字到客户端系统,系统将在屏幕上显示所要查询图书信息(数量及所在位置),同时,读者输入图书证号和密码登录后,可查看自己的个人信息以及借阅图书情况(借阅图书信息,借阅日期等),读者可以在登录后输入自己想要借阅的图书信息来进行预定或解除预定;图书管理员输入登录名和密码登录系统,当读者需要借书时,图书管理员输入读者图书证号查看读者是否可以借书,如果可以再输入图书ID,如果该图书没有被其他读者预定即可给予借阅,该读者借阅信息上将新增加一条借阅该书相关信息。如果读者要还书,图书管理员输入图书ID后系统自动检测该图书是否过期,如果过期则计算相应的罚款,否则读者可以续借,此时图书管理员只需修改借阅日期,否则更新读者借阅信息和图书库信息。2.2运行环境操作系统为windows系列数据库:软件开发平台:2.3基本设计概念和处理流程2.3.1体系结构设计C/S体系结构的数据库应用,由两部分组成:客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,称为应用服务器,一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户程序运行在用户自己的电脑上,对应于服务器电脑,可称为客户电脑。当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则做出应答,送回结果。从原理和经验上看,对本案例或类似的应用,C/S结构是目前技术条件下,能较好适应不确定和变化的需求环境的比较现实的方案。它可以以较低的投入,实现将易变与稳定的要素分离,快速地增添和替换“瘦小”而互相独立的前台应用,保持数据的连续性和继承性。3.3 未来的需求 在这个案例中,用户确认了这样的应用发展策略:由点到面,由简到繁逐步引进电脑化作业方法,稳步改进日常的业务模式,并期望于时机成熟的时候开展基于信息技术的业务流程重规划。 具体应用的规划是:先建立简单有效的数据库应用,进一步开发更多的,更具专业性、更深入的应用项目,进而在更大的范围上应用,最终期望将客户也纳入到电脑系统的用户中来,实现客户与销售人员的远程在线查询、下单。在指导性的发展规划中,具体提出了企业内部的互连网(Intranet)和面向国际互连网(Internet)的应用远景。 在这样的应用策略下,对电脑应用的开发,将是一个逐步完善的过程,对这样的开发环境,上一节中已经做了分析。 以目前的技术看,先建立C/S结构的局域网络应用,再向Internet/Intranet模式下数据库应用过渡,是比较现实,相对易于把握、成本较低的。即使是一次到位的开发,对于类似的环境和小型的应用而言,要想实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库,并有效地保证和管理数据的安全性、访问权限、完整性,采用C/S架构和支持C/S架构的数据平台,是必然选择。3.4 成本和资源的考虑 由于用户已经建立并运行着LAN、文件服务器,并运行着(并且以后也要继续运行)一些基于PC或PC LAN的应用,现行的硬件设备基本上不用大的扩充,就可以运行基于文件服务器的多用户数据库或基于应用服务器的C/S应用。 采用C/S体系结构,客户所支出的费用项目,将增加数据库平台和对其维护的成本,和可能需要增加适合数据库平台运行的应用服务器操作系统。 这样,从现有资源出发,不考虑开发的成本,最直接而经济的实现方案,是建立基于文件服务器的多用户系统,其次才是C/S体系结构。相比之下,主机模式无论从软硬件投资、开发成本上都是巨大的,没有什么理由替代前两种模式。3.5 发布、运行与维护的考虑 由于数据库用户的地理位置和数量增加的可能,需要考虑安装上的因素。C/S结构的应用至少需要设置客户和服务器两个项目,而基于文件服务器的应用,通常只需要一次性的安装和设置。现在的客户服务器开发技术,可以将客户端作成简单复制一个瘦小的执行文件就可以运行,客户端通常没有维护的要求,对服务器的安装设置则是一次性的。 对于非C/S架构的数据库系统来说,维护方面的性能也是在应用程序的开发中决定的。这样的系统,通常都需要原设计开发者才能比较好地维护。 C/S架构的数据库系统,由于数据库是建立在通用的平台之上,并且支持SQL这样的通用技术,对数据库的维护工作更加专业,但更为开放,这意味着维护和进一步开发对原设计开发者的依赖性可以降低。用户可以更好地适应人员的流动或服务/供应商的变更。对体系规划的合理性,和一些特殊技术的采用,例如后台服务器上的存储过程、触发器等,会影响到这个特点。出于这个理由,在C/S应用设计时,应尽可能采用规范的模式,标准化的技术。同样的努力,在其他架构中就相对难以实现或较少实际意义。3.6 性能、开发与品质保证的考虑 非C/S结构应用的性能,更大程度取决于应用程序的设计与实现。基于文件服务器运行的多用户系统,当数据量、用户数扩大时,性能就会严重下降,这包括巨大的网络传输量,以及难以有效地平衡工作站与服务器的负荷。因此,大的数据容量和多用户环境,通常是采纳C/S结构的一个重要理由。主机-终端模式虽然可能更具能量,但高成本和封闭性,限制了它的应用领域。 从运行上来看,同样设计良好的系统,C/S结构引入了更多的“衔接”环节,这意味着故障的机会和资源的耗费,然而,一旦系统处于开放的网络与应用环境中,这些开销就变成是必须的。 对于具备良好的规划能力的开发者而言,C/S结构给予规划者更大的空间和更强的支持,易于实现不同应用间的合理分离,分别调试和投入应用。前台应用和后台数据库的开发,被“强制”地分开;数据库部分的逻辑与规则,一经调试完成,就可以在将来的应用中一直保证下去;在一个动态改进或逐步扩充的开发环境,或复杂的应用环境中,这些都是提高系统可靠性有利因素。对基于文件服务器的系统而言,每次增加或修改功能,通常都意味着整个系统的升级,前后台的一体化,也就意味着每次变更都有更大的可能性造成对原有规则的破坏,并引起连锁效应。 以目前的技术环境而言,在C/S结构下,有更多成熟的,适合不同规模应用的开发平台与数据库平台可供选择,并普遍遵循或采用SQL等标准或技术,相对较具开放性,有更多的技术支持、开发与维护人员的来源,并且基于技术与行业发展的趋势,将来也会有更多的发展和保障。4 小结 总结以上的种种分析,可以发现,对于这个特定的案例,仅就当前已确定的和希望马上实现的需求而言,可以用传统的,基于LAN的文件服务器的多用户系统实现,但考虑到用户真实需求的不确定性和不断扩充的可能等等因素,有更多的理由支持采用C/S体系结构。作为一种权宜的方案,也可以考虑先采用基于文件服务器的多用户系统,在规划和实现上,尽量为将适当时候来转换成为C/S结构打下基础。此外,如果采用C/S体系结构,还应当尽可能采用开放的,标准的技术。 在上面的分析中,支持采用C/S的理由主要有: 应用的不确定性,逐步开发和增加新应用的需要 适应将来开放的异种网络环境中应用的需要 用户数、数据量增长的可能性 适应电脑开发、维护、供应商与相关技术人员变更的需要 有利于动态规划与动态开发过程,对系统可靠性的保证 此外,从用户的现有资源的延续利用与新增投入,及开发的成本和难度看,采用C/S结构,也是比较适中、现实的选择。 读者应当留意,这里仅仅是针对一个特定环境下小型应用案例开发策略的分析,而不是对数据库体系结构的一个完整的分析比较,更不是对技术本身的评价。图2.3.1C/S体系结构2.3.2基本处理流程2.3.2.1借书程序流程图(1)借书程序流程图:向系统输入借阅证,系统检查该借阅证是否可以借书,如果该借阅证达到最大借书书目,或者已经欠费,则系统不允许借书给出提示;否则允许借书,继续输入要借阅的图书ID,系统检验该书是否被预定。被预定则给出不能借该书的提示,否则系统自动更新图书库、借阅记录,完成借书。2.3.2.1还书续借程序流程图(2)还书、续借程序流程图:首先向系统输入图书ID,系统查询出该图书的借阅信息判断该图书是否逾期,如果没有逾期,则可以选择是否要进行续借,如果在续借允许的时间内,则可以续借,否则提示不在续借时间内,不能续借;如果已经逾期,则计算显示出罚款并执行还书操作。 图(1)借书程序流程图 图(2)还书、续借程序流程图2.3.3整体结构本系统共分为两大模块:系统登录模块和系统设置模块;系统设置主要是系统对借阅信息时间的限定,读者可借阅的图书数,有效预定的时间限定;登录共分为三个用户的登录:读者,图书管理员和系统管理员;用户可以在不登录的情况下查询图书,登录成功后,读者可以完成预定、解除预定和查询;图书管理员可以实现查询、借阅信息管理和图书管理;系统管理员可以实现对系统维护和用户维护两大模块。具体的,读者可以实现预定,解除预定,查看借阅信息、查看预订信息;图书管理员可以查询图书,对图书进行添加、修该和删除,实现借书、还书、续借处理;系统管理员可以对后台数据维护,日志维护,同时可以实现对用户信息的添加、修改和删除。图2.3.3 整体模块2.4功能需求与程序的关系登录界面图书管理用户管理查询借阅管理预定图书解除预定查看预定信息查找图书查看借阅信息借书管理还书管理增加图书删除图书修改图书信息日志维护数据维护添加用户删除用户用户信息修改2.5尚未问决的问题(1)只对系统的功能进行了描述,没有阐述各个模块之间是如何协调合作;(2)没有描述模块的实现方法,以及在这个过程具体的流程。3接口设计3.1外部接口3.1.1用户界面在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。外观上也要做到合理化,考虑到用户多对WINDOW 风格较熟悉,应尽量向这一方向靠拢。在设计语言上,已决定使用Visual Studio2008 进行编程,在界面上可使用Visual Studio2008所提供的可视化组件,向WINDOWS 风格靠近。 其中服务器程序界面要做到操作简单,易于管理。在设计上采用下拉式菜单方式,在出错显示上可调用Visual Studio2008库中的错误提示函数。总的来说,系统的用户界面应作到可靠性、简单性、易学习和实用3.2 软件接口服务器程序可使用Visual Studio2008提供的对 SQL SERVER 的接口,进行对数据库的所有访问。服务器程序上可使用SQL SERVER 的对数据库的备份命令,以做到对数据的保存。在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。3. 3 硬件接口在输入方面,对于键盘、鼠标的输入,可用Visual Studio2008的标准输入/输出,对输入进行处理。在输出方面,打印机的连接及使用,也可用Visual Studio2008的标准输入/输出对其进行处理。在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速ATM。3.4内部接口内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。4运行设计4.1运行模块组合客户机程序在有输入时启动接收数据模块,通过各模块之间的调用,读入并对输入进行格式化。在接收数据模块得到充分的数据时,将调用网络传输模块,将数据通过网络送到服务器,并等待接收服务器返回的信息。接收到返回信息后随即调用数据输出模块,对信息进行处理,产生相应的输出。服务器程序的接收网络数据模块必须始终处于活动状态。接收到数据后,调用数据处理/查询模块对数据库进行访问,完成后调用网络发送模块,将信息返回客户机。42 运行控制运行控制将严格按照各模块间函数调用关系来实现。在各事务中心模块中,需对运行控制进行正确的判断,选择正确的运行控制路径。在网络传输方面,客户机在发送数据后,将等待服务器的确认收到信号,收到后,再次等待服务器发送回答数据,然后对数据进行确认。服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息送回客户机,并等待确认。4.3运行时间在软体的需求分析中,对运行时间的要求为必须对做出的操作有较快的反应。网络硬件对运行时间有最大的影响,当网络负载量大时,对操作反应将受到很大的影响。所以将采用高速ATM 网络,实现客户机与服务器之间的连接,以减少网络传输上的开销。其次是服务器的性能,这将影响对数据库访问时间即操作时间的长短,影响加大客户机操作的等待时间,所以必须使用高性能的服务器,建议使用 Pentium III 处理器。硬件对本系统的速度影响将会大于软件的影响。5系统数据结构设计5.1逻辑结构设计要点图书类表(图书编号,图书名,图书作者,图书出版社,图书单价,图书摘要);图书信息表(图书ID,图书编号,是否借出标记)借阅记录表(图书ID,图书名,借阅证号,借阅日期)预订图书记录表(图书ID,图书名,借阅证号,预定期限开始日期)管理员信息表(编号,姓名,联系电话,登录名,地址,密码,权限)读者信息表(借阅证号,读者姓名,学院,专业,联系电话,密码,读者类型)5.2物理结构设计要点5.2.1图书类表 列名 数据类型可否为空说明BookClassID Guid 否图书编号BookNameNchar(20)否图书名BookAuthorNChar(20)是图书作者BookPressNChar(50)是图书出版者BookPriceDouble是图书单价BookSummarytext是图书摘要5.2.2图书信息表列名数据类型可否为空说明BookIDGuid否图书IDBookClassIDGuid否图书编号SendFlagint否是否借出标记5.2.3借阅记录表列名数据类型可否为空说明BookIDGuid否图书IDBookNameNChar(20)否图书名CardNumNchar(20) 否借阅证号BorrowDateDateTime否借阅日期5.2.4预订图书记录表列名数据类型可否为空说明BookIDGuid否图书IDBookNameNChar(20)否图书名CardNumNchar(20) 否借阅证号BookDateDateTime否预定期限开始日期5.2.5管理员信息表列名数据类型可否为空说明AdministerIDguid否管理员编号AdmNameNchar(20)否管理员姓名TelNumberNchar(11)是联系电话LoginNameNchar(20)否登录名AddressNchar(50)是地址LodinKeyNchar(6)否密码PowerNchar(10)否权限5.2.6读者信息表列名数据类型可否为空说明CardNumNchar(20) 否借阅证号ReaderNameNchar(10)否读者姓名CollegeNchar(20)是学院ProfessionNchar(20)是专业TelNumberNchar(11)是联系电话LodinKeyNchar(6)否登录密码ReaderTypeNchar(10)否读者类型5.3数据库概念结构设计5.3.1部分E-R图5.3.1.1图书图书为实体,有8个属性,分别为图书ID(主键)、图书编号、图书作者、图书单价、图书出版社、图书名、是否借出标记5.3.1.2管理员管理员作为一个实体,有7个属性,分别为:编号(主键)、姓名、联系电话、登录名、权限、密码、地址等。5.3.1.3读者读者作为一个实体,有7个属性,分别为:借阅证号(主键)、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论