软件工程教务管理系统之子系统—学院课程安排

更新时间:2024-04-27 08:22:01 阅读量: 综合文库 文档下载

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

教务管理系统之子系统 —学院课程安排报告

学生班级: 计算机二表一班 学生年级: 2011级 指导教师: 刘晓敏

2014年6月11日

目录 序言

第一章 项目小组介绍

第二章 学院课程安排管理的介绍 第三章 可行性研究与分析报告 第四章 软件需求说明 第五章 软件设计方法 第六章 程序设计与分析 第七章 检验和测试方法 第八章 维护方法 第九章 总结 参考文献

序言

1969年美国IBM公司首次宣布除操作系统继续随计算机配送外,其余软件一律计价出售,从此开创了软件成为独立商品的先河。正是由于软件的发展,是计算机应用逐渐渗透到社会生活的各个角落,是各行各业都发生很大的变化。这个同事也促使人们对软件的品种、数量、功能和质量等提出了越来越高的要求。然而,软件的规模越大、越复杂,人们的软件开发能力越显得力不从心。于是人们开始重视软件开发过程、方法、工具和环境的研究,软件工程应运而生。

为了更好的理解《软件工程》相关的原理、方法及应用,加深和巩固学生对于软件设计和项目小组管理等的流程,我们小组选择了一个软件项目进行分析设计。

要开发软件,其过程为:计划时期,开发时期,运行时期。在计划时期要分析系统的主要目标和可行性运行,运行时期要做好软件的维护工作。此次项目的重点在开发时期,即要完成需求分析和软件设计。

此次项目为“教务管理系统之子系统—学院课程安排”,采用结构化设计方法开发软件,采用web技术和数据库技术设计出一套供教务人员及教师使用的教务管理系统。

第一章 项目小组介绍

1.1 小组成员

姜玉龙 11100140101 王德高 11100140102 张巍瀚 11100140103 李姝睿 11100140104

季思 11100140105 冮雪竹 11100140106

1.2 任务分配

张巍瀚 可行性研究与分析报告 姜玉龙 软件需求说明

王德高 学院课程安排管理的介绍 软件设计方法 季 思 程序设计与分析、整理文档 冮雪竹 检验和测试方法 李姝睿 维护方法

第二章 学院课程安排管理的介绍

姓名:王徳高 学号:11100140102

2.1 引言

2.1.1 学院课程安排管理系统项目简介

课程安排是教务管理中的一项重要而且繁重的主要日常管理工作,从一般意义上讲,其实就是对学院开设每门课程合理地分配时间资源和教师资源的过程,其中涉及到院、系、师、生的诸多方面,随着教学体制的不断改革,尤其是学分制的展开和深入,教务日常管理工作日趋繁重。每学期的期末,学校教务处分别向各院发出下学期的教学计划,包括:课程名、课程类别、课时、班级类别(本科、专科、高职)、班号等;院系教学主管人员根据教学任务和要求给出各门课程的相关限制(如:任课教师职称、合班数、最高周学时数等);任课教师自报本人授课计划,经所在教研室协调确认,将教学计划上交院系主管教学的主任,批准后上报学校教务处,最终由教务处给出下学期全院系教师的教学任务书。

2.1.2 编写说明

随着社会的发展,知识的指数级增长,各行各业都在寻求一种能够降低成本,提高办事效率,提高业务水平的途径,为了适应现代化学校管理的需要,加快推进我校数字化校园建设、充分利用校园网,利用网络、多媒体等计算机应用技术和手段,提高办公效率、改善质量等等各种社会需求,我们开发了学院课程安排管理系统。

这次开发的学院课程安排管理系统大大提高了学校管理工作的效率,该系统能够顺利的完成课程安排工作,并方便用户对课程信息、学生信息、教师信息以及班级信息进行查询管理。本系统对不同的用户所开放的功能是不同的。

基于目前计算机的普遍流行,如果使用学院课程安排管理系统进行排课,会大大的减少工作量。学院课程安排管理系统的开发就是在于提高教务管理的工作效率,加强教务的管理,以全面实行计算机管理,这样,不但可以提高管理人员的工作效率,而且能安全、长期地储存课程安排历史等,便于信息的查询与管理。

