111901 王 - 图文

更新时间:2024-05-13 16:45:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

本科毕业设计论文

题 目 明德教室管理系统——数据库设计及教室分配

专业名称 计算机科学与技术

学生姓名 王

指导教师 李伟华

毕业时间 2013年6月

西北工业大学明德学院本科毕业设计论文

摘 要

高校教室管理系统针对各大高校教室众多,课程众多,提供检索筛选功能,方便师生上课,也方便工作人员管理教室资源。传统的教室管理模式局限于纸介,不易信息收集和管理,而且正确比较低,修改较麻烦。基于目前这种现状,高校教室管理系统不仅仅给需要信息的师生提供方便,更重要的是应对信息化的今天,改变传统的信息管理模式,减少学校对信息管理的工作量,提高工作效率,实现信息与人才的优化。

当今,高等教育学院的发展已经深入到教学活动的各个方面,老师、课程考试负责人,教务科、管理员等都可以同过教务管理系统平台,实现自身教学管理与规范合为一体的高质量体系,达到规范教学秩序的目的。为了方便用户的使用,提高办事效率,就要设计出一套应用简单、易于操作的后台管理系统,实现对教学资源的日常维护。

由此需出发,该系统为教师申请教学资源,课程考试负责人制定授课计划,管理员查询核对信息提供了方便,达到规范教学秩序的目标。本系统是以Microsoft Visual Studio 2008为主要开发工具,用C#技术构建前台页面,以SQL Server 2000 数据库作为后台支持,该系统具有操作简单、界面友善、灵活性好、系统安全性高、运行稳定等特点。

本项目是教室分配管理系统,其中,主要实现:教室分配管理,教学资源申请与查询管理,资源基本信息管理,学生基本信息管理,系部基本信息管理等五大模块的功能。同时分为普通教师,课程考试负责人,系教务科,管理员四个身份等级。项目基于.Net平台,是一个针对后台管理的系统,应用多层框架技术实现。最后,总结了系统的特点和优势及不足之处,并对未来的发展和应用前景做了展望。

关键词:教室分配系统;C#开发;三层架构

I

西北工业大学明德学院本科毕业设计论文

Abstract

University classroom management system for a number of major college classrooms, many courses, providing access to screening function to facilitate the school teachers and students, and classroom resources to facilitate staff management. Limited to the traditional paper medium classroom management, information collection and management is not easy, and right lower, than the troublesome changes. Based on the current situation, not only to the university classroom management system, teachers and students need information to provide convenient, more importantly, deal with information today, to change the traditional mode of information management, reduce the workload of the school of information management to improve efficiency realize the optimization of information and personnel.

Today, the development of the Institute of Higher Education into the teaching activities, teachers, curriculum, the person in charge of Academic Affairs Division, the administrator can all be the same over the educational management system platform to achieve their own system of teaching, management and norms as one of high quality, to standardize the teaching order. Order to facilitate the use of the user, improve efficiency, it is necessary to design a set of applications simple and easy-to-background management system, and routine maintenance of teaching resources.

Which required starting the system to apply for a teaching resource for teachers, the course is responsible for development of lesson plans, the Administrator to verify information to provide a convenient, to achieve the goal of standardizing teaching order. This system is based on Microsoft Visual Studio 2008 as the main development tool, built using C # technology front page, SQL Server 2000 database as the back-office support, the system has a simple, friendly interface, flexibility, the system safe and stable operation features.

This project is a classroom distribution management system, which, the main achievement: the allocation of classroom management, teaching resources for the query management, resources, information management,

II

西北工业大学明德学院本科毕业设计论文

teachers, information management, department of basic information management functions of the five modules. Divided into ordinary teachers, curriculum person in charge of the Department of Academic Affairs Division administrator four identity rating. The project is based on the Net 2005 platform is a system for Admin application of multi-layer framework technology. Finally, sum up the features and advantages of the system and inadequacies, and future development and application prospect.

Keywords: Classroom distribution systems; C # development; three-tier system

III

西北工业大学明德学院本科毕业设计论文

目 录

摘 要 .......................................................................................................................... I Abstract ....................................................................................................................... II 目 录 ......................................................................................................................... 1 第1章 引 言 ............................................................................................................ 3 1.1 应用背景 ................................................................................................................... 3 1.2教室分配管理意义 .................................................................................................... 4 1.3 本文的研究目的及文章安排 ................................................................................... 5 第2章 可行性分析及相关工具.................................................................................. 6 2.1可行性分析 ................................................................................................................ 6

2.1.1经济可行性分析 .................................................................................................. 6 2.1.2 技术可行性分析 ................................................................................................. 7 2.1.2 操作可行性分析 ................................................................................................. 7 2.1.2 法律可行性分析 ................................................................................................. 7 2.2相关技术介绍 ............................................................................................................ 7 2.2.1 开发工具 ............................................................................................................. 7 2.2.2 ADO.NET数据库访问技术 ................................................................................... 9 2.2.3数据库 ................................................................................................................ 10 2.3本章小结 .................................................................................................................. 11 第3章 需求分析 ...................................................................................................... 12 3.1 问题定义 .................................................................................................................. 12 3.1.1 学生使用系统的功能要求 ............................................................................... 12 3.1.2管理员使用系统的功能要求 ............................................................................ 12 3.2 需求分析 .................................................................................................................. 13 3.2.1 系统功能需求 ................................................................................................... 13 3.2.2 安全性与完整性需求 ....................................................................................... 13 3.2.3 数据流程图与功能划分 ................................................................................... 14 3.3 本章小结 .................................................................................................................. 15 第4章 数据库设计 .................................................................................................. 16 4.1 数据库设计 .............................................................................................................. 16

1

西北工业大学明德学院本科毕业设计论文

4.2 数据库表 .................................................................................................................. 16 4.2.1 E-R图 .................................................................................................................. 16 4.2.2 数据库表 ........................................................................................................... 18 第5章 总体设计 ...................................................................................................... 21 5.1 系统模块设计 .......................................................................................................... 21 5.1.1 公共模块 ........................................................................................................... 21 5.1.2 学生功能模块 ................................................................................................... 22 5.1.3 管理员功能模块 ............................................................................................... 23 5.2模块关系图 : ........................................................................................................ 24 5.3 系统流程3-4 .......................................................................................................... 25 5.4 本章小结 .................................................................................................................. 26 第6章 系统实现 .................................................................................................... 27 6.1 界面实现 ................................................................................................................. 27 6.1.2管理员功能 ........................................................................................................ 28 6.1.3学生模块界面 .................................................................................................... 31 7 测试与调试 ........................................................................................................... 33 7.1 软件测试的目标 ...................................................................................................... 33 7.2 软件测试方案 ......................................................................................................... 33 7.3 测试流程 ................................................................................................................. 34 7.4 系统测试 ................................................................................................................. 34 7.5 本章小结 ................................................................................................................. 35 8 结论 ....................................................................................................................... 36 致 谢 ..................................................................................................................... 37 参考文献 ................................................................................................................... 38

