图书管理信息系统课程设计

合集下载

图书信息管理系统课程设计

图书信息管理系统课程设计

目录1.题目内容、要求与分组情况总体介绍 (1)2.系统总体设计 (1)2.1相关理论知识介绍 (1)2.2系统需求分析 (1)2.3类设计、菜单设计 (2)2.4系统总体框架、程序流程 (7)3.具体实现 (8)4.运行调试及分析讨论(给出运行屏幕截图,分析运行结果,改进想法。

) (10)5.设计体会与小结(设计遇到的问题及解决办法,通过设计学到了哪些新知识,巩固了哪些知识,有哪些提高。

) (12)6.参考文献(必须按标准格式列出,可参考教材后面的参考文献格式) (13)1.题目内容、要求与分组情况总体介绍题目内容是:图书信息管理系统图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。

试设计一图书信息管理系统,使之能提供以下功能:图书信息录入功能(图书信息用文件保存)--输入图书信息浏览功能--输出查询和排序功能:(至少一种查询方式)--算法按书名查询按作者名查询图书信息的删除与修改要求:程序启动后有:信息录入、信息浏览、信息查询、信息删除、退出,五个选项,而且图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。

查询又有按书名查询、按作者名查询两种。

分组情况:吴致华负责,设计类体;设计浏览操作系统熊锋负责,设计类体;设计信息录入系统肖情负责,设计类体;设计查询操作函数赵杰负责,设计类体;设计删除操作函数以及主函数2.系统总体设计2.1相关理论知识介绍常用的文件分为两类:程序文件(如,C++的源文件、可执行文件等)和数据文件。

把文档数据输出到磁盘上保存,需要是再从磁盘调入内存,这些文件就是数据文件。

根据文件数据的组织形式分为文本文件和二进制文件,该程序就是以二进制文件的形式保存和读取的。

2.2系统需求分析该系统主要实现了对图书信息的管理,包括增加,浏览,删除,查找等功能。

通过这个系统,我们可以更轻松,更便利的管理我们的书籍,不易出错且实现了数字自动化。

2.3类设计、菜单设计#include<iostream>#include<fstream>#include<string>using namespace std;class Bookmessage{public:int ID;string name;string author;//char au[20];int number;string section;string time;int price;void copy(Bookmessage a){ID=a.ID;name=;author=a.author;number=a.number;section=a.section;time=a.time;price=a.price;}Bookmessage(){};Bookmessage(int I,int b,int p,string n,string a,string s,string t){ID=I;name=n;author=a;number=b;section=s;time=t;price=p;} };Bookmessage date[1000];void input(){fstream myoutfile;myoutfile.open("book.dat",ios_base::out|ios_base::binary); if(!myoutfile){cout<<"book.dat can't open!\n";abort();}int i;for(i=0;i<1000;i++){cout<<"请输入书号:\n";cin>>date[i].ID ;cout<<"请输入书名:\n";cin>>date[i].name ;cout<<"请输入作者:\n";cin>>date[i].author ;cout<<"请输入分类号:\n";cin>>date[i].number ;cout<<"请输入出版单位:\n";cin>>date[i].section ;cout<<"请输入出版时间:\n";cin>>date[i].time ;cout<<"请输入价格:\n";cin>>date[i].price ;myoutfile.write((char*)&date[i],sizeof(date[i]));cout<<"请选择:"<<endl;cout<<"1 继续"<<endl;cout<<"2 返回"<<endl;int x;cin>>x;if(x==2)break;else if(x!=1&&x!=2){cout<<"输入错误"<<endl;break;}}myoutfile.close();}void output(){fstream myoutfile;myoutfile.open("book.dat",ios::in);fstreammyinfile("book.dat",ios_base::in|ios_base::binary);if(!myinfile){cout<<"book.dat can't open!\n";abort();}int i=0;while(!myinfile.eof()){myinfile.read((char*)&date[i],sizeof(date[i]));cout<<"登录号: "<<date[i].ID <<endl;cout<<"书名: "<<date[i].name <<endl;cout<<"作者: "<<date[i].author <<endl;cout<<"分类号: "<<date[i].number <<endl;cout<<"价格: "<<date[i].price <<endl;cout<<"出版单位:"<<date[i].section <<endl;cout<<"出版时间:"<<date[i].time <<endl;i++;}// myinfile.close();}void namecuary();void actcuary();void Cuary(){cout<<"请选择操作"<<endl;cout<<"1.按书名查找"<<endl;cout<<"2.按作者查找"<<endl;cout<<"3.退出"<<endl;int xx;cin>>xx;switch(xx){case 1:namecuary();break;case 2:actcuary();break;case 3:break;}}void namecuary(){Bookmessage te;cout<<"请输入书名:";string xxx;cin>>xxx;fstream myoutfile,myinfile;myoutfile.open("book.dat",ios::in|ios::binary);int x;for(x=0;x<1000;x++){if(xxx==){cout<<date[x].ID;cout<<date[x].name;cout<<date[x].author;cout<<date[x].number;cout<<date[x].section;cout<<date[x].time;cout<<date[x].price;}}for(x=0;x<1000;x++)myoutfile.write((char*)&date[x],sizeof(date[x]));myoutfile.close();if(xxx!=)cout<<"没有此书!"<<endl;}void actcuary(){Bookmessage te;cout<<"请输入作者名:";string xxx;cin>>xxx;fstream myoutfile,myinfile;myoutfile.open("book.dat",ios::in|ios::binary);int x;for(x=0;x<1000;x++){if(xxx==te.author){cout<<date[x].ID;cout<<date[x].name;cout<<date[x].author;cout<<date[x].number;cout<<date[x].section;cout<<date[x].time;cout<<date[x].price;}}for(x=0;x<1000;x++)myoutfile.write((char*)&date[x],sizeof(date[x]));myoutfile.close();if(xxx!=)cout<<"没有此书!"<<endl;}void Delete(){Bookmessage temp;cout<<"请输入删除书名:";string tt;cin>>tt;fstream myoutfile,myinfile;myoutfile.open("book.dat",ios::in|ios::binary);int iii;for(iii=0;iii<1000;iii++){myinfile.read((char*)&date,sizeof(date));temp=date[iii];if(tt==){for(iii;iii<999;iii++){date[iii].copy(date[iii+1]);}break;}}for(iii=0;iii<1000;iii++)myoutfile.write((char*)&date[iii],sizeof(date[iii]));myoutfile.close();if(tt!=)cout<<"没有此书!"<<endl;}void main(){while(1){cout<<"1.图书录入系统。

