• 6.89 MB
  • 2022-05-26 19:15:37 发布

重庆一中学生班级管理系统研究毕业论文.doc

  • 42页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
重庆一中学生班级管理系统研究毕业论文目录目录Ⅰ第1章前言11.1简介11.2开发工具的选择41.2.1VisualBasic简介41.2.2SQLServer2000简介61.2.3ActiveX数据对象——ADO简介61.2.4C/S简介10第2章需求分析112.1需求概述112.1.1应用系统概述112.1.2开发背景122.2系统概述132.2.1系统组成132.2.2系统各子模块功能简述132.3数据库需求分析142.3.1数据库需求分析142.4任务概述162.4.1目标16第3章概要设计17ii 3.1数据库设计173.1.1数据库概念结构设计173.1.2数据库逻辑结构设计203.2数据库结构的实现233.2.1创建Class表233.2.2创建CStudent表243.2.3创建Grade表243.2.4创建Room表243.2.5创建Student表253.2.6创建SPerformance表253.2.7创建Teacher表263.2.8创建Us26第4章详细设计284.1登录界面设计284.2主界面设计31第5章模块测试34结束语36致谢39参考文献40ii 第1章前言随着社会的进步和发展,信息系统在生产生活中的作用日益明显,信息产业在学校生产规模中的比重日趋增大,已经成为衡量学校现代化水平的重要指标之一。因此,如何能对学校整体的概况进行宏观调控,使学校的人、财、物等资源配置更加合理,使之发挥最大的效益,使办公及生产趋于自动化,是一个学校始终不渝追求的目标。管理计算机产生的信息在很多方面不同于处理人工产生的数据,通常有更大量的计算机信息需要管理。组织和维护信息的成本可能以惊人的速度增加,而且与通过其他途径获得的信息相比,用户往往更信任它。学校班级管理系统可以为学校节约大量的人力和物力资源。同时,能够第一时间提供给学校领导有关学校班级情况、学校教室利用情况及各班班主任等信息。班主任可以更方便地管理自己所带的班级、查询学生的基本信息等。1.1简介管理信息系统(ManagementInformationSystems简称MIS),是一个由人、计算机等组成的能进行信息的收集、传送、储存、维护和使用的系统。经过30多年的发展,已经成为一个具有自身概念、理论、结构、体系和开发方法的覆盖多学科的新学科。MIS的对象就是信息,信息是经过加工的数据。信息的主要特征是来源分散,数量庞大。信息具有时间性。信息的加工方式有多种形式。管理信息系统辅助完成学校日常结构化的信息处理任务,一般认为MIS的主要任务有如下几方面:1、对基础40 数据进行严格的管理,要求计量工具标准化、程序和方法的正确使用,使信息流通渠道顺畅。同时,必须保证信息的准确性、一致性。2、确定信息处理过程的标准化,统一数据和报表的标准格式,以便建立一个集中统一的数据库。3、高效低能地完成日常事务处理业务,优化分配各种资源,包括人力、物力、财力等。管理信息系统开发方法主要有:结构化生命周期开发方法、原型法、面向对象的开发方法等。1.结构化生命周期开发方法目前较为流行的MIS开发方法是结构化生命周期开发方法,其基本思想是:用系统的思想和系统工程的方法,按用户至上的原则,结构化、模块化地自上而下对生命周期进行分析与设计。用结构化生命周期开发方法开发一个系统,将整个开发过程划分为5个依次连接的阶段:系统规划阶段:主要任务是明确系统开发的请求,并进行初步的调查,通过可行性研究确定下一阶段的实施。系统规划方法有战略目标集转化法(SST,StrategySetTransformation)、关键成功因素法(CSF,CriticalSuccessFactors)和企业规划法(BSP,BusinessSystemPlanning)。系统分析阶段:主要任务是对组织结构与功能进行分析,理清企业业务流程和数据流程的处理,并且将企业业务流程与数据流程抽象化,通过对功能数据的分析,提出新系统的逻辑方案。系统设计阶段:主要任务是确定系统的总体设计方案、划分子系统功能、确定共享数据的组织,然后进行详细设计,如处理模块的设计、数据库系统的设计、输入输出界面的设计和编码的设计等。40 系统实施阶段:主要任务是讨论确定设计方案、对系统模块进行调试、进行系统运行所需数据的准备、对相关人员进行培训等。系统运行阶段:主要任务是进行系统的日常运行管理,评价系统的运行效率,对运行费用和效果进行监理审计,如出现问题则对系统进行修改、调整。这五个阶段共同构成了系统开发的生命周期。结构化生命周期开发方法严格区分了开发阶段,非常重视文档工作,对于开发过程中出现的问题可以得到及时的纠正,避免了出现混乱状态。但是,该方法不可避免地出现开发周期过长、系统预算超支的情况,而且在开发过程中用户的需求一旦发生变化,系统将很难作出调整。2.原型法原型法在系统开发过程中也得到不少应用。原型法的基本思想是系统开发人员凭借自己对用户需求的理解,通过强有力的软件环境支持,构造出一个实在的系统原型,然后与用户协商,反复修改原型直至用户满意。原型法的应用使人们对需求有了渐进的认识,从而使系统开发更有针对性。另外,原型法的应用充分利用了最新的软件工具,使系统开发效率大为提高。3.面向对象系统开发方法面向对象(OO,ObjectOriented)的系统开发方法,是近年来受到关注的一种系统开发方法。面向对象的系统开发方法的基本思想是将客观世界抽象地看成是若干相互联系的对象,然后根据对象和方法的特性研制出一套软件工具,使之能够映射为计算机软件系统结构模型和进程,从而实现信息系统的开发。40 1.2开发工具的选择1.2.1VisualBasic简介“Visual”的意思是“可视的”,指的是开发图形用户界面(GUI)的方法。读者不需要编写大量代码去描述界面的外观和位置,而只要把预先建立的对象放到屏幕上即可。“可视的Basic”这个名字初听起来可能抽象了点,但实际上它却是最形象的叫法,用户只要看到VisualBasic的界面就会明白,实际上无需编程,就可以完成许多编程步骤。另外,在VisualBasic中引入了控件的概念,在Windows中控件的身影无处不在,各种各样的按钮、文本框等都是控件。VisualBasic把这些控件模式化,并且每个控件都有若干属性用来控制控件的外观以及工作方法(Method)为了满足不同的开发人员的需要,VisualBasic提供了3个版本供用户选择。1.学习版学习版提供的功能最少,尽管如此,它所包含的内部控件以及网格、选择卡和数据绑定控件也足以开发出绝大部分Windows9X和WindowsNT的应用程序了。2.专业版专业版提供了一套完整的开发工具,包括学习版的全部功能以及ActiveX控件、InternetInformationServerApplicationDesigner、集成的 VisualDatabaseTools和DataEnvironment、ActiveDataObject及DynamicHTMLPageDesigner。3.企业版40 专业编程人员可以用企业版来开发功能强大的组内分布式应用程序。除了具有专业版的全部功能以外,企业版还包括BackOffice工具,例如SQLServer、MicrosoftTransactionServer、InternetInformationServer、VisualSourceSafe和SNAServer等。VisualBasic的特点:1.可视化编程VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。2.面向对象的程序设计在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualBasic自动生成对象的程序代码并封装起来。每个对象以图形方式显示在界面上,都是可视的。3.结构化程序设计语言VisualBasic是在BASIC和QuickBASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的思维发方式,其语句简单易懂;其编译器支持彩色代码,可自动进行语法错误检查,同时具有功能强且使用灵活的调试器和编译器。4.事件驱动编程机制VisualBasic通过事件来执行对象的操作。一个对象可能回产生多个事件,每个事件都可以通过一段程序来响应。5.访问数据库VisualBasic提供开放式数据连接(OpenDataBaseConnectivity),即ODBC功能,它可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer、Oracle等。40 1.2.2SQLServer2000简介MiscrosoftSQLServer2000中文版(以后简称为SQLServer2000或SQLServer),是基于客户端/服务器模式(Client/Server模式,简称C/S模式)的新一代大型关系型数据库管理系统(DBMS)。它在电子商务、数据仓库和数据库解决方案等应用中起着重要的核心作用,为企业的数据管理提供强大的支持,对数据库中的数据提供有效的管理,并采用有效的措施实现数据的完整性及数据安全性。SQLServer2000主要的服务器组件:(1)SQLServer数据库引擎(MSSQLServer服务)。(2)SQLServer代理程序(SQLServerAgent服务)。(3)Microsoft搜索服务。(4)分布式事务处理协调器(MSDTC服务)。1.2.3ActiveX数据对象——ADO简介ADO,即Active数据对象(ActiveDataObjects):实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口相连。用户可以使用任何一种ODBC数据源,即不仅适合于SQLServer、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。Microsoft在VisualBasic6.0以后的版本都集成了ADO。它与以前VisualBasic的DAO、RDO相比有了很大的提高。DAO(DataAccessObjects)即数据访问对象,是一种面向对象的界面接口。通过DAO/Jet功能可以访问ISAM数据库,使用DAO/ODBCDirect功能可以实现远程40 RDO功能。RDO(RemoteDataObjects)即远程数据对象,为使用代码来创建和操作一个远程ODBC数据库系统的各个部件提供了一个框架。RDO是ODBCAPI的一个浅层界面接口,是专为访问远程ODBC关系数据源而设计的。ADO集中了DAO和RDO的优点,可以通过简单的编程实现和各种数据结构进行连接。ADO通过下面几步来完成对数据库的操作:(1)创建一个到数据源的连接(Connection),连接到数据库;或者开始一个事务(Transction)。(2)创建一个代表SQL命令行(包括变量、参数、可选项等)的对象。(3)执行命令行。(4)如果返回以表格形式组织的数据,则将它们保存在缓存中,产生相应的数据集对象(Recordset)。这样便于查找、操作数据。(5)通过数据集对象对数据进行各种操作,包括修改、增加、删除等。(6)更新数据源,如果使用事务,确认是否接受事务期间发生的数据变化。(7)结束连接和事务。使用ADO的目的是进入数据源,使得修改、更新数据成为可能。ADO提供一系列的类和对象来完成各种操作。1.连接对象——Connection一个连接(Connection40 )对象代表一个到指定数据源的成功连接。应用程序通过一个连接(包括实现数据交换的环境设置)访问数据源,也可以直接访问数据源(在两层数据结构的系统中比较常见),或者通过类似MicrosoftInternetInformationServer的中间层间接访问数据源(这就是通常说的三层结构)。连接成功,Connection以对象的形式存在。连接对象在ADO对象模型中的地位如图2-1所示。图2-1连接对象在ADO中的地位使用连接对象的各种属性和方法可以完成如下操作:l在打开连接前需要设置ConnectionString、ConnectionTimeout和Mode属性。l设置CursorLocation属性,可以设置或者返回指针位置。l设置DefaultDatabase属性可以为连接指定一个默认的数据库。l设置IsolationLevel属性可以确定事务(Transaction)在连接的隔离等级。l设置Provider可以为连接指定一个OLE-DB寄主。l使用Open和Close方法来建立和中断一个连接。l使用Execute方法在连接上执行命令,设置CommandTimeout属性来指定或者返回命令执行时间。l使用BeginTrans、CommitTrans和RollbackTrans方法以及Attributes属性来管理事务。l通过检查Errors对象可以知道数据源返回的错误。l通过Version属性可以知道ADO的版本。l使用OpenSchema方法可以知道数据库的计划信息。40 2.命令行对象——Command命令行对象是对数据源将要执行的一系列操作的定义。使用命令行对象来查询数据库并返回数据集对象(Recordset)形式的查询结果。命令行对象指定变量、参数以及可选项来完成对数据的操作,如添加记录、删除记录、更新记录等。命令行对象在ADO对象模型中的地位如图2-2所示。图2-2命令行对象在ADO中的地位使用命令行对象的各种属性和方法可以完成如下操作:l设置CommandText属性可以定义命令行的内容,比如SQL语句等。l使用Execute方法执行命令行并返回一个数据集对象(Recordset)。l设置CommandType属性可以优化命令的效率。l设置CommandTimeout属性可以指定服务器等待命令执行的时间。l设置ActiveConnection属性可以将一个命令行对象与一个打开的连接关联。3.数据集对象——Recordset如果命令行指定数据以表的形式组织,执行命令行后将返回相应的数据集。通过数据集可以对记录以及组成记录的列进行各种操作。数据集对象在ADO对象模型中的地位如图2-3所示。40 图2-3数据集对象在ADO中的地位1.2.4C/S简介C/S模式即客户机/服务器(Client/Server)体系结构是当前非常流行的计算机体系结构。在这种体系结构中,客户机提出请求,服务器对客户机的请求作出回应。在客户机/服务器体系结构中,客户机负责管理用户界面、接收用户数据、处理应用逻辑、生成数据库服务请求,然后将这些请求发送给服务器,并且接收服务器返回的结果,最后再将这些结果按照一定的格式返回给用户。服务器接收客户机的请求,处理这些请求,并把处理结果返回给客户机,这些处理结果包括访问数据库的结果数据和执行状态例如成功或失败。在典型的C/S数据库应用中,数据的储存管理功能,是由服务器程序独立进行的,并且通常把那些不同的(不管是已知还是未知的)前台应用所不能违反的规则,在服务器程序中集中实现,例如访问者的权限,编号不准重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)这背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序可以变的非常“瘦小”,麻烦的事情,都交给了服务器和网络。在C/S体系的下,数据库真正变成了公共、专业化的仓库,受到独立的专门管理。40 第2章需求分析2.1需求概述重庆一中是一所省级重点中学,有高中和初中两部。2000年,重庆地区所有重点中学实行联考招生以来,每学期报考重庆一中的学生不断增加。有不少是外县来求学的,他们对重庆一中的环境还不熟悉,因此,每学期开学班主任都要不断给学生和学生家长介绍学校等。并且学校还招收高考直通班。当前,重庆一中的班级管理主要是人工管理。每学期开学是学校最繁忙的时候,学校都要组织大量的教师投入到学生的报名工作中,在此期间也是班主任最忙的时候,班主任要填写很多的表。开学过后,有些报表整理后就没有用了。这样每学期,都要浪费很多的人力和物力。班级管理系统可以为学校节约人力和物力资源。同时也减少了班主任管理班级的负担,学校领导也可以第一时间了解到学校教室的使用情况。2.1.1应用系统概述管理计算机产生的信息在很多方面不同于处理人工产生的数据,通常有更大量的计算机信息需要管理。组织和维护信息的成本可能以惊人的速度增加,而且与通过其他途径获得的信息相比,用户往往更信任它。学校班级管理系统可以为学校节约大量的人力和物力资源。同时,能够第一时间提供给学校领导有关学校班级情况、学校教室利用情况及各班班主任等信息。班主任可以更方便地管理自己所带的班级、查询学生的基本信息等。重庆一中40 班级管理信息系统包括用户管理子系统、学生信息管理子系统、班级信息管理子系统、年级信息管理子系统、教师信息管理子系统、教室信息管理子系统、查询打印子系统、帮助子系统、数据备份9大子系统,班级信息管理子系统,主要对班级信息的编码、学生信息和相关信息进行管理,不同的用户只能根据自己的权限访问数据和进行操作。CNo编码模块主要对CNo进行管理,可实现班级的增、删、改、查操作,方便、快速的对班级进行管理,为后续工作打下良好的基础。为了方便管理班级信息的需求,根据不同的条件如:CNo、CName、GNo、RNo等基本信息,对班级信息统计查询,并且有不同方式的查询如模糊查询,精确查询等。在数据管理中,安全性问题是重中之重,除了对重要数据进行加密处理外,系统要求有登录界面,用户根据自己的权限访问数据。根据其级别不同则权限不同,另设一超级管理员,为最高权限用户,对所有用户予以授权,并且可以注册、删除用户以及更改用户密码等。为了记录用户对系统的操作情况同时也为一旦系统出现异常便于调查,将用户登录上次时间、此次登录时间记录并显示。系统中对于操作人员没有过多的限制,要求掌握一定的计算机操作水平,工作尽心尽力,要求管理员对系统定期进行维护工作,为使本系统能发挥应有的作用。2.1.2开发背景开发重庆一中班级管理信息系统的任务是:推进学校管理现代化进程,提高经营决策的科学性、经营管理水平、服务质量、工作效率、学校的竞争能力和经济效益,为实现学校的发展目标服务。主要功能有:班级信息管理、学生信息管理、年级信息管理、教师信息管理、教室信息管理、查询打印、用户管理、数据备份。在本系统中,主要负责班级信息管理、学生信息管理、教室信息管理等。40 根据设计说明书要求,本管理系统应用MicrosoftSQLServer2000作为后台数据库管理工具、VisualBasic6.0作为前台开发工具,并应用Photoshop等作为美化界面工具。2.2系统概述2.2.1系统组成重庆一中班级管理系统用护管理年级信息管理查询打印数据备份教师信息管理教室信息管理学生信息管理班级信息管理帮助系统图2-1系统功能模块图2.2.2系统各子模块功能简述用户管理:使用本系统的用户对象为该校教职工,设计中要求对本系统的设备进行专人管理,不同的用户只能根据自己的权限访问系统。学生信息管理:要求对学生信息管理,并可进行任意添加、删除、修改操作。SNo具有唯一性,不能有两个学生有同一个编码。班级信息管理:要求对班级信息管理,并可进行任意添加、删除、修改操作,同一年级不能有两个CNo为同一个编码。40 年级信息管理:要求对年级信息管理,并可进行任意添加、删除、修改操作,同一学校不能有两个GName为同一个名字。教师信息管理:要求对教师信息管理,并可进行任意添加、删除、修改操作,同一学校不能有两个TNo有同一个编码。教室信息管理:要求对教室信息管理,并可进行任意添加、删除、修改操作,同一学校不能有两个RNo有同一个编码。查询打印:要求对学生信息可以任意查询并且打印。数据备份:实行差异备份。帮助系统:提供系统开发者的E-mail等。可以向软件开发者寻求帮助。2.3数据库需求分析数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。2.3.1数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。数据流图是结构化系统分析的主要工具,它能图形化的显示出系统中数据的使用,表达数据在系统内部的逻辑流向以及系统的逻辑功能和数据的逻辑变换。根据对系统的分析和所收集的资料,得出了班级管理系统流程图。40 图2-2系统流程图数据流图描述了系统的分解,即系统由哪些部分组成,各部分之间有什么联系等。但是,他还不能完整地表达一个系统的全部逻辑特征,特别是有关数据的详细内容。这就要引入数据字典这个概念。数据字典是关于数据信息的集合,也就是对数据流图中包含的所有元素的定义的集合。任何字典最主要的用途都是供人查阅对不了解的条目的解释,数据字典的作用也正是在软件分析和设计的过程中给人提供关于数据的描述信息。针对一般学校管理信息系统的需求,通过对班级管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:lClass,包括的数据项有:CNo、CName、GNo、RNo、TNo、CActivity、CNumber、CMemo。lGrade,包括的数据项有:GNo、GName、TNo、GMemo。lRoom,包括的数据项有:RNo、RAddress、RNumber40 、RCapacity、RAppearance。lStudent,包括的数据项有:SNo、SName、SSex、SRace、SBirth、SAddress、SParent、STelphone、SPart、SPsc、SPhoto。lTeacher,包括的数据项有:TNo、TName、TSex、TRace、TTelephone、TCollege、TEdubg、TProfession、TGraduate、TTitle、TTime、TPart、TJob、TBirth、TPhone。lUs,包括的数据项有:TNo、UPassword、UTime、UAppearance、Ulegal。lSPerformance,包括的数据项有:SNo、SComment、SSemester、SPpc。lCStudent,包括的数据项有:SNo、CNo。有了上面的数据结构、数据项和数据流程,我们就能进行数据库设计。2.4任务概述2.4.1目标该系统应遵循学校管理的方法,利用计算机技术,网络技术,数据库技术,数据通讯技术。全面收集和处理数据,提供各类信息,并利用现代化管理方法,建立具有多种辅助决策功能的模块,为重庆一中的经营管理提供决策支持,从而提高学校现代管理水平,达到提高学校整体素质目的。拟建系统实现以下具体要求:1.信息资源共享2.提高信息处理速度3.减轻管理人员的劳动强度、提高管理水平4.集中处理,提高管理效率,提高辅助决策能力40 第3章概要设计3.1数据库设计设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤:⑴数据库需求分析。⑵数据库概念结构设计。⑶数据库逻辑结构设计在需求分析中我们已经得出了班级管理系统的系统流程图、数据项及数据结构。接下来就开始数据库结构设计。3.1.1数据库概念结构设计得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。本系统根据上面的设计规划出的实体有:Class实体、Grade实体、Room实体、Student实体、Teacher实体、Us实体。各个实体具体的描述E-R图如下。Class实体E-R图如图3-1所示。图3-1Class实体E-R图40 Grade实体E-R图如图3-2所示。图3-2Grade实体E-R图Room实体E-R图如图3-3所示。图3-3Room实体E-R图Student实体E-R图如图3-4所示。图3-4Student实体E-R图Teacher实体E-R图如图3-5所示。图3-5Teacher实体E-R图40 Us实体E-R图如图3-6所示。图3-6Us实体E-R图SPerformance实体E-R图如图3-7所示。图3-7SPerformance实体E-R图总体实体之间关系的E-如图3-8R图所示。图3-8实体之间关系的E-R图40 3.1.2数据库逻辑结构设计现在需要将上面的数据库概念结构转化为SQLServer2000数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。重庆一中班级管理信息系统数据库中各个表的设计结果如下面表格所示。每个表格表示在数据库中的一个表。Class表是对班级基本信息的管理,存储的是班级的基本信息。CNo编码由8位数字组成,备注用来记录班主任的变更情况。表3-1Class表列名数据类型可否为空说明CNovarcharNOTNULL班级号CNamevarcharNOTNULL班级名GNovarcharNULL年级号RNovarcharNULL教室号TNovarcharNULL班主任工号CActivityvarcharNULL班级活动CNumbertinyintNOTNULL班级人数CMemovarcharNULL备注Grade表是对年级基本信息的管理,存储的是年级的基本信息。GNo编码由5位数字组成,备注用来记录年级主任的变更情况。表3-2Grade表列名数据类型可否为空说明GNovarcharNOTNULL年级号GNamevarcharNOTNULL年级名TNovarcharNOTNULL年级主任工号GMemovarcharNULL备注Room40 表是对教室基本信息的管理,存储的是教室的基本信息。RNo编码由3位数字组成,Rappearance用来表示该教室是否已经被安排了,如果安排了就表示已占用。表3-3Room表列名数据类型可否为空说明RNovarcharNOTNULL教室号RAddressvarcharNOTNULL教室地址RNumbervarcharNOTNULL门牌号RCapacitytinyintNOTNULL容纳人数RAppearancebitNOTNULL是否可用CStudent表是对班级—学生信息的管理,存储的是班级与学生存在的关系信息。表3-4CStudent表列名数据类型可否为空说明SNovarcharNOTNULL学号CNovarcharNULL班级号Student表是对学生基本信息的管理,存储的是学生的基本信息。SNo编码由12位组成,SPsc是记录的是学生的家乡的邮政编码。为的是每学期给学生寄通知书时使用。表3-5Student表列名数据类型可否为空说明SNovarcharNOTNULL学号SNamevarcharNOTNULL姓名SSexbitNOTNULL性别SRacevarcharNOTNULL民族SBirthsmalldatetimeNULL出生日期SPartvarcharNULL政治面貌SParentvarcharNULL家长姓名SAddressvarcharNULL家庭地址STelphonevarcharNULL联系电话SPscvarcharNULL邮政编码SPhotovarcharNULL照片Teacher表是对员工个人基本信息的管理,存储的是员工的个人息。40 表3-6Teacher表列名数据类型可否为空说明TNOvarcharNOTNULL工号TNamevarcharNULL姓名TSexbitNULL性别TRacevarcharNULL民族TBirthsmalldatetimeNULL出生日期TPartvarcharNULL政治面貌TTelephonevarcharNULL联系电话TCollegevarcharNULL毕业学校TEdubgvarcharNULL学历TProfessionvarcharNULL专业TGraduatesmalldatetimeNULL毕业时间TTitlevarcharNULL职称TTimesmalldatetimeNULL招聘日期TJobtinyintNULL在职情况TPhotovarcharNULL照片SPerformance表记录学生的学期表现信息,该信息由班主任填写。表3-7SPerformance表列名数据类型可否为空说明SNovarcharNOTNULL学号SCommentvarcharNULL评语SSemesterbitNOTNULL学期SPpcvarcharNULL奖惩情况Us表是对系统用户登录的管理和保存用户登录信息,用户TNo编码最长为4位(即:工号),非空。如果用户在3次未登陆本系统未成功,系统将自动关闭,并且修改用户的状态。40 表3-8Us表列名数据类型可否为空说明TNovarcharNOTNULL工号UPasswordvarcharNULL密码UTimedatetimeNULL最后一次未登上的时间UAppearancebitNULL状态UlegalvarcharNULL权限3.2数据库结构的实现经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。现在就可以在SQLServer2000数据库系统中实现该逻辑结构。这是利用SQLServer2000数据库系统中的SQL查询分析器实现的。下面给出创建这些表格的SQL语句。3.2.1创建Class表CREATETABLE[dbo].[Class]([CNo][varchar](8)COLLATEChinese_PRC_CI_ASNOTNULL,[CName][varchar](20)COLLATEChinese_PRC_CI_ASNOTNULL,[GNo][varchar](5)COLLATEChinese_PRC_CI_ASNULL,[RNo][varchar](3)COLLATEChinese_PRC_CI_ASNULL,[TNo][varchar](4)COLLATEChinese_PRC_CI_ASNULL,[CActivity][varchar](200)COLLATEChinese_PRC_CI_ASNULL,[CNumber][tinyint]NOTNULL,[CMemo][varchar](300)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]GO40 3.2.2创建CStudent表CREATETABLE[dbo].[CStudent]([SNo][varchar](12)COLLATEChinese_PRC_CI_ASNOTNULL,[CNo][varchar](8)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]GO3.2.3创建Grade表CREATETABLE[dbo].[Grade]([GNo][varchar](5)COLLATEChinese_PRC_CI_ASNOTNULL,[GName][varchar](20)COLLATEChinese_PRC_CI_ASNOTNULL,[TNo][varchar](4)COLLATEChinese_PRC_CI_ASNOTNULL,[GMemo][varchar](200)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]GO3.2.4创建Room表CREATETABLE[dbo].[Room]([RNo][varchar](3)COLLATEChinese_PRC_CI_ASNOTNULL,[RAddress][varchar](50)COLLATEChinese_PRC_CI_ASNOTNULL,[RNumber][varchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,[RCapacity][tinyint]NOTNULL,[RAppearance][bit]NOTNULL)ON[PRIMARY]GO40 3.2.5创建Student表CREATETABLE[dbo].[Student]([SNo][varchar](12)COLLATEChinese_PRC_CI_ASNOTNULL,[SName][varchar](50)COLLATEChinese_PRC_CI_ASNOTNULL,[SSex][bit]NOTNULL,[SRace][varchar](20)COLLATEChinese_PRC_CI_ASNULL,[SBirth][smalldatetime]NULL,[SPart][varchar](10)COLLATEChinese_PRC_CI_ASNULL,[SParent][varchar](50)COLLATEChinese_PRC_CI_ASNULL,[SAddress][varchar](50)COLLATEChinese_PRC_CI_ASNULL,[STelephone][varchar](13)COLLATEChinese_PRC_CI_ASNULL,[SPsc][varchar](6)COLLATEChinese_PRC_CI_ASNULL,[SPhoto][varchar]NULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]GO3.2.6创建SPerformance表CREATETABLE[dbo].[SPerformance]([SNo][varchar](12)COLLATEChinese_PRC_CI_ASNOTNULL,[SComment][varchar](200)COLLATEChinese_PRC_CI_ASNULL,[SSemester][tinyint]NOTNULL,[SPpc][varchar](200)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]GO40 3.2.7创建Teacher表CREATETABLE[dbo].[Teacher]([TNo][varchar](4)COLLATEChinese_PRC_CI_ASNOTNULL,[TName][varchar](50)COLLATEChinese_PRC_CI_ASNULL,[TSex][bit]NULL,[TRace][varchar](20)COLLATEChinese_PRC_CI_ASNULL,[TBirth][smalldatetime]NULL,[TPart][varchar](10)COLLATEChinese_PRC_CI_ASNULL,[TTelephone][varchar](13)COLLATEChinese_PRC_CI_ASNULL,[TCollege][varchar](50)COLLATEChinese_PRC_CI_ASNULL,[TEdubg][varchar](10)COLLATEChinese_PRC_CI_ASNULL,[TProfession][varchar](50)COLLATEChinese_PRC_CI_ASNULL,[TGraduate][smalldatetime]NULL,[TTitle][varchar](50)COLLATEChinese_PRC_CI_ASNULL,[TTime][smalldatetime]NULL,[TJob][tinyint]NULL,[TPhoto][varchar]NULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]GO3.2.8创建UsCREATETABLE[dbo].[Us]([TNo][varchar](4)COLLATEChinese_PRC_CI_ASNOTNULL,[UPassword][varchar](50)COLLATEChinese_PRC_CI_ASNOTNULL,[UTime][datetime]NULL,[UAppearance][bit]NOTNULL,[Ulegal][varchar](1)COLLATEChinese_PRC_CI_ASNOTNULL40 )ON[PRIMARY]GO40 第4章详细设计4.1登录界面设计界面设计:界面图案:主要为美化用户界面,界面注明使用该应用系统的对象名称、开发工具和开发该的人员等,使系统登录界面更加友好,更加人性化。图4-1系统闪屏界面关键代码如下:PrivateSubForm_Load()OnErrorGoTo10IfApp.PrevInstanceThen"检视前一版本MsgBox"软件“重庆一中班级管理系统”已经打开!",48,""UnloadMe40 EndEndIfIfsound1=FalseThenPlaySoundFile(App.Path+"SoundLOAD.wav")sound1=TrueEndIfExitSub10UnloadMeEndSubPrivateSubTimer1_Timer()Main.ShowTimer1.Enabled=FalseEndSubPrivateSubTimer2_Timer()淡入淡出1.SUMe.hWnd,35,255,6Timer2.Enabled=FalseEndSub40 图4-2系统登录界面用户登录系统窗口的是用户和管理员进入系统的唯一通道,合法的用户能够通过登录窗口进入系统。用户登录窗口是进入应用系统的喉舌,在安全保密、系统维护中占有重要的地位,所以登录系统的规划在整个应用系统中占据不小的比例,是系统能否安全、稳定、正常运行的关键。登录系统就是要验证当前的用户名是否与该用户密码一致,以保证所有用户的合法权益不受侵害。用户密码是在单行编辑框中输入,全部为掩码显示,避免因为明文而造成密码失窃,给用户造成不必要的麻烦。当用户登录3次以上时,系统就会自动退出,认为有非法用户企图在猜密码,则拒绝进入应用系统,给出相应提示并自动关闭应用系统。界面图案:主要为美化用户界面,界面注明使用该应用系统的对象名称,使系统登录界面更加友好,更加人性化。40 4.2主界面设计图4-3主界面设计和班级界面设计界面图案:主要为美化用户界面,界面注明使用该应用系统的重要功能,并且在用户使用系统时有相应的提示,刚登陆系统时系统默认打开班级管理界面。使系统界面更加友好,更加人性化。关键编码设计:OptionExplicitPrivateDeclareFunctionShellExecuteLib"shell32.dll"Alias"ShellExecuteA"(ByValhWndAsLong,ByVallpOperationAsString,ByVallpFileAsString,ByVallpParametersAsString,ByVallpDirectoryAsString,ByValnShowCmdAsLong)AsLong40 PrivateConstWEB="mailto:tangjingcheng168@126.com"PrivateDeclareFunctionShellAboutLib"shell32.dll"Alias"ShellAboutA"(ByValhWndAsLong,ByValszAppAsString,ByValszOtherStuffAsString,ByValhIconAsLong)AsLongPrivateSubForm_Load()DimstrInfoAsStringstrInfo="重庆一中班级管理系统用户须知"&vbCrLfstrInfo=strInfo&"重庆一中班级管理系统V2.0主要面向全校的班级管理,教室管理,学生的评语管理等。"strInfo=strInfo&"旨在实现学校班级管理信息化。"&vbCrLfstrInfo=strInfo&"本系统采用分级管理,将人员分为班主任、任课教师、系统管理员,用户拥有不"strInfo=strInfo&"同的权限,各司其职,以便提高工作效率。系统功能包括:学生管理、班级管理、教"strInfo=strInfo&"师管理、教室管理、报表查询打印等。"&vbCrLfstrInfo=strInfo&vbCrLf&"用户权限:"&vbCrLf&vbCrLfstrInfo=strInfo&"(一)班主任权限:班级的管理。"&vbCrLfstrInfo=strInfo&"(二)教师权限:信息的查询."&vbCrLfstrInfo=strInfo&"(三)系统管理员权限:包含系统管理、数据库的维护管理等。"Label6.Caption=strInfoEndSub40 PrivateSubLabel6_Click()Dimssssss=SetWindowPos(Help.hwnd,-2,0,0,0,0,3)CallShellAbout(hwnd,"鹏程系列软件","联系我们E-"+WEB,Me.Icon)sss=SetWindowPos(Help.hwnd,-2,0,0,0,0,3)EndSubPrivateSubLabel1_Click()DimHyperJumpHyperJump=ShellExecute(0&,vbNullString,WEB,vbNullString,vbNullString,vbNormalFocus)Help.HideEndSub40 第5章模块测试软件工程的根本目标是开发出高质量的完全符合用户需要的软件。因此,通过测试发现错误之后还必须诊断并改正错误,这才是测试的目的。软件测试的目标为:(1)测试是为了发现程序中的错误而执行程序的过程。(2)好的测试方案是极可能发现迄今为止尚未发现的错误。(3)成功的测试是发现了至今为止尚未发现的错误的测试。测试方法:白盒法其测试的前提是把测试的对象看作一个打开的盒子,允许测试人员利用程序内部的逻辑结构及有关信息设计或选择测试用例,对程序所有逻辑路径进行测试。黑盒法其测试前提是把测试的对象看作一个黑盒子,测试人员完全不考虑程序的内部结构和特性。只依据程序的需求分析规格说明,检查程序的功能是否符合它的功能说明。软件测试按4个步骤进行,即单元测试、集成测试、确认测试、系统测试。软件测试在软件生命周期中横跨两个阶段。通常在编写出每个模块之后就对它作必要的测试,模块的编写者和测试者是同一个人,编码和模块测试属于软件生命周期的同一个阶段。在这个阶段结束之后,对系统还应该进行各种综合测试,这是软件生命周期中的另一个独立的阶段,通常由专门的测试人员承担这项工作。由于程序的编写由我一个人独立完成,程序的流程已经非常清楚。因此,我在系统的测试中主要采用的测试方法是“白盒测试”40 ,在编写过程中也出现过很多错误,甚至根本无法运行下去,常采用在程序中的设置断点,逐步缩小范围并最终找到问题的解。在测试的过程中,我尽量站在用户的角度考虑问题,假如我是用户如何才能更方便,假如我在某一时刻进行某种操作会产生什么结果,大量进行假设。并请同学帮忙作为用户试使用系统并提出建议意见。在所有模块功能完成后,先测试了一个模块的功能,能够实现后,再对其它模块进行编写、测试,在这个过程中,往往又会返回到刚才的模块,再次改进。如此反复当所有模块测试完成后,便对子系统分别测试,输入大量数据并尽可能多的假设“非正常情况”以测试系统的健壮性。待这些测试都通过后就对整个系统进行测试。我所采用的测试方式属于集成测试中的渐增式测试,这种方法实际上同时完成单元测试和集成测试,其优点有:1.利用已测试过的模块作为测试软件,开销小。2.模块间的接口错误可以较早发现。3.在测试时,如发现错误往往和最近加进来的那个模块有关。4.已测试的模块可以在新的条件下再次检验,使测试更彻底。40 结束语本系统在设计之初,我对WindowsAPI和ActiveX控件有一定的了解,在老师和同学的帮助下,根据所学的关于软件工程的知识,从最初的数据库设计到最后系统前台界面的设计及代码的实现经历了大约一个月的时间,在这一个月中,我们按照软件工程的生命周期方法学来完成设计,即系统的需求分析、总体设计、程序设计、系统调试等开发步骤,分阶段地完成各设计任务。在设计之初,我们首先对所使用的工具VisualBasic6.0和SQLServer2000进行了全面的复习。接着,我们根据自己的设计任务书的要求,对自己需要完成的部分进行了系统的规划,根据需求分析的要求,对数据库即数据库中的表进行设计规化,采用了C/S模式设计,并使用VisualBasic6.0作为系统前台界面的设计工具,对系统进行了详细设计、编码和测试工作整个过程是本设计的核心部分,大概用3周时间来完成。在设计基本完成之后,又用了大概1周的时间改进系统的性能和技术文档的编写整理,最后完成毕业设计。整个设计过程是不断学习的过程,我体会到:1.软件开发是一个不断学习新鲜事物的过程,从设计初的不懂到最后能够顺利完成,我体会到在实践中学习的重要性,这对于将来我走上工作岗位具有重要意义。2.由于前期工作的不彻底,对系统的需求分析的要求认识不够清楚,使得后续的工作不得不经常返回去修改数据表和个别代码。使我体会到在设计中的每一步的重要性,如果上一个步骤不能很好的完成,在后续的设计将会付出几倍的代价。40 3.设计过程中,经常会遇到困难,我学会通过别人的代码理解语言的含义但这并不是抄袭,然后根据自己的设计要求编写代码。设计中得到了指导教师的细心指导。设计过程中,由于要实现某些功能,互联网帮了我的大忙。网络资源是一个丰富的共享体系,我通过在程序员大本营论坛上提出问题得到了很多热心网友的帮助,这坚定了我通过网络吸收知识的信心。在完成本设计的过程中,我既感受到了面对自己无法解决的问题时的苦恼,也体会到问题最终得以解决时的快乐。同时,也总结了以下一些经验:1.一个详细周密的计划对于完成一项任务的重要性。实际上,我对这次作业着手较早。但由于刚开始时间较松,在学习时就想到哪学到哪,没有认真计划。到后来发现同学们的进度都已经赶上甚至超过我,这才又着急起来,赶紧找经验丰富的同学出主意,制定出详细的计划,这才按时完成了任务。2.学习一门程序语言,实践是最好的方法。我对VisualBasic6.0和SQLServer的学习实际上分为两个阶段。前一阶段为学习语言而学习语言。在这一阶段中,我总有隔雾观花的感觉,学得似是而非。后一阶段边实践边学习,很多前一阶段不甚了了的问题得到迎刃而解。3.要学会运用互联网工具。互联网是一个具有大量资源的信息宝库,在这次毕业设计中如果没有互联网也许我多花一倍的时间也完不成任务。所以一定要会并善于运用互联网工具。经过一个月的设计,我深刻体会到要做好一件事情,需要有系统的思维方式和方法,对待一个新的问题,要耐心、要善于运用已有的资源来充实自己。同时我也深刻的认识到,在对待一个新事物时,一定要从整体考虑,完成一步之后再作下一步,这样对于系统而言才能更加有效。通过此次毕业设计,我不但对WindowsAPI、ActiveX控件、VB6.0和SQL40 Server有了更深刻的认识,积累了使用软件工程的思想来开发软件的经验,同时最重要的是摸索出了一套分析问题和解决问题的方法,这对于我将来走上工作岗位受益匪浅。完成这次设计后回过头来看,我的这项作业完成得并不完美。还有很多需要提高和改进的地方。首先,是系统的功能还太单一,有一些实际工作中需要用到的功能在分析时没有考虑进去,也没能实现。比如学生成绩管理功能。其次,是设计过程中时间分配不合理,后期紧张的时间给我的工作带来很大的被动。再次,就是知识积累还不够,有很多知识都是临到用了才去补,这样学到的知识毕竟不牢,而且用起来也不灵活。由于时间和能力等原因,本论文难免存在疏、漏、谬、误等,敬请各位专家、指导教师和同学们予以批评指正,谢谢!40 致谢通过这次毕业设计,我基本上掌握了开发一个班级管理系统的基本思路和实施步骤。在完成毕业设计的过程中,我得到了许多老师和同学的帮助,尤其我的指导老师胡传斌和我以前的上课老师郑伦川、马兹书等的细心指导以及在我的设计过程中多次予以指导并提出宝贵意见,使我的设计在有条不紊的进行,令我受益匪浅。同时也向那些为我无私解难的朋友们,特在此向以上人员表示最衷心的感谢!另外,互联网上一些朋友也给我完成设计提出了很多宝贵的意见和无私的帮助。这对于我以后的学习和工作都有很大的帮助,在此对他们表示由衷的感谢。在校期间,得到网络教育学院各级领导和辅导老师的亲切关怀和无私的培养,使作者在学习的过程学到了许多做人的道理。在此向他们道声:您们辛苦了!40 参考文献[1]郑阿奇.SQLserver实用教程.北京:电子工业出版社,2002[2]周中华.数据库原理与应用.北京:清华大学出版社,2003[3]段兴.VisualBasic6.0数据库程序设计.北京:人民邮电出版社,2002[4]刘炳文.VisualBasic程序设计教程.(第二版).北京:清华大学出版社,2003[5]陶宏才.数据库原理及设计.北京:清华大学出版社,2002[6]范立南.SQLServer2000实用教程.北京:清华大学出版社,2003[7]唐大任.VisualBasic程序设计.北京:清华大学出版社,2002[8]王兴晶.VisualBasic.NET数据库开发典型实例.北京:电子工业出版社,200340

最近下载