欢迎添加微信互相交流学习哦!

项目源码:https://gitee/oklongmm/biye

设计(论文)
题    目    基于ACCESS的教师工作量计算系统的设计与实现

 
摘  要
教师工作量管理信息系统是一个管理学校教师工作量的信息管理系统,它应用计算机在数据处理和数据整理、保存方面的优异性能,帮助工作人员提高工作效率、减少错误取代传统的人工处理。同时还能提供快速的查询和计算等功能。本课题以我校电力学院为例进行系统设计。本系统主要完成对教师信息和工作量的管理,包括添加、修改、删除,查询,打印信息以用户管理等六个方面。系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。系统的核心是教师工作量统计和排课之间的联系,当完成添加或删除操作时系统会自动计算出一时间段内的教师工作量。查询功能也是系统的核心之一。此外,系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能。

     关键词:教学工作量;Visual Basic6.0,access

 
目  录
摘  要    II
ABSTRACT    III
目  录    IV
1 前  言    1
1.1 研究背景    1
1.2 研究的现状和内容    2
1.2.1 研究内容    2
1.2.3研究意义    2
1.3开发工具    3
2 需求分析    1
2.1 可行性分析    1
2.1.1经济可行性    1
2.1.2技术可行性    1
2.1.3操作可行性    2
2.2 功能需求    2
2.3 安全保密需求    3
2.4 开发与运行环境    4
3 系统设计    5
3.1系统设计的基本思想    5
3.1.1系统设计思路    5
3.1.2系统设计原则    5
3.2 系统逻辑结构设计    6
3.2.1系统结构设计    6
3.2.2功能说明    7
3.2.3 数据字典    8
3.2.4数据流图    9
3.2.5数据库设计    9
3.3界面详细设计    9
3.3.1 登陆窗体    9
3.3.2 主窗体设计    10
3.3.3 查询窗体设计    10
3.3.4导出Excel    11
3.4教师工作量计算算法    12
3.4.1 计算流程    12
3.4.2工作量计算方法    13
4 测试与维护    20
4.1 测试    20
4.1.1测试环境    20
4.1.2测试方法    20
4.1.3测试用例    21
4.1.4测试结果    23
5 总结    24
6 致谢    25
参考文献    26

 
1 前  言
教师工作量管理系统是一个对于学校而言是非常重要的管理系统,当然这个系统也要根据时代的不同而不断地发展、更新,这是一个长期发展的工程。如果开发出一个实用且先进的教师工作量管理系统是一项很有意义的项目。教师工作量管理管理系统在高等学校中的应用使得学校更加智能化、网络化、社会化。在高校中,必须运用现代信息技术,全面更新学校管理的科学化和现代化,提高教学管理水平,进一步促进教学管理体制的改革和创新,推进教育信息化的进程。
1.1 研究背景
随着我国教育体制改革的不断深化,大学办学规模不断扩大,师资队伍也随之壮大,所开课程也越来越多,与此同时,教师工作量的计算变得更加复杂。
教学部门对教师工作量的统计工作过去一直是采用手工方式,仅限于完成每学期的教师工作量的统计和代课酬金计算,对历年教师的工作情况没有总的统计,各类教师的工作量多少比较。对教师工作量没有有效的管理和比较,就不能对课程安排做出合理的决策指导,教师所代课程的查询非常不方便。当前还有许多学校没有一个完善的教师工作量统计平台,计算机使用主要基于Microsoft Office、Excel等软件,不能发挥有效的作用,而且人工统计出错的几率和统计的工作量相当大,效率低,保密性差,缺乏科学性以及合理性。
教师工作量统计作为计算机应用的一部分,使用计算机对教师工作量进行统计,有着手工管理所无法比拟的优点,如:统计迅速准确、检索快捷、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高教师工作量统计的效率、也是学校向科学化、正规化管理发展的必要条件,更是各个高校与世界接轨的重要条件。
1.2 研究的现状和内容
1.2.1 研究内容
研究教师工作量的计算为主,而且要体现教师基本资料与此教师的工作量能吻合的系统。要做出能自动计算出教师工作量的系统。手动添加教师所教不同班级的人数,课时等,自动求出教师工作量的系统。
教师工作量的折合即将不同种类、不同性质的教师工作量,换算为具有可比性的相同单位的教师工作量。
如何使各种教师工作量之间能够互相比较,这既是一个实践问题,也是一个理论问题。从实践的角度来看,教师工作量计量的最直接目的,是通过区分不同教师所付出的劳动量数量大小和质量高低,进而更好地贯彻社会主义按劳分配原则,显然,“如何区分”这一技术上的问题,是实现这一目的的关键。教师工作量的折合,正是试图寻找一条解决“如何区分”这一技术问题的道路。从理论的角度来看,教师工作量制度能否站注脚,前提在于教师工作量能否计量,如果连教师工作量能否计量都不能肯定的话,那么就谈不到教师工作量制度的建立,而对于能否计量这个问题的最好回答,莫过于对教师工作量折合的理想解决。
1.2.3研究意义
毕业设计是学校检验学生几年来学习的成果,是学生将知识和实践相结合的一种锻炼。理论联系实际,出实际出发,给学生一个实际案例,让学生运用所学的三年的知识去完成这个实际案例,既方便了帮助可以
教师工作量计算系统的研发,可以简便教师工作量统计的方法,可以更加方便快捷的计算工作量。这样可以提高教师的工作效率,这样可以摆脱人工计算教师工作量的方法。
其次,随着我国教育体制的改革深化,大学办学规模不断扩大,师资队伍也随之壮大,所开设的课程也越来越多,与此同时,教师工作量的计算也变的更加复杂,开发出教师工作量统计系统之后,实现教师工作量统计的自动化、信息化,可大大的减轻统计工作量,提高统计工作量效率,增强统计工作的正确性,客观性和科学性。
1.3开发工具
(一)Visual Basic介绍
Visual Basic的前身是QBASIC,语言基础是BASIC。自从微软推出VB后,便成为了程序开发人员的首选工具。据统计,仅在数据库系统开发领域,VB就占了90%的份额。VB是基于对象的可视化程序开发工具,它的优点在于能够快捷、简易地建立Windows应用程序。1998年8月,微软推出了VB 6.0的版本,进一步加强了部件开发的功能。
使用VB不需要追求完美的算法和精密的逻辑,而只要充分发挥你的想象力和创造力,就能利用VB开发出各种实用的软件了,不论是小游戏还是大型的客户端/服务器端应用程序,都变得非常简单。
可视化编程的一个突出特点就是其开发环境就像一个百宝箱,很多功能都集成在其之中,这就是IDE(Integrated Development Environment),即集成开发环境。IDE是指在相应的开发平台中集成了编辑器、编译连接工具、控件器箱辅助工具。例如在VB的集成开发环境中就包括了以下一些主要元素:工具栏、工具箱、工程管理器窗口、属性窗口、窗体设计器、代码编辑器窗口等;和VB类似,Delphi的IDE中具有主控制窗体、对象查看窗口和窗体设计器。同时IDE的设置是很灵活的,开发人员可以按照自己的编程习惯来配置IDE。
从简单的文本文件到各种复杂的关系型数据库,数据库应用程序需要面对各种各样的数据源。Visual basic 6.0提供ADO(Active Data Objects)作为应用程序和OLE-DB连接的桥梁
ADO,即Active数据对象(Active Data Objects):实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口相连。用户可以使用任何一种ODBC数据源,即不仅适合于SQL Server、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。本系统就是用ADO对象来连接数据库的。