图书馆管理信息系统课程设计

图书馆管理信息系统课程设计
图书馆管理信息系统课程设计(总36页)
管理信息系统
课程设计报告
设计题目:图书馆管理信息系统设计开发
专 业金 融
班 级金融 041
学 号02
学 生丁明荟
指导教师王小江
时 间2007-07-2——2007-07-6
地 点工商管理学院实验室机房
2007 年春季学期
图书馆管理信息系统开发
一、绪论
当今世界正处于科技高速发展,信息量剧增的时代,伴随科学技术的不断发展进步,人们对图书的需求越来越大,馆存图书也不断增加,各系统对各门类图书的需求也越来越具体。但目前各图书馆对图书的管理很多停留在书卡和书目的一般查询上,花费了大量资金购置的图书和计算机软件,其关系只停留在图书和目录,主要原因在于人们所进行的计算机管理只简单的将书目录入软件中,再根据目录查找图书这一循环体中。目前大部分图书馆的图书管理都处于一种馆藏图书量大,各书馆所存图书相类似,专业性图书所占比例较小,管理方法简单,图书利用率低,管理成本又高。这就要求我们在信息技术高速发展的今天,图书馆管理运用网络技术,通过信息系统的开发,在图书馆之间互通有无,有利于提高图书的利用率。
数据流组成: 索书号+借阅数量+状态
数据流量: 100笔/日
高峰流量: 200笔/日
数据流编号: D09
数据流名称: 归还修改在库书量
简述: 还书时修改图书库中的在库数量
数据流来源: P2-14图书归还处理
数据流去向: 图书表
数据流组成: 索书号+借阅数量
数据流量: 100笔/日
高峰流量: 200笔/日
简述:检查所借图书是否有足够的库存。
输入的数据流:图书借阅单D02
处理逻辑:访问图书表,检查所借图书是否有足够的库存。

图书馆管理系统课程设计报告

图书馆管理系统课程设计报告

图书馆管理系统课程设计报告一、引言随着信息技术的不断发展,图书馆管理的信息化已成为必然趋势。

为了提高图书馆的管理效率和服务质量,我们进行了图书馆管理系统的课程设计。

二、需求分析(一)功能需求1、图书信息管理能够对图书的基本信息(如书名、作者、出版社、ISBN 码等)进行录入、修改、查询和删除操作。

2、读者信息管理实现读者信息(如姓名、读者证号、联系方式等)的登记、修改、查询和注销。

3、借阅管理处理图书的借阅、归还、续借等业务,记录借阅历史。

4、库存管理实时掌握图书的库存数量,对库存不足的图书进行预警。

(二)性能需求1、响应时间系统对于常见操作的响应时间应在 3 秒以内,以保证用户体验。

2、稳定性系统应能够长时间稳定运行,不出现频繁的崩溃或错误。

(三)界面需求1、简洁直观操作界面应简洁明了,方便管理员和读者进行操作。

2、导航清晰提供清晰的导航栏,让用户能够快速找到所需的功能。