2

西北工业大学明德学院本科毕业设计论文

第1章 引 言

1.1 应用背景

随着信息化的高度发展,大学中远程在线课堂授课的教学方式已经出现,但这种非面对面交互的教育方式存在着很多的弊病[1],因此目前在我国绝大部分大学还是以教室中面对面的授课方式为主。综合考虑大学授课中多方面的特殊性,大学授课对教室的安排与义务教育阶段大不相同,对某个班级的课程安排不再局限于某一个教室,并且可能会出现多个班级在一个教室中上课的情况。从使用角度上看,这样的教室安排制度增大了教室使用的自由度,尤其是在如今大学中教室少班级多课程多的现状下,这样的教室使用方案更能充分利用教室资源,使教室得到合理的分配。

教室分配系统,本文考虑和调研到高校教务管理中考试教室分配存在工作量大、工作繁琐等问题,通过分析教务工作者和学生的需求,进而对整个教室分配流程进行分析和设计,以最终形成优化的考试教室自动分配系统。本文介绍了C#、SqlServer环境下高等院校考试教室分配系统的设计、开发及效果。该系统通过C#语言、SqlServer数据库技术的设计,并通过使用ADO控件和ADO代码访问access数据库等技术,将电脑自动化与考试教室分配的各个环节有机融合起来,实现自动操作和管理。笔者通过需求分析,模块设计,系统编程,调试运行等阶段,初步形成了较优化的考试教室分配系统。

由于国家大力发展教育、提高全民素质的方针,随着中国高校的不断扩招,很多高校存在着资源稀缺的问题,特别是教室资源,作为教学硬件资源中的基础,其重要性更加明显,而稀缺性教室资源的有效分配和利用在教室使用密集度最高的授课时期更是成为了头等大事。高效地利用有限的教室资源成为了节约教学成本、提高管理效率的重要方面。授课教室分配系统的设计和开发满足了学校以及学生的需求,成为提高教学效率、节约人力物力的极好工具。

随着学生数目的增加、高校学生自主学习自主管理政策的执行,学校开设的专业数量、每个专业所设课程考试数量、学生选择课程考试数目等越来越多,到了授课前夕,学校教务处对于管理和分配授课教室的工作量十分繁重,学生对于授课教室分配结果也不尽满意。从以下初始调查可以看出,一个有效的授课教室分配系统是非常急需的。

调查对象:教务工作者(授课教室分配者)、学生(授课教室使用者)

3

西北工业大学明德学院本科毕业设计论文

调查目的:找出对象需求,以便进行分析 调查结果:

1. 教务工作者:人工分配教室非常繁琐、效率低下;分配较难考虑到每个学生的授课安排、可能存在冲突;

2. 学生:部分学生存在同一时间多门授课、各类授课科目时间分配不合理(如一天内三科计算类授课科目)等不便;

教务人员搜集整理数据,包括课程、学生、教室等详细信息 录入电脑后或直接人工分析计算,进行授课安排的设计 经过多次研究和分析,得出较可行授课安排 将授课安排录入并公布,实施 学生按照个人课表查询授课安排信息

1.2教室分配管理意义

随着中国教育体制改革的不断深入,学生人数的不断上升,课程考试设置不断向深度和广度发展,手工排课的缺点也越来越突出。由于计算机具有运算速度快、处理能力强等特点,很自然地就进入这一应用领域中。用计算机进行排课能够快速地得到满足约束条件的可行结果,具有排课时间短、省人力和质量高的优点,不但能使教务人员从繁杂的排课任务中解脱出来,而且对于推动教学的发展也起到了非常重要的作用。但由于大学排课工作的主观性较强,目前仍无完善的自动排课系统可以实现排课工作的全面自动化。遇到高等数学、大学英语等全校规模打通道课,系统仍然无法自动处理。在一些课程考试的排课时间、顺序上,系统也无法达到人工的识别水平,即使给出较为细分的优先级,也不能完全合理人性化地排出课表。目前的排课系统与人工相合也还有许多问题有待改进。如何使高校的课程考试表安排工作更加科学合理,适合“以人为本”的新时期教育思想,仍是值得探讨的问题。

课程的编排是一个涉及多种因素的组合规划问题,它要保证在课程安排中课程、教室不能产生冲突。目前,国内的大部分仍然采用手工排课的方法。手工排课工作的主要手段是“摆牌”,就是在一个画有空课表的版面上将有课名的小牌摆在适当的位置上,边摆、边观察、边调整,凭借经验奖各门课摆在合理的位置上,最后形成一个有效的课程表。这种办法没有一定的规律性,没有理论指导,更没有数据模型,具有很大的盲目性。所以,要为上千名学生和上百名教师安排出合理的课程表,往往需要花费教务处人员很多的时间,工作量大,且排出的课程表不宜调整。

4

西北工业大学明德学院本科毕业设计论文

制定一个学校的教室分配是一项非常耗时且相当辛苦的工作,而且它还得由有学校排课工作经验或者这方面知识的人才能做好。在一所高校时一个课程考试表的制定是一个难题,因为在有关课程考试表的问题上有很多的限制条件得考虑,还有大量的数据空间被挖掘,即便你的输入数据量并不是实际意义上的大批量。

教室分配系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以自动教室分配系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

研究该课题的主要目的是设计出一个具有良好交互性的可供学生、教师以及教室管理人员使用的具有增、删、改、查功能的管理类网站,同时设计出一个具有实际意义且可以用C#语言实现的排课算法。该算法对现有规模的排课问题应在可以接受的时间内执行完毕,算法能实现全部的硬性条件约束和部分软约束并且可以完成对绝大部分课程的安排。

研究该课题的意义在于可以使教室管理信息化,便于与教务管理其他模块进行数据交换并且可以作为教务管理的一部分并入教务管理系统。就教室管理本身而言,设计这样的一个系统可以大大减轻教务人员对教师信息管理工作量,尤其是可以大大减少手工排课所花费的时间,并且从整体而言能获得比手工排课更加合理的教室分配方案。而就其他用户而言,该系统可以简化教师申请使用教室的流程,同时方便了学生对教室信息的查看。而且作为一个B/S模式的管理系统,可以为教师和教务人员发布与教室相关的信息提供方便。

1.3 本文的研究目的及文章安排

本系统完成了基于dotnet教室分配管理系统的架构与客户管理部分。本系统基于Microsoft.NET框架,采用以C#语言进行代码编写,利用了DOTNET框架和C#语言对内存垃圾回收的良好支持,提高了系统的性能;使用性能优异的Microsoft SQL Server2000 作为数据库系统,保证了数据处理、数据存取过程中的高效、安全;采用了三层结构对代码进行管理,隔离了逻辑层与数据层,为项目的管理以及日后的维护提供可靠的保障。本系统实现了:通过不断改善教室分配、互动方式、资源调配、业务流程和自动化程度,达到降低运营成本、提高企业销售收入、客户满意度和员工生产力。实现缩减企业维护客户资源的成本,提高企业的运作效率,进而为企业的发展提供助力。

