《图书管理系统软件工程设计书》由会员分享,可在线阅读,更多相关《图书管理系统软件工程设计书(141页珍藏版)》请在金锄头文库上搜索。
1、图书管理系统软件工程设计书1、项目描述设计图书管理系统,系统主要对象是学生和管理员。系统分为学生登录和管理员登录。从学生登录界面登录后主要能执行的功能有查阅书籍、借阅书籍、归还书籍等。各种查找方式例如:按书名查找、按编号查找、按作者查找、按出版社查找等等。从管理员登录后主要能执行的功能有增加新书、删除旧书、修改图书信息、图书统计及管理员的账号管理等。2、需求分析简单地说,项目需求分析就是要搞清楚要做什么,大致搞清楚具有哪些功能。在软件工程中,需求分析指的是在建立一个新的或改变一个现存的系统或产品时,确定新系统的目的、范围、定义和功能时所要做的所有工作。需求分析是软件工程中的一个关键过程。在这个
2、过程中,系统分析员确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。具体地来说,包括下面几方面:(1) 界面需求软件的操作界面是图形界面还是字符界面,以简洁清晰、操作方便为首要目标。图书管理系统初始界面:学生登录界面:管理员登录界面:查阅书籍界面:借阅书籍界面:归还书籍界面:增加新书界面:删除旧书界面:修改图书界面:图书统计界面: (2) 数据需求需要输入什么类型的数据、什么值的数据,即数据模型的建立。是由项目内容及软件设计者决定的。以数据描述的清晰、数据意义的完整为目标。建立图书信息的结构体:建立学生账号的结构体:建立管理员账号的结构体:建立学生账号密保问题的结构体
3、:建立管理员账号密保问题的结构体:建立借书信息的结构体:建立还书信息的结构体: (3) 功能需求系统应该具有哪些功能,与项目描述以及设计者的理解直接相关。对一般的管理软件来说,必须包括数据的输入输出、增删改查、排序、统计等功能。借阅图书图书归还查阅图书账号管理系统图书统计修改图书信息删除旧书增加新书学生登录管理员登录 图书管理系统3、概要设计(总体设计)概要设计在软件工程的生命周期中处于核心地位。一旦对软件需求进行了分析和建模,接下来的工作就是软件设计了,首先就是项目的概要设计。在软件系统设计的过程中,开发者定义项目的设计目标,将系统分解为更小的子系统,这些子系统可以由各个团队分别实现,开发者
4、还要选择构建系统的策略,比如硬件/软件策略、持久性数据管理策略、全局控制流、访问控制策略、边界条件处理等。系统设计后得到的是一个包括子系统分解和每个策略都清晰描述的模型。概要设计是与算法无关的,它由一些活动组成,每一个活动都专注于分解系统整个问题中的某一部分:标识设计目标。开发者标识并区分应进行优化的各种系统特征的优先顺序。借阅图书图书归还查阅图书账号管理系统图书统计修改图书信息删除旧书增加新书学生登录管理员登录 图书管理系统4、详细设计以概要设计为基础,每个功能模块用一个或多个函数来实现,书写每个函数的算法,规划各函数之间的调用关系。void DL();/登录界面void DL_1();/学
5、生登录界面void DL_2();/管理员登录界面void DL_1_1();/学生功能主界面void Cbook();/查阅图书void Jbook();/借阅图书void Hbook();/归还图书void DL_2_1();/管理员功能主界面void Zbook();/增加新书void Sbook();/删除旧书void Xbook();/修改图书信息void Tbook();/图书统计void GLZH();/管理员账号管理void cbookN();/按书名查找void cbookW();/按作者查找void cbookB();/按编号查找void cbookC();/按出版社查找v
6、oid cbookT();/按出版时间查找void cALLbook();/查询所有图书void jbookN();/按书名借阅void jbookB();/按书编号借阅void hbookN();/按书名还书void hbookB();/按编号还书void studentM();/学生登录void ZHsq(); /学生账号注册void GLYM(); /管理员登录void sbookN(); /按书名删除void sbookB(); /按编号删除void xbookN(); /按书名修改void xbookB(); /按编号修改void Wbook(); /未借图书void Ybook()
7、; /已借图书void ALLbook(); /全部图书void XGmm(); /修改管理员密码void Cjh(); /查询借还书信息void XJZH(); /新建管理员账号5、程序编辑和调试严格按照详细设计中的算法,编写各函数的代码,同时进行单个函数的编译、链接、运行、修改;集成编译、链接、运行、修改。这一阶段,学生可能认为是最重要、最漫长的,实则不然。真正重要的是前面的概要设计和详细设计,若它们的设计不完善、不准确,将导致编码、编译、调试的漏洞百出、顾此失彼。#include#include#include#include #include#include#includestruct
8、 TS /图书信息 int BH; char Bname20; char Wname20; int GL; int SL; int Rtime3; char CB20; int CBH;TS TS1000; /图书信息存储struct Zh /账号 char ZH20; char MM20;Zh Xh1000; /学生账号存储Zh Gh1000; /管理员账号存储struct JHX /借书信息 int JSH; char JSM10; int Jstime3; int XHstime3; char Jszh20; int Hstime3; int jh;JHX jhsx1000;struct
9、 CHS char CB20; int CBH;char ZH20;/输入账号char jlzh20;/记录账号int XZN;/学生账号个数int GZN;/管理员账户个数int NBOOK;/书的数量int JHlength;/借书信息长度char MM12;/输入密码void DL();/登录界面void DL_1();/学生登录界面void DL_2();/管理员登录界面void DL_1_1();/学生功能主界面void Cbook();/查阅图书void Jbook();/借阅图书void Hbook();/归还图书void DL_2_1();/管理员功能主界面void Zbook
10、();/增加新书void Sbook();/删除旧书void Xbook();/修改图书信息void Tbook();/图书统计void GLZH();/管理员账号管理void cbookN();/按书名查找void cbookW();/按作者查找void cbookB();/按编号查找void cbookC();/按出版社查找void cbookT();/按出版时间查找void cALLbook();/查询所有图书void jbookN();/按书名借阅void jbookB();/按书编号借阅void hbookN();/按书名还书void hbookB();/按编号还书void stud
11、entM();/学生登录void ZHsq(); /学生账号注册void GLYM(); /管理员登录void sbookN(); /按书名删除void sbookB(); /按编号删除void xbookN(); /按书名修改void xbookB(); /按编号修改void Wbook(); /未借图书void Ybook(); /已借图书void ALLbook(); /全部图书void XGmm(); /修改管理员密码void Cjh(); /查询借还书信息void XJZH(); /新建管理员账号void XIETS();void DUTS();void XIENUM();void
12、DUNUM();void XIEXH();void DUXH();void XIEGH();void DUGH();void XIEJHX();void DUJHX();void XIE();void DU();void PX();int Time(int a,int b,int c); /时间区间比较int Stime(int a); /计算年月日为该年第几天void SRtime(int a,int b);/输入年和天数,计算该年几月几日void main()DU();DL();void DL() int i; printf(ttt*n); printf(ttt/ _ n); printf(ttt/欢迎进入图书管理系统n); printf(ttt*n); printf(n); printf(ttt*n); printf(ttt* 1.学生登录 *n); printf(ttt* 2.管理登录 *n); printf(ttt* 0.退出系统 *n);