(二)数据库介绍
过去的一些数据库软件,在操作上、数据库建立、维护等等,都相当复杂且不易使用,但是在具备了窗口的GUI(图形用户界面)特性的ACCESS数据库推出之后,数据库的建立不再是困难的事情,我们可以在PC上简单而快速的建立出一套符合自己的数据库。
不但如此,在ACCESS 2003 推出以后,我们发现数据库的建立更加的快速,但是功能却更加强大,用户不用再去记忆那一大堆的文件名称,或是为数据库的文件管理大费周章,通过ACCESS的人性化管理接口把数据库的管理整理,便于维护;此外,在报表的制作上也是相当容易的,完全的视觉开发向导设计,让人使用起来很舒服。但是美中不足的是ACCESS对于主从式结构的安全性管理不足,由于ACCESS可以快速的通过ODBC连接到数据库服务器上(Database Server),并浏览所有表格或是相关对象转成HTML
基本上,ACCESS对建立一个数据库所具备的每一个对象,其中包括了表、查询、窗体、报表、宏、模块。其功能分别叙述如下:
    表对象
打开已经存在的表格、对已存在的表格字段数据进行修改、新建表格。
    查询对象
可以用直接拖放的方式,建立表格之间的关联与对应关系,自动产生SQL语法查询出我们想要的数据。
    窗体设计对象
可以设计用户接口,用来输入并处理数据。
    报表对象
利用视图向导的开发方式,简单、快速的建立出需求报表或标签。
    宏对象
提供许多的宏功能,您可以把这样的宏连接到窗体设计中的任一个对象,以达成一些复杂的功能。
    模块对象
撰写VB的程序模块,处理较复杂的问题与需求,该功能是采用事件驱动的模式,类似VB的处理方式。
 