三、系统设计(一)总体架构采用 B/S 架构,方便用户通过浏览器访问系统。

(二)数据库设计1、设计了图书表(包含图书 ID、书名、作者等字段)、读者表(包含读者 ID、姓名等字段)、借阅表(包含借阅 ID、图书 ID、读者 ID 等字段)等。

2、确定了数据表之间的关联关系,以保证数据的一致性和完整性。

(三)功能模块设计1、图书管理模块实现图书信息的增删改查功能。

2、读者管理模块完成读者信息的相关操作。

3、借阅管理模块处理借阅、归还和续借业务。

4、库存管理模块监控图书库存情况。

四、系统实现(一)开发环境选择了适合的编程语言和开发工具,如 Java 和 MySQL 数据库。

(二)关键技术1、使用了 JDBC 技术连接数据库,实现数据的交互。

2、采用了 Servlet 和 JSP 技术构建 Web 应用程序。

(三)代码实现以图书借阅功能为例,通过获取用户输入的图书 ID 和读者 ID,在数据库中进行查询和更新操作,实现借阅的流程。

五、系统测试(一)功能测试对系统的各个功能模块进行了详细的测试,确保其能够正常工作。

管理信息系统课程设计 -图书馆信息管理系统

管理信息系统课程设计 -图书馆信息管理系统

管理信息系统课程设计 -图书馆信息管理系统管理信息系统课程设计图书馆信息管理系统在当今数字化和信息化的时代,图书馆作为知识的宝库和信息的中心,其管理方式也在不断地发展和变革。

为了提高图书馆的服务质量和管理效率,设计一个高效、便捷、实用的图书馆信息管理系统显得尤为重要。

一、图书馆信息管理系统的需求分析(一)用户需求图书馆的用户主要包括读者和图书馆工作人员。

读者希望能够方便地查询图书馆的馆藏信息、借阅状态,进行图书预约和续借等操作;工作人员则需要对图书的采编、借阅、归还、库存等进行管理,同时能够生成各种统计报表,以便更好地了解图书馆的运营情况。

(二)功能需求1、图书管理功能包括图书的录入、编辑、删除,以及图书分类、编目等。

2、读者管理功能读者信息的登记、修改、删除,以及读者借阅权限的设置。

3、借阅管理功能实现图书的借阅、归还、续借、预约等操作,并记录借阅历史。

4、查询功能提供多种查询方式,如按书名、作者、出版社、分类等查询图书信息,按读者姓名、证件号等查询读者信息。

5、统计报表功能生成图书借阅排行榜、读者借阅统计、图书库存统计等报表。

(三)性能需求系统应具有较高的响应速度,能够在短时间内处理大量的并发请求。

同时,系统要保证数据的准确性和完整性,具备良好的稳定性和可靠性。

二、图书馆信息管理系统的设计(一)系统架构设计采用 B/S(Browser/Server)架构,用户通过浏览器访问系统,服务器端负责处理业务逻辑和数据存储。

这种架构具有易于维护和升级、跨平台使用等优点。

(二)数据库设计根据系统的功能需求,设计合理的数据库表结构。

主要包括图书表、读者表、借阅表、预约表等。

通过建立合适的索引和关联,提高数据库的查询和操作效率。

(三)界面设计设计简洁、美观、易用的用户界面,方便读者和工作人员进行操作。

采用清晰的导航栏和布局,突出主要功能模块,提供友好的提示信息和错误处理机制。

三、图书馆信息管理系统的实现(一)开发工具和技术选择选择合适的开发工具和技术,如 Java、Python 等编程语言,结合Spring Boot、Django 等框架,以及 MySQL、Oracle 等数据库管理系统。

图书管理信息系统——课程设计

图书管理信息系统——课程设计

目录第一章概述........................................... 错误!未定义书签。

第二章系统需求与设计.................................. 错误!未定义书签。

2.1 系统目标与需求.................................. 错误!未定义书签。

2.2 系统业务分析.................................... 错误!未定义书签。

2.3 系统流程分析.................................... 错误!未定义书签。

第三章系统设计........................................ 错误!未定义书签。

3.1 系统功能结构设计................................ 错误!未定义书签。

3.2 软件结构与实现技术 (5)3.3 数据库结构设计 (7)第四章系统实现效果 (10)4.1 系统用户管理子系统 (10)4.2 读者信息管理子系统 (11)4.3 图书信息管理子系统 (12)4.4 其他模块 (13)第五章系统运行与使用 (15)5.1 系统运行网络建议............................... 1错误!未定义书签。

5.2 系统软硬件配置建议 (16)5.3 系统安装与部署 (16)第六章结束语 (16)附录开发平台简介 (17)第一章概述图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今总的来说,缺乏系统,规范的信息管理手段。

尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。

数据处理手工操作,工作量大,出错率高,出错后不易更改。