2.2 系统目标

系统开发的总目标是实现学院课程安排的系统化、规范化和自动化:

(1)各院(系)与课程有关的各种数据(如课程设置、教学培养计划、教学执行计划、教师讲课的限制条件等)的增加、查询、更新、删除以及各种表格的生成,完成对系内课程安排的管理;

(2)以及对教学人员(教师、班主任、教务人员) 的管理。

2.3. 系统结构

2.3.1 信息系统需求结构

(1)每位教师的主讲课程门数不超过2门/学期,讲师以下职称的教师不能承担学院定主课的主讲任务。

(2)学院中层干部的主讲课程不能超过4学时/周。

(3)本学期出现严重教学事故的教师不能承担下各学期的主讲任务。

(4)本系统的输入项至少包括:教务处布置的教学计划,学院教师自报的授课计划和学院定的有关授课限制条件。

(5)本系统的输出项至少包括:教务处最终下达全院教师的教学任务书和学院各个班级下个学期的课程表

2.3.2 需求结构的说明

为了便于一个学校的教务管理工作顺利有序的开展,就要求课程安排管理系统达到以下几点:课程的安排便于提高学生的学习效率,便于教师教学工作顺利进行,达到一定的教学效果,便于教室和机房、多媒体教室、英语语音教室的充分利用。排课系统就是在计算机的基础上实现授课安排表的自动编排、数据信息的处理、授课安排表的查询、修改、更新和

打印等多种功能,依据课程安排的一般规则,协调授课计划、教师和教室等多种教学资源。

2.3.3 概述

课程安排最终要实现的是计算机技术高效准确的对课程安排问题进行解决。系统的功能分析是在系统开发总体任务的基础上完成。本课程安排管理系统需要完成的功能有以下几点:

(1) 基础数据的处理,主要涉及教师信息的维护、教室信息的维护、课程信息的维护、

授课任务信息的维护等几个方面。

(2) 根据课程安排的结果,应可以对这个结果进行各种条件的查询,增加、删除、修改课

表并可以根据情况输出各形式的表格,以便教学管理人员进行处理。

第三章 可行性研究与分析报告

姓名:张巍瀚 学号:11100140103

3.1系统目的 3.1.1编写目的

教务管理是大学的主要日常管理工作之一,涉及到校、系、师、生的诸多方面。如何把教务工作信息化,模块化,便捷化是现代高校发展的重点,所以迫切需要研制开发一种综合教务管理软件。

3.1.2系统目标

本系统是教务处人员,各院教学主管,教师的工作界面。它完成: (1)教务处人员制定各学院的教学计划并录入,

(2)各院教学主管对相关课程加以限制,如:规定课时,任课教师的条件等 (3)教师制定自己的教学计划,经所在教研室协调认可,录入

(4) 教务处人员根据教师的授课计划和相关课程的限制条件制定出下学期各学院各班的课程表以及全院教师的教学任务书。

3.2信息描述

3.2.1信息内容

本系统是一个面向学校教务管理人员、教师,为其提供服务的综合管理系统。教务人员通过本系统完成所有的日常教务工作。教务人员根据条件制定下学期的课程表。教师通过系统可查学自己的授课内容。

3.3.功能描述 3.3.1系统功能划分

本系统适合学院课程安排管理模式。本系统集信息管理、教学计划管理、排课、教师信息管理等教务功能于一体,并可以输出各院课程表及教师任务书。

整个系统分为以下模块: 1.教务人员信息管理 2.学院教务主管管理 3.教师信息信息管理 4.教学计划录入系统 5.课程限制录入系统 6.排课系统 7.课程表定制系统 8.教师任务书下达系统

3.3.2性能需求

(1)网络环境下的多用户系统。

信息主要存储在服务器端的数据库中,由各用户在规定的权限下在各自的客户端上录入,修改,删除相关的内容,各用户还可进行查询,调用,达到信息共享。 (2)数据的完整性,准确性。

录入数据采用表格方式,限制录入数据类型及取值范围以保证数据的完整性及准确性。系

