概要设计说明书
1引言
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系列
数据库SQL server2008
软件平台为vs2008
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,系统检验该书是否被预定。被预定则给出不能借该书的提示,否则系统自动更新图书库、借阅记录,完成借书。