软件详细设计说明书实例2021年1月1/6/2021目录1引言................................................................................................................................................21.1编写目的...............................................................................................................................21.2项目背景...............................................................................................................................21.3定义.......................................................................................................................................21.4参考资料...............................................................................................................................32总体设计........................................................................................................................................32.1需求概述...............................................................................................................................32.2软件结构...............................................................................................................................43程序描述........................................................................................................................................63.101登陆模块..........................................................................................................................63.202管理模块...........................................................................................错误!未定义书签。3.3031图书信息查询模块.........................................................................错误!未定义书签。3.4032学生信息查询模块.........................................................................错误!未定义书签。3.5021入库管理模块.................................................................................错误!未定义书签。3.6022学生借书模块.................................................................................错误!未定义书签。3.7023学生还书模块.................................................................................错误!未定义书签。3.8024图书注销模块.................................................................................错误!未定义书签。3.9接口设计................................................................................................错误!未定义书签。3.10测试要点........................................................................................................................43kk第1页1/6/2021文档名称:详细设计规格说明书项目名称:图书馆管理系统项目负责人:陈新光编写TEST_____年_____月_____日校对所有小组成员_____年_____月_____日审核所有小组成员_____年_____月_____日批准XXX_____年_____月_____日开发单位__________________________________________组员:TEST1TEST2TEST3kk第2页1/6/20211引言1.1编写目的图书管理系统详细设计是设计的第二个阶段,这个阶段的主要任务是在图书管理系统概要设计书基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、模块功能和模块间的联系等。详细设计则要解决如何实现各个模块的内部功能,即模块设计。具体的说,模块设计就是要为已经产生的图书管理各子系统设计详细的算法。但这并不等同于系统实现阶段用具体的语言编码,它只是对实现细节作精确的描述,这样编码阶段就可以将详细设计中对功能实现的描述,直接翻译、转化为用某种程序设计语言书写的程序。1.2项目背景根据XX学校希望能够充分利用现代科技来提高图书管理的效率,在原有的办公系统基础上进行扩展,将一些可以用计算机来管理的都进行计算机化,使得图书馆管理人员工作更加方便,工作效率也更加的高。1.3定义•Mysql:数据库管理软件•DBMS:数据库管理系统•Windows2000/2003/XP:运行环境•JSP:软件开发语言•Myeclipse:开发工具kk第3页1/6/20211.4参考资料《软件工程导论——第5版》张海藩编著清华大学出版社《实用软件工程》LeszekA.MaciaszekBrucLeeLiong著机械工业出版社2总体设计2.1需求概述按照需求分析文档中的规格要求,使用条形码扫描器进书、借书、还书,使得信息传递准确、流畅。同时,系统最大限度地实现易安装,易维护性,易操作性,运行稳定,安全可靠。kk第4页1/6/20212.2软件结构图书馆管理系统基础信息设置查询子系统管理子系统图书馆信息系统参数设置管理员设置书架设置图书词库设置新书购入学生借书学生还书图书注销学生信息查询图书信息查询系统登陆系统由3大模块,6小模块组成:kk第5页1/6/2021序号编号名称1,01登陆模块2,02管理模块3,031图书信息查询模块4,032学生信息查询模块5,021入库管理模块6,022学生借书模块7,023学生还书模块8,024图书注销模块9,040基础信息设置kk第6页1/6/20213程序描述3.101登陆模块具体格式见下表:功能编号01功能名称登陆模块内容功能流程图所属业务图书馆管理所属项目图书馆管理系统编写人陈新光完成时间2007-11-26页码第5页3.1.1功能流程图功能流程图如下图所示。登陆.jsp录入项检验(非空)提交所填内容失败登陆数据处理.jsp成功是否成功执行数据库操作管理.jsp成功失败需要说明的问题:(1)录入项检测使用javascript实现(各项必须非空)(2)登陆.jsp页面也包含查询按钮,在此的登陆.jsp提交的数据只是用户名和密码。3.1.2功能描述(1)功能类型:查询数据(2)功能描述:提高系统的安全性(3)前提业务:无(4)后继业务:02(管理模块)(5)功能约束:权限约束kk第7页1/6/2021(6)约束描述:(7)操作权限:图书馆管理员3.1.3界面设计(1)基础信息处理动作说明:动作编号动作名称动作描述A01登陆点击登陆按钮提交数据到登陆数据处理.jsp页面A02重至点击退重至按钮将当前信息恢复原先状态A03图书信息查询点击将页面转至到图书信息查询.jsp页面A04学生信息查询点击将页面转至学生信息查询.jsp页面A05基础信息点击将显示基础信息(2)数据要求(1)功能类型:数据查询(2)数据描述:页面显示录入字段如下:字段名称长度录入方式是否非空项数据检验默认显示管理员ID10文本框YN管理员密码15passwordYN3.1.4登陆数据处理.jsp的内部逻辑登陆数据处理:关键点两点:1,数据库连接;2,记录登陆信息及信息处理;1,数据库连接:kk第8页1/6/2021如下:publicclasslib_system_ConnextendsObject{publiclib_system_Conn(){}privateConnectionconn=null;privateResultSetrs;Stringre=;//设置你的数据库ipStringdbip=127.0.0.1;//设置你的数据库用户名和密码:Stringuse=root;Stringpass=860409;//设置您的数据库名StringdbName=lib_system;publicjava.sql.ConnectiongetConn(){try{Class.forName(org.gjt.mm.mysql.Driver).newInstance();Stringurl=jdbc:mysql://+dbip+:3306/+dbName+?user=+use+&password=+pass+&useUnicode=true&characterEncoding=GBK;conn=DriverManager.getConnection(url);}catch(Exceptione){e.printStackTrace();}returnthis.conn;}}//在Mysql建立lib_system数据库,之后将与数据操作相关数据与该数据库相连;2,记录登陆信息及信息处理:当用户点击“登陆”按钮之后,数据将提交到登陆数据处理.jsp页面。取得帐号密码这两个从页面传入的值,然后跟数据库当中管理员表中的账号和密码比较。如果正确的话,在JSP的SESSION中存入一个标记属性,表示当前已经有管理员登陆了。处理完毕后,跳转到管理页面,如果失败,则提示登陆失败,并重新进入到登陆页面。具体的逻辑如下:%kk第9页1/6/2021Stringusername=ParamUtil.getString(request,admin