2 需求分析
需求分析是一个管理系统成功实施的基础,只有在真正了解大学教师工作量统计的需求之后,才能做出令人满意的系统,接下来就针对教师工作量统计系统做一个总体的需求分析。
2.1 可行性分析
大部分高校目前教师工作量计算都是手动,所以导致教师工作量计算浪费了大多时间,所以现在可以编写一个应用软件来简化计算教师工作量的方式。现在社会工作量计算有很大需求,而且软件人才越来越多,所以开发一个计算教师工作量的系统的软件是相当可行的。
2.1.1经济可行性
学校现在计算教师工作量还是手工计算,每个学期对教师的工作量进行手工累加和手动计算所以加大了教师的工作负担,无形的增加了经济损失。所以开发一个系统来满足教师的工作量计算,根据生命周期法的前提下,从系统分析,到系统编成,评价,维护,开发花费时间不短而且花费较少。但是提高了工作效率,节省了工作时间,所以提高工作效率的方面完全可以高过软件开发所花费的时间与金钱,所以经济方面实施编成是可行的。
2.1.2技术可行性
现在编写比较简单的软件一般都运用MicrosoftVisualBasic6.0和Access结合来编写程序,而且都很容易运用于现在常用的windows平台上,而且编程简单,所以技术实现相当简便。
2.1.3操作可行性
但是Windows友好的用户界面和本系统良好的安全性设置,可以使学校教师在系统实施人员的指导帮助下很快掌握系统的使用方法,而无因操作失误而引起系统出错之虞。不仅如此,我们还可以编写出详尽的“操作说明书”,为教师的正确操作给以图文并茂的形式加以说明。同时,在开发过程中,我们还可以尽量给教师以方便,考虑到教师需求的实际情况,帮助教师尽快掌握本系统的使用方法。
2.2 功能需求
1.用户登录
用户登录是为了保证系统的安全性,只有凭借用户名、密码,才能进入系统。
2.系统设置
系统有两个主界面:(1)一个查询主界面,一个修改主界面。
(2)不同的权限进入不同的界面。
(3)管理员拥有所有权限所有界面都可以进入。
3.系统基本信息管理
查询界面主要管理普通用户对教师资料,教师所教课程和班级,还有工作量的查询。
修改主界面主要是管理员对教师资料的修改,教师所教课程和班级的修改,还有对教师工作量的计算。
4.工作量计算
工作量计算模块根据学校的相关文档设计确定。
5.教师基本资料管理
普通用户可以进入查询界面查询教师的基本资料。
管理员用户可以进入教师资料修改界面进行教师基本资料的修改,教师基本资料包括:教师编号,教师姓名,性别,学历,职称,备注等。
2.3 安全保密需求
为了增强系统安全性,本系统增加了系统用户管理功能,包括系统用户的增加、删除和修改。用户只有凭借正确的用户名和密码,才能进入系统进行相关的操作,提高系统的安全性。同时系统提供了权限设置功能,不同权限的用户被分配不同的功能,提高了系统的保密性。
2.4 开发与运行环境
1.开发环境:
系统软件:Windows XP
开发工具:Visual Basic6.0
数据库管理系统:MS Access 2003
2.运行环境:
(1)服务器端:
系统软件:Windows XP
数据库管理系统:MS Access 2003
硬件要求:Pentium Ⅲ 450以上,258M  RAM,  14G HD
(2)客户端:
系统软件:Windows 2000/XP/NT
硬件要求:PⅡ以上PC,32M  RAM,  4.3G HD

 
3 系统设计
系统设计的目的是确定系统如何完成预定的任务,也就是确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构。首先需要从数据流图出发,设想完成系统功能的若干种合理的物理方案,分析员应该仔细比较这些方案,并且和用户共同选定一个最佳方案,然后,进行软件结构设计,确定软件由哪些模块组成以及这些模块之间的动态调用关系。进行软件结构设计时应该遵循的最主要的原理是模块独立原理,也就是说:软件应该由一组完成相对独立的子功能模块组成,这些模块之间的接口关系应尽量简单。
自顶向下逐步求精是进行软件结构设计的常用途经,但是,如果已经有了详细的数据流图,也可以使用面向数据流的设计方法,用形式化的方法由数据流图映射出软件结构。
   在进行详细的过程设计和编写程序之前,首先进行结构设计,其好处在于可以在软件开发的早期站在全局高度对软件结构进行优化,在这个时期进行优化付出的代价不高,却可以使软件质量得到重大改进。
3.1系统设计的基本思想
3.1.1系统设计思路    
在系统的设计中,采用了“先模块化,后集成”的方式,每一个模块都分别进行了各种测试如单元测试等,减少了系统的漏洞。进行了模块化开发之后,对系统进行了集成,最后进行系统的集成测试,从而保证了系统的稳定性。
3.1.2系统设计原则    
1.可使用性:对于一个大学而言,教师数量和职业分类比较多,相应的工作量数字比较繁杂,如何去处理这样的信息是一个首要考虑的问题;
2.先进性:随着计算机技术的飞速发展,开发教师工作量统计系统使用的工具和技术也应该是先进的,能够增加软件的使用寿命。
3.可扩充性:在功能方面上要能够适应学校各方面的变化,例如学校规模问题和改革问题。
4.安全性:对于一个学校来讲,系统的安全性是非常重要的。
3.2 系统逻辑结构设计
3.2.1系统结构设计
通过前面的数据流程图已经对系统的主要功能有了一个初步的了解,下面将系统的功能再作一些深入分析,最后得出系统的功能结构图。
《教师工作量计算系统》是为了利用计算机实现一个学校的教师工作量统计工作。因此,系统应该有一个全局管理功能,以方便实现不同的功能的选择。也就是应具备全局管理功能。这里用总控模块实现。由于要处理的信息包括系统管理、基本数据管理、数据管理、查询统计等的不同处理,总控模块管理有三种不同的信息的处理。即系统管理、基本数据管理、数据管理、查询统计的管理。由于每种信息的处理涉及到对信息多方面的不同子功能,所以又涉及到对众多的子功能的管理。在此基础上,总结得到如下的系统功能结构图:图3-1。

             

