《教务管理系统-课程设计报告(共36页).docx》由会员分享,可在线阅读,更多相关《教务管理系统-课程设计报告(共36页).docx(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上“教务管理系统”课程设计报告摘 要随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识并且进入人类社会的各个领域,发挥着越来越重要的作用。此次课程设计我选择了“教务管理系统”作为题目。系统利用计算机的特点对学生、教师、教师选课、学生选课等等工作进行管理,大大提升了工作效率。一直以来,人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,随着时间推移而产生大量的文件与数据,这对查找、更新与维护都带来很大困难。我前台应用程序是使用Microsoft Visual Studio 2010作为开发工具,后台数据库开发则使用o
2、racle数据库第三方开发工具plsqldev。教务管理系统基本分为四个模块:系统首页登录模块、管理员模块、教师模块、学生模块。【关键词】动态网站 交互性 ASP.net 教务管理系统目录专心-专注-专业绪论随着国内高校校园网的建立,基于互联网的应用系统的开发正在蓬勃发展并发挥着较大的作用。例如,我国许多高校的网上系统,学校的各种信息管理系统,学校选课系统,还有一些医学院开发的网上诊所,远程诊断系统等等,都是基于校园网的应用系统。国外的教学科研软件与国内相比开发的早而且相对比较成熟。早在七十年代末,美国就建成了NSFNET(国家科学基金网),其课题的申报以及课题的进展情况汇报都是在网上进行。其
3、网上教务管理系统也是十分的完善,世界各地的学生可以坐在家里通过互联网完成入学申报、选课、考试、毕业论文、取得学位这一学习生活的全过程。目前,国际上已具规模的远程教育院校就有数百所之多,网上教育正在发挥着巨大的作用,为世界各国培养出大批人才。所有这些都表明,基于Internet校园网的应用已经渗透到校园的各个方面。网上选课系统是基于校园网的应用的一小部分,其目的在于方便学生选择课程以及教师的教学活动,更加有利于学校对学生上课,学分,学习成绩的高效统一的管理。1 系统需求分析教务管理系统的性质决定了它的服务端工作负荷比较大,这就要求服务端的硬件配置要尽可能的高,主要是内存,而且操作系统也要尽可能的
4、稳定。基于.net的系统一般来说网络安全性比较好,但并不能说就一定安全,尤其在windows操作系统下,由于windows的漏洞比较多,系统装配在windows下并不是最佳的选择。系统的核心数据库,随着数据的不断增多,必然会产生冗余,导致系统运行效率降低,建议管理员定期备份和清理冗余数据,以保证系统的正常高效运行。教务管理系统,是针对一系列管理事务及学生的选课进行需求分析的。首先,学生选课的前提是课程已由教务,或者教师进行科学的,无冲突的排课后,才可以进行的。因此,在选课功能之前,排课成为了选课的前提。这两个功能所涉及的用户为学生、教师、管理员。而他们的信息也应该被合理的管理,这也决定了本系统
5、中必然有的三个功能:登陆管理、教师选课、学生选课。1.1 问题的提出随着Internet的发展,互联网络技术和多媒体技术对教育领域的影响日渐明显,各高校纷纷将“数字化”引入到教学、科研、管理和信息共享等学校日常工作和生活的各个环节,纷纷建立以计算机网络通讯为基础的信息管理和服务平台,用来辅助教学、科研和管理等各种活动。教务管理系统是一个学校不可缺少的部分,它的内容对学校决策者和管理者来说都至关重要,所以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段。但是一直以来人们都使用传统人工的方式管理档案,这种管理方式存在许多缺点,如:效率低、保密性差、时间长、将产生大量的文件和数据,这对于查找
6、、更新和维护都带来了不少的困难。随着技术的不断提高,计算机科学日渐成熟,其强大的功能以为人们深刻的认识,它以渗透到人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大的提高教务管理的效率,也是学校的科学化、现代化管理,与世界接轨的重要条件。因此开发一套这样的软件是很重要的。1.2 系统的设计目标经过以上的初步调查和研究,并且确定了该平台的可行性,并决定开发本平台,为了能够对现行的平台内容进行充分了解,使所要开发的平台更具有实用性和
7、适应性,设计出该平台功能如下:1. 能够完成用户基本信息录入的注册和用户基本信息的个人前台与后台管理。2. 管理员主要针对系统进行维护,如对课程信息的增删改、对新闻的增删、教师的增删、学生的增删等等;还有进行自己的信息管理。3. 教师可以选课、并查询所有课程信息和自己所带课程信息,录入学生应选课程,评定学生成绩,管理个人信息等。4. 学生可以查看选课情况,查看成绩,查看个人资料,能够进行选课操作,维护本人的信息。2 系统开发的技术背景2.1 开发技术及运行环境2.1.1 系统采用的开发技术本学生选课系统是一个基于Internet,采用B/S 模式,并根据现有的学生选课系统的现状而设计开发的平台
8、。在这种模式下,用户工作界面是通过www浏览器来实现,极少部分事物逻辑在前端(Browser)实现,但主要事物逻辑在浏览器端(Sever)实现,形成三层结构。这样就大大简化了客户端电脑的负荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。在设计本系统的时候,后台数据库选用的是SQL Sever2005。2.1.2 系统运行环境Microsoft Visual Studio2005本身对软硬件环境没有特殊要求。所以只要求能以较快的速度运行Windows XP SP3或Windows Server 2003,可扩充多媒体配置符合国内外软硬件发展的潮流。(1)硬件环境(最低配置):奔腾3
9、86;1GB硬盘容量;256MB内存。(2)软件环境:中文Windows操作系统;安装了Microsoft Office组件;安装了Microsoft Visual Studio2005。2.2 关键技术简介 2.2.1 系统前台开发工具(Visual Studio)概述Visual Studio开发系统是一套开发工具,旨在帮助软件开发人员(无论他们是新手还是经验丰富的专家)应对复杂的挑战并创建创新的解决方案。Visual Studio 的目的是改进开发流程,帮助人们更轻松地实现突破、获得更令人满意的结果。2.2.2 后台数据库支持SQL Server 2005是微软推出的一个大型的关系型数据
10、库管理系统。作为Windows数据库中出类拔萃的成员,SQL Server 2005能够满足各种类型的企业客户和独立软件供应商构建商业应用程序的需要。23常见的网络程序设计语言 目前,常见的动态网络程序设计语言有ASP、PHP、JSP和ASPNET等程序设计语言。 231 ASP ASP(Active Server Pages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它是一种技术框架。运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事
11、本就可以完成。由脚本在服务器上而不是客户端运行,这样大提高了用户与服务器之间的交互的速度。 此外,它可通过内置的组件实现更强大的功能,如使用A-Do可以轻松地访问数据 库。ASP的最大优点就是简单好学,所以目前ASP使用非常广泛,很多大型的站点 都是用ASP开发的。 232 PHP PHP是Rasmus Lerdorf于1994年提出来的。后来功能不断完善,形成了今天流行的PHP3的雏形。PHP程序可以运行在UNIX、Linux或者Windows操作系统下,对客户端浏览器也没有特殊要求。PHP的优点是免费和开放源代码,对于许多要考虑运行成本的商业网站来说,尤为重要。PIP的缺点是缺乏大公司的支
12、持,前途不如ASP和JSP等辉煌。另外,运行环境配置起来稍微复杂些。233 JSP JSP的全称是JavaServer Pages,它是由太阳微系统公司(SunMicrosystemsInc)提出,多家公司合作建立的一种动态网页技术。 JSP可以运行在几乎所有的服务器系统上,当然,需要安装JsP服务器引擎软件。JSP也可以在服务器端运行,对客户端浏览器要求很低。 JSP的主要优点是开放的、跨平台的结构,几乎可以在所有的操作系统上运行。而且它采用编译后运行,能够提高执行效率。JSP的主要缺点是,相对于ASP来说,学习起来稍微困难些。此外它的运行环境配置起来也比较复杂。234 ASP.NET AS
13、PNET又叫ASP+,它不仅是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。ASPNET是NET框架中专门用来开发网上应用程序的,它其实不是一种语言,而更像一个框架,在这个框架下可以采用VBNET、C#等其他NET语言开发网上程序。3 系统分析与总体设计3.1 系统结构框架本试网站采用模块化设计方法,根据系统功能来进行模块划分,确保模块内聚性高,模块之间耦合性低。教务管理分为四个个模块,系统首页登录模块,学生模块,教师模块以及管理员模块。根据上述分析,又考虑到系统的安全性,本系统的结构框架图设计如图1-1所示。 学生选课系统 学生模块教师模块管理员模
14、块首页登录模块 游客浏览、查看新闻用户登录系统使用帮助进行选课管理个人信息管理个人信息查看全部课程、查看选课管理课程信息 管理新闻信息及发布 管理教师、学生信息图1-1 学生选3.2主要模块功能分析1、系统首页登录模块登录有三种身份管理员、教师与学生;登录板块有账号密码错误的验证功能与忘记密码的帮助功能。未登录状态下可以实现以下功能:查看学校简介、系统功能介绍;进入湖大官网和湖大教务处;退出系统;新闻浏览。2、管理员模块管理员本人信息查看与修改、密码修改;管理(增删查)新闻;管理(增删改查)学校学生信息;管理(增删改查)学校开设课程信息;管理(增删改查)学校教师信息。3、教师模块教师个人信息查
15、看与修改、密码修改;查看学校开设课程信息、选课(选择教授课程);登分。(暂未实现)4、学生模块学生学籍信息查看与修改、密码修改;查看学校开设课程信息、选课、查看已选课程;查看考试成绩。(暂未实现);帮助即跳入系统功能介绍。4 系统数据库设计根据前几章对系统各种功能需求的分析,本系统采用oracle数据库,数据库名为JWGLXT.mdf,具体表的设计如表1-2至1-7所示。4.1管理员信息表(manager)管理员信息表manager用于存储管理员的基本信息,表中各字段功能定义如表6-1所示。表1-2 manager表字段名称字段说明字段类型约束备注Mname管理员姓名VARCHAR2(10)N
16、ot nullMsex管理员性别VARCHAR2(2)Not null只能为男或女Mno管理员工号VARCHAR2(5)Primary keyM_I_D身份证号VARCHAR2(18)UniqueMphone联系方式VARCHAR2(11)UniqueMpwd密码VARCHAR2(20)4.2学生信息表(student)学生信息表student用于存储用户的基本信息。表中各字段功能定义如表1-3所示。表1-3 student表字段名称字段说明字段类型约束备注Sname学生姓名VARCHAR2(10)Not Nullst Ssex学生性别VARCHAR2(2)Not Null只能为男或为女Sno
17、学号VARCHAR2(5)Primary keyI_D身份证号VARCHAR2(18)UNIQUESbirth生日VARCHAR2(10)Sphone联系方式VARCHAR2(11)UNIQUESnative民族VARCHAR2(10)Snation籍贯VARCHAR2(10)Sdept学院VARCHAR2(30)Smajor专业VARCHAR2(20)Spwd密码VARCHAR2(20)stuIntroduction简介varchar500无4.3教师信息表(TEACHER)商品信息表(TEACHER)用于存储教师的基本信息,表中各字段功能定义如表1-4所示。表1-4 TEACHER表字段名
18、称字段说明字段类型约束备注TNAME教师姓名VARCHAR(20)Not nullTsex教师性别VARCHAR2(2)Not null只能是男或女TNO教师工号VARCHAR(3)Primary keyT_I_D身份证号VARCHAR2(18)UniqueTphone联系方式VARCHAR2(11)UniqueTpwd密码VARCHAR2(20)4.4课程信息表(course)课程信息表(course)主要用于记录学生将要选择的课程的具体信息,表中各字段功能定义如表1-5所示。表1-5 course 表字段名称字段说明字段类型约束备注CNAME课程名称VARCHAR(20)Not null主
19、关键字CNO课程编号VARCHAR(3)Primary key不能为空CCREDIT学分INTNot null不能为空4.5教师选课表(T_C)学生选课表(T_C)主要用于记录学生的选课情况,表中各字段功能定义如表1-6所示。表1-6 T_C表字段名称字段说明字段类型约束备注TNO教师编号varcharForeign keyCNO课程编号varcharForeign keyCNAME课程名称varcharNot nullTNAME教师名称varcharNot null4.6学生选课表(S_C)学生成绩表(S_C)主要用于记录每个学生每个学期的成绩,表中各字段功能定义如表1-7所示。表1-7 S
20、_C 表 字段名称字段说明字段类型 约束备注SNO学生编号VARCHAR(3)Foreign keyCNO课程编号VARCHAR(3)Foreign keyCNAME课程名称VARCHAR(20)Not nullSNAME学生名称VARCHAR(20)Not null4.7院系关系表(D_M)院系关系表(D_M)主要用于使用在下拉框中建立院系关联,表中各字段功能定义如表。表1-8 D_M表字段名称字段说明字段类型 约束备注Dept学院名称VARCHAR(30)Major专业名称VARCHAR(20)4.8附件表(TA_附件)附件表(TA_附件)主要用于在上传附件,把附件存于数据库中,字段功能定
21、义如表。表1-9 TA_附件表字段名称字段说明字段类型约束备注附件ID附件IDVARCHAR2(50)Primary keyDEFAULT SYS_GUID()附件名附件名VARCHAR2(200)Not null附件全名附件全名VARCHAR2(200)Not null附件扩展名附件扩展名VARCHAR2(20)Not null附件路径附件路径VARCHAR2(200)Not null备用1备用1VARCHAR2(50)备用2备用2VARCHAR2(50)4.9新闻表(TA_新闻)表1-10 TA_新闻表字段名称字段说明字段类型约束备注新闻ID新闻IDVARCHAR2(50)Primary
22、keyDEFAULT SYS_GUID()新闻标题新闻标题VARCHAR2(200)Not null发布人发布人VARCHAR2(10)Not null发布时间发布时间DATENot null新闻内容新闻内容CLOBNot null点击量点击量INTDEFAULT 0备用1备用1VARCHAR2(50)备用2备用2VARCHAR2(50)5 创建数据库及数据表脚本5.1创建表空间,用户及授权/*内容:学生管理系统数据库的SQL脚本创建用户*/-以system或SYS身份登录PLSQL DEVELOPER-(1)先创建表空间create tablespace xsglxtdatafile E:a
23、ppAdministratororadataorclxsglxt_data.dbfsize 12M autoextend on next 6M extent management local; commit;-(2)创建用户create user xsglxt identified by default tablespace xsglxt profile DEFAULT;commit;-(3)给用户授权grant connect to xsglxt;grant resource to xsglxt;grant dba to xsglxt;5.2创建学生学籍信息表/*内容:学生学籍信息表*/Cr
24、eate table student(Sname VARCHAR2(10), /* 姓名 */Ssex VARCHAR2(2) CHECK(Ssex in(男,女), /* 性别 */Sno VARCHAR2(5), /* 学号 */I_D VARCHAR2(18) UNIQUE,Sbirth VARCHAR2(10),Sphone VARCHAR2(11) UNIQUE, Snative VARCHAR2(10),Snation VARCHAR2(10),Sdept VARCHAR2(30),Smajor VARCHAR2(20),SpwdVARCHAR2(20),CONSTRAINT pk
25、_student_Sno PRIMARY KEY(Sno) -定义主键(或主码));5.3创建学生选课表/*内容:学生选课表*/Create table S_C(SNO VARCHAR(3),CNO VARCHAR(3),CNAME VARCHAR(20),SNAME VARCHAR(20),CONSTRAINT pk_S_C_SNOCNO PRIMARY KEY(SNO,CNO);alter table S_C add CONSTRAINT FK_S_C_SNO FOREIGN KEY(SNO) REFERENCES STUDENT(SNO);alter table S_C add CONS
26、TRAINT FK_S_C_CNO FOREIGN KEY(CNO) REFERENCES COURSE(CNO);alter table S_C add CONSTRAINT FK_S_C_CNAME FOREIGN KEY(CNAME) REFERENCES COURSE(CNAME);alter table S_C add CONSTRAINT FK_S_C_SNAME FOREIGN KEY(SNAME) REFERENCES STUDENT(Sname);5.4创建管理员信息表/*内容:管理员信息表*/Create table manager(Mname VARCHAR2(10),
27、/* 姓名 */Msex VARCHAR2(2) CHECK(Msex in(男,女), /* 性别 */Mno VARCHAR2(5), /* 工号 */M_I_D VARCHAR2(18) UNIQUE,Mphone VARCHAR2(11) UNIQUE, Mpwd VARCHAR2(20),CONSTRAINT pk_manager_Mno PRIMARY KEY(Mno) -定义主键(或主码));55创建院系关系表/*内容:院系关系表*/Create table D_M(Dept VARCHAR(30),Major VARCHAR(20),CONSTRAINT pk_D_M_Majo
28、r PRIMARY KEY(Major);5.6创建教师信息表/*内容:教师信息表*/Create table TEACHER(TNAME VARCHAR(20),Tsex VARCHAR2(2) CHECK(Tsex in(男,女), TNO VARCHAR(3),T_I_D VARCHAR2(18) UNIQUE,Tphone VARCHAR2(11) UNIQUE,Tpwd VARCHAR2(20),CONSTRAINT pk_TEACHER_TNO PRIMARY KEY(TNO);5.7创建课程信息表/*内容:课程信息表*/create or replace view tcchose
29、n asselect T_C.*,ame,course.ccreditfrom T_C,coursewhere T_C.cno=o5.8创建教师选课表/*内容:教师选课表*/Create table T_C(TNO VARCHAR(3),CNO VARCHAR(3),CNAME VARCHAR(20),TNAME VARCHAR(20),CONSTRAINT pk_COURSE_TNOCNO PRIMARY KEY(TNO,CNO);alter table T_C add CONSTRAINT FK_T_C_TNO FOREIGN KEY(TNO) REFERENCES TEACHER(TNO
30、);alter table T_C add CONSTRAINT FK_T_C_CNO FOREIGN KEY(CNO) REFERENCES COURSE(CNO);alter table T_C add CONSTRAINT FK_T_C_CNAME FOREIGN KEY(CNAME) REFERENCES COURSE(CNAME);alter table T_C add CONSTRAINT FK_T_C_TNAME FOREIGN KEY(TNAME) REFERENCES TEACHER(TNAME);5.9创建附件表/*内容:附件表*/CREATE TABLE TA_附件( 附
31、件IDVARCHAR2(50) DEFAULT SYS_GUID(), 附件名VARCHAR2(200) NOT NULL, 附件全名 VARCHAR2(200) NOT NULL, 附件扩展名 VARCHAR2(20) NOT NULL, 附件路径VARCHAR2(200) NOT NULL, 备用1VARCHAR2(50), 备用2 VARCHAR2(50), CONSTRAINT PK_附件ID PRIMARY KEY(附件ID)5.10创建新闻表/*内容:新闻表*/CREATE TABLE TA_新闻( 新闻ID VARCHAR2(50) DEFAULT SYS_GUID(), 新闻标
32、题 VARCHAR2(200) NOT NULL, 发布人 VARCHAR2(10) NOT NULL, 发布时间 DATE NOT NULL, 新闻内容 CLOB NOT NULL, 点击量 INT DEFAULT 0, 备用1 VARCHAR2(50), 备用2 VARCHAR2(50), CONSTRAINT PK_新闻ID PRIMARY KEY(新闻ID)6 系统功能的实现及关键代码6.1首页及登录模块6.1.1 首页界面6.1.1.a点击忘记密码 出现如下提示6.1.1.a6.1.2登录部分cs代码: protected void btnLogin_Click(object sen
33、der, EventArgs e) if (ASPxComboBox1.Text = 学生) STUDENTTableAdapter ts = new STUDENTTableAdapter(); DataTable dts = ts.login(ASPxTextBox1.Text, ASPxTextBox2.Text); if (dts.Rows.Count = 1) Sessionusernum = ASPxTextBox1.Text; Sessionuserid = ASPxComboBox1.Text; Response.Redirect(已登录(学生).aspx?str=登录成功!欢
34、迎您, + dts.Rows0sname.ToString() + 。); else ASPxLabel1.Text = 账号或密码错误; else if (ASPxComboBox1.Text = 管理员) MANAGERTableAdapter tm = new MANAGERTableAdapter(); DataTable dtm = tm.mlogin(ASPxTextBox1.Text, ASPxTextBox2.Text); if (dtm.Rows.Count = 1) Sessionusernum = ASPxTextBox1.Text; Sessionuserid = AS
35、PxComboBox1.Text; /SessionUsernum = txtzhanghao.Text; Response.Redirect(已登录(管理员).aspx?str=登录成功!欢迎您, + dtm.Rows0MNAME.ToString() + 。); else ASPxLabel1.Text = 账号或密码错误; else TEACHERTableAdapter tt = new TEACHERTableAdapter(); DataTable dtt = tt.tlogin(ASPxTextBox1.Text, ASPxTextBox2.Text); if (dtt.Rows
36、.Count = 1) Sessionusernum = ASPxTextBox1.Text; Sessionuserid = ASPxComboBox1.Text; /SessionUsernum = txtzhanghao.Text; Response.Redirect(已登录(教师).aspx?str=登录成功!欢迎您, + dtt.Rows0TNAME.ToString() + 。); else ASPxLabel1.Text = 账号或密码错误; 6.2 学生模块6.2.1学生模块界面登录成功后,会出现登录成功!欢迎您+名字的提示语。并且左上角图标会显示所登录的账户名和账号,右上角会
37、显示当前系统时间。图6.2.1.a学生登录后界面图6.2.1.a查看学籍卡片6.2.2修改学籍部分cs代码:public partial class 修改学籍信息 : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) try lblId.Text = Sessionuserid.ToString(); lblNum.Text = Sessionusernum.ToString(); lblSno.Text = Sessionusernum.ToString(); catch (NullReferenceException ex) Response.Redirect(首页(登录).a