图书馆采取手工方式对图书借阅情况进行人工管理,由于信息比较多,图书借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和内容记录在文件中,图书馆的工作人员和管理员也只是当时对图书信息比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力;如要对很长时间以前的图书进行查找或更改就更加困难了。

图书信息管理系统java课程设计

图书信息管理系统java课程设计

图书信息管理系统java课程设计一、课程目标知识目标:1. 学生能理解图书信息管理系统的基本原理,掌握Java语言在系统开发中的应用。

2. 学生能掌握面向对象编程思想,运用类与对象的概念实现系统功能。

3. 学生能了解数据库的基本操作,通过Java实现对图书信息的管理。

技能目标:1. 学生能运用Java语言编写简单的图书信息管理系统,具备基本的编程能力。

2. 学生能通过本课程的学习,掌握分析问题、设计解决方案、编写代码和调试程序的能力。

3. 学生能通过小组合作,提高团队协作和沟通能力。

情感态度价值观目标:1. 学生对Java编程产生兴趣,培养主动学习和解决问题的积极性。

2. 学生在课程学习中,养成认真负责、严谨细致的学习态度。

3. 学生通过本课程的学习,认识到编程在现实生活中的应用价值,激发创新意识。

课程性质:本课程为实践性较强的课程,结合理论教学和实际操作,培养学生的编程能力和实际应用能力。

学生特点:学生处于高年级阶段,已具备一定的Java编程基础,对面向对象编程有一定了解,但实际操作能力有待提高。

教学要求:结合学生特点,注重理论与实践相结合,提高学生的实际操作能力。

将课程目标分解为具体的学习成果,以便在教学过程中进行有效评估。

二、教学内容1. 理论部分:- 图书信息管理系统概述:介绍系统基本功能、模块划分及Java语言在系统开发中的应用。

- 面向对象编程基础:回顾类、对象、继承、封装、多态等概念。

- 数据库基础知识:讲解数据库的基本操作,如创建表、插入数据、查询数据等。

2. 实践部分:- 系统需求分析:指导学生分析图书信息管理系统的功能需求,明确系统目标。

- 系统设计:教授学生如何设计系统架构,划分模块,编写类和接口。

- 编码实现:指导学生运用Java语言编写图书信息管理系统的各个功能模块。

- 系统测试与调试:教授学生如何进行单元测试、集成测试,查找并修复程序错误。

教材章节关联:1. 理论部分:参照教材第3章“Java面向对象编程”和第6章“数据库编程”。

图书管理mis课程设计

图书管理mis课程设计

图书管理mis课程设计一、课程目标知识目标:1. 学生能理解图书管理MIS的基本概念,掌握系统的主要功能模块及其操作流程。

2. 学生能描述数据库在图书管理中的作用,了解图书信息的数据结构。

3. 学生掌握运用图书管理MIS进行图书检索、借阅、归还等基本操作,并理解这些操作背后的信息处理原理。

技能目标:1. 学生能够独立操作图书管理MIS系统,高效完成图书检索、借阅、归还等任务。

2. 学生通过实践,培养解决图书管理中常见问题的能力,如图书遗失、损坏的处理方法。

3. 学生通过小组合作,提高在团队中沟通与协作的能力,共同完成图书管理项目任务。

情感态度价值观目标:1. 学生培养对图书的尊重和爱护意识,树立良好的阅读习惯。

2. 学生通过学习图书管理,增强信息意识,认识到信息管理的重要性。

3. 学生在学习过程中,培养认真负责的工作态度,提高自我管理和组织管理的能力。

课程性质:本课程结合理论知识与实践操作,注重培养学生的信息素养和实际操作能力。

学生特点:高中生具备一定的信息素养,对新鲜事物充满好奇,具备一定的自主学习能力。

教学要求:结合学生的特点,课程设计应注重理论与实践相结合,鼓励学生主动参与,提高综合运用知识解决实际问题的能力。

通过具体的学习成果分解,使学生在课程学习结束后,能够达到上述设定的知识、技能和情感态度价值观目标。

二、教学内容1. 图书管理MIS基本概念:介绍MIS的定义、功能及其在图书管理中的应用。

教材章节:第一章,第一节2. 图书管理MIS系统功能模块:详细讲解系统的主要功能模块,如图书检索、借阅管理、读者管理等。

教材章节:第一章,第二节3. 数据库在图书管理中的应用:阐述数据库的作用,介绍图书信息的数据结构。

教材章节:第二章,第一节4. 图书检索操作:教授学生如何使用图书管理MIS进行图书检索,包括关键词搜索、分类搜索等。

教材章节:第三章,第一节5. 借阅与归还操作:讲解图书借阅、归还的操作流程,以及相关注意事项。

管理信息系统课程设计 -图书馆信息管理系统

