教务管理系统-课程设计说明书
首页
阅读:
admin
2019-11-10 13:06

  目录 正文................................................................ 2 1.概况............................................................. 2 1.1 开发环境 ........................................................2 1.2 选择开发架构 ....................................................3 2.教务管理系统简介.................................................. 3 2.1 设计的目的和意义................................................3 2.2 设计的思路与总体方案 ............................................3 2.2.1 系统功能 ....................................................3 2.2.2 系统性能要求 ................................................4 2.3 系统功能模块分析 ................................................4 2.3.1 管理员操作模块..............................................4 2.3.2 学生操作模块 ................................................5 3.数据库设计........................................................ 6 4.程序功能的实现.................................................... 7 4.1.登录系统...................................................... 8 4.2 学生管理......................................................9 4.3 用户管理.....................................................10 4.4 教师管理.....................................................10 4.5 课程管理 .....................................................12 4.6 班级管理 .....................................................14 4.7 选课管理 .....................................................15 4.8 成绩管理 .....................................................15 4.9 查看学生个人信息 .............................................15 4.10 修改学生密码 ................................................16 4.11 查看学生已选课程 ............................................16 4.12 查看课程信息 ................................................16 4.13 学生选课 ....................................................17 总结............................................................... 17 参考文献........................................................... 18 教务管理系统 摘要:本文主要介绍教务管理系统的设计思路和制作过程,从教务管理的重要性 开始,介绍教务管理采用的技术和 SQL Server 数据库,进而阐述整个 教务管理系统的制作过程和具体的设计思路。该教务管理较全面地利用 ASP.NET 技术实现教务管理的基本功能:学生管理、教师管理、课程管理、班级管理、选 课管理、成绩管理、课程信息、选课操作、已选课程、成绩查询等并增加了一些 特色功能。例如修改管理员密码、添加新纪录等。最后介绍自己在设计过程的心 得 体 会 。 本 设 计 运 用 Microsoft Visual Web Developer2005 软 件 和 SQL Server2000 数据库设计的开发。实现了用户登录、查看成绩和课程信息、修改 管理员密码、添加新纪录等功能。 关键字: ASP.NET,教务管理系统,SQL Server 数据库 正文 1.概况 教务管理系统的应用目标是提高学生选课和成绩管理工作的效率,通过本 系统可以对学生个人信息、课程和任课教师信息、选课信息进行基于 Web 方式的 管理及维护。学生可以通过本系统进行个人信息查询、考试成绩查询以及完成选 课操作。系统开发的总体目标是实现学生选课和成绩管理的系统化、规范化。 该网站的核心功能是在网络上提供浏览者查询的功能,用户登录后就可进入 查询和选择课程界面实现选课操作、查询成绩功能。制作教务管理系统可以从学 生界面、教师界面和管理员界面三个角度考虑。用户输入用户名和密码单击登录 或是修改管理员密码按钮。可以进行成绩的发布和查看成绩。 1.1 开发环境 本设计是在 Windows XP 操作系统下进行开发和设计的。页面设计工具采用 Microsoft Visual Web Developer2005 软 件 。 数 据 库 设 计 工 具 采 用 SQL Server2000 软件。 操作系统:Windows XP,版本:Professional 数据库管理系统:SQL Server2000; 功能模块开发语言:ASP.NET; 1.2 选择开发架构 B/S 架构 Bowser/Server 架构中,每台客户端主机(Host)不能够独立的处理数据, 绝大多数的数据都是由服务器(Server)来处理。因此用户所需要的服务取决于 服务器(Server)端能够提供怎样的服务,可以做到服务和数据的实时更新。 教务管理系统是一个数据更新速度很快的系统,需要实时的处理用户任意时 间提交的数据,比如用户的登录、课程的修改、查询以及课程的添加、删除、更 新。基于上述的分析,教务管理系统适合采用 B/S 架构。 2.教务管理系统简介 2.1 设计的目的和意义 该系统的应用目标是提高学生选课和成绩管理工作的效率,通过本系统可 以对学生个人信息、课程和任课教师信息、选课信息进行基于 Web 方式的管理及 维护。学生可以通过本系统进行个人信息查询、考试成绩查询以及完成选课操作。 系统开发的总体目标是实现学生选课和成绩管理的系统化、规范化。 2.2 设计的思路与总体方案 2.2.1 系统功能 教务管理系统根据用户身份的不同,将操作划分为超级管理员、普通用户管 理员和学生权限。 1.管理员权限 管理员是系统中最高权限的拥有者,可以对学生、班级、课程等项目进行统 一的管理。管理员中用户名为 admin 的具有更高一级的权限,课管理系统中其他 管理员的账户信息。管理员拥有的权限如下: 学生信息管理、教师信息管理、基本课程管理、班级信息管理、选课管理、 学生成绩管理和用户管理。 2.学生权限 学生身份的用户只能利用本系统进行与自己有关的操作,不能浏览和修改其 他信息,主要内容如下: 管理个人基本信息:如浏览个人信息、修改密码、查询个人成绩等。 执行选课操作:学生可利用本系统选修相关课程,在选课过程中可查询供选 课程的基本信息和教师情况,课浏览截止当前选此课程的人数,也可利用本系统 浏览个人选课情况。 2.2.2 系统性能要求 系统性能要求是指信息传递顺利,协议分析正确,Web 界面友好,运行时能 满足使用需要,系统的安全性得到完全保证。在实际应用中若设备配置较高、网 络带宽充足的情况下。我们最需要考虑的就是系统的安全性,要求系统能严格区 分不同用户身份,并限制其只能访问与自己权限相符合的系统资源。 2.3 系统功能模块分析 教务管理系统的主要功能包括以下三个方面: 1)户管理,包括对超级管理员、管理员、学生 3 种不同身份的识别及管理。 2)基本数据管理,包括对学生、教师、课程、班级、选课、成绩等有关基 础数据的管理。 3)学生对个人数据的查询及管理,包括修改密码、浏览课程信息、执行选 课操作、查询所选课程、查询个人信息等。其功能结构设计如图 11-1 所示。 学生课程管理系统 管理员操作 用户管理 学生操作 学 教 课 班 选 成 修 课 选 已 成 生 室 程 级 课 绩 改 程 课 选 绩 管 管 管 管 管 管 密 信 操 课 查 理 理 理 理 理 理 码 息 作 程 询 2.3.1 管理员操作模块 该模块由 7 个子模块组成,主要负责超级管理员、管理员和学生的身份管理 以及系统基础数据的管理。 1.学生信息管理 包括对学生信息的浏览、添加、修改和删除。 2.教师信息的管理 包括对教师信息的浏览、添加、修改和删除。 3.基本课程管理 包括对学校基本课程的浏览、添加、修改和删除。可以对所设课程进行教师、 学时、学分的设置。 4.班级信息的管理 包括对班级信息的浏览、添加、修改和删除。 5.选课管理 管理员可以根据课程名称、教师姓名和授课年度等数据选修某课程的学生信 息。可根据实际需要从选课名单中删除某个学生。 6.生成绩管理 包括对学生成绩的浏览和录入,管理员可按课程编号查看,录入或修改选该 课程学生的成绩。 7.用户管理 普通管理员用户可以修改自己的密码,超级管理员可执行添加新管理员并管 理所有管理员用户的操作,如修改密码、删除用户、添加管理员等。 2.3.2 学生操作模块 学生只能进入此模块,而无法访问管理员模块中的任何内容。该模块共有 5 个方面的功能:浏览个人信息、修改密码、查询所选课程、选课操作和成绩管理。 1.浏览个人信息 学生登录系统后,课浏览自己的个人基本信息,但没有修改或删除的权限。 2.修改密码 学生可以修改自己的密码。学生初始密码是在管理像数据库中添加该学生信 息时由系统自动创建的,初始用户名和密码均为学生的学号。 3.查询所选课程 在该模块中学生可以查看自己通过选课操作选择课程的信息,包括课程名 称、任课教师、学时数及所占学分的情况 4.选课操作 学生可根据所有供选课列表中显示的数据,选择自己本年度要修的课程。选 择完成后在查询所选课程模块中能立即显示出来。 5.成绩查询 管理员在录入了学生成绩后学生方能在成绩查询模块中看到自己的成绩清 单。学生对该模块中的数据只有读取的权限。 3.数据库设计 本系统需要使用 Microsoft SQL Server2000 数据库系统来数据存储程序运行 时的各种数据。在开始 ASP.NET 网站设计之前应创建数据库及包含的数据表。 创建数据表 系统中所有数据存放在 Microsoft SQL Server 数据库 Course_Manage 中,其 中包括 7 张数据表:用户信息表(users)、学生信息表(tabstu)、教师信息表(tabtea)、 班级信息表(tabclas)、课程信息表(tabcour)、学生-课程信息表(tabstu_cour)、教师 -课程信息表(tabtea_cour)。各表结构及字段描述见表 3-7~表 3-7。 表 3-1 用户信息表(users) 字段名 数据类型 宽度 字段描述 User_id varchar 50 用户名 User_Password varchar 50 用户密码 User_lever int 4 用户级别,0 表示学生,1 表示管理员 字段名 Sid Sname Ssex Snati Sbir Sclaid Stime Saddr Selse 表 3-2 学生信息表(tabstu) 数据类型 宽度 varchar 50 char 10 char 10 varchar 50 varchar 50 varchar 50 varchar 50 varchar 50 varchar 50 字段描述 学号,主键 姓名 性别 民族 出生日期 所在班级编号 入学时间 家庭住址 备注 表 3-3 教师信息表(tabtea) 字段名 Tid Tname Tcol 数据类型 varchar varchar varchar 宽度 50 50 50 字段描述 教师编号 教师姓名 所在学院 字段名 Cid Cname Cdep Ccollege 表 3-4 班级信息表(tabclas) 数据类型 宽度 varchar 50 varchar 50 varchar 50 varchar 50 字段描述 班级编号,主键 班级名称 班级所在系 班级所在学院 字段名 Crid Crname Crper Crcre Crkind Crelse 表 3-5 课程信息表(tabcour) 数据类型 宽度 varchar 50 varchar 50 int 4 int 4 varchar 50 varchar 50 字段描述 课程编号,主键 课程名称 课程学时 课程学分 课程类型 备注 字段名 SCid Sid Crid Score Cryear 表 3-6 学生-课程信息表(tabstu_cour) 数据类型 宽度 int 4 varchar 50 varchar 50 int 4 char 10 字段描述 学生-课程编号,主键 班级名称 班级所在系 学生成绩 学期 字段名 表 3-7 教师-课程信息表(tabtea_cour) 数据类型 宽度 TCid int 4 Tid varchar 50 Crid varchar 50 Cryear char 10 4.程序功能的实现 字段描述 教师-课程编号,主键 教师编号 教师所任课程编号 学期 在本次课程设计中将详细介绍系统中各功能模块操作方法及设计过程。 4.1.登录系统 在 default.aspx 页面中可实现用户身份验证、管理员个人密码维护等功能。 1. 用户身份验证(default.aspx) 用户通过浏览器访问系统时,打开的第一个页面就是图 4-1 所示系统登陆页 面。在输入了用户名和密码后单击【登录】按钮,程序能根据输入的用户名和密 码自动判断其身份,并将用户导航到管理员页面 admin_stu.aspx,或学生个人信 息浏览页面 stu_info.aspx。若输入的用户名或密码出错,系统讲弹出信息框加以 提示,如图 4-2 所示。 图 4-1 登录页面 图 4-2 出错提示 2. 修改管理员密码(admin_repwd.aspx) 在登录页面 default.aspx 中,若输入管理员用户名和正确的密码后,单击【修 改管理员密码】按钮键进入管理员密码维护页面 admin_repwd.aspx。 管理员用户从 default.aspx 页面跳转到本页面时系统通过创建 Session 对象讲 用户名传递过来,显示在本页面的用户名栏。在输入了新密码并进行确认后,单 击【确定】可将新密码提交到 SQL Server 数据库。如果用户两次输入的密码不 相同,则弹出信息框显示出错提示。如果用户未经过登录而直接使用页面的 URL 调用该页面时系统将自动返回到登录页面。单击【返回】将返回到登录页面。 4.2 学生管理 如图 4-3 所示学生管理页面是用户以管理员身份登录系统后看到的第一个页 面,该页面中可实现的功能有: 1)通过功能导航栏跳转到其他管理页面(如教师管理、课程管理等)。 2)通过学生学号或姓名查询学生信息,通过 DataGrid 控件的分页功能实现学生 记录分页显示。 3)单击学生记录前面的【编辑】或【删除】链接按钮,实现对学生记录的修改、 删除功能。 4)查询单条记录后,可单击【显示全部】链接按钮回返到初始显示状态。 5)单击【添加新生】链接按钮可在打开的页面中添加学生记录。 6)单击【退出】链接按钮可返回到登录页面。 图 4-3 学生管理页面 admin_stu.aspx 1. 管理现有记录(admin_stu.aspx) 现有记录管理功能可实现对数据库中现有数据进行浏览、查询、编辑或删除操 作。这些功能均在 admin_stu.aspx 页面中实现。 2. 添加新纪录(addstu.aspx) 用户单击 admin_stu.aspx 页面下方【添加新生】按钮时打开图 4-4 所示的添加 新生(addstu.aspx)页面。用户在输入了数据库 tabstu 表中需要的各字段值后点 击【确定】链接按钮,即可向数据库中添加一条新记录。 图 4-4 添加新生页面 addstu.aspx 用户在填写各字段值时应注意,除“备注”字段外其他字段必须填写,否则 系统将弹出出错信息框加以提示。另外“学号”字段唯一地标识一名学生,故该 字段值不允许出现重复。如果用户输入的学号值已存在,系统将通过自定义验证 控件显示的出错提示信息。 4.3 用户管理 管理员用户在学生管理页面中单击【用户管理】链接按钮打开用户管理页面 admin_user.aspx。该模块只有用户名为 admin 的管理员访问,其他管理员无权访 问。在该页面中可以修改管理员密码、删除管理员账户或添加新的管理员。 4.4 教师管理 在任何一个系统管理子页面的导航栏中单击【教师管理】链接按钮,均可跳 转到图 4-5 所示的 admin_teacher.aspx 页面管理。 图 4-5 教师管理页面 1. 管理现有教师信息(admin_teacher.aspx) 在教师管理页面中可以浏览、查询(按编号和姓名)、修改、删除制定教师 的信息,单击【添加教师记录】链接按钮,可以在新的打开 addtearcher.aspx 页 面中向数据库中添加新教师记录。 2. 添加新教师记录(addteacher.aspx) 用户单击 admin_teacher.aspx 页面下方【添加教师记录】按钮时将打开图 4-6 所示的添加教师(addteacher.aspx)页面。用户在输入了数据库 tabtea 表中需要 的各字段值后单击【确定】链接按钮,即可向数据库中添加 1 条新记录。 若用户没有输入全部需要的数据或输入的教师编号已被他人占用,系统将显 示相应的出错提示。图 4-7 所示的是编号重复时,通过自定义验证控件显示的出 错提示信息。 图 4-6 添加教师记录 4.5 课程管理 图 4-7 出错提示 从任意一个系统管理子页面的导航栏中单击【课程管理】链接按钮,可打开 图 4-8 所示的 admin_course.aspx 页面。 用户可在课程查询栏中输入课程名称或课程编号查询某具体的设置课程情 况。在 DataGrid 控件中单击【编辑】链接按钮实现对课程名称、学时、学分及 课程类型进行修改,单击【删除】链接按钮可删除指定课程。 图 4-8 课程管理页面 在 DataGrid 控件中单击“授课修改”栏中显示的课程编号链接按钮可打开 course_edit.aspx 页面,在其中可修改任课教师和授课年度。单击“课程编号”栏 中显示的课程编号链接按钮可打开 course_info.aspx 页面查看指定课程的有关信 息。 单击页面下方【添加新课程】按钮可在打开的 addcourse.aspx 页面中向数据 库中添加新的课程记录,单击【课程分配】链接按钮可在打开的 assigncourse.aspx 页面中为课程指定任课教师、指定所需学时、分配学分、课程类型等。 1. 课程管理(admin_course.aspx) 该页面是系统实现有关课程管理各功能的主页面,有查询栏、导航栏和用于 显示和操作数据的 DataGrid 控件组成。该页面还提供了授课修改、查看课程信 息、添加新课程、课程分配几个子功能模块的入口链接。 2. 添加新课程(addcourse.aspx) 在“新课程管理”页面 admin_course.aspx 中单击【添加新课程】链接按钮 将打开图 4-9 所示的 addcourse.aspx 页面。用户在填写了必须的数据后单击【确 定】链接按钮,即可将新课程记录添加到 SQL Server 数据库的 tabcour 表中。 图 4-9 添加新课程页面 注意,填写新课程数据时只有“课程说明”栏可以留空,其他字段为必填; 课程编号作为课程信息的唯一标识不能出现重复,否则系统将给出“添加失败” 的错误提示。 3. 课程分配(assigncourse.aspx) 单击课程管理页面下方【课程分配】链接按钮将打开查看已分配课程信息和 新课程分配页面 assigncourse.aspx。 在该页面中用户可以查看分页显示在 DataGrid 控件中的已分配课程信息, 也可以在新课程分配栏中为建设包含有教师姓名、课程名称及授课年度等信息的 课程分配记录。 4. 授课修改(course_edit.aspx) 在课程管理页面中单击“授课修改”列中的某课程编号将打开修改课程分配 页面 course_edit.aspx。 在此页面中用户可修改指定课程的任课教师及授课年度,或删除当前课程的分配 设置。课程编号文本框设置为只读,禁止用户修改该字段的值。 5. 查看课程信息(course_info.aspx) 在课程管理页面 admin_course.aspx 中单击“课程编号”列中的某编号将打 开查看课程信息页面 course_info.aspx。页面中所有的数据使用文本框显示不能进 行任何修改。 如某课程尚未执行“课程分配”操作,查看其信息时将弹出图 11-24 所示的 信息框,提示用户应首先执行“课程分配”操作。 4.6 班级管理 在任何一个系统管理子页面的导航栏中单击【班级管理】链接按钮,均可跳 转到图 4-10 所示的 admin_class.aspx 页面。 图 4-10 班级管理页面 在该页面中管理员可以浏览、查询、修改或删除现有学生班级记录,也可在 “添加新班级”栏中输入必要的数据在 SQL Server 数据库的 tabclas 表中创建新 的班级记录。 用户在添加新班级时应注意,班级编号作为班级的唯一标识不能出现重复 值,否则系统将给出“添加记录失败”的提示信息。 4.7 选课管理 在任何一个系统管理子页面的导航栏中单击【选课管理】链接按钮,均可跳 转到 admin_choose.aspx 页面。 在该页面中管理员可以根据课程名称、教师姓名和授课年度等数据查询选修 某课程的学生信息。可使用 DataGrid 控件内置的【删除】链接按钮,从选课学 生名单中删除某个选此课程的学生。 4.8 成绩管理 在任何一个系统管理子页面的导航中单击【成绩管理】链接按钮,均可跳转 到图 4-11 所在的 admin-grade.aspx 页面。 图 4-11 成绩管理页面 在此页面中管理员可以根据课程编号和授课年度信息查询选修本课程的学 生名单,同时在标签控件中显示课程名称和任课教师信息。如果选择的是课程编 号和输入的年度数据组合,在 tabstu-cour 表中没有匹配的记录系统将在标签控件 给出错误提示。 在 DataGrid 控件中单击【录入/修改】链接按钮课实现学生成绩的录入或修 改操作,单击 DataGrid 控件中的【删除】按钮删除指定学生记录。 4.9 查看学生个人信息 从本节开始以后介绍的所有系统模块均属生生操作模块,学生用户在登录系 统后看到的第一个页面就是图 4-12 所示的个人信息浏览页面 stu-info.aspx.。登录 用户和密码默认为学生的学号,在添加新生时由管理模块自动创建。 图 4-12 查看个人信息 在改页面中左侧安排有所有学生操作模块的导航栏,数据显示区显示有当前 登录学生的个人信息。注意,这些信息学生个人是无法修改进行的。 在该页面中学生可以浏览自己所选课程的考试成绩。对于管理员尚未通过 “成绩管理”模块录入成绩的学生已选课程,系统将在对应的成绩栏中留空。 4.10 修改学生密码 从任意一个学生操作子页面的导航栏中单击【修改密码】链接按钮,可打开 图 11-29 所示的 repassword.aspx 页面。 用户在输入了旧密码、新密码和确认密码后单击【确定】链接按钮即可更新 数据库中保存该用户密码信息。 4.11 查看学生已选课程 从任意一个学生操作子页面的导航栏中单击【已选课程】链接按钮,可打开 stu_course.aspx 页面。 在用户输入了课程编号或课程名称后,在数据表控件中将显示该课程的学 时、学分、课程类型等信息。单击数据表中课程编号列中超链接,将打开 stu_course_info.aspx 页面,其中显示有该课程任课教师的信息,单击页面中【返 回】链接按钮,跳转到 stu_course.aspx 页面。 4.12 查看课程信息 在 stu_course.aspx 页面中单击 DataGrid 控件课程编号列中的课程编号值,将 跳转到 stu_course_info.aspx 页面,跳转时可通过“?”将课程编号值传递到目标 页面。在 stu_course_info.aspx 页面中用户能以只读的方式查看该课程任课教师的 有关信息。 4.13 学生选课 从任意一个学生操作子页面的导航栏中单击【选课操作】链接按钮,可打开 choosecourse.aspx 页面。 用户可根据 DataGrid 控件中显示的供选课程信息,在选择课程栏中输入课程 编号和授课年度后单击【确定】按钮完成选课操作。 成绩查询 从任意一个学生操作子页面的导航栏中单击【成绩查询】连接按钮,可打开 stu-grade.aspx 页面。 总结 通过我们小组的努力,我们的课程设计如期的完成了。每位成员都认真负责 的完成各自的任务,一起解决程序中所出现的问题,对我们来说,不仅拓宽了知 识面,锻炼了能力,而且也体会到了团队带来的无穷力量以及获得成功时的喜悦。 课程设计是培养我们运用所学知识,发现和解决实际问题,提高实践能力的重要 环节,是对我们通过一学期学习后的具体训练和考察过程。通过理论与实际的结 合、人与人的沟通,进一步提高思想,尤其是观察、分析和解决问题的实际学习 能力。 课程设计达到了我们的预期目的。在课程设计之后,我们普遍感到不仅实际 动手能力有所提高,更重要的是对程序设计的了解,进一步激发了我们对知识的 兴趣,并能够结合实际存在的问题在专业领域内进行更深入的学习。在课程设计 过程中,大家都很努力,出现问题就及时解决,例如,上网查找资料,借阅图书, 咨询老师,我们遇到的困难都逐一破解,当看到一堆堆的错误提示,我们有点失 望,但是我们也有信心去面对,最终,我们获得了老师和同学们的肯定,我们也 有很大的收获,我发现大家对 ASP.NET 有很大的兴趣,在进行课程设计的每一 天,我们都很努力,在不停的调试之后,我们的教务管理系统运行成功了,实现 了很多的功能,看到我们的作品,我相信,有付出就会有收获。 参考文献 [1].常永英. ASP.NET 程序设计教程(c#版)上机指导与习题解答. 机械工业出版 社,2010.1 [2].杨天奇,王文.ASP.NET 网络编程技术.机械工业出版社,2007 [3].张树亮,李超.ASP.NET 2.0+SQL Server 网络应用系统开发案例精解.北京: 清华大学出版社,2006 年。 [4].格罗夫.SQL 完全手册(第二版).北京:电子工业出版社,2006 年。 [5].王珊,萨师煊.数据库系统概论(第四版). 北京:高等教育出版社,2006 [6].常永英.ASP.NET 课程设.第一版.北京:计机械工业出版社,2008 [7].崔淼,关六三彭伟.ASP.NET 课程设计教程.第二版.北京:计机械工业出版社, 2010 [8].张跃廷,苏宇.ASP.NET 网络编程.第一版.北京:人民邮电大学出版设,2008 [9].刘瑞新.ASP.NET.程序设计教程[M].北京:计机械工业出版社,2007 [10].张跃廷,顾彦玲.ASP.NET 从入门到精通 [M].北京:清华大学出版社,2008 [11].孟宪会,张慧妍.ASP.NET2.0 应用开发技术.人民邮电出版社,2006 [12].程不功,龙跃进,卓琳.ASP.NET2.0 动态网站开发教程. 清华大学出版 社,2008 [13].柴晨,王霖,刘丽萍.ASP.NET 网络程序设计教程.清华大学出版社,2007 [14].邵鹏鸣.ASP.NET Web 应用程序设计及开发:C#版.清华大学出版社,2007 [15].刘斌,张军. ASP.NET+SQL Server 动态网站开发案例精选. 北京:清华大 学出版社,2005.10.