图3-1系统结构图

3.2.2功能说明
通过上一章的系统功能结构图我们可以看出系统分为四大模块:基本数据,数据管理,系统维护,查询统计模块。下面将对每个模块的总体设计作简要说明。
系统模块构成:
1.基本数据
该模块可以实现对现有教师工作量计算系统中的学历,职称,课程名称等基本信息的管理情况,并且可以对这些信息进行添加,修改或删除。
2.数据管理
该模块可以实现对教师信息和排课的管理,并且可以对这些信息进行添加,修改或删除。
3.系统维护模块
该模块一方面可以实现对用户记录的添加或修改,另一方面可以实现系统数据库的备份和恢复的功能。
4.查询统计模块
该模块是实现对教师和排课的各种查询,及对教师工作量的详细统计,可以生Excel 报表上报或打印。
3.2.3 数据字典
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
任何字典最主要的用途都是供人查阅对不了解的条目的解释。数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。
数据流图和数据字典共同构成系统的逻辑模型,没有数据字典,数据流图就不严格,然而没有数据流图数据字典也难于发挥作用。只有数据流图和对数据流图的精确定义放在一起,才能共同构成系统的规格说明。
系统开发时,常用卡片的形式书写保存描述一个数据元素。下面给出本系统的主要数据元素的数据字典索引卡片:如图3-2,3,4,5,6,7。
名字:学历
描述:标识教师基本状况表的一个特定关键域
定义: 20{字符}20
位置:教师信息表 
                     图3-2       
名字:职称
描述:唯一地标识职称基本状况表的一个特定关键域
定义:20{字符}20
位置:教师信息表 
                     图3-3       
名字:教师信息
描述:唯一地标识教师信息的一个特定关键域
定义: 20{字符}20
位置:教师信息表 
                      图3-4       
名字:课程名称
描述:唯一地标识课程名称的一个特定关键域
定义:50{字符}50
位置: 排课信息表 
                      图3-5
名字:所教课程名称
描述:唯一地标识教师所都课程的一个特定关键域
定义:50{字符}50
位置:教师信息表 
                       图3-6
名字:用户名称
描述:用户指定条件下的系统用户口令表
定义:20{字符}20
位置:用户信息表
                        图3-7
3.2.4 数据流图
数据流图描绘系统的逻辑模型图,其中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况。因为数据流图是逻辑系统的图形表示,即使不是专业的计算机技术人员也容易理解,所以是极好的通信工具。此外,设计数据流图只需考虑系统必须完成的基本逻辑功能,完全不需要考虑如何具体地实现这些功能,所以它也是软件设计的很好的出发点。《教师工作量计算系统》主要是为了对教师的基本信息、工作量、及其它相关信息等进行计算机管理。所以主要的数据源应是教师有关方面的各种信息。它们在系统中流动和处理详细见下面的数据流程图。     
         
3.2.5 数据库设计
数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。
数据库设计的步骤是:
1、数据库结构定义:目前的数据库管理系统(DBMS)有的是支持联机事务处理CLTP(负责对事务数据进行采集、处理、存储)的操作型DBMS,有的可支持数据仓库、有联机分析处理CLAP(指为支持决策的制定对数据的一种加工操作)功能的大型DBMS,有的数据库是关系型的、有的可支持面向对象数据库。针对选择的DBMS,进行数据库结构定义。
2、数据表定义:数据表定义指定义数据库中数据表的结构,数据表的逻辑结构包括:属性名称、类型、表示形式、缺省值、校验规则、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设计,但为使效率高,规范化程度应根据应用环境和条件来决定。数据表设计不仅要满足数据存储的要求,还要增加一些如反映有关信息、操作责任、中间数据的字段或临时数据表。
3、存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份方案,对多版本如何保证一致性和数据的完整性。
4、数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据安全。
5、数据字典设计:用数据字典描述数据库的设计,便于维护和修改。
为了更好地组织数据和设计出实际应用数据库,应该注意如下问题:
关系数据结构的建立:在进行了数据基本结构的规范化重组后,还必须建立整体数据的关系结构。这一步设计完成后数据库和数据结构设计工作基本完成,只待系统实现时将数据分析和数据字典的内容代入到所设计的数据整体关系结构中,一个规范化数据库系统结构就建立起来了。
根据分析阶段得出的的结论,结合本系统对有关数据的存储的需要,更加方便实现该管理系统的所有功能,现将本管理系统设计成如下几个数据库表,部分表的字段名、类型设计如下:
教师信息表结构:如图3-11。
 