统应具有部分反悔修改功能,系统备有的修改功能均可反悔 (3)数据安全性。本系统采用二级安全保障: 第一级:依赖于网络本身对用户使用权限的规定。

第二级:在程序模块中通过使用密码控制功能对用户使用权限加以限制。

3.3.3系统流程图

3.3.4 顶层数据流图

3.3.5用户平台要求

开发出的软件要适用于各种WINDOWS平台和SQL SERVER数据库下,支持局域网和INTERNET下的资源共享以及EXCEL的表格输出等,最低配置要求PIII 800,128M内存以及8M显存显卡。

开发环境:Windows8/Windows Visual Web 2010 开发工具:C# 数据库管理系统:SQL

3.4.行为描述

在整个系统中通过教学计划有效管理,方便准确下达教学任务,进行排课前数据准备、排课条件设定、自动排课和课表的日常管理;教师可以实时登入查询授课情况,学生也可随时登陆查询下学期课标;排课系统是各系部教务员根据下达的教学任务安排本系部课程的开课教师、教室名单等工作;各系统功能分开、但又相互关联,而数据完全共享,具体管理工作人员根据自己的职责范围,运用相应的系统完成各自的日常教务工作。

第四章 软件需求说明

姓名:姜玉龙 学号:11100140101

4.1数据流图

数据流图能客观描述系统流程,通过各个图的信息传达,可以看出每个模块和子模块的关系。

总分析图

二层 教务处人员子系统图

二层 教学主管人员子系统图

二层 教师子系统图

三层 教务处人员之信息查询子系统

三层 教务处人员之教学计划录入系统图

三层 教学主管人员之限制条件录入子系统图

三层 教师之授课计划录入子系统图

三层 教务处人员之课程表制定系统图

三层 教务处人员之教师任务书下达子系统图

四层 教务处人员之信息查询子系统图

4.2数据字典

表1数据文件”教务处人员信息表”的字典条目 文件名: 教务处人员信息表 别名: 组成:教务处人员登陆号 备注:

表2数据文件“教学主管信息表”的字典条目 文件名:教学主管信息表 别名: 组成:教学主管登录号 备注:

表3数据文件“教师信息表”的字典条目 文件名:教师信息表 别名: 组成:教师号+教师名+性别+所属学院代号+职称+所教课程 备注:

表4数据文件”教学计划表”的字典条目 文件名: 教学计划表 别名: 组成: 系编号+年级+课程名+学时 备注:

表5数据文件”课程限制表”的字典条目 文件名: 课程限制表 别名: 组成: 系编号+年级+教师编号+教师职称+学时+事故类别+主讲课程类别 备注: 事故、主讲课没有时,为0

表6数据文件”课程信息表”的字典条目

文件名:课程信息表 别名: 组成:课程号+课程名+学时+任课老师 备注:这是学院所有课程的总和表

表7数据文件”教室信息表”的字典条目

文件名: 教室信息表 别名:

组成:教室号+教室类别 备注:根据教室的大小进行排课

表8数据文件”学院信息表”的字典条目 文件名:学院信息表 别名: 组成:学院号+系名 备注:根据系的不同有不同的课程

表9数据文件”班级信息表”的字典条目 文件名:班级信息表 别名: 组成:班级号+班级类别 备注:

表10数据文件”课程分配表”的字典条目 文件名:课程分配表 别名: 组成:编号+课程号+课程名+班级号+班级名 备注: 由班级为单位选择课程 4.3小说明

加工名;录入教学计划 编号:4.2 激发条件:接收到教务主管人员发出的“信息数据”命令 加工逻辑:1.对整体教学安排中每一个成员做; 教学安排计划表.课程表;=教学安排计划表.课程表 教学安排计划表.限制条件表;=教学安排计划表.限制条件表 教学安排计划表.教师授课计划表;=教学安排计划表.教师授课计划表 教学安排计划表.教师信息表;=教学安排计划表.教师信息表

