学生选课系统的设计与实现.docx
- 文档编号:11662067
- 上传时间:2023-03-29
- 格式:DOCX
- 页数:46
- 大小:406.65KB
学生选课系统的设计与实现.docx
《学生选课系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《学生选课系统的设计与实现.docx(46页珍藏版)》请在冰豆网上搜索。
学生选课系统的设计与实现
防灾科技学院
毕业设计
题 目
学生选课系统的设计与实现
学生姓名
涂语楠
学 号
0630132
系别
灾害信息工程系
专业
信息管理与信息系统
班 级
07302
开题时间
2011年1月1日
答辩时间
2011年06月11日
指导教师
白灵
职称
讲师
学生选课系统的设计与实现
*******
******
摘要:
随着我校大学生人数的不断增加,使得教务管理系统的数据量也不断上涨。
为了减轻教务处的教务管理工作,以及方便学生选择自己所喜欢的科目。
学生选课系统针对这一环节,实现教学资源实体与学生两个集合的协调统一,规避课程分配冲突,更加有效衔接教学管理系统的各子系统的关系。
本系统是一个典型的信息管理系统,其开发主要包括后台数据库的建立和维护,以及客户端程序的开发两个方面。
本文通过分析客户端/服务器结构的特点并结合选课的实际情况,提出了基于客户端/服务器结构选课系统的基本设计思想,简要介绍了系统需求分析和系统的功能设计、ACCESS数据库设计、C#程序设计及系统实现过程。
重点描述了如何利用C#以及ACCESS数据库管理系统相结合的方法来开发基于客户端的选课系统。
并在试运行的基础上对系统进一步完善提出了改进方案。
通过该系统,使学生可以方便地在局域网内的计算机上安装客户端进行选课。
关键词:
学生选课,客户端/服务器结构,C#,ACCESS数据库管理系统
TheDesignandImplementationofStudentSelectCourseSystem
Author:
TUYu-nan
Instructor:
BAILing
Abstract:
Withtheincreasingnumberofcollegestudents,theamountofdatacontinuetorisegreatlyineducationalsystem.InordertoreducetheworkofofficeofAcademicAffairs,andmakeeachstudenttobetterselecttheirownfavoritesubjects,thispaperdesignsastudentselectcoursesystem.Electiveforstudentsinthispartofthesystemachieveacreditsystemmanagemententity-basedteachingresourcesandstudentcorrespondence.Thesystemisatypicalinformationmanagementsystem,whichmainlyincludestheestablishmentandmaintenanceofback-enddatabase,andtheclientdevelopment.
ThisanalyzestheC/SarchitecturecombinedwiththecharacteristicsoftheactualsituationofcourseselectionwhichisproposedbasedonC/Sarchitecture,abriefdescriptionofthesystemfunctionalrequirementsanalysis,andsystemdesign,databasedesign,ASP.NETdesignandsystemimplementationprocess.HowtouseASP.NETandthedatabasemanagementsystemdevelopclient-basedenrollmentsystemisthefocuse.Andonthebasisofthetrialoperationofthesystem,theproposedimprovementsarefurtherimproved.StudentscaneasilyinstallitonacomputerwithintheLANclientcourses.
Keywords:
StudentSelectCoureSystem,C/S,C#,AccessDBMS
引言
在信息发展全球化,网络化的今天,校园局域网已成为每所高校所必备的信息基础设施,各种管理信息系统凭借于校园局域网应运而生。
在各大高校的教务系统管理过程中,课程表的编排是一项非常复杂的工作。
在排课的过程中,除了必须满足大量的制约条件以外,还需要解决很多冲突与矛盾,例如:
两位老师不能同一个时间在同一间教室上课,一位教师不能在同一个时间上两门课等等。
利用计算机的辅助进行课程表编排工作,不但可以提高排课工作的科学性,还大大减轻了管理人员工作的强度,提高工作效率,使得学校教务管理迈上了一个新的台阶。
现在,我国的高等教育事业正在蓬勃发展,高等学校的规模不断的扩大,在此,高等学校的教学改革也在全面的推行,学分制在各大高校全面启动。
所谓学分制就是允许学生在计划的指导下,根据自己的条件、能力、兴趣,有选择的支配自己的学习时间和内容。
因此,学生选课管理成为了推行实施学分制管理的重要任务。
由于学生选课时的制约条件较多、较复杂,工作量也比较大,而且往往需要在很短的时间内完成,因此运用计算机辅助选课,即能实时地检验和统计大量的选课数据,又能十分方便地输出选课结果,同时也避免了在人工处理时产生的错误。
学生选课系统是以数据库作为后台,数据库从60年代初发展起来到今天,经过了四十多来年的发展,数据库技术己经逐渐成熟。
就数据库应用来说,呈现了多样化的空间,例如数字图书馆、电子出版物、电子商务、远程教育系统等,给数据库技术的发展提出了更多、更高的要求。
本文引言部分主要介绍了学生选课的背景,第一章概述,介绍学生选课系统的背景,做这个设计的目标以及意义;第二章介绍该选课系统的需求分析,系统分析和系统结构;第三章主要介绍了系统设计相关的背景,主要包括VisualStudio2008TeamSystem开发工具、Access数据库、C#开发语言;第四章系统总体设计的介绍,主要是各模块功能的简介,和面向对象分析;第五章是数据库的详细设计,具体介绍了数据库的设计,物理设计和逻辑设计;第六章是系统各个功能的实现,详细介绍了各个模块实现的功能;论文最后是结论、致谢及参考文献。
1.概述
1.1课题背景
二十一世纪是科学技术竞争与民族素质竞争的时代,其本质就是人才与教育的竞争。
教育的历史让我们知道,教育的每次重大改革和发展都与科学技术息息相关,科学技术是第一生产力,也是发展教育的重要动力。
随着科学技术的不断进步,计算机科学技术日渐成熟,计算机在各个领域所扮演的角色越来越重要。
很长时间以来,人们都在用人工的方式来管理文件档案,这种管理方式存在着很多的缺点,例如:
效率低,保密性差,除此之外时间一长,将有大量的文件和数据产生,这对于查询、更新和维护都带来了很大的困难。
选课信息管理系统作为计算机应用的一个部分,其优点是手工管理所无法比拟的,例如:
查询方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点是学校的科学化、正规化管理的重要条件。
选课管理系统属于教学信息管理系统的一个部分。
随着高等教育的发展与社会需求,各大高校尽可能多地开设各类课程,使得学生的知识面得到拓展,塑造学生的个性,培养了学生的创造能力,使学生的综合素质有所提高。
但是而传统的手工选课方式非常的烦琐与复杂,由学校统一发布可选课程表,让学生事先了解可选的课程和各班选课报名的时间,然后按规定的时间到指定的地方去报名。
这种方式存在着明显弊病。
主要是:
许多学生一起去报名,十分拥挤,很难组织;由于各班选课报名时间不同,排在后面的各班的学生常常选不到理想的课程。
传统的选课方式已经不适应现代教务教学的改革和发展,迫切需要一种新的选课方式。
为使教学管理工作的科学化、规范化,就必须采用计算机辅助管理。
计算机管理使选课更加高效准确,省去了大量的人力劳动,提高了教学管理的信息化水平。
因此,学生选课是一项非常重要的工作,主要负责对整个学校学生的选课进行管理,除此之外,还需对学生信息及课程信息进行维护,对学生所选课程的考试成绩进行记录,学生选课是实现高校学分制的一个重要环节。
随着学校硬件水平的提高、信息化进程的加快,教务工作急切希望能够抛开原有繁琐的管理方式,希望能够根据学校现状的实际需求开发一套能够系统化、科学、有效、易于掌握的管理软件。
现在学院已经基本实现了网络化管理,各部门已有了计算机,原来的计算机管理系统可以实现简单的信息管理,现在需要一个学生选课管理平台。
为了切实解决课程管理中存在的诸多问题,提高教务管理的水平和质量,使学院选课的管理更加规范,经过几个月的努力,我设计开发了防灾科技学院选课系统。
此系统基本上实现了一些选课相关的功能。
1.2课题目标
该选课系统的主要目的是实现学生选择课程的公平性和方便性,让他们可以在学校内任一安装客户端的机器上查询课程,选择课程,删除课程;对于课程管理员,可以通过登陆客户端添加、修改、查询、删除课程信息;对于学生管理员,可以通过登陆客户端添加、修改、查询、删除学生信息;对于教学管理部门,能够实现学生信息的管理,对课程信息的管理,以及对这个系统的维护。
1.3课题意义
选课系统是学校不可或缺的一个部分,它的内容对于学校来说都是非常的重要,所以选课管理系统应该能够为学生用户提供大量的课程信息,方便学生快速的查询。
随着科学技术的不断进步,计算机科学也在不断地成熟,其强大的功能已经被人们所深刻的认识,它已经深入到人类社会的各个领域并在这些领域里发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高人事劳资管理的效率,也是教学的科学化、正规化管理,与世界接轨的重要条件。
开发此系统无论是从课题的研究上还是从技术方面考虑都是很有必要的。
本课题的研究开发可以解决以往传统效率低、工作繁琐的人工管理选课方式,省去了大量的人力劳动,并且方便更有效的、更合理的完成教务人员对选课管理的效率。
技术运用上也有利于加快学校信息化建设的步伐。
实现教育的现代化、科技化,从而提高教学管理的信息化水平。
2.需求分析
2.1需求分析
选课系统需求满足来自三方面的需求,这三个方面分别是学生、管理员和超级用户。
学生的需求是查询院系的课程、学生选课情况及学生信息的修改;管理员的功能比较复杂,其中包含三种:
学生管理员、课程管理员和管理员;超级用户主要是系统状态的查看、维护。
学生可以直接查看选课情况,学生可以根据自己的学号和密码登录学生选课系统,还可以修改查询个人相关的部分信息。
一般情况下,学生只能查询和修改自己所选课程的情况还有个人信息,若需要查询和修改其他学生的选课以及成绩查询,就需要知道其他学生的学号和密码。
这些是很难得到的,特别是密码,所以不但满足了学生的要求,还保护了学生的个人隐私。
管理员分为学生管理员,课程管理员和管理员。
学生管理员可根据学校学生的学号,增加学生用户,给新的学生用户建立新的用户名和密码,学生可以通过学生管理员提供的用户名和密码进行登录操作,学生管理员还可以对没有进行选课的学生进行删除操作,数据安全性和保密性要求最高;课程管理员是对课程进行操作,课程的增加、删除,根据学校的规定,安排选课的课时、学分、开课的时间都是由课程管理员执行的;管理员除了能操作学生管理员和课程管理员所有的内容,还能添加、删除学生管理员和课程管理员。
超级用户拥有最高权限,是用来系统初步实施的,在此系统中,超级用户可以管理系统中的所有用户,所有操作。
本系统的主要功能是完成我校教务管理对学生选课的功能。
实现学生在客户端上进行独自的选课,学生能根据自己的意愿来选择自己感兴趣的课程。
在教务管理的同时,教务处能全面的管理本学校的学生信息,学生,老师,课程以及上课的时间等。
达到学生和老师都有合理的安排。
2.2系统分析
在本系统中,有五类用户:
超级用户、管理员、学生管理员、课程管理员、学生用户。
五种不同的用户所具有的功能。
根据要求,从功能上可以分为两个类:
一个是通用功能,登录、个人信息管理、切换用户、找回密码、系统帮助和退出是所有用户都具有的功能;另一种是为不同用户定制不同功能。
2.2.1通用功能
1、登录功能
登录功能是验证登录的用户信息,不同的用户在验证登录信息后,进入主界面会有不同的操作内容。
2、个人信息管理
个人信息管理是用来查询、修改用户的信息。
3、切换用户
切换用户功能是用户登录主界面后,需要切换到其他的用户时使用。
4、找回密码
找回密码是用户忘记自己的登录密码,可以通过找回密码设置的问题,找回自己的登录密码。
5、系统帮助
系统帮助是用户在不了解系统的使用方法时,可以查看系统帮助。
6、退出
在用户使用完学生选课系统后,不在进行其他的操作,选择退出即可退出选课系统界面。
2.2.2用户具有的功能
1.超级用户主要用来系统的初步实施时使用,登录后具有系统所有的功能:
1)学生管理:
可以添加、修改、查询、删除学生信息。
2)课程管理:
可以添加、修改、查询、删除课程信息。
3)学生选课管理:
可以为学生选课及查询、删除学生的选课信息。
4)系统用户管理:
可以增加及删除管理员、学生管理员、课程管理员用户。
2.管理员用户登录后,可以进行学生管理、课程管理、系统用户管理。
1)学生管理:
可以添加、修改、查询、删除学生信息。
2)课程管理:
可以添加、修改、查询、删除课程信息。
3)系统用户管理:
可以增加及删除学生管理员、课程管理员用户。
3.学生管理员用户登录后,可以进行学生管理。
1)学生管理:
可以添加、修改、查询、删除学生信息。
4.课程管理员用户登录后,可以进行课程管理。
1)课程管理:
可以添加、修改、查询、删除课程信息。
5.学生用户登录后,可以进行选课管理。
1)选课管理:
可以选择各个学期开设的课程,查看自己所有已经选上的课程,删除已选课程。
2.3系统结构
本系统应用VisualStudio2008TeamSystem开发工具,使用ACCESS作为数据库。
系统采用的是基于客户端的三层C/S(Client/Server,客户端/服务器)结构,它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。
目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问到新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。
即界面层、业务逻辑层和数据处理层。
界面层是一个建立在windows平台上应用程序界面;数据处理层包含访问后台数据库,提供后台数据库支持,同时包括与数据存储的接口。
第一层为界面层,客户机为校园网上的任何一台计算机,没有特殊要求,只需具有windows平台即可。
学生通过客户端查看相关的选课信息,并进行选课操作。
客户端把学生的数据交给业务实体实例化,再将实例化的对象交给业务接口。
第二层为业务逻辑层,业务逻辑层是封装商业逻辑,提供校验、逻辑实现,处理业务逻辑,实现业务逻辑处理方法,处理逻辑后交给数据层(调用数据接口)处理数据。
第三层为数据层,数据最终处理的地方,首先定义数据加工处理方法(调用数据工厂),处理数据加工方式,实现数据加工处理方法,加工后交给数据服务层提交数据库,常用的SqlHelper.cs。
选用这样的结构模型主要出于以下几方面的考虑:
1.C/S模式一般都建立在专用的网络上,小范围的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务,一般面向相对固定的用户群,对信息安全的控制能力很强,一般高度机密的信息系统采用C/S结构较为适宜,而仅通过C/S发布部分可公开信息,程序更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。
2.应用服务器运行数据负荷较轻,最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序,二者可分别称为前台程序与后台程序。
一旦服务器程序被启动,就随时等待响应客户程序发来的请求。
当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求;服务器程序根据预定的规则做出应答,送回结果,应用服务器运行数据负荷较轻。
3.数据的储存管理功能比较透明,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的。
对于工作在前台程序上的最终用户是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。
在客户服务器架构的应用中,前台程序并不是非常“瘦小”,并没有将麻烦的事情都交给了服务器和网络。
在C/S体系下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。
3.相关技术背景
3.1VisualStudio2008TeamSystem开发工具
微软公司推出VisualStudio开发环境可以用来创建Windows操作平台下的Windows应用程序和网络应用程序,同时网络服务、智能设备应用程序和Office插件也可以用VisualStudio来创建。
目前,windows操作平台应用程序开发环境要数VisualStudio最流行。
MicrosoftVisualStudio2008是为WindowsVista、Office2007、Web2.0或更高发展的下一代开发工具,代号“Orcas”。
VS2008中推出超过250种新功能,融合了对象、关系型数据、XML的访问方式,更加简洁了语言。
使用VisualStudio2008可以高效开发Windows应用。
设计器中的变更可以实时的反映出来,XAML中智能感知功能使得开发效率得以提高。
同时VisualStudio2008支持项目模板、调试器和部署程序。
VisualStudio2008可以高效开发Web应用,集成了AJAX1.0,包含AJAX项目模板,它还可以高效开发Office应用和Mobile应用。
VisualStudio2008提供了高级的开发工具、调试功能、数据库功能和创新功能,有助于在各种平台上迅速的建立一个当前最先进的应用程序。
VisualStudio2008包含了各种增强功能,例如可视化设计器(使用.NETFramework3.5加速开发)、大幅改善Web开发工具,以及能够加速开发和处理所有类型数据的语言增强功能。
VisualStudio2008提供了所有相关的工具和框架支持为开发人员使用,引人注目的、令人印象深刻的帮助创建,并且支持AJAX的Web应用程序。
利用这些大量的客户端和服务器端框架的优势,开发人员能够轻松的构建以客户为中心的Web应用程序,这些应用程序可以集成任何后端数据提供程序、在任何当前浏览器内运行并完全访问ASP.NET应用程序服务和Microsoft平台。
VisualStudio2008提供了帮助开发团队改进协作的扩展的和改善的服务项目,包括帮助将数据库专业人员和图形设计人员加入到开发流程的工具。
3.2Access数据库
Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即RelationalDatabaseManagementSystem),是Office系列应用软件之一。
它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。
Access/Jet、MicrosoftSQLServer、Oracle(甲骨文软件公司),或者任何ODBC兼容数据库内的资料都能够被Access所存取。
熟练的软件设计者或者资料分析者利用Access来开发应用软件,而一些不熟练的程序员和非程序员的“进阶用户”同样能使用Access来开发简单的应用软件。
Access不能成为一种完整的面向对象开发工具,因为它只支持部份面向对象(OO)技术。
MicrosoftAccess在很多地方得到广泛的应用,例如小型企业,大公司的部门,或者开发人员利用它来制作处理数据的桌面系统。
简单的WEB应用程序也常用来它来开发。
这些应用程序主要使用ASP技术在InternetInformationServices运行,较为复杂的WEB应用程序则使用PHP/MySQL或者ASP/MicrosoftSQLServer。
Access为初级程序员的使用方便程度和强大的设计工具提供了很多功能。
不过,这种易于使用可能使人产生误解。
这样的开发者基本上都是没有在应用或者数据设计方面经过训练的办公室工作人员。
因此,很多人认为这样的开发人员能够创建一个可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导。
Access用作快速应用开发被一些较为专业的应用程序开发者使用,尤其是给街道上的推销员制作一个早型或单独应用程序的工具。
但是,如果是通过网络访问数据的话,Access的访问可扩放性并不高。
因此当使用者较多使用此程序时,他们往往选择倾向于一些客户端-服务器为主的方案,例如Oracle、DB2、MicrosoftSQLServer、WindowsSharePointServices、PostgreSQL、MySQL、AlphaFive、MaxDB,或者Filemaker。
在任何情况下,数据库的后期应用很多使用Access的功能(表单,报告,序列和VB代码),例如JET(档案为主的数据库引擎,Access缺省使用)、MicrosoftSQLServer、Oracle和任何其他跟ODBC兼容的产品。
对本开发系统选用Access2000作为后台数据库。
数据库在信息管理系统中有着相当重要的地位,作为信息管理系统的后台,数据库存储着所有的信息,而数据库的设计直接影响到整个系统运行的效率。
良好的数据库设计,可以有效提高数据信息的存储,从而保证数据信息的完整性和一致性。
美国Microsoft公司于1994年推出的Access管理系统。
它具有界面友好、易于学习和使用、开发较为简单、接口灵活等功能,是一个典型的新一代桌面数据库管理系统。
其主要特点如下:
(1)各种数据库对象得到了完善的管理,具有强大的数据组织、用户管理、安全检查等功能。
(2)数据处理能力极其强大,在网络环境下的一个工作组级别,使用Access开发的多用户数据库管理系统具有传统的XBASE(DBASE、FoxBASE的统称)数据库系统所无法实现的客户端服务器(Cient/Server)结构和相应的数据库安全机制,Access具备了许多先
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 选课 系统 设计 实现