5

西北工业大学明德学院本科毕业设计论文

第2章 可行性分析及相关工具

2.1可行性分析

技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。本系统采用C#开发出友好美观的人机界面,便于用户理解、操作。数据库管理系统采用SQLServer,它能够处理大量数据,同时保持数据的完整性、安全性。因此本系统的开发平台已成熟可行。硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。利用计算机实现销售和管理势在必行。对于管理者来说,系统可以带来极大的便利,操作简单,信息详细。

本设计“教室分配管理系统”是为学校开发的教室分配信息管理系统。通过近几个月的学习和实践,对开发管理信息系统又有了新的认识。使自己在开发管理信息系统方面的技术更加成熟。由于本设计最重要体现的是实用性,所以,通过大量的社会调查和分析,结合自己现有的技术水平加上导师的指导,还是能按期完成本毕业设计。

2.1.1经济可行性分析

鉴于计算机技术发展异常迅猛,在硬件软件配置以及开发技术均以可行的情况下开发这样一个管理系统成本不会很高,但其可以大大提高学校管理人员的工作效率,也是物业管理发展的必然趋势,其必将有比较宽阔的市场,因此改性统在经济可行性上时可行的[6]。

成本包括:开发项目的费用支出和时间消耗,硬件设备的更新和升级,系统管理维护费用。硬件设备的更新和升级都是一次性投资。项目取得的收益:通过提升工作效率带来的销售收益以及减少工作人员带来的成本收益。从长远看来,这是一项可观的收益,相对于项目支出的一次性较大费用来说,一个成功的教室分配管理系统获得的收益将是长期的、持续性的,因此,构建教室分配管理系统在经济上可行。

信息化革命势不可挡,它是传播信息最直接、最快速的手段,它可以让全球的人以最快的速度得到最新的信息。网上售票必成为人们所能接受且热衷的一种订票方式。从技术经济来看,本系统使用灵活方便,所需的

6

西北工业大学明德学院本科毕业设计论文

开发人员不多,技术也不是很复杂,开发周期较短,因此开发成本较低。市场前景非常看好,所以说技术经济方面来看,本项目也是可行的。

2.1.2 技术可行性分析

由于本系统网站采用ASP脚本编写,数据库使用Microsoft的SQLServer2005数据库。

本系统采用的是.net framework的系统架构和SQLSERVER开发,Windows XP操作系统, 完成数据的添加、删除、查询等功能。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。C#是一个比较成熟的技术,使用起来开发方便快捷、使用灵活的特点,因此使用.net和Sqlserver是开发轻平台的非常合适的组合,说明本系统在技术方面可行。

2.1.2 操作可行性分析

该系统性质上属于信息管理系统,因此开发过程中可以参照其他成功的基于B/S模式的管理系统对该系统进行操作界面的设计,由于开发语言与所选数据库具有很好的兼容性,所以对数据库的操作基本也可以全都在系统功能界面实现。综合以上考虑,对互联网有基本的了解曾经使用或访问过类似网站的人都有能力对系统进行操作,管理员对系统的操作可以在软件开发结束之后通过与开发者的沟通进行进一步的了解。

2.1.2 法律可行性分析

本软件为自主创新的智力活动,所使用工具都是通过合法途径获得,系统中不存在侵犯他人所有权的内容存在,软件的调研背景为本学校,所有数据来源都属于自己调查和统计,产品的目标为进行课题研究不属于任何商业活动,软件所涉及内容也与法律无任何冲突,因此从法律角度讲开发该软件是可行的。

2.2相关技术介绍

2.2.1 开发工具

Visual Studio是微软学校推出的开发环境。是目前最流行的Windows平台应用程序开发环境。Visual Studio 2008 提供了高级开发工具、调试功能、数据库功能和创新功能,帮助在各种平台上快速创建当前最先进的应用程序。

7

西北工业大学明德学院本科毕业设计论文

Visual Studio 2008 包括各种增强功能,例如 可视化设计器(使用 .NET Framework 3.5 加速开发)、对 Web 开发工具的大量改进,以及能够加速开发和处理所有类型数据的语言增强功能。Visual Studio 2008 为开发人员提供了所有相关的工具和 框架支持,帮助创建引人注目的、令人印象深刻并支持 AJAX 的 Web 应用程序。

开发人员能够利用这些丰富的 客户端和服务器端框架轻松构建以客户为中心的 Web 应用程序,这些应用程序可以集成任何后端数据提供程序、在任何当前 浏览器内运行并完全访问 ASP NET 应用程序服务和 Microsoft 平台。

1).NET FrameWork集成开发环境

.NET技术是微软学校推出的一个全新概念,它代表了一个集合、一个环境和一个可以作为平台支持下一代Internet的可编程结构。.NET的目的就是将互联网作为新一代操作系统的基础,对互联网的设计思想进行扩展,使用户在任何地方、任何时间、利用任何设备都能访问所需要的信息、文件和程序。.NET平台包括.NET框架和.NET开发工具等部分。.NET框架(.NET FrameWork)是整个开发平台的基础,包括公共语言运行库和.NET类库。.NET开发工具包括Visual Studio.NET集成开发环境和.NET编程语言。.NET编程语言包括Visual Basic、Visual C++和新的Visual C#等用来创建运行在公共语言运行库(Commom Language Run,CLR)上的应用程序

.NET Framework类库是一个与公共语言运行库紧密集成的可重用的类型集合,是对Windows API封装的全新的设计,它为开发人员提供了一个统一的、面对对象的、分层的和可扩展的庞大类库。该类库是面向对象的,使.NET Framework类型易于使用,而且还减少了学习.NET Framework的新功能所需要的时间。此外,第三方组件可与.NET Framework中的类无缝集成。

.NET Framework类型能够完成一系列常见编程任务(包括字符串管理、数据收集、数据库连接以及文件访问等任务)。除这些常见任务之外,类库还包括支持多种专用开发方案的类型。例如,可使用.NET Framework开发下列类型的应用程序和服务:

控制台应用程序、

(2)C#编程语言

C#是微软学校发布的一种全新且简单、安全、面对对象的程序设计语言,是专门为.NET的应用而开发的语言。它吸收课C++、Visual Basic、Delphi、Java等语言的优点,体现了当今最新的程序设计技术的功能和精华。C#继承了C语言的语法风格,同时又继承了C++的面向对象特性。不

8

Windows GUI应用程序(Windows 窗体)、

ASP.NET应用程序、XML Web services、Windouws服务。

西北工业大学明德学院本科毕业设计论文