毕业设计任务3-12。
 
用户信息表结构如图3-13。
 
课程设计安排表如图3-14。
 
实验上机安排表如图3-15。
 
课内实践安排表如图3-16。
 
授课任务安排表如图3-17。
 


3.2.6 VB与数据库的连接
   技术介绍:
1、数据引擎
数据库应用属于典型的前后台软件结构,前台就是VB程序,后台则是数据库管理系统或数据库文件,前后台之间进行通信的主要机制为数据库引擎。VB中将数据库分为三种类型:
本地数据库:主要是指ACCESS数据库。
外部数据库:是指采用ISAM(索引顺序访问方法)的数据库,如DBASE、FOXPRO、EXCEL等
远程数据库:指SQL SERVER、DB2等大型数据库。
数据引擎实际上是VB程序与数据库连接的桥梁,VB中的数据库引擎一般有三种:JET引擎、ODBC和OLE DB。JET引擎:联合数据库引擎,是MS公司开发的用于本地数据库外部数据库的数据库引擎,它也可访问远程数据库,但必须通过ODBC来转接。
ODBC:开放式数据库连接。是一种建立数据库驱动的标准,当前几乎所有的DBMS都支持这种数据库引擎。ODBC是在数据库和应用程序之间提供的一个抽象层,即通过驱动程序和游标与数据库进行通信。
OLE DB 尽管理ODBC技术的通用性非常好,但还有一些缺陷。MS提出了新的数据库访问策略:UDA(Universal Data Access),其核心是一系列组件对象模型(COM)接口。它允许开发人员创建数据提供者(Data Provider)。从而灵活表达各种格式存储的数据,通用性比ODBC好。

2、数据对象概述
VB采用面向对象技术,将上述三种数据库引擎封装成三种访问数据库的对象即数据访问对象(DAO)、远程数据对象(RDO)和ACTIVEX数据对象(ADO)。通过设置这些对象的属性,调用其方法不用编写复杂的代码即可开发出数据库应用程序。
数据访问对象(DAO):提供一个由一系列对象和集合组成的分层结构模型,可以方便地访问和处理数据库。使用JET和DOBC两种方式访问数据库。
RDO对象:一般采用ODBC来访问数据库。
ActiveX数据对象(ADO) :是一种建立在被称为OLE DB的最新数据访问接口之上的高性能、统一的数据访问对象,也支持ODBC访问。能处理任何类型的本地或远程数据,因此,ADO技术在VB程序中得到了越来越广泛的应用。 
在使用这些对象模型时,必须先在VB集成环境中加入相应的引用,基本方法是打开“工程--引用”菜单 ,在弱出的窗体中输入“Microsoft Data Object”、“Microsoft ActiveX Data Objects Library”DAO对象模型是最早的数据库访问接口。它是一种分层的树型结构,顶部是一种称为DBEngine的对象,它实际上是Microsoft Jet引擎本身。DBEngine对象有一个名为Workspace的集合,该集合包含一个或多个Workspace对象。每个Workspace对象有一个Database集合,该集合又包含一个或多个Database对象,每个Database对象包含一个TableDefs集合,该集合又包含一个或多个TableDefsTableDefs之下又是若干个Recordset对象。
RDO用于远程的数据库。使用它,应用程序不需要使用本地数据处理机制即可直接访问ODBC数据源,即在访问远程数据库时,可获得更好的性能与更大的灵活性,通过RDO可创建简单的无游标的结果集或更复杂的游标,执行查询并处理任意数量的结果集,执行返回结果集的存储过程,限制返回或处理的数据行等。ADO对象把OLE DB封装在一个数据对象中,使得VB程序可以方便地实现对数据库的访问。
ADO与其他对象模型的主要区别在于它的简单和非层次结构。它包含七个对象:Connection ,Command,Recordset,Parameter,Property,Field 和Error。最常用的是Connection ,Command,Recordset和Field。在VB应用程序中主要用这个对象建立与数据库的连接,方法是:
1)声明并创建对象
Dim ADOcn As Connection  ‘声明对象
Set ADOcn=New Connection   ‘创建新对象
2)建立数据库连接
通过以下语句完成与数据库(源)的连接
ADOcn.Open  ‘连接字符串
连接代码:
Dim WithEvents adoPrimaryRS As Recordset
Dim mbChangedByCode As Boolean
Dim mvBookMark As Variant
Dim mbEditFlag As Boolean
Dim mbAddNewFlag As Boolean
Dim mbDataChanged As Boolean