管理信息系统课程设计 -图书馆信息管理系统

管理信息系统课程设计 -图书馆信息管理系统管理信息系统课程设计图书馆信息管理系统一、引言图书馆作为知识的宝库和信息的中心,对于人们获取知识和文化交流起着至关重要的作用。

随着信息技术的不断发展,传统的图书馆管理方式已经难以满足日益增长的需求。

因此,开发一个高效、便捷的图书馆信息管理系统成为了提升图书馆服务质量和管理水平的关键。

二、系统需求分析(一)用户需求图书馆信息管理系统的用户主要包括图书馆管理员、读者和系统管理员。

图书馆管理员需要能够方便地进行图书的采编、借还、查询等操作;读者希望能够快速查找所需图书、了解借阅情况并进行续借等;系统管理员则负责系统的维护和权限管理。

(二)功能需求1、图书管理功能包括图书的录入、编辑、删除、查询等,能够对图书的基本信息(如书名、作者、出版社、ISBN 号等)进行有效管理。

2、读者管理功能实现读者信息的登记、修改、删除和查询,记录读者的借阅记录和违规情况。

3、借阅管理功能支持图书的借阅、归还、续借操作,能够自动计算借阅期限和逾期罚款。

4、查询统计功能提供多种查询方式,如按书名、作者、分类等查询图书信息,按读者姓名、证件号查询借阅记录,并能够生成各种统计报表。

5、系统管理功能包括用户权限设置、数据备份与恢复、系统参数配置等。

(三)性能需求系统应具备响应迅速、稳定性高、安全性强等特点,能够支持大量用户同时访问,保证数据的准确性和完整性。

三、系统设计(一)总体设计图书馆信息管理系统采用 B/S 架构,分为前端用户界面和后端服务器。

前端主要负责与用户的交互,后端负责数据的处理和存储。

(二)数据库设计1、数据库表结构设计了图书表(包含图书编号、书名、作者、出版社、ISBN 号等字段)、读者表(读者编号、姓名、证件号、联系方式等字段)、借阅表(借阅编号、图书编号、读者编号、借阅日期、归还日期等字段)等。

2、数据关系通过外键建立图书表、读者表和借阅表之间的关联,确保数据的一致性和完整性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

管理信息系统课程设计报告题目: 图书管理信息系统院系:经济管理学院专业班级:电子商务 2008-1 学生姓名:王洪云、袁堂兴、王江、杨亚民指导教师:周长红2011年1月14日目录1.系统规划 (1)1.1问题的提出 (1)1.2研究路线 (1)1.3战略规划说明书 (2)2.系统分析 (5)2.1可行性分析报告 (5)2.2管理业务调查 (6)2.3数据流程分析 (7)2.4数据字典 (9)3.系统设计 (12)3.1功能结构图设计 (12)3.2信息系统流程图设计 (13)3.3输入设计 (13)3.4输出设计 (15)3.5数据存储设计 (17)3.6处理流程图设计 (19)4.系统实施 (21)4.1系统功能界面和主要代码 (21)4.2系统的数据查询和修改 (27)4.3系统的测试 (34)5.总结 (43)参考文献 (46)1.系统规划1.1问题的提出图书馆作为信息资源的集散地,图书和用户借阅资料繁多,包含很多信息数据的管理,现今,有很多的图书馆都是初步开发使用,甚至尚未使用计算机进行信息管理,根据调查得知,他们以前对信息的管理都基于文本,表格等纸介质的手工处理,对图书借阅情况(如借阅天数,超过借阅的天数)的统计和审核都通过借书卡的方式人工查询。

对借阅的权限,借阅天数用人工计算,手工抄写。

数据处理工作量大,容易出错。

由于数据量大容易丢失,且不容易查找。

总的来说,缺乏系统规范的管理手段。

尽管有的图书馆有计算机,但是尚未由于信息管理,没有发挥它的效力,资源闲置比较突出,这就是信息管理系统开发的基本环境。

基于这个问题,我们认为有必要建立一个图书管理系统,使图书管理工作规范化。

1.2研究路线1.3战略规划说明书新系统的名称:图书音像信息管理系统新系统的目标:针对各中等院校的图书管理现状设计出符合一般学校的计算机辅助图书管理信息系统.实现对图书基本信息、读者基本信息进行计算机辅助管理,完成借书和还书有关信息的记录、修改、查询、删除等一系列任务的计算机管理和实现.我们总体设计的目标就是实现图书管理的系统化、规范化和自动化,具体有:(1)系统维护方便可靠、有较高的安全性,满足实用性、先进性的要求。

(2)商品管理信息化,提高服务质量、提高工作效率、降低管理成本。

(3)系统界面友好美观,操作简单易行,查询灵活方便,数据存储安全。