2.对整体教学安排中每个学生做: 教学安排计划表.限制选课表;=教学安排计划表.限制选课表 3.对整体教学安排中每个教师做: 教学安排计划表.教学任务表;=教学安排计划表.教学任务表 加工名:录入教学管理系统 编号:4.2 激发条件:教务管理系统接收到录入命令 加工逻辑: 1.教师发出命令 教学计划表;=教学计划表 学生成绩.学号:=学生成绩.单项成绩 2.学生发出命令 授课科目.名称;=选择课程.名称 执行频率:1天/次 加工名;信息查询 编号:4.2 激发条件:教务处管理系统接受登陆查询命令 加工逻辑:用学号查询; 学生信息表:=学生信息表 按班号查询; 班级课程表:=班级课程表 按教师号查询: 教师.教学任务表=教师.教学任务表 按课程查询: 教学课程表;=教学课程表 执行频率:20000次/天

第五章 软件设计方法

姓名:王德高 学号:11100140102

5.1系统功能结构图

学院课程安排管理系统总功能模块图

第六章 程序设计与分析

姓名:季思 学号:11100140105

6.1数据库设计

本系统需要使用Microsoft SQL Server2003数据库系统来数据存储程序运行时的各种数据。在开始ASP.NET网站设计之前应创建数据库及包含的数据表。 创建数据表

系统中所有数据存放在Microsoft SQL Server数据库Course_Manage中,其中包括7张数据表:用户信息表(users)、学生信息表(tabstu)、教师信息表(tabtea)、班级信息表(tabclas)、课程信息表(tabcour)、学生-课程信息表(tabstu_cour)、教师-课程信息表(tabtea_cour)。

用户信息表(users)

字段名 User_id User_Password User_lever

学生信息表(tabstu)

字段名 Sid Sname 数据类型 varchar char 宽度 50 10 字段描述 学号,主键 姓名 数据类型 varchar varchar int 宽度 50 50 4 字段描述 用户名 用户密码 用户级别,0表示学生,1表示管理员

Ssex Snati Sbir Sclaid Stime Saddr Selse

char varchar varchar varchar varchar varchar varchar 10 50 50 50 50 50 50 性别 民族 出生日期 所在班级编号 入学时间 家庭住址 备注 教师信息表(tabtea)

字段名 Tid Tname Tcol

班级信息表(tabclas)

字段名 Cid Cname Cdep Ccollege

课程信息表(tabcour)

字段名 Crid Crname Crper Crcre Crkind Crelse

学生-课程信息表(tabstu_cour)

字段名 SCid Sid Crid Score Cryear

数据类型 int varchar varchar int char 宽度 4 50 50 4 10 字段描述 学生-课程编号,主键 班级名称 班级所在系 学生成绩 学期 数据类型 varchar varchar int int varchar varchar 宽度 50 50 4 4 50 50 字段描述 课程编号,主键 课程名称 课程学时 课程学分 课程类型 备注 数据类型 varchar varchar varchar varchar 宽度 50 50 50 50 字段描述 班级编号,主键 班级名称 班级所在系 班级所在学院 数据类型 varchar varchar varchar 宽度 50 50 50 字段描述 教师编号 教师姓名 所在学院

教师-课程信息表(tabtea_cour)

字段名 TCid Tid Crid Cryear 数据类型 int varchar varchar char 宽度 4 50 50 10 字段描述 教师-课程编号,主键 教师编号 教师所任课程编号 学期 6.2程序功能的实现

在本次课程设计中将详细介绍系统中各功能模块操作方法及设计过程。

6.2.1登录系统

在default.aspx页面中可实现用户身份验证、管理员个人密码维护等功能。

1. 用户身份验证(default.aspx)

用户通过浏览器访问系统时,打开的第一个页面就是图4-1所示系统登陆页面。在输入了用户名和密码后单击【登录】按钮,程序能根据输入的用户名和密码自动判断其身份,并将用户导航到管理员页面admin_stu.aspx,或学生个人信息浏览页面stu_info.aspx。若输入的用户名或密码出错,系统讲弹出信息框加以提示,如图6-2所示。

图6-1 登录页面

图6-2 出错提示

<%@ Import Namespace=\

<%@ Import Namespace=\

style=\ixed;background-position:center center;\

2. 修改管理员密码(admin_repwd.aspx)

在登录页面default.aspx中,若输入管理员用户名和正确的密码后,单击【修改管理员密码】按钮键进入管理员密码维护页面admin_repwd.aspx。