同的是,C#的对象模型已经面向Internet进行了重新设计,使用的是.NET框架的类库;C#不再提供对指针类型的支持,使得程序不能随便访问内存地址空间,从而更加健壮;C#不再支持多重继承,避免了以往类层次结构中由于多重继承带来的可怕后果。.NET框架为C#提供了一个强大的、易用的、逻辑结构一致的程序设计环境。同时,公共语言运行时为C#程序语言提供了一个托管的运行时环境,是程序比以往更加稳定、安全。其特点有:

1. 2. 3. 4. 5. 6. 7.

语言简洁。

保留了C++的强大功能。 快速应用开发功能。 语言的自由性。

强大的Web服务器控件。 支持跨平台。 与XML相融合。

2.2.2 ADO.NET数据库访问技术

ADO.NET是.NET Framework访问数据库的重要部分,ADO.NET对Microsoft SQL Server和XML等数据源以及通过OLE DB和XML公开的数据源提供一致的访问。应用程序可以使用ADO.NET来连接到这些数据源,并检索、处理和更新所包含的数据[9]。

(1)ADO.NET的组成

ADO.NET主要包括:Connection(数据库连接)、Command(数据库命令)、DataReader(数据库读取器)、DataAdapter(数据库适配器)和DataSet(数据集)5个类。其中Connection、Command、DataReader、DataAdapter这4个类统称为.NET Famework数据提供程序(DataProvider)。

下面简单介绍ADO.NET的常见类。 (1)Connection类

Connection类主要提供了连接数据库的功能。它有两种连接形式:一个是SqlConnection,它是MS开发的专门用于针对SQL Server的连接,另一个是OleDbConnection,用于大多数的数据库连接。在创建Connection对象之前,用户必须先引用System.Data.OleDb和System.Data命名空间。

(2)Command类

ADO.NET提供了Connection来连接数据库,同时也提供了Command类来操作数据库。同时也提供了Command类来操作数据库。与Connection一样,Command也有SqlComm和OleDbComm两种,其区别同Connection。

9

西北工业大学明德学院本科毕业设计论文

Command类最主要的工作是通过Connection对数据库下达操作数据库的命令。例如,对数据库中数据表的添加删除,记录的增加或删除,或是记录的更新等都是通过Connection来实现的。数据库操作命令可以用SQL语句来表达,包括执行查询语句(SELECT)来返回记录集合,执行更新语句(UPDATE 语句)来更新记录,执行删除语句(DELETE 语句)来删除记录等。Command命令也可以传递参数并返回值,同时Command命令也可以调用数据库中的存储过程。

(3)DataReader类

DataReader类通过Command检索SQL查询或者存储过程返回的记录,返回的记录是一种只读的且指针只能前移的数据流。

在创建了Command对象之后,只能通过调用Command.ExecuteReader方法再创建DataReader对象,即可使用DataReader.Read方法检索返回的记录集。

(4)DataAdapter类

同Connection一样DataAdapter也有两种类型:SqlDataAdapter和OleDbDataAdapter,分别用来访问SQL Server数据库和其他的数据库。

DataAdapter类是DataSet和数据库之间的桥梁,DataAdapter从数据库中读取数据到DataSet,也可以将DataSet中的数据保存到数据库中。DataAdapter通过Fill方法来读取数据库中的数据到DataSet中,通过Update方法将DataSet中的数据保存到数据库中。

DataAdaper类有4个不同的操作方式,分别如下。

? SelectCommand:读取数据库记录; ? InsertCommand:插入新记录; ? UpdateCommand:更新数据库记录; ? DeleteCommand:删除数据库记录。

(5)DataSet类

在ADO.NET中,DataSet占据着重要的地位,可以把它看成是内存中的数据库,是专门用来处理从数据库中读出的数据。

DataSet的优点就是离线式的,一旦读取到数据库中的数据后,就在内存中建立数据库的副本,在此之后的操作,直到执行更新命令为止,所有的操作都是在内存中完成的。不管低层的数据库是哪种形式,DataSet的行为都是一致的。

DataSet是数据表(DataTable)的集合,它可以包含任意多个数据表,而且每个DataSet中的数据表对应一个数据库中的数据表(Table)或者是数据视图(View)。

2.2.3数据库

10

西北工业大学明德学院本科毕业设计论文

SQL Server 2000 关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。SQL Server 2000 分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是 SQL Server 2000 数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。

Sql server2000-优点

1、高性能设计,可充分利用WindowsNT的优势。

2、系统管理先进,支持Windows图形化管理工具,支持本地和远程的系统管理和配置。

3、强壮的事务处理功能,采用各种方法保证数据的完整性。

4、支持对称多处理器结构、存储过程、ODBC,并具有自主的SQL语言。 SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。

2.3本章小结

本章主要介绍了系统的开发的可行性,及所采用的关键技术,对使用的工具,架构分别作了详细的介绍。

11

西北工业大学明德学院本科毕业设计论文

第3章 需求分析

3.1 问题定义

本系统是一个基于B/S模式的多用户系统,最终面向的是所有在校的教师、学生和系统管理人员,下面分别从这三个角度对系统进行定义。

3.1.1 学生使用系统的功能要求

(1)每个在校学生都可以访问该系统,学生毕业之后不可以在使用该系统。 (2)在校学生可以通过该系统查看并可以打印本学期的个人课表。 (3)学生可以对本学期每一天公共教室的使用情况进行查询,方便上自习教室的查找。

(4)学生可以对自己感兴趣的课程或感兴趣的教师开设的课程的上课教室进行查找,对课程的查找应该支持模糊查询。

(5)学生可以对本学期自己所修课程的考试信息进行查看,前提是本门课程已经安排了考试。

(6)学生可以更改自己的系统登录密码。

(7)学生可以查看由教务人员发布的关于教室占用、教学楼开放或关闭等信息和教师发布的关于课程补课教室或课程更改上课教室的信息。

3.1.2管理员使用系统的功能要求

(1)该系统应该存在至少一个管理人员,对教室及其相关信息进行管理。 (2)管理员可以对教室的基本信息进行管理,包括教学楼的查找添加和删除、教学楼中教室的查找添加修改删除。管理员可以对本学期每间教室的课程表进行查看。

(4)管理员可以对本学期考试安排教室的信息进行查看和取消。 (5)管理员可以申请教室的占用,并且可以对本学期所有教室占用的信息进行查看,对尚未发生的占用管理员有权删除占用信息。

(6)管理员可以在学期初对本学期起止时间等相关信息进行设置。 (7)管理员可以对本学期课程安排等相关数据进行导入。 (8)管理员可以发布与教室有关的占用信息。

(9)管理员在学期初可以通过系统对所有课程的上课时间和地点进行安排。

12

西北工业大学明德学院本科毕业设计论文

(10)管理员可以备份以及恢复数据库内容。 (11)管理员可以对所有用户信息修改。

