1、第一章 摘要 .1第二章 系统分析与总体设计 .22.1 系统开发的意义 22.2 系统现状的分析 12.3 可行性分析 12.3.1 技术上可行性分析 12.3.2 经济上的可行性 22.4 需求分析 .22.4.1 系统需求 22.5 总体结构设计 32.6 系统设计目标 .3第三章 系统设计与实施 .33.1 业务流程分析 33.2 数据流程分析 43.3 数据字典 53.4 功能模块设计图 .- 1 -3.5 代码设计 .- 1 -3.6 数据库设计 .- 2 -3.7 输入输出设计 .- 2 -3.7.1 输入设计 .- 2 -3.7.2 输出设计 .- 2 -第四章 程序设计 -
2、1 -4.1 程序流程图设计 - 1 -4.2 程序界面设计 - 3 -第五章 系统测试与运行 - 1 -5.1 登录界面的测试 - 1 -5.2 教材入库界面测试 - 1 -5.3 教材出库界面测试 - 1 -5.4 学生基本情况录入界面的测试 - 2 -5.5 订购教材界面的测试 - 2 -5.5.1 必修课教材订购界面的测试 - 2 -5.5.2 选修课教材订购界面的测试 - 2 -5.5.3 限选课教材订购界面的测试 - 3 -5.6 查询界面的测试 - 3 -5.6.1 教材库存查询界面的测试 - 3 -5.6.2 入书查询界面的测试 .- 3 -第六章 心得体会 - 1 -参考文献
3、 - 1 -1第一章 摘要教材管理是教学管理中的组成部分,学校的教材管理模式是在学年制基础上以班级为单位进行处理的。院校的教材管理在学生规模日益增大、教材日益多样化、学生个人之间教材差异越来越大的现实面前已呈现出无法应对的局面。因此,建立一套与选课相配套的教材管理模式和管理系统具有十分重要的意义和实际应用的迫切性,而且现有的条件、管理理念和技术水平已使之成为可能。本教材管理系统运用到了 VB 和 Access 数据库。掌握 VB 中数据库的使用方法, 使用 VB 的数据环境设计器和数据报表设计器进行报表输出设计,掌握 SQL 的使用。随着社会服务行业的发展,如果没有一套可靠的教材管理系统,单凭
4、手工操作,不仅效率低下,而且会极大地影响到学校教材服务质量。教材入库和教材出库是教材管理系统的两大基本职能部门,在其中更是有着举足轻重的作用。作为计算机应用的一部分,使用计算机对教材信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高信息管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件,具有传统管理所不能想象的高效性。开发该教材管理系统是为了更好地管理学校的各类教材,便于教材管理人员订书、领书、查询教材资料及其库存情况。使教材信息管理工作系统化、规范化、自动化,从而达到提高教材管理效率的目的1第
5、二章 系统分析与总体设计2.1 系统开发的意义教材管理对各个学校而言,都是一项复杂、烦琐的工作, 是高校教务管理中的一个重要环节, 由于学校中专业设置门类多,各专业每期开设课程种类多,其业务不仅涉及出版部门,而且要面对全校各系、部的授课教师,各班级的学生,教材科涉及管理的入出库教材种类非常多,涉及人员广,工作量大,再者是近年来,我国高等教育规模的不断扩大,学校学生人数迅速增加,使教材管理工作更加繁重不堪。因此,一套好的教材管理软件,不但能大大降低工作人员的劳动强度,还能提高学校的管理效率和教学水平。2.2 系统现状的分析由于学校的学科种类和数量不断增加, 学院的规格不断扩大, 学生的数量大幅上
6、升, 加上选修,限选科目的开展使得每一位学生的课表都可能不同。这些变化已经突现出个性化的特点,在需教材尽管一些主干课程相同,但已有相当一部分管理上实现了针对学生个人的管理。在这种形势下,每位学生每学期出现了差异。一个班的学生在购买教材时首先以班级为单位到教材管理部门将绝大部分学生都要使用的教材先买回来,再由每个学生分别到教材管理部门购买其它教材;或者是一个班首先统计所需的每一种教材的名称和数量以及订购的同学姓名,然后统一到教材管理部门购买回来再分别发放。在这种范围加大的学年学分管理模式下,原有的教材管理系统,尽管在一定程度上可适应这些变化,但问题也越来越突出。2.3 可行性分析2.3.1 技术
7、上可行性分析Visual Basic 6.0 是一种可视化的、面对对象和事件驱动方式的结构化高级程序设计,可用于开发 Windows 环境下的应用程序。它简单易学、效率高,且功能强大,可以与 Windows 的专业开发工具 SDK 相媲美。在 Visual Basic 6.0 环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,可以高效、快速地开发出 Windows 环2境下功能强大、图形界面丰富的应用软件系统。ACCESS 数据库是个人、部门及企业管理数据的最易操作的新一代数据库。它兼容传统的数据库,同时进一步增强了 Web 支持,具有 Web 特性的信息共享特性。可以非常方便地跨平台
8、作业和共享数据。它不仅有一个数据库管理系统所应具有的功能而且还是一个面向对象的采用时间驱动机制的新型关系数据库管理系统。它有丰富的信息管理分析工具,可以通过 ODBC 与其他数据库相连, 实现数据交换与共享数据库是进行信息管理的基础。2.3.2 经济上的可行性在教材管理系统中,实现对教材的物流、资金流和信息流的管理,即针对教材出入库管理、教材库存管理、教材费的收取和使用、教材需求信息、学生个人需用教材信息等进行管理。这些措施将为提高高等院校教材管理水平、提高工作效率、减少人为差错提供良好的管理平台。极低成本的数据处理、信息查询、信息录入等,可实现教材需求信息、订单管理、教材费用处理、教材费查询
9、、教材出入库管理、库存管理、教材发放等功能。从目前校园网和教材管理系统的推广和运行情况来看,本系统不需增加过多的硬件投入和应用方面的培训,因此,其经济成本是很低的。2.4 需求分析2.4.1 系统需求本系统主要是用于教材科教材的管理。该系统可以完成教材计划制定、入库、发放、记账、结算等一系列工作, 初步实现教材管理的全面自动化。需求分析是从用户的需求中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,规划出系统的功能模块,即定义用例。这个步骤是对理解需求的升华,直接关系到该系统的质量。经过开发者同用户的需求分析后,确定教材管理系统的功能模块包括:用户管理、学生管理、学费管理、
10、教材入库出库管理、打印报表。管理员享有最高权限,可以使用教材管理系统所提供的所有功能。用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。数据库需求分析是整个设计过程的基础。在分析阶段,设计者要和用户共同收集和分析数据管理的内容及用户对处理的要求。32.5 总体结构设计 本系统是以教材管理业务为原型设计开发的,教材科的日常业务大体上有如下几项:1)教材预订。教材的预订工作基本上是由系、部来完成。教材科将教材征订通知下发到各系(轮流传阅),各系从中选订所
11、开课程的教材,填写预订单,经系、部汇总报教材科。教材科汇总报教务处审批后,编制填写正式订单寄发到各出版社。2) 教材发放。按预订数量发放专业和年级用书。通常是以系、班级为单位领进行领书。3) 查询,这项工作包括四项内容,其一是预订查询及时了解各系教材的订购情况;再就是入库查询及时掌握入库情况;第三是库存查询情况;第四是帐务查询,主要记录学生、班级、教师领教材的详细情况。 打印与报表,主要用于订书、购书、发书清单的打印。4) 系统管理主要包括用户、密码的更改,学生信息管理和数据库的维护。5) 选项和系统帮助能使用户快速得到帮助。2.6 系统设计目标开发教材管理系统的目的就是充分利用计算机和现代办
12、公软件,摆脱传统办公工具,用计算机实现集中方便的管理工作,把学校教材科的工作人员从繁重的体力劳动中解脱出来以达到提高工作效率和质量,最终实现教材管理的全面自动化为和现代化。因此系统主要是实现教材管理信息的输入包括入库、出库、需求信息的输入等。教材管理各种信息的查询、修改等。教材采购报表的生成以及各系各部门的教材需求管理等。第三章 系统设计与实施3.1 业务流程分析通过业务流程分析对对教材管理系统作进一步的分析,根据教研室提供的学期课程使用教材对应数据,教材库存和学期课程提出学期教材需求,教材管理部门将教材订单进行处理,以确定本学期的教材数量(除库存外的订单),同时对教材的基本信息进行完善处理,
13、以保证教研室提出新的教材需求在教材基本信息中存在。根据各系4提供清单,教材管理员根据库存的情况发放教材,若库存有货,教材管理员打印领取教材通知单给各系,通知各系领取教材。若库存无货,打印订货单交给采购员,采购员根据订货单制定补货单并将其交给相应的供应商。供应商将提货通知单发给采购员。采购员进行采购并将教材入库并打印入库单,交给教材管理员。教材管理员把库存报表交给学校,其业务流程图如图 3.1.1 所示。图 3.1.1 业务流程图3.2 数据流程分析数据流程分析是把数据在组织内部的流动情况抽象地独立出来, 舍去了具体的组织机构等,以发现和解决数据流中的问题。各系经过统计教材需求量,将教材征定单交
14、给教材管理部门,教材管理部门拟订计划生成教材计划表,并将定书单提交给供货各系领取教材单教材管理员学校领教材通知单 库存报表订货单采购员补货单供应商提货通知单入库单5单位以求供货单位供应教材,完成教材的采购工作后进行入库登记,生成入库单交于财务处进行结算。各班将领书单交于教材科,教材科将教材分发给各班级并进行出库登记,生成出库单交于财务处进行费用结算,并生成教材费用单。其数据流程图如图 3.2.1 和图 3.2.2 所示图 3.2.1 教材管理系统顶层 DFD图 3.2.2 教材管理系统一层 DFD3.3 数据字典表 3.3.1 数据项描述数据项名:教材编号别名:BOOK-NO简要说明:学校教材
15、编码各系P1制定计划教务处P2入库登记财务 P3出库登记P4教材费用打印财务教材计划表F2出库单F3教材费用单教务处 教材管理 库存报表F1教材征定单入库单6- 1 -表 3.3.2 数据结构描述 表 3.3.3 数据处理描述 表 3.3.4 数据存储描述数据结构名:教材管理表单简述: 存储教材入出库等的表单数据结构组成:编号+教材名+入出库时间+入出库来源+操作员+备注处理逻辑名:制定计划加工编号:P1简要描述:根据各系所需教材以及所缺教材进行发书,定购计划。输入数据流: 教材订单。输出数据流: 教材计划表处理逻辑名:入库管理加工编号:P2简要描述:将新进的教材进行入库管理 输入数据流: 教
16、材的信息输出数据流: 入库教材加工名:教材出库管理加工编号:P3简要描述:将出库教材进行纪录,发放等管理。输入数据流:领取通知, 查询通知。输出数据流:出库教材。加工名:数据打印加工编号:P4简要描述:对教材不同数据表进行打印输入数据流:操作者要求输出数据流:数据表数据存储名:入库教材 简述:存储入库教材的基本信息。文件组成:编号,教材名,作者,出版社。数据存储名:出库教材简述:存储出库教材的基本信息。- 2 -文件组成:编号,教材名,作者,出版社,班级,数量。- 1 -3.4 功能模块设计图根据上述对教材管理业务流程和数据流程的调查分析,并根据模块划分原则,同时考虑到用户对新系统的易学易用性
17、,将新系统划分为如图 3.4.1 所示的功能模块结构:图 3.4.1 功能模块结构3.5 代码设计设计问题是一个科学管理的问题。设计出一个好的代码方案对于系统的开发工作是一件极为有利的事情。它可以使很多机器处理(如某些统计、校对查询等)变得十分方便,另外还把一些现阶段计算机很难处理的工作变成很简单的处理。 代码就是以数或字符来代表各种客观实体。在现实世界中有很多东西如果我们不加标识是无法区分的,这时机器处理就十分困难。所以能否将原来不能确定的东西,唯一地加以标识是编制代码的首要任务。以教材编号为例。在教材管理中不难发现,有的书籍虽然名字一样,但是出版日期,著作人不一样,为了能够区分开这样的书籍
18、而编制教材编码(教材号:001001 001002 001003 001004 001005)。唯一化虽是代码设计的首要任务。但如果我们仅仅为了唯一化来编制代码,那么代码编出来后可能是杂乱无章的,使人无法辨认,而且使用起来也不方便。例如,在管理系统中关于计算机类的书籍以“01” 打头,其中 “01001”表示计算机硬件书籍,01002 表示计算机软件书籍,01003”表示计算机信息管理书籍等。这样在查找或统计某一类专业书籍时就十分方便了。(专业代码:01001 01002 01003 02002 03003 04004)为了保持系统教材管理系统教材管理教材预定教材管理教材入库 教材出库 教材入
19、库查询库 库存查询打印报表购书清单 发放清单用户管理用户管理中心 个人密码更改 数据维护帮助系统关于- 2 -的合理性,在代码设置时也要注意系统化规范。例如,001 表示书记所在的地区里面拥有的书籍编号从 001001 到 001070 当有新书加入时则会自动生成书号 001071。(区号:001 002 003 004 )3.6 数据库设计数据库设计的主要任务是在 DBMS(database management system)的支持下,按照应用的要求,数据结构的好坏将直接影响到系统的效率以及实现的效果。好的数据库结构会减少数据库的存储量、冗余度,数据的完整性和一致性比较高,系统具有较快的响
20、应速度,简化基于数据库的应用程序的实现方法等。实体具体的描述如下:图 3.6.1 教材实体 E-R 图 图 3.6.2 仓库实体 E-R 图班级班级编号 班级名称图 3.6.3 班级实体 E-R 图教材编号教材教材名称 教材出版社 教材作者教材编号仓库教材入库数量入库时间 入库单价.- 3 -图 3.6.4 供应商实体 E-R 图整体的 E-R 图图 3.6.5 整体 E-R 图供应商代号供应商名称 地址 电话教材 仓库供应商 班级入库1 NNM NM订货出库- 1 -1)教材基本信息包括书号,版本,定价,印次等如表 3.5.1 所示表 3.6.1 教材信息表 2)教材仓库信息包括教材编号,教
21、材数量等如表 3.5.2 所示表 3.6.2 仓库信息表字段名 说明 数据类型 是否为空 备注XH 序号 Int (4) Not null KeyWZH 位置号 Char (10) Not nullJCBH 教材编号 Char (10) Not nullSL 数量 Int (4) Not nullJLDW 计量单位 Char (10) Not BZ 备注 Varchar (100) Null3)班级信息包括出班级编号,班级名称如表 3.5.3 所示表 3.6.3 班级信息表字段名 说明 数据类型 是否为空 备注BJBH 班级编号 Char(10) Not null KeyBJMC 班级名称 C
22、har(40) Not null字段名 说明 数据类型 是否为空 备注XUH 序号 Int (4) Not nullJCBH 教材编号 Char (10) Not null KeyJCMC 教材名称 Varchar (50) Not nullSH 书号 Varchar (4) NullZZ 作者 Varchar (50) NullCBSDM 出版社代码 Char (4) Not nullBB 版本 Tinyint (2) Not nullYC 印次 Tinyint (2) NullDJ 定价 Numeric (6, 2) NullJLDW 计量单位 Char (10) NullNRJJ 内容简
23、介 Varchar(1000) NullBZ 备注 Varchar(100) Null- 2 -3.7 输入输出设计3.7.1 输入设计教材管理系统能够完成教材基本信息的录入以及各种详细信息等,体现了教材管理的最新发展。根据学院,班级,课程输入相应的教材,采取较为灵活的组织方式输入。在输入界面内,通过选择,填写等方式来实现信息的输入,数据库文件即教材信息数据库,由手工写入的教材信息组成,使数据库的输入工作简洁直观,可方便完成以后的数据的保存、编辑和打印等工作。在教材管理系统中,设置有下拉列表框供用户选择教材名,选定后单击按钮即可实现数据的录入。以教材入库纪录为例。表 3.7.1 教材入库记录表
24、教材入库纪录表教材号 教材名 教材单价 教材数量 入库时间001001 高等数学 15 150 2006.1.1001002 C+ 27 200 2005.12.12001003 模拟电子 22 100 20059.153.7.2 输出设计该教材管理系统可以通过条件查询,满足各种需要,生成上报的报表和统计的表单,打印等方式实现数据的输出。信息系统的输出方式有屏幕显示输出、打印机打印输出、文件输出、绘图输出等,最为广泛使用的输出方式是屏幕显示和打印机打印。通常在功能选择、查询、检索信息时,采用屏幕输出方式。本教材管理系统使用的是屏幕显示输出以及打印机打印输出方式。管理员可以根据需求将报表打印出来
25、- 1 -第四章 程序设计4.1 程序流程图设计1) 教材入库模块程序流程图 4.1.1 教材入库模块程序流程图2)教材出库模块程序流程图图 4.1.2 教材出库模块程序流程图读第一条纪录是否判断出库修改读下第一条纪录修改内容判断是否输入完整提示输入完整进行修该更新数据库输入修改成功判断是否进行入库记录教材入库记录更新数据库输入添加成功提示记录完毕- 2 -3)查询系统模块程序流程图该模块可实现功能有:教材信息的查询,学生信息的查询。查询条件的选择教材信息查询条件的选择书店 出版社 主编学生信息按学号输出结果图 4.1.3 查询系统模块程序流程图4)报表打印模块程序流程图图 4.1.4 报表打
26、印模块程序流程图判断是否进行报表打印进行报表打印提示报表打印完成提示打印完毕FT- 3 -4.2 程序界面设计1) 登录界面设计图 4.2.1 登录界面图 用 VB 添加一个窗体,新建窗体,做为此系统的登录界面,如图 4.2.1 所示。2) 主界面设计图 4.2.2 主界面图在一个教材管理信息系统中要实现的是学生、教材及学生学费的统一管理,学生管理中主要包含的信息有:学生入学时登记的基本个人信息,修改学生的登记信息,以及删除退学及不存在的学生信息,以保证数据库中没有数据冗余,及时更新数据库中所包含的信息。教材及学生学费管理中也包含了类似的修改、删除、添加信息的操作选项。3) 用户管理中心用户管
27、理和学生管理是最重要的部分,它涉及到系统的安全问题和学生的详细资料,如下图所示- 4 -图 4.2.3 用户管理中心图用户管理中心提供用户的账户管理,在其中可以设置用户的权限。对用户进行添加、修改和删除。各个用户的权限不同,具体分为:超级用户、普通用户、只读用户。各种权限的用户所可以浏览,查询的内容也不同。4) 学生信息管理模块学生管理模块主要记录了所有学生的信息,其中有学生的相关资料(学号、班级、姓名、留级否、退学否, )在此可以对学生记录进行修改、添加、编辑等操作。窗体如图所示:图 4.2.4 学生管理中心图 - 5 -5) 学生学费管理模块学生学费管理模块主要记录了所有学生自入学以来,每
28、一学年的学费信息,其中包含了学生的相关信息(学号、班级、系别) ,由此来确定每个学生个体来收取学费,在此可以对学生学费进行修改、添加、编辑等操作。在此基础上,此模块还可以完成对特殊同学根据具体情况不收取或少收取学费。窗体如下图所示:图 4.2.5 学生学费管理6) 学生教材支出管理模块学生教材支出管理模块主要记录了所有学生自入学以来,每一学年由学校发放的教材费用信息,其中包含了学生的相关信息(学号、班级、系别) ,由此来确定每个学生个体来收取教材费用,此窗体可以直接得到学生各专业课、选修课教材费用及学生教材费用总支出情况,在需要文本信息时,可按下打印按钮,即可。窗体如图 5.2.6所示:- 1
29、 -图 5.2.6 学生教材支出管理图图 5.2.7 学生教材支出打印报表- 2 -7)查询界面查询是本系统的重点部分之一,系统功能的强大与否与数据库的的查询有密切的关系,学生教材入库查询中,操作者可以输入教材的信息:包括教材名、作者、出版社等,将教材的信息录入系统,进行教材的入库。如图所示:图 5.2.8 查询界面教材入库后,可以在此模块进行入库教材的查询,根据所列出的查询关键字,入库日期、教材名、出版社等等信息,即可查到所要的信息。如下图所示:图 5.2.9 入库查询界面- 3 -图 5.2.10 出库查询界面可根据书名,入书日期,经手人进行如书查询。选择那个字段就可以对那个字段进行查询,
30、也可以复合查询。还可以对查询的结果进行打印。其中教材入库查询的代码如下:Private Sub Command1_Click()If Option1.Value = False And Option2.Value = False And Option3.Value = False And Option4.Value = False And Option5.Value = False Then MsgBox “请选择查找方式!“, , “ 系统提示“If Option1.Value = True Then教材入库查询.Command3.Enabled = FalseIf Text1 “ Then
31、教材入库查询.Adodc1.RecordSource = “select * from 教材入库表 where 教材名 like %“ & Text1.Text & “%“教材入库查询.Adodc1.RefreshIf 教材入库查询.Adodc1.Recordset.RecordCount = 0 ThenMsgBox “没有找到您所需要结果!“, , “系统提示“ElseUnload MeEnd IfElseMsgBox “请输入要查询的值!“Text1.SetFocusEnd IfEnd IfIf Option4.Value = True ThenIf Text1 “ Then教材入库查询.Adodc1.RecordSource = “select * from 教材入库表 where 书类别 like %“ & Text1.Text & “%“教材入库查询.Adodc1.Refreshdylx = 1If 教材入库查询.Adodc1.Recordset.RecordCount = 0 ThenMsgBox “没有找到您所需要结果!“, , “系统提示“ElseUnload MeEnd IfElseMsgBox “请输入要查询的值!“Text1.SetFocusEnd IfEnd IfEnd Sub