管理员用户从default.aspx页面跳转到本页面时系统通过创建Session对象将用户名传递过来,显示在本页面的用户名栏。在输入了新密码并进行确认后,单击【确定】可将新密码提交到SQL Server数据库。如果用户两次输入的密码不相同,则弹出信息框显示出错提示。如果用户未经过登录而直接使用页面的URL调用该页面时系统将自动返回到登录页面。单击【返回】将返回到登录页面。

SqlConnection con=new SqlConnection(....); SqlCommand cmd=new SqlCommand(); cmd.Connection=con;

cmd.CommandText=\UserName='\string uname=\string pass=\try {

con.Open();

SqlDataReader reader=cmd.ExecuteReader(); if(reader.Read()) {

uname=reader[0].ToString(); pass=reader[1].ToString(); }

reader.Close(); con.Close(); }

catch{}

if(uname==\{

MessageBox.Show(\对不起,您输入的用户不存在!\ return;

}

if(pass.Trim()!=this.txtPass.Text) {

MessageBox.Show(\对不起,用户\的密码不正确!\ return; }

if(this.txtPass.Text!=this.txtRePass.Text) //通过返回信息显示两次密码不一致 {

MessageBox.Show(\对不起,您输入的两次密码不一致\ return; }

string sql=\try {

con.Open();

cmd.ExecuteNonQuery(); con.Close(); }

catch(SqlException er) {

if(con.State==ConnectionState.Open) con.Close();

MessageBox.Show(\无法修改密码!\\n\ return; }

MessageBox.Show(\已成功修改密码!\

6.2.2 学生管理

如图6-3所示学生管理页面是用户以管理员身份登录系统后看到的第一个页面,该页面中可实现的功能有:

1)通过功能导航栏跳转到其他管理页面(如教师管理、课程管理等)。

2)通过学生学号或姓名查询学生信息,通过DataGrid控件的分页功能实现学生记录分页显示。

3)单击学生记录前面的【编辑】或【删除】链接按钮,实现对学生记录的修改、删除功能。 4)查询单条记录后,可单击【显示全部】链接按钮回返到初始显示状态。 5)单击【添加新生】链接按钮可在打开的页面中添加学生记录。 6)单击【退出】链接按钮可返回到登录页面。

图6-3 学生管理页面admin_stu.aspx

1. 管理现有记录(admin_stu.aspx)

现有记录管理功能可实现对数据库中现有数据进行浏览、查询、编辑或删除操作。这些功能均在admin_stu.aspx页面中实现。

2. 添加新纪录(addstu.aspx)

用户单击admin_stu.aspx页面下方【添加新生】按钮时打开图6-4所示的添加新生

(addstu.aspx)页面。用户在输入了数据库tabstu表中需要的各字段值后点击【确定】链接按钮,即可向数据库中添加一条新记录。

图6-4 添加新生页面addstu.aspx

用户在填写各字段值时应注意,除“备注”字段外其他字段必须填写,否则系统将弹

出出错信息框加以提示。另外“学号”字段唯一地标识一名学生,故该字段值不允许出现重复。如果用户输入的学号值已存在,系统将通过自定义验证控件显示的出错提示信息。

6.2.3 用户管理

管理员用户在学生管理页面中单击【用户管理】链接按钮打开用户管理页面

admin_user.aspx。该模块只有用户名为admin的管理员访问,其他管理员无权访问。在该页面中可以修改管理员密码、删除管理员账户或添加新的管理员。

6.2.4 教师管理

在任何一个系统管理子页面的导航栏中单击【教师管理】链接按钮,均可跳转到图6-5所示的admin_teacher.aspx页面管理。

图6-5 教师管理页面

1. 管理现有教师信息(admin_teacher.aspx)

在教师管理页面中可以浏览、查询(按编号和姓名)、修改、删除制定教师的信息,单击【添加教师记录】链接按钮,可以在新的打开addtearcher.aspx页面中向数据库中添加新教师记录。

2. 添加新教师记录(addteacher.aspx)