Private Sub Form_Load()
  Dim db As Connection
  Set db = New Connection
  db.CursorLocation = adUseClient
  db.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=database.mdb;"

  Set adoPrimaryRS = New Recordset
  adoPrimaryRS.Open "select 教师编号,教师姓名,学生类型,设计人数,计划学时,计划学分,备注 from 毕业设计 Order by 教师编号", db, adOpenStatic, adLockOptimistic

  Dim oText As TextBox
  '绑定文本框到数据提供者
  For Each oText In Me.txtFields
    Set oText.DataSource = adoPrimaryRS
  Next

  mbDataChanged = False
End Sub

3.3界面详细设计
3.3.1 登陆窗体
用户登录窗体是为了保证系统的安全性。只有凭借正确的用户名和密码,才能进入系统进行相关操作。
界面使用adodc控件与数据库连接,所以只有有账号密码的才能登陆,保证了安全性。
 
3.3.2 主窗体设计
主窗体是一个MdiForm中间窗体,它所做的功能就是调用其他的功能模块, 主窗体是查询窗体,主要连接对教师工作量的查询,教师基本资料的查询和所教课程和班级的查询几个副窗体。而且主窗体连接管理员窗体,而且只有通过管理员账号密码才能进入。
 
3.3.3 查询窗体设计
(1)教师查询窗体:教师工作量查询可以通过教师编号或者教师姓名查询教师工作量。
 
(2)教师基本资料查询窗体:是对教师基本资料进行查询的窗体,你可以输入教师的姓名或者编号查询出教师的基本资料。并且教师的基本资料包括,教师姓名,教师编号(每个教师只能有一个编号,所以编号在数据库中设为主键),教师性别,教师职称,教师学位,备注。
 
(3)任务安排表:是对教师这学期工作任务的一个查询,具体包括课程设计任务、毕业设计任务、上机实验任务、授课任务等。以毕业设计任务安排为例。
 

3.3.4导出Excel
系统有导出Excel功能,查询教师工作量时,如有需要导出,可以点击导出button按钮来打印教师工作量信息,这样可以方便导出工作量。
 

3.4教师工作量计算算法  
 3.4.1 计算流程
     管理员先登录主界面(这个普通用户也可以登录查询),可以进入查询先前已经计算出的教师工作量,然后管理员可以在主界面进入管理员管理界面(只有拥有管理员账号的才能进入),管理员界面有个教师工作量计算选项,点击进入教师工作量计算界面,这可以计算教师工作量,输入教师教课信息(如,教师基本信息,教师编号,教师姓名,所教各班级人数,各班级所教基本课时量,额外工时等),然后点击界面中的计算选项,则程序自动运行与判定所填数值是否合适,然后求出教师工作量。
 
3.4.2工作量计算方法
   教师工作量计算主要由教师所教班级人数,所教班级的学期基本课时,还有教师额外工作量计算所得出来的。
计算规则:
一 、单位的教师承担全校素质类选修课、交叉讲授非本单位的专业类课程、公共基础课的工作量,由教师所属单位核算,学校教务处审核;非教学单位的教师承担全校素质类选修课程的工作量,由人文艺术教育中心核算,学校教务处审核;其他课程的工作量由教师所属教学单位核算、审核,报学校教务处备案。
二、  全日制本科教学工作量按照下列方法进行核算:
(1)理论教学工作量JL包括课堂授课工作量JL1和作业工作量JL2,其中JL1=理论计划学时J×班级系数Kj,JL2=理论计划学时J×作业系数Pj, 班级系数 ( 为一个自然授课班的学生人数),作业系数 ,X1见表一。
公共基础课重修、补修学生按每生每门课程每学期0.2个教学工作量(报名未参与考核不计)按课程所属单位核算(包括报名、信息统计、命题组卷、试卷印制、组织考试、阅卷、成绩评定与登录、监考等)。其他课程重修、补修学生的工作量由学生所属教学单位负责核算。
表一:  作业系数X1
课程类别    系数X1    课程说明
A类    0.10    专业类和全校素质类选修课、体育、军事理论、英语听力、大学生就业创业指导
B类    0.20    A类课程和物理实验除外的其他必修课程
(2)实践教学工作总量JS=JS1+ JS2+ JS3+ JS4 .
1.课内实践(包括思想政治理论课、数学实践与建模、体育、大学生就业创业指导)和列入培养计划的社会实践(调查)教学工作量JS1
JS1= .
课内实践教学工作量在开课学期统一核算到相关学院,社会实践(调查)的计划学时为16学时(统一核算到思想政治教育学院)。
2.毕业设计(论文)工作量JS2
JS2=   X2,其中X2= 
3.课程设计(实习)工作量JS3
JS3=16×计划学分× ×课程设计(实习)系数X3,
其中X3见表二。
表二:课程设计(实习)系数X3
环节类别    课程设计    实习
        校内    本市    市外    分散实习