新系统总体结构:系统能完成的任务主要服务于企业发展流程中的三大子系该系统界面友好,操作简单,能完成添加图书信息,修改图书信息,查询图书信息,添加读者类别,修改读者类别,查询读者信息,修改读者信息等一系列图书管理功能,开发本系统的任务是实现图书管理的系统化和自动化,帮助管理人员更好更高效的完成图书管理工作.本着实用性和介绍性原则整个系统有三大模块,每个大模块又包含几个小模块:第一板块、读者管理部分:包括读者信息管理,其功能是实现对各部分数据内容的添加和修改等操作。

第二板块、图书管理部分:包括图书信息管理和类别管理, 其功能是实现对各部分数据内容的添加和修改、查询等操作。

第三板块、图书借阅管理部分:包括借书管理和还书管理, 其功能是实现对各部分数据内容的添加和修改、查询等操作。

开发方法:结构化系统开发方法,它是目前应用得最普遍的一种开发方法。

系统分析:对要开发的新系统的可行性进行论证和详细的系统调查,进行。

系统化分析、建立信息系统的逻辑模型系统设计:在逻辑模型的基础上设计系统的物理模型,包括:代码设计、信息系统流程图设计、数据库设计、处理流程图设计和编写程序设计说明书。

系统实施:程序设计及调试、系统转换及系统运行与评估、编写使用说明书。

我们选择这个开发方法的原因:结构化系统开发方法是在生命周期基础上发展起来的。

与生命周期法相比,结构化系统开发方法更强调开发人员与用户的紧密结合,而且在开发策略上强调“从上到下”,注重开发过程的整体性和全局性,适合大型信息系统的开发。

允许组织根据自身精确的需求定制一个系统采用多个阶段逐一进行的结构化方式建立工厂专业人员与知识工作者之间的任务分离下面是我们根据规划,课程设计的完成的进度表:周一:我们首先确立了课程题目,进行了大体方向研究,然后具体分工,并提出工作计划周二:我们一起深入讨论了系统的有关东西;比如职能,业务过程,数据类,总体结构等等,周三:查阅资料的人搜查有关资料,代码设计者开始准备有关数据库和程序语言的东西周五——周二:文档编写者编写文档周三:最后检查文档和程序,再由排版者进行最后的排版2.系统分析2.1可行性分析报告(1)系统简述:VB和ACCESS开发,即使遇到困难,也能从丰富的参考书中找到解决方案。

(2)管理上的可行性分析:在该单位中,从主管领导、管理人员到具体的业务人员在建立一个计算机产品库存管理新系统的必要性的认识是一致的。

(3)技术上的可行性分析:技术方面,我们选择的是VB和ACCESS,都是组员熟悉的语言,即使遇到部分困难,也可以从丰富的参考书中找到解决方案。

所以技术方面是绝对可行的。

(4)经济上的可行性分析:开发需求较低,加上成熟的软硬件环境、目标系统并不是十分复杂和开发周期较短,人员经济支出有限。

开发完成运行后,为使用者带来便利,为新系统的进一步推广创造了条件,经济收益将远超过投资。

从经济角度考虑,此系统开发可行。

(5)法律上的可行性分析:由于整个系统是自行开发,自行使用,所以系统本身不存在版权争议,符合国家各种政策法规。

服务器软件方面,它的操作系统可能会被微软跟踪,如果不是正版软件,将会面临民事诉讼的风险。

(6)结论:由于该单位有良好的管理基础,单位的经济效益良好,对建立新系统所需的费用由能力支持,因而建立新系统在管理上,技术上合经济上都是可行的,所以我们可以立即开发系统。

2.2管理业务调查1. 管理功能调查2.组织结构调查2.3数据流程分析数据流程调查:通过调查可以绘制出数据流程图。

数据流程图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符合综合的反映出信息在系统中的流动、处理和存储情况。

0层数据流程图:第一层数据流程图:第二层数据流程图:2.4数据字典数据字典的内容包括对数据流程图中的数据项、数据结构、数据流、处理逻辑、数据存储和外部实体等六个方面进行具体的定义。