3.2 需求分析

3.2.1 系统功能需求

对系统的大部分功能需求在问题定义阶段已经描述清楚,这里主要对排课功能进行详细的分析。课程安排过程需要满足两种需求[6],硬性需求和软需求,其中硬性需求如下:

(1)所有课程都必须被安排。

(2)所选课程的出席人数不能超过该教室的容量。 (3)同一个教师的不同课程不可以发生在同一个时间。 (4)同一个班级的不同课程不可以安排在同一个时间。 (5)一个教室的同一个时间不可以安排两门或两门以上的课程。 (6)上课的教室类型符合课程的需求。 软性条件如下:

(1)课程应该均匀的安排在整个学期。 (2)一门课的多个课节最好安排在一个教室。 (3)一门课一天不可以出现两次或两次以上。 (4)对每个教室的排课量应该大体保持一致。

(5)对每个班级和教师而言,课程安排最好均匀分布在一周中。 硬性要求是排课过程中必须遵循的要求,每门课程安排过程中都必须遵循以上要求,如果不能满足应该做相应的调整。软性要求是在对课程的安排满足所有硬性条件的前提下最好可以满足的需求,当条件不允许时软性要求可以适当的放宽。

3.2.2 安全性与完整性需求

由于该系统的开发基于B/S模式,就B/S模式的管理系统的工作模式而言,对软件进行安全性和完整性进行考虑是系统中必不可少的一步,这直接关系到软件使用是否可靠和安全,关系到系统使用过程中是否会出现重大问题而造成其他重大损失。就管理系统而言还不得不考虑信息数据的完整性需求,因此接下来将从访问权限的安全性系统的容错能力以及系统数据的完整性进行分析,确定系统安全性和完整性的需求。

13

西北工业大学明德学院本科毕业设计论文

(1)访问权限的设置

由于B/S模式的管理系统的访问一般是通过浏览器发送URL地址对相应页面进行访问,因此系统必须具有一个访问权限核实的模块,在每个页面加载前进行调用,防止有其他动机的不良用户通过URL访问其无权访问的页面进而对系统数据进行修改对系统造成损失,其中权限核实的内容应包括两个部分:无任何权限的用户试图跳过登录步骤直接访问功能界面和具有某种权限的用户登陆后试图通过服务器中以保存的身份信息访问其他无权访问的页面。

每个用户登录后其访问权限应有时间限制,如果用户长时间(其时间暂定为10分钟)对系统操作无任何操作,再次访问系统时,系统给出相应的提示后自动跳转到登陆页面要求用户再次登录。

(2)系统的容错能力

由于该系统许多模块的功能都与时间有关,因此容错主要从时间冲突角度考虑。由于系统用户都属于学校成员,因此系统中关于时间的设定都是基于学周的,当用户对教室资源进行占用或取消占用时,要对用户所选时间与当前时间进行比对,用户占用教室时选择的占用时间应该在当前时间之后,用户取消教室相关使用信息时,取消动作发生的时间应该在使用动作落实之前。

对于可以由用户输入内容的模块,要对用户输入内容进行核实,以免因为用户操作失误或者好奇输入非法内容而使系统产生不可预知的错误。

(3)数据完整性

管理系统离不开对数据的操作,因此对数据的完整性关系到系统运转是否正确,因此要求数据相互联系正确,数据记录完整数据项,相同的数据在不同的表格中应该一致。其具体内容见下一章数据库设计部分。

3.2.3 数据流程图与功能划分

由于学生使用该系统的操作相对简单且功能划分也相对明确,因此对于学生功能模块在此章暂不赘述,具体内容将在下两章讲述。而管理员模块的功能相对来说较为复杂,无论是数据管理还是排课过程都涉及到与外界的数据交换。下面将通过数据流程图对管理员模块尤其是排课过程进行功能划分,确定由系统完成的功能以及需要人进行的操作。

由于排课过程涉及课程、班级、教师和教室等多方面的信息,因此排课过程不可能由软件独立完成,现在对排课流程进行描述,在描述过程中确定系统边界,明确系统功能。

(1)由于排课之前学校要对本学期所有应该安排的课程进行选定,因此系统应生成最新教室资源的统计表,教务工作者在课程安排时要注意课程安排的总

14

西北工业大学明德学院本科毕业设计论文

学时应该不超过本学期教室时间资源总数的80%,以免课程过多最终导致部分课程无法调度安排失败。

(2)排课之前教务人员需要手工做的工作有:确定本学期所有需要安排的课程;确定每门课程需要出席的班级;确定每门课程的任课教师;确定每门课程上课所需教室的类型;确定每门课程开课的学周;确定每门课程的总学时数。

(3)管理员使用系统将上步信息导入数据库。在导入数据之前,管理员应将上学期已失效的数据删除并设置本学期的起始截止时间,该功能由系统实现,系统导入结束显示导入失败的信息,由管理员和教务人员配合对导入失败的信息进行核对(核对过程属于人工操作),核对完成后再次将正确的数据导入数据库。

(4)当确定所有数据已经成功导入后,管理员可以开始使用系统进行排课,排课程序执行结束后,系统生成安排失败课程的报表,管理员将此表交至教务人员,然后教务人员根据失败课程的任课教师以及所有出席班级的现有课程通过手工方式安排课程的上课时间,若时间仍无法调度成功可以考虑更换任课教师或将课程安排至非正常授课时间(如周末或者晚上)。

(5)教务人员将安排信息提交至系统管理员,有管理员使用系统的手工排课功能对课程进行空间安排,若不成功则返回步骤(4)直至全部课程安排成功。

3.3 本章小结

本章的需求分析主要介绍了系统开发前进行的准备工作,系统需求分析做的好坏直接关系到系统开发过程的难易程度,因此本章从多个角度对系统进行描述,第一节问题定义的内容是开发者在和用户进行沟通后从用户的角度确定系统开发主要该解决的问题;第二节可行性分析是综合考虑各方面的客观因素确定本系统是否可以去研究开发;第三节数据流程图及功能划分的内容是在了解用户的需求后,综合考虑当今技术背景,通过对整个系统数据的流动对系统的边界进行明确的划分,确定了那些工作应由系统实现,那些内容需要人配合系统实现;最后一节是对第三节的补充,以数据字典的形式解释数据流程图中出现的主要的数据对象的内容。

15

西北工业大学明德学院本科毕业设计论文

第4章 数据库设计

4.1 数据库设计

数据库设计是系统设计中必不可少的一个阶段,教室管理系统属于一个信息管理系统,而信息管理系统的本质就是一个对数据进行管理的工具,因此数据库设计的好坏直接关系着管理的复杂程度。对数据库的设计步骤如下:

(1)确定使用中小型数据库管理系统SQL SEVER作为系统数据库。 (2)根据系统的需求首先对数据库进行了概念设计,通过对系统中涉及到的数据进行分类聚合和概括,最终对教室、教师、学生、班级和课程等主体建立了抽象的数据模型。