X3    0.65    0.65    0.70    0.90    0.20
4.实验(上机)工作量JS4包括指导工作量JS41和实验(上机)报告批改工作量JS42。其中JS41=实验(上机)计划学时S×Kj, JS42= .
三、  各类补贴工作量(含双肩挑人员、教学秘书、教研室(系)主任副主任、实验室主任副主任、班导师、教授配备的助讲教师、监考等)由各教学单位按学校相关规定核算;指导全日制本科生国家、省、校立项的创新创业项目及科技竞赛等工作量补贴,由各教学单位自行确定。

算法程序:
Private Function funJL1(N As Integer, LX1 As String, LXS As Integer) As Integer
 If LX1 = "A" Then
        X1 = 0.1
        ElseIf LX1 = "B" Then
        X1 = 0.2
        End If
        If 0 < N And N < 30 Then
        KJ = N / 30 + 0.1
        ElseIf 30 <= N And N <= 120 Then
        KJ = 1 + (0.1 * N / 30)
        ElseIf N > 120 Then
        KJ = 1.4
        End If
        funJL1 = LXS * KJ
End Function
Private Function funJL2(N As Integer, LX1 As String, LXS As Integer) As Integer
 If LX1 = "A" Then
        X1 = 0.1
        ElseIf LX1 = "B" Then
        X1 = 0.2
        End If
         If 0 < N And N < 30 Then
        PJ = 0
        ElseIf N > 30 Then
        PJ = (N / 30 - 1) * X1
        End If
        funJL2 = LXS * PJ
End Function
Private Function funJS1(N As Integer, JHXS As Integer) As Integer
  JS1 = (JHXS * N * 0.15) / N
        funJS1 = JS1
End Function
Private Function funJS2(N As Integer, LX2 As String, JHXS As Integer, JHXF As Integer) As Integer
         If LX2 = "理工类" Then
        X2 = 1.5
        ElseIf LX2 = "非理工类" Then
        X2 = 1.4
        End If
        JS2 = (N / 30) * JHXF * JHXS * X2  '毕业设计
        funJS2 = JS2
End Function
Private Function funJS3(N As Integer, LX3 As String, JHXF As Integer) As Integer
          Select Case LX3
        Case "校内"
            X3 = 0.65
        Case "本市"
            X3 = 0.7
        Case "市外"
             X3 = 0.9
        Case "分散实习"
            X3 = 0.2
        End Select
        JS3 = 16 * JHXF * (N / 30) * X3  '课程设计
        funJS3 = JS3
End Function
Private Function funJS4(N As Integer, JHXS As Integer) As Integer
        If 0 < N And N < 30 Then
        KJ = N / 30 + 0.1
        ElseIf 30 <= N And N <= 120 Then
        KJ = 1 + (0.1 * N / 30)
        ElseIf N > 120 Then
        KJ = 1.4
        End If
        
          JS41 = JHXS * KJ
        If 0 < KJ And KJ < 1 Then
        JS42 = 0
        ElseIf KJ >= 1 Then
        JS42 = 0.1 * JHXS * (KJ - 1)
        End If
        funJS4 = JS41 + JS42
End Function

 
4 测试与维护
测试是对一个系统的最后检验.只有在它符合结果才能正式的应用.测试的过程一般要有测试的环境,科学的测试过程,准确的测试结果。
4.1 测试  
4.1.1测试环境 
本次实例测试是在学校相关机房中完成的。
测试所在硬件环境:
中央处理器 奔腾4处理器
内存:512M
硬盘:40G 转速7200转/分
光驱:CD-ROM 52X
显示器: 彩色 真彩32   分辨率 1024×768
标准键盘、标准光电鼠标
测试所在软件环境:
Windows XP Professional SP2
Microsoft office 2003
4.1.2测试方法  
测试是一个为了寻找错误而运行程序的过程,一个好的测试用例是只可能找到迄今为止尚未发现错误的用例,一个成功的测试是揭示了迄今为止尚未发现的错误的测试。
软件测试基本可分为白盒测试和黑盒测试。两种测试方法从不同的角度出发,反映了软件的不同侧面,也适用于不同的开发环境。白盒测试又称结构测试、逻辑驱动测试或基于程序本身的测试,也可称为测试员测试,主要应用于结构化开发环境。黑盒测试又称功能测试、数据驱动测试或基于规格说明的测试,也可被称为用户测试,主要应用于快速应用开发(RAD)环境。
本例所用的是黑盒测试。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等,主要用于软件确认测试。 “黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。
4.1.3测试结果
从以上测试项目完成情况可以看出,基本达到了设计的要求,对设计中提出的功能都能顺利的实现。当然在测试中也存在一点问题,在以后的设计中会吸取教训,进一步改正。其中出现的具体错误有个别模块在修改的时候出现对象为空的错误,但是此错误不属于程序错误,升级系统后就可以正常运行。系统尚存在的缺点有职工管理模块中的下拉框“民族”字段尚未能获取,需要进一步修改源程序。另外,有些模块之间的关联还不是太完善,需要进一步在数据库里设置外键约束。

 
5 总结
  通过此系统的开发,做到了理论联系实际,将书本上学到的知识与具体实践充分结合起来,进一步明确了开发管理信息系统的方法和思想;既加深了对管理信息系统的认识,又进一步巩固了以前所学的计算机软件开发方面的知识,提高了软件开发的水平,从而为今后在实际工作中更好的应用计算机进行信息管理打下了坚实的基础。但是由于毕业设计时间较短,所以该系统还有许多不尽如人意的地方,比如联机文档比较少,用户界面不够美观,出错处理不够等多方面问题。这些都有待进一步改善。提高科学管理水平首先要提高科学管理的意识,进行MIS的开发首先要具有科学的开发方法。成功MIS的基础是科学的管理加上科学的开发方式。企业的MIS开发必须结合实际,严格按照软件工程的思想进行才能保证MIS的高成功率和高效率。