数据流程图配以数据字典,就可以从图形和文字两个方面对系统的逻辑模型进行完整的描述下面是我们的数据字典(以图书采编过程为例):数据项的定义:数据结构的定义:数据流的定义处理逻辑的定义:数据储存的定义外部实体的定义2.5主要数据处理的描述3.系统设计3.1功能结构图设计3.2信息系统流程图设计3.3输入设计管理员注册:读者登记图书登记3.4输出设计管理员信息查询输出设计读者信息查询设计图书信息查询3.5数据存储设计采用access数据库,VB6开发管理员表(ID,NAME,PASS,USER,BOOK,PHOTO)图书信息表(ID,NAME,SORT,DATE,PRICE,WRITER,CONCERN,REMARK, CHECK_DA TE)图书库存表(ID,QUANTITY)读者信息表(ID,NAME,SEX,IDENTIFICATION,TEL,ADDRESS,PHOTO, CHECK_DA TE)借阅信息表(UER_ID,BOOK_ID,LEND_DATE)图书类型(BOOK_SORT)1.管理员表2.图书信息表3.书库存表4.读者信息5.借阅信息表6.图书类型表3.6处理流程图设计管理员设置读者信息管理图书管理4.系统实施4.1系统功能界面和主要代码登录窗口:'Option ExplicitPrivate Sub cmdCancel_Click()EndEnd SubPrivate Sub cmdOK_Click()Dim str_manager As Stringstr_manager = ""If txt_ManagerID = "" ThenMsgBox "请输入管理员ID"txt_ManagerID.SetFocusExit SubEnd If管理员注册:Private Sub Cmd_manager_check_Click() '确定If Txt_Mid = "" Then: MsgBox "请输入管理员ID": Txt_Mid.SetFocus: Exit SubIf Txt_Mname = "" Then: MsgBox "请输入管理员名": Txt_Mname.SetFocus: Exit SubIf Txt_Mpass(0) = "" Then: MsgBox "请输入密码": Txt_Mpass(0).SetFocus: Exit SubIf Txt_Mpass(0) <> Txt_Mpass(1) Then MsgBox "密码与复核密码不匹配,请重新输入": Txt_Mpass(0).SetFocus: Txt_Mpass(0).SelStart = 0: Txt_Mpass(0).SelLength = (Len(Txt_Mpass(0))): Exit Sub读者信息:读者登记和修改:Private Sub Cmd_User_Check_Click()Dim str_sex As String, str_photo As StringDim i As Integer'对信息的判断'Debug.Print "txt_user(3).Tag:"; txt_user(3).TagFor i = 0 To 5If i <> 2 ThenIf txt_user(i) = "" Then MsgBox "请输入" + lbl_user(i): txt_user(i).SetFocus: Exit SubEnd IfNext iIf Option1(0) = True Then str_sex = "男" Else: str_sex = "女"'控制身份证号的长度为15或18位,且要求除最后一位可以X外,其它全为数字'判断身份证号前17位是否为数字If Not IsNumeric(Mid(txt_user(3), 1, 17)) ThenMsgBox "请输入正确的身份证号"txt_user(3).SetFocustxt_user(3).SelStart = 0txt_user(3).SelLength = Len(txt_user(3))Exit SubEnd If'判断身份证号是否等于15位或18位If Not (Len(txt_user(3)) = 15 Or Len(txt_user(3)) = 18) ThenMsgBox "请输入正确的身份证号"txt_user(3).SetFocustxt_user(3).SelStart = 0txt_user(3).SelLength = Len(txt_user(3))Exit Sub'如果是18位最后一位如果不是数字允许是‘X’或‘x’ElseIf Len(txt_user(3)) = 18 ThenIf Not IsNumeric(Mid(txt_user(3), 18, 1)) And Not (Mid(txt_user(3), 18, 1) = "x" Or Mid(txt_user(3), 18, 1) = "X") ThenMsgBox "请输入正确的身份证号"txt_user(3).SetFocustxt_user(3).SelStart = 0txt_user(3).SelLength = Len(txt_user(3))Exit SubEnd IfEnd If读者一览表:Debug.Print Mid(user_s, 5)'Set rds_user = New ADODB.RecordsetIf Mid(user_s, 5) = "" Thenrds_user.Open "select * from 读者信息", myconn, adOpenKeyset, adLockOptimistic, 1rds_usercount.Open "select count(USER_ID) from 读者信息", myconn, adOpenKeyset, adLockOptimistic, 1Elserds_user.Open "select * from 读者信息where" + Mid(user_s, 5),myconn, adOpenKeyset, adLockOptimistic, 1rds_usercount.Open "select count(USER_ID) as cu from 读者信息where" + Mid(user_s, 5), myconn, adOpenKeyset, adLockOptimistic, 1 End IfIf rds_user.RecordCount > 0 ThenSet MSHFlexGrid1.DataSource = rds_userMSHFlexGrid1.TextMatrix(0, 0) = "读者编号"MSHFlexGrid1.TextMatrix(0, 1) = "读者姓名"MSHFlexGrid1.TextMatrix(0, 2) = "读者性别"MSHFlexGrid1.TextMatrix(0, 3) = "身份证号"MSHFlexGrid1.TextMatrix(0, 4) = "电话"MSHFlexGrid1.TextMatrix(0, 5) = "家庭住址"MSHFlexGrid1.TextMatrix(0, 6) = "相片存储位置"MSHFlexGrid1.TextMatrix(0, 7) = "登记日期"'rds_user.Close'MsgBox "共有" & rds_usercount.Fields(0) & "条满足条件"MDIMain.StatusBar1.Panels(3).Text = "共有" & rds_usercount.Fields(0) & "条满足条件"ElseMsgBox "没有匹配的查询信息,请重新输入"If rds_user.State = adStateOpen Then rds_user.CloseCall Cmd_Uclear_Clicktxt_user(0).SetFocusEnd If图书信息:4.2系统的数据查询和修改图书修改:图书查询:图书借阅情况:图书借阅情况查询:Private Sub search_book()Dim i As IntegerWith rds_jieyue'读者编号,图书编号,借阅日期'.Open "select USER_ID,BOOK_ID,LEND_DATE from 借阅信息where USER_ID='" + txt_userid(0) + "'", myconn, adOpenKeyset, adLockOptimistic, 1.Open "SELECT 借阅信息.USER_ID, 借阅信息.BOOK_ID, 图书信息.BOOK_name,LEND_DATE FROM 借阅信息INNER JOIN 图书信息ON 借阅信息.BOOK_ID=图书信息.BOOK_ID where 借阅信息.USER_ID='" + txt_userid(0) + "'", myconn, adOpenKeyset, adLockOptimistic, 1For i = 1 To havenumtxt_bookid(i) = .Fields(2) '图书名称(借)txt_bookid(i + 3) = .Fields(2) '图书名称(还)txt_bookid(i).Locked = True '已借图书禁止修改txt_bookid(i).ForeColor = vbRed '给出明显标记txt_bookid(i).BackColor = Me.BackColorCheck1(i).Enabled = TrueCheck1(i).Value = 1lbl_lenddate(i) = .Fields(3) '借阅时间(借)lbl_lenddate(i + 3) = .Fields(3) '借阅时间(还)If .EOF Then: .Close: Else: .MoveNextNext itxt_userid(1) = txt_userid(0)Exit SubEnd WithEnd SubPrivate Sub Cmdjy_search_Click() '读者及借阅查询Dim i As IntegerDim rds_jycount As RecordsetSet rds_jycount = New RecordsetIf txt_userid(0) = "" Then: MsgBox "请输入读者编号": txt_userid(0).SetFocus: Exit Sub'用户查询With rds_jycountIf .State = adStateOpen Then .Close.Open "select USER_ID from 读者信息where USER_ID='" + txt_userid(0) + "'", myconn, adOpenKeyset, adLockOptimistic, 1If .Fields(0) = "" ThenMsgBox "读者编号不存在,请重新输入"txt_userid(0).SetFocus: txt_userid(0).SelStart = 0: txt_userid(0).SelLength = Len(txt_userid(0)).CloseExit SubElseMDIMain.StatusBar1.Panels(3) = ""End IfEnd WithPrivate Sub Cmdgh_search_Click() '归还查询txt_userid(0) = txt_userid(1)Call Cmdjy_search_ClickEnd SubPrivate Sub Form_Activate()Dim i As IntegerDim str_sql As Stringtxt_userid(0) = ""txt_userid(1) = ""Call renewFor i = 1 To 6lbl_lenddate(i) = DateNext iCmdjieyue.Enabled = FalseEnd SubPrivate Sub SSTab1_Click(PreviousTab As Integer)If SSTab1.Tab = 2 ThenIf rds_jieyue.State = adStateOpen Then rds_jieyue.Closestr_sql = "SELECT 读者信息.USER_ID, 读者信息.USER_NAME, 借阅信息.BOOK_ID, 图书信息.BOOK_NAME, 借阅信息.LEND_DATE FROM 图书信息RIGHT JOIN (借阅信息LEFT JOIN 读者信息ON 借阅信息.USER_ID = 读者信息.USER_ID) ON 图书信息.BOOK_ID = 借阅信息.USER_ID"rds_jieyue.Open str_sql, myconn, adOpenForwardOnly, adLockOptimistic, 1Set MSHFlexGrid1.DataSource = rds_jieyueMSHFlexGrid1.TextMatrix(0, 0) = "读者编号"MSHFlexGrid1.TextMatrix(0, 1) = "读者姓名"MSHFlexGrid1.TextMatrix(0, 2) = "图书编号"MSHFlexGrid1.TextMatrix(0, 3) = "图书名称"MSHFlexGrid1.TextMatrix(0, 4) = "借阅时间"End IfEnd Sub关于:图书管理信息系统:Dim exit_state As StringPrivate Sub MDIForm_Load()'Image1.Picture = LoadPicture(App.Path + "\image\library.jpg")If rds_manager.Fields(0) = "admin" Thenmnu_manager_reg.Enabled = True '注册新管理员mnu_manager_edit.Enabled = True '管理员一览4.3系统的测试程序和系统调试的目的是发现程序和系统中可能存在的错误并及时予以纠正。

相关文档
最新文档