(3)然后根据系统所需实现的功能分析各个主体应该具有的属性,并确定主体之间的联系以及联系的属性。

(4)本着保证数据完整性、尽量减少数据冗余的基本原则确定数据库中表的数量以及表中的数据项的划分。

(5)在每个表中定义主键,定义过程参照数据库第三范式的要求。 (6)对数据库中的部分表做调整,进一步减少数据的冗余。

(7)创建数据库以及数据库表,声明表中的主键和外键,并在表之间添加联系,完成数据库的创建。

4.2 数据库表

首先通过画E-R图来体现表与表之间的联系,和整体的一个关系,然后设计每一个表。

4.2.1 E-R图

16

西北工业大学明德学院本科毕业设计论文

性别 序号 班级名 年级 人数 密码 学号 姓名 1 班级 N 属于 N 学生 电话 学习 管理 课程名 一周学时 所上学年 所上学期 序号 序号 所属班级 编号 课程 管理员 管理员名 密码 开设 真实名 发布 教室编号 教学楼名 教室类型 教室 发布时间 新闻 编号 新闻标题 内容 编号 通知 发布时间 通知标题 内容

17

西北工业大学明德学院本科毕业设计论文

4.2.2 数据库表

4.2.2.1所有表的汇总(下面的表名是由上述分析中的中文表名转化过来的)

表名 StuClass Student Course Classroom CourseSchedule admin news notices

4.2.2.2各个表的具体设计 1)StuClass表

列名 ClassID * ClassYear ClassName Total 2)Student表

列名 StudentID* StudentName PSW sex ClassName Phone stuno 数据类型(精度范围) Char(10) Char(8) char(20) char(10) varChar(20) char(10) Char(10) 空/非约束条件 空 非空 空 非空 说明 数据类型(精度范空/围) 非空 varchar(10) 非空 varchar(4) Varchr(20) varchar (3) 非空 空 空 约束条件 说明 能被唯一识别的班级号 年级 班级名 班级人数 功能说明 存储班级的基本信息 存储学生的基本信息 存储各个课程的基本信息 存储班级的基本信息 存储班级、课程、教室之间关系的信息 存储管理员的基本信息 存储校园新闻的基本信息 存储公告的基本信息 学生学号 学生姓名 密码 性别 Foreignkey 能被唯一识别的班级号 电话 学生学号 18

西北工业大学明德学院本科毕业设计论文

3)Course表

数据类型(精度范围) CourseID * Char(3) CourseName Varchar(20) Week Period Char(6) StudyYear Char(9) Studyterm Char(2)

4)Classroom表

列名 ClassroomID* TBName Classify

5)Course Schedule表

列名 ID * ClassName CourseName ClassRoom Type Weeks Jieci StuNum

6)admin表 列名 adminid* adminname psw realname

19

列名 空/非空 约束条件 非空 非空 非空 非空 非空 说明 课程号 课程名称 周学时 学年 学期 数据类型(精度范空/非空 约束条件 围) Varchar(10) 非空 Varchar(20) Varchar(20) 非空 非空 Foreign key 说明 教室编号 教学楼名 类型 数据类型(精度范空/非空 围) varchar(10) 非空 varchar(30) Varchar(20) varchar(20) varchar(10) varchar(120) varchar(20) varchar(20) 非空 非空 约束条件 说明 能被唯一识别的班级号 班级名 课程名 教室名 教室类型 星期 上课节次 班级人数 数据类型 smallint Char(10) Char(10) Char(10) 空/非空 非空 约束条件 说明 能被唯一识别的序号 管理员名 密码 真实名 西北工业大学明德学院本科毕业设计论文

7)news表 列名 Newsid* Title Content NewsTime

8)notices表 列名 Noticesid* 数据类型 smallint 空/非空 非空 约束条件 说明 能被唯一识别的序号 通知标题 通知内容 发布时间 数据类型 smallint varchar(50) varchar(500) varchar(20) 空/非空 非空 约束条件 说明 能被唯一识别的序号 新闻标题 新闻内容 发布时间 Title Content NoticesTime

varchar(50) varchar(500) varchar(20) 20

西北工业大学明德学院本科毕业设计论文

第5章 总体设计

根据上一章的需求分析的结果,从本章开始正式从程序设计角度来考虑系统的实现,接下来分别对程序模块和数据库进行设计。

5.1 系统模块设计

由于系统存在三种不同身份的用户,每一种身份的用户登录后都可以实现不同的功能,因此在使用编程语言实现系统之前需要先对系统进行初步的模块划分。划分模块之后不仅可以明确模块之间的相互关系,而且在划分模块之后,可以对系统的局部进行更加详细的考虑和设计,模块划分就是一个逐步求精的过程

[8]

,本节的主要工作是从整体角度考虑系统该如何划分模块以及应该划分为哪些

模块,划分过程中的主要考虑的标准为模块间低耦合,每个模块内部高内聚。划分结果如图5-1系统功能模块图所示,接下来将对各个模块进行简要的功能分析。

课表查询 教室查询 修改信息 课程管 理 教室管理 发布新闻 发布通知 学生 管理员 登录

图5-1系统功能模块

5.1.1 公共模块

公共模块是系统中所有用户都可能用到的模块,除图5-1中涉及到的模块之外还有一些可以复用的代码模块,以及一些设计系统界面风格的前台脚本模块,

21

西北工业大学明德学院本科毕业设计论文

接下来将对其进行一一介绍。

5.1.1.1 登录模块 登录模块是用户访问系统之前必须使用的一个模块,该模块与各类用户登陆成功之后跳转的页面之间存在数据耦合,该数据用于记录用户名、密码及用户类别以便对所访问页面进行身份验证时使用。用户通过登录模块输入用户名及密码并选择身份,经系统调用数据库数据对用户身份进行验证,验证成功后跳转到相应的登录主页面。

5.1.2 学生功能模块

学生登录系统后,系统会记录用户名、用户身份和用户密码,以便供其他功能模块使用,数据保存在服务器的Session数组中,因此学生登录的所有模块之间存在一定的数据耦合,接下来逐个模块进行分析。

5.1.2.1 个人课表查看 该模块用于查看登录用户本学期的个人课表,查询结果以课程表的形式显示,课表以周为单位,课表内部按行分为星期一至星期日七天和课节,将列分为一二节、三四节、五六节、七八节四个大课节。课表每一单元格的内容为本学期每学周中由该单元格所表示的时间片的课程信息,其中包括课程名、课程起止学周、任课教师以及上课地点。模块提供课表打印功能。

5.1.2.2 自习教室查找 该模块用于向用户提供查找可用自习教室的功能。由用户选择上自习的校区、学周、星期和课节,所选择的时间应该在用户访问系统的当前时间之后,也就是不能对查找已过去时间进行查找。然后系统以列表的形式提供在该时间段内没有因任何原因被占用的普通教室的信息,若查询结果过多,可以分页显示。