总的来说,在这次的毕业设计种遇到了不少的问题,大部分得到了很好的解决,但也有少部分遗留的问题。
首先便是调研的不充分。由于以前根本未曾接触过软件的整体开发设计,所以在前期的调研中相当不充分,开题开题也有些盲目,以为把属性和表写得越多越好,这个问题越到后来越严种,而且因为客观的原因耽误了进度,因而对开题的开题做了修改。
其次是软件的编程问题,由于以前对VB只是了解并不能够灵活运用,所以在毕设期间进行了苦读,终于可以基本掌握了常用控件的用法和语句编程。
再次就是数据库的建设和使用,虽然我对Access数据库有一定的了解,但我们在日常中还是接触得比较少,所以这自然又是一番努力的学习,就拿安装配置以及连接数据库控件方面来说就不那么容易。
然后,会用了两种软件,如何把它们连接在一起还真是一件困难的事:选择连接的方法就很重要,通过各方面的比较,我选择了ADO,通过ADO对象与数据库中各表进行连接。
随后便是整体设计的问题,只是软件工程的重要部分,一个好的软件的开发必须要全面而实用,尽量把所有的问题都考虑进去,记得当时我们的软件工程老师就说过,一个制作好的软件和差一些的软件最大的区别就在于好的软件把所有的可能性,所有易出错的地方和Bug都考虑到了,自然实用性也就上去了。在这一点上,我还相当欠缺。
最后就是从一而终的问题了,在开发过程中我遇到了许许多多的问题,很多地方都不明白,经常有打退堂鼓的想法,我经常的请教同学和老师,最后的成果虽然不很完美,但我尽力了,并有所收获。
 
6 致谢
在本次毕业设计中,我首先要感谢的是我的指导老师,在他身上我学到了很多东西。他严谨、认真、负责的工作态度给我留下了深刻的印象。在这几个月的工作和学习生活中,我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高,即使在百忙中,抽出了很多时间对我的论文进行的批改和修正。使得我的论文不断完完美,对数据库和VB程序有了更深的学习。在我不能够去学校让老师当面指导的情况下,还是在通过电话和E-mail进行交流和传递信息。这对于我以后的工作和学习都有一种巨大的帮助,衷心地感谢他耐心的辅导!
其次我要感谢的是以前的同班同学,在一开始的调研和结构化设计中他给予了我很大的帮助,虽然后来由于种种原因没能够继续指导我,但我还是要感谢他。给予我很大的帮助,不仅帮我解答了不少的难点,还给我提出了许多建议,我会以他为榜样,更好地努力。将这种精神带到以后的工作和学习,使得自己的工作更上一层楼。
最后,我衷心地感谢所有关心和帮助过我的人们。


 
参考文献
[1] 林立军,程斌,翁迪恩.Visual Basic 6.0数据库开发指南[M].西安:电子科技大学出版社,2000:19-545. 
[2] 刘炳文.精通VISUAL BASIC 6.0入门与提高[M].北京:人民邮电出版社,2001:203-313. 
[3] 张宏林,孔艳,王哲.按实例学Visual Basic 6.0[M].北京:人民邮电出版社,2000:19-20 
[4] 李占宣.数据库中面向复杂应用的查询方法[J].电脑学习,2009,25(12A):1989-2005. 
[5] 宋伟,吴建国.中文Visual Basic 6.0编程基础[M].北京:清华大学出版社,2005:72-168. 
[6] 黄淼云.VB6.0办公自动化编程[M].北京:国防工业出版社,2004:1-387. 
[7]  叶杰宏 等编著.《Access2003经典案例》.冶金工业出版.出版日期 2006年2月第二版
[8]  黄剀涛 等编著.《Access 2000学习教程》.北京大学出版社.出版日期 2003年9月第一版
[9]  刘胜雷 编著.《新概念Access 2002》教程,北京科海集团公司.出版日期 2003年4月第一版
[10]  甘雷 等编写.《中文Access2002标准教程》.辽宁教育出版社.出版日期 2003年9月第一版
[11]  王雪情 编著.《数据库基础》.辽宁教育出版社.出版日期 2005年2月第二版
 

更多推荐

基于ACCESS的教师工作量计算系统的设计与实现(含源文件)