用户单击admin_teacher.aspx页面下方【添加教师记录】按钮时将打开图6-6所示的添加教师(addteacher.aspx)页面。用户在输入了数据库tabtea表中需要的各字段值后单击【确定】链接按钮,即可向数据库中添加1条新记录。

若用户没有输入全部需要的数据或输入的教师编号已被他人占用,系统将显示相应的出

错提示。图6-7所示的是编号重复时,通过自定义验证控件显示的出错提示信息。

图6-6 添加教师记录

图6-7 出错提示

6.2.5课程管理

从任意一个系统管理子页面的导航栏中单击【课程管理】链接按钮,可打开图6-8所示的admin_course.aspx页面。

用户可在课程查询栏中输入课程名称或课程编号查询某具体的设置课程情况。在DataGrid控件中单击【编辑】链接按钮实现对课程名称、学时、学分及课程类型进行修改,单击【删除】链接按钮可删除指定课程。

图6-8课程管理页面

在DataGrid控件中单击“授课修改”栏中显示的课程编号链接按钮可打开course_edit.aspx页面,在其中可修改任课教师和授课年度。单击“课程编号”栏中显示的课程编号链接按钮可打开course_info.aspx页面查看指定课程的有关信息。

单击页面下方【添加新课程】按钮可在打开的addcourse.aspx页面中向数据库中添加新的课程记录,单击【课程分配】链接按钮可在打开的assigncourse.aspx页面中为课程指定任课教师、指定所需学时、分配学分、课程类型等。

// 此界面可以对课程进行”编辑“、“更新”、”修改“以及“删除”等操作;

1 2 3 4 5 6

1 2 3 4 5 6 7 8

//“总学时”“周学时”等信息

' Height=\TextMode=\

//“更新”和“取消”操作

//“删除”等操作

1. 课程管理(admin_course.aspx)

该页面是系统实现有关课程管理各功能的主页面,有查询栏、导航栏和用于显示和操作数据的DataGrid控件组成。该页面还提供了授课修改、查看课程信息、添加新课程、课程分配几个子功能模块的入口链接。

2. 添加新课程(addcourse.aspx)

在“新课程管理”页面admin_course.aspx中单击【添加新课程】链接按钮将打开图6-9所示的addcourse.aspx页面。用户在填写了必须的数据后单击【确定】链接按钮,即可将新课程记录添加到SQL Server数据库的tabcour表中。

图6-9添加新课程页面

注意,填写新课程数据时只有“课程说明”栏可以留空,其他字段为必填;课程编号作为课程信息的唯一标识不能出现重复,否则系统将给出“添加失败”的错误提示。

核心代码:

1 2 3 4 5 6

ID=\周学时:\Font-Size=\

1

2 3 4 5 6

CssClass=\Width=\

3. 课程分配(assigncourse.aspx)

单击课程管理页面下方【课程分配】链接按钮将打开查看已分配课程信息和新课程分配页面assigncourse.aspx。

在该页面中用户可以查看分页显示在DataGrid控件中的已分配课程信息,也可以在新课程分配栏中为建设包含有教师姓名、课程名称及授课年度等信息的课程分配记录。

4. 授课修改(course_edit.aspx)

在课程管理页面中单击“授课修改”列中的某课程编号将打开修改课程分配页面course_edit.aspx。

在此页面中用户可修改指定课程的任课教师及授课年度,或删除当前课程的分配设置。课程编号文本框设置为只读,禁止用户修改该字段的值。

5. 查看课程信息(course_info.aspx)

在课程管理页面admin_course.aspx中单击“课程编号”列中的某编号将打开查看课程信息页面course_info.aspx。页面中所有的数据使用文本框显示不能进行任何修改。

如某课程尚未执行“课程分配”操作,查看其信息时将弹出图所示的信息框,提示用户应首先执行“课程分配”操作。 核心代码:

课程管理

// 总体布局,即页面显示

colspan=\

style=\

9px;

width:

789px;

background-image:

url(Image/top_files/Topback.GIF);\

ID=\

runat=\

Width=\

Font-Size=\ //显示“课程名称“控件

  

ID=\

runat=\

Width=\

Font-Size=\

ID=\

runat=\

Font-Size=\

SiteMapProvider=\

http-equiv=\

content=\

charset=gb2312\

/>