5.1.2.3 课程旁听 用户可以根据课程名或者任课教师的姓名在本校本学期所开设的全部课程中查找自己感兴趣的课程的上课信息。查询条件支持模糊查询,查询结果以表格形式逐条显示,其内容为课程编号、课程名称、开课学院、任课教师、开课学周、上课星期及课节和上课地点。查询结果可以分页显示。

5.1.2.4 密码修改 由于该系统属于学校内部系统,因此不提供用户个人注册功能,对用户的注册和删除由管理员统一实现。所有用户初始密码均为123456,用户使用该模块可以修改自己的密码。密码修改时会要求用户输入两次密码并对密码进行格式检测,若密码前后输入不一致或者格式有误将提示用户重新输入密码。

22

西北工业大学明德学院本科毕业设计论文

5.1.3 管理员功能模块

该模块主要实现系统的管理功能以及排课功能,各个模块之间存在一定的数据耦合,全部耦合数据都保存在系统变量数组中,下面介绍各个子模块的功能。

5.1.4.1 教室管理模块 该模块包含三个内容,教学楼管理、教室管理以及统计教室报表。教学楼管理包括教学楼的添加删除和查看所属教学楼的全部教室。查看结果以列表形式逐条显示。教室管理包括教室的删除、添加、修改以及教室课表查看。教室课表查看与教师课表查看形式基本一致,并且可以进行打印。统计教室报表为系统访问数据库按所在校区教室类型教室座位数对教室进行分类然后统计各类教室的数量,以一定格式显示,并且可以打印输出。

5.1.4.2 考试管理模块 管理员可以通过该模块查看本学期已安排的全部的考试信息,也可以根据课程名查找某一门课程是否已经安排考试。对已经安排但尚未进行的考试,管理员可以取消考试的安排信息。

5.1.4.3 占用管理模块 该模块也分为两部分教室占用管理模块和教室占用模块,管理员教室占用模块与教师申请教室占用基本相同。管理员使用教室占用管理功能可以查看本学期全部的教室占用信息,查找结果按时间由近至远排列,内容分页显示,管理员可以取消尚未发生的占用。

5.1.4.4 课程安排 该模块属于系统最主要的功能模块,用于实现学期初课程的安排,在课程安排之前应该需要将与课程安排相关的数据导入数据库,这部分由学期初始化模块完成,因此与其有一定的数据相关性。该模块分为三个部分,其中自动排课功能最先调用,根绝课程要求为课程安排合适的教室,安排结束后页面跳转至显示尚未安排课程的模块。对于自动排课未安排成功的课程再调用手动课程安排模块。

5.1.4.5 数据维护模块 该模块主要用于系统数据维护功能,其下又分为两个子模块数据备份模块和数据恢复模块。数据备份需要手动操作,其备份频率可由管理员自己根据实际情况自己决定,数据备份文件以备份时间作为文件名,储存路径为系统根目录下的backup文件夹。当系统数据出现异常时管理员可以调用数据恢复模块将数据库恢复至某个状态。

23

西北工业大学明德学院本科毕业设计论文

5.2模块关系图 :

程序设计三层架构关系如图3-1:

M O D E L admin student BLL DAL 类库 DBUtility

图3-1 三层架构关系

本系统层次功能说明: a)

业务逻辑层

业务逻辑层主要包含商业组件两部分,它建立在数据库访问层上,同时又为表现层提供服务。

业务逻辑层应该具有下面功能:

? 允许浏览者查询课室的使用情况 ? 浏览者进行对公告阅读 ? 管理员对教室的情况录入 ? 管理员发布公告 b)

数据访问层

主要包括一下几个方面: ? 数据访问层接口

24

西北工业大学明德学院本科毕业设计论文

? SQL Server DAL c)

表现层 主要包括一下页面:

? 站点首页 ? 管理后台 ? 查询页面 ? 前台显示页面 5.3 系统流程3-4

开始 用户登录 成功 信息查询 信息修改

结束 图3-4 系统流程图

25

西北工业大学明德学院本科毕业设计论文

判断 管理员 用户 教室信息 管理 登录 学生,教室等信息 图 3-5 业务流程分析

5.4 本章小结

本章主要介绍系统模块的划分以及各个模块内部的设计。模块划分主要考虑模块之间低耦合模块内部高内聚,先将系统划分为四个大模块,然后继续划分为若干个小模块,并以系统层次结构图的方式介绍本系统所有的功能模块以及功能模块之间的关系。之后对所有小模块各自需要实现的功能进行了具体的介绍。

26

西北工业大学明德学院本科毕业设计论文

第6章 系统实现

6.1 界面实现

6.1.1公共模块界面

图 6-1 系统登录

该页面的是根据选择的身份判断,输入用户名,密码,选择身份等进入。来登录到不同的页面,管理员主界面和学生主界面并非同一界面

27

西北工业大学明德学院本科毕业设计论文

图6-2 查询课表主界面

学生和管理员都可以查询课表,输入班级就可以查询某个班级的课表

6.1.2管理员功能

图 6-3系统管理员主界面

28

西北工业大学明德学院本科毕业设计论文

该页面是管理员的操作界面,对课程,班级,学生,新闻和通知信息进行管理

图6-4 教室管理主界面

该模块的功能是:输入教室名就可以查询某个教室一周内的使用情况,管理员还可以对此进行编辑,删除等操作

图6-5 学生信息管理主页面

29

西北工业大学明德学院本科毕业设计论文

图6-6课程信息管理主页面

图6-7发布通知主页面

30

西北工业大学明德学院本科毕业设计论文

图6-8发布新闻主页面

6.1.3学生模块界面

图6-9学生主页面

31

西北工业大学明德学院本科毕业设计论文

图6-10学生个人信息主页面

图6-11学生密码修改主页面

32

西北工业大学明德学院本科毕业设计论文

7 测试与调试

系统测试是系统开发过程中非常重要而漫长的阶段。其重要性表现在它是保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析、系统设计和实施的最后复查。虽然在开发过程中,人们采用了许多保证系统的质量和可靠性的方法来分析、设计和实现系统,但免不了在工作中会犯错误,这样所开发的系统中就隐藏着许多错误和缺陷。如果不在系统正式运行之前的测试阶段进纠正,问题迟早会在运行期间暴露出来,这时要纠正错误就会付出更高代价,甚至造成生命和财产的重大损失。

经过需求分析、设计和编码等阶段的开发后,得到了源程序,开始进入到软件测试阶段。然而,在测试之前的各阶段中都可能在软件产品中遗留下许多错误和缺陷,如果不及时找出这些错误和缺陷,并将其改正,这个软件产品就不能正常使用,甚至会导致巨大的损失。目前,程序的正确性证明尚未得到根本的解决,因此软件测试仍是发现软件中错误和缺陷的主要手段[11]。

7.1 软件测试的目标

软件测试的目标是想以最少的时间和人力发现软件中潜在的各种错误和缺陷。如果成功的实现了测试,就能够发现软件中的错误。测试的另一个收获是它能够证明软件的功能和性能与需求说明相符,同时实施测试收集到的数据为可靠性分析提供了依据。

7.2 软件测试方案

测试方案是测试阶段的关键技术问题。为了提高测试效率降低测试成本,本测试方案采用黑盒测试和白盒测试。

黑盒测试:也称为功能测试,指将软件看成黑盒子,在完全不考虑软件的内部结构和特性的情况下,测试软件的外部特性。根据系统分析说明书设计测试用例,通过输入和输出的特性检测是否满足指定的功能[12]。

白盒测试:也称为结构测试。指将软件看成透明的白盒,根据程序的内部结构和逻辑来设计测试用例,对程序的路径和过程进行测试,检查是否满足设计的需要。

33

西北工业大学明德学院本科毕业设计论文

7.3 测试流程

软件测试实际上分成四步:单元测试、组装测试、确认测试和系统测试,它们按顺序进行。

(1)单元测试(unit testing),对源程序中的每一个程序单元进行测试,验证每个模块是否满足系统设计说明书的要求。

(2)组装测试(integration testing)是用于装配软件的一种系统化的技术,要在软件装配的同时进行测试。用以发现与接口相联系的问题。目的是将经过单元测试的模块构成一个符合设计要求的软件结构。组装测试技术有自顶向下结合和自底向上结合两种测试方法。本系统工程采用自顶向下结合的测试方法对子系统进行组装测试。在测试过程中没有发现问题。

(3)确认测试(validation testing)是对整个软件进行验收,根据系统分析说明书来考察软件是否满足要求。

(4)系统测试(system testing)是将软件、硬件、网络等系统的各个部分连接起来,对整个系统进行总的功能、性能等方面的测试。

7.4 系统测试

根据实际需求进行系统测试,测试用例如下: 测试一:用户登陆信息

对本系统用户登录模块测试情况如表5-1所示。

表5-1 用户登录模块测试用例表 用户名 张三 张三 张san

密码 111111 123457 123

测试结果 正确登录 提示用户名或密码错误 提示用户名或密码错误

测试目的:检查登陆时密码不正确或者是用户名不存在系统是否出现预期设定的操作提示。

预期效果:登陆出现错误时进行报错并提示重写填写。 结果:都出现相应的报错提示。

结论:登陆时信息要全部填写正确才能进行操作。 经过测试,用户登录模块测试成功。 测试二:查询功能测试

测试目的:测试用户是否能进行课表信息的查询。

34

西北工业大学明德学院本科毕业设计论文

预期效果:在用户输入查询条件时,成功将信息从数据库中查出。 结果:用户查询后,页面正确显示了符合条件的查寻信息。 结论:用户查询操作成功,程序运行正常。 测试三:修改个人资料。

测试目的:测试用户是否能修改个人信息。

预测效果:在用户更改个人信息后,更改后的个人信息能成功保存到个结果:执行更改个人信息后,能够成功保存到个人资料中。 结论:更改个人资料成功,程序运行正常。

人资料中。

测试四:管理员登录。

对本系统管理员登录模块测试情况如表5-2所示。

表5-2管理员登录模块测试用例表

用户名 admin admin Adm

密码 333333 123446 123456

测试结果 成功登录 用户名或密码错误 用户名或密码错误

测试目的:测试管理员是否能成功登录。

预测效果:登陆出现错误时进行报错并提示重写填写。 结果:都出现相应的报错信息。

结论:登陆时信息要全部填写正确才能进行操作。 经过测试,管理员登录模块测试成功。 测试五:管理员相应功能测试。

测试目的:测试管理员是否能进行相应的增删改查。 预测效果:增删改查正常

结果:管理员执行相应操作后,均成功。 结论:操作成功,程序运行正常。

7.5 本章小结

软件测试是软件开发中的重中之重,没有一点可以马虎的,在项目管理过程中,强调的是每个过程的每一个环节都要进行测试,保证系统在每个阶段可以控制。因为软件测试中考虑的问题基本上是项目管理中需要考虑的问题。具体说,软件测试是事务性的,而项目管理是策略性,一些策略性的东西必须在一些事务性的事务上来实现。

35

西北工业大学明德学院本科毕业设计论文

8 结论

本论文研究内容是基于WEB 的教室管理系统的设计与实现,通过软件工程传统方法学中的快速原型法对系统进行了设计,最终实现了基于B/S模式具有自动排课功能的教室管理系统。

由于论文研究内容主要是自动排课功能的设计,因此论文首先讲述了教室管理的背景现状和排课算法的发展历史;然后对系统的开发实现工具和用到的主要技术进行了介绍接着从用户角度对问题进行定义,再从各个方面对系统的实现进行了可行性分析;最后给出系统的总体设计和数据库设计过程以及排课算法的具体实现方法,并以系统截图的形式对系统的实现进行了介绍。

由于水平有限,对于数据库的操作还不是相当的熟练,有时会出现信息不能及时更新到数据库的问题,导致错误。由于实地考察不够加上时间紧迫,导致功能不够完善。另外在做需求分析的时候,由于考虑欠佳,等到做软件的时候又出现了问题,在返工为时太晚,尽管已经想办法补救,但难免出现漏洞。

本系统实现的主要功能以及存在不足有:

学生登录模块中在问题定义中提到的要求基本都已经实现,可以完成个人课表、教室信息的查询,但由于数据库组织比较简单,因此查询条件单一。

管理员功能模块对问题定义中提到的数据管理的功能基本实现,但未能实现学期末对课程考试的安排功能;排课算法也基本实现,可以对课程进行自动安排,排课所花费时间也可以接受,经过测试,当教室占用率在百分之八十以下时对课程安排的成功率在百分之九十以上。但排课过程以班为最小单位,不能处理一个学生出现在两个授课班级单位中的情况,不能为课程设置排课优先级。

综上所述,系统功能基本实现,但细节处理不够完善,系统功能有待提高。 通过此次课程考试设计,将我所学的C#知识得到巩固和应用,在设计的过程中我遇到了很到问题,不过在老师和同学们的帮助和自己的思考下还是很好的完成了。这此课程考试设计不仅让我懂得了写程序不能闭门造车,要努力拓宽知识面,开阔视野,拓展思维。它还让我学会了在网上查阅那些无限的资料。不过与其临渊羡鱼,不如退而结网。这次C#课程考试设计给我的最大的收获就是如果让自己有了兴趣,那么任何困难在你的勇气和毅力下都算不得什么。完成了课程考试设计只是一小步,未来的日子还要继续努力。

36

本文来源:https://www.bwwdw.com/article/7yc7.html

Top