教务管理系统分析与设计.docx

上传人:b****8 文档编号:30333506 上传时间:2023-08-13 格式:DOCX 页数:28 大小:253.97KB
下载 相关 举报
教务管理系统分析与设计.docx_第1页
第1页 / 共28页
教务管理系统分析与设计.docx_第2页
第2页 / 共28页
教务管理系统分析与设计.docx_第3页
第3页 / 共28页
教务管理系统分析与设计.docx_第4页
第4页 / 共28页
教务管理系统分析与设计.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

教务管理系统分析与设计.docx

《教务管理系统分析与设计.docx》由会员分享,可在线阅读,更多相关《教务管理系统分析与设计.docx(28页珍藏版)》请在冰豆网上搜索。

教务管理系统分析与设计.docx

教务管理系统分析与设计

一、系统规划

1、定义目标

本项目的总体目标的是:

建立台州学院学院教务管理流程,吸收、借鉴先进的管理理念,再结合学院的具体情况,使教务管理体系更加科学化和规范化。

在此基础上,以校园网为平台,开发“台州学院教务管理系统”,完成教务综合管理的信息化、集成化和自动化建设。

按照项目的总体目标,确立了“教务管理系统”应达到如下目标:

(1)符合实际需求,建立完善的可行的教务管理系统;

(2)对系统所涉及的各类信息进行规范化建设;

(3)实现数据共享,彻底解决数据安全问题;

(4)自动处理各种统计数据,自动形成各种标准报表;

(5)运行稳定,具有较强的容错性能和异常处理功能;

(6)界面清新,风格一致,操作简单,灵活方便;

(7)具有可维护性和可扩充性;

(8)使其具有通用性。

2、定义业务过程

教务管理所涉及的环节多,信息量大,责任性强。

各项工作的具体任务如下:

(1)院、系、专业管理。

对学校院、系、专业进行规范化分类并编号,相关信息登记入册。

(2)教学培养计划管理。

为学校各个专业制定各学年、学期的教学培养计划,相关信息登记入册;

(3)教学实施计划管理。

以教学培养计划为依据,结合些小的教学资源和为每个专业制定当前学期可实施的教学计划,确定每门课程的学时、学分及任课老师和所使用的教材。

(4)选课管理。

根据教学实施计划,选择公选课、专业选修课等。

(5)排课管理。

根据教学实施计划、学生选课情况、教学资源信息等,为每一门课程排定上课教师,上课时间。

(6)课程调度。

根据教学资源信息、排课信息,调整课程表

(7)考务管理。

根据课程表、教学资源信息等安排考试地点,考试时间及监考老师。

(8)教师管理。

对教师的基本信息进行管理,计算教师的工作量,对教师的教学情况进行评估。

(9)招生管理。

提供新生的基本信息。

(10)学籍管理。

对学生的基本信息进行管理。

(11)成绩管理

对学生的成绩进行统计分析和查询。

(12)毕业管理

毕业审批,学位及证书授予和管理校友信息等。

3.定义信息系统总体结构

U/C矩阵的求解过程:

调换表中的行和列,使得“C”元素尽量地朝对角线靠近,然后再以“C”元素为保准,划分子系统。

划分时,沿对角线一个接一个的画,既不能重叠,又不能漏掉任何一个数据和过程。

方块的划分是任意的,但必须将所有的“C”元素都包含在小方块之内。

划分后的小方块即为新系统划分的基础。

每一个小方块即一个子系统。

具体内容将在系统设计里提及。

 

二、系统分析

1.系统调查与可行性研究

在系统的开发前期对系统进行可行性分析是十分必要的一个环节,这在于保证资源的合理使用,避免浪费是十分必要的,也是项目一旦开始以后能顺利进行的必要保证。

信息系统的建设是一项投资大,时间长的复杂工程,可行性研究更为必要,也更复杂,更困难。

“可行性”是指在当前情况下,企业研制这个信息系统是否有必要,是否具备必要的条件。

可行性的含义不仅包括可能性,还包括必要性,合理性。

2.可行性研究

可行性研究是系统分析阶段的第二项活动。

此活动的主要目标是:

进一步明确系统的目标、规模与功能,对系统开发背景、必要性和意义进行调查分析并根据需要和可能提出开发系统的初步方案与计划。

可行性研究是对系统进行全面、概要的分析。

  通过调查分析,系统的设计方案有以下三个可行性:

(1).管理可行性:

信息化的教务管理在如今的信息时代是大势所趋,而且随着现代管理理念、方法和途径的发展,教务信息化管理手段日渐成熟,也必定会突飞猛进,所以从长远利益出发,主管领导对该项目的开发与实施会大力支持。

(2).技术可行性:

本系统采用Windows2000作为操作平台。

数据库选用SQLserver2000,该数据库管理系统在Windows2000Professional上能运行,并提供数据库之间的数据复制功能,可代替现有系统单据数据的手工传递工作,降低出错率,提高数据的可用性。

本系统的应用软件开发平台也选用MicrosoftVisualStudio.NET2005。

  (3).经济可行性:

采用教务管理信息系统可取代原系统的单据手工传递工作,减少人工开支,节省资金,并且可大大提高信息量的取得,缩短信息处理周期,规划教学资源,提高学生信息,及时反馈教学信息的利用率,使教学质量更上一个台阶。

  (4).营运可行性:

本系统操作简单,易于理解,只需通过简单熟悉,上手较快,学校教务管理处的教职员以及相关教师均能进行操作,营运环境要求低。

  面对于系统设计还应该以“标准性、安全性、兼容性、高效性、保密性、可维护性”为标准,在着眼于当前实用的基础上,为将来系统的扩展,升级留有余地。

软件的开发应能在较长时间内满足学校的发展需要。

通过可行性分析研究,认为新系统的开发方案切实可行,可进行开发。

3.业务流程分析

教务管理信息系统需要满足来自三方面的需求,这三个方面分别是学生、教师和管理员,所以它的教务业务流程以这三方面为主,以下是对该业务流程进行一下大略介绍:

学生报到登记,注册学籍信息;教学研究办公室根据学校的教学特色、教学理念及社会需求,制定学生的培养计划,并将培养计划下发给教学运行办公室、有关教师以及学生自己;教学运行办公室根据指定的学生培养计划对学生在学校的学习进行课程、进度等多方面具体详细的安排,定制出相关课表以及教师的上课时间地点,分别下发给学生以及教师。

以下就是经过制定的业务流程表:

4.数据流程分析

通过调查研究我们可以绘制出教务管理系统的数据流程图。

数据流程图是一种可以全面地描述教务管理信息系统的逻辑模型。

数据的流动、加工处理和存储,并且可以把信息中的各种不同业务处理过程联系起来,形成一个整体,具有较高的抽象性和概括性。

它主要用专用符号表示出了外部实体、数据流、处理和数据存储之间的关系,是系统设计的关键前提。

教务管理系统的数据流程分析图:

正确

5.数据字典

数据流图只是描述了系统有哪几部分组成,各部分之间的联系等等,但还没有说明系统中各个成分的含义。

数据字典主要用来描述数据流图中的数据流、数据存储、处理过程和外部实体。

数据字典中有六类条目:

数据项、数据结构、数据流、数据存储、处理过程、外部实体。

以下只列举些许,并非系统全部。

(1)数据项

数据元素又称数据项,是最小的数据组成单位,也就是不可再分的数据单位。

每个数据元素需要以下属性:

名称、别名、类型、长度、编号等。

编号:

X01-01编号:

X01-02

名称:

学生学号名称:

学生密码

简述:

本校学生编码简述:

学生登陆密码

类型及长度:

字符型,50类型及长度:

字符型,50

编号:

X01-03编号:

X01-04

名称:

学生姓名名称:

入学时间

简述:

本校学生编码简述:

学生的入学时间

类型及长度:

字符型,50类型及长度:

日期型,8

(2)数据结构

数据结构描述的重点是数据之间的组合关系,即说明这个数据结构包括哪些成分。

一个数据结构可以包含若干个数据元素或数据结构。

编号:

DX01-01

名称:

学籍信息

简述:

学生入学登记的基本信息

组成:

学生学号﹢学生姓名+学生密码﹢入学日期﹢毕业日期﹢学生专业﹢学生性别﹢生日﹢家庭地址﹢民族﹢政治面貌﹢电话﹢备注

编号:

DX01-02

名称:

学生成绩信息

简述:

学生在该学期的课程成绩

组成:

学生学号+课程编号+课程成绩

(3)数据流

定义数据流,在数据字典中要描述以下属性:

数据流的来源、数据流的去处、数据流的组成、数据流的流通量等。

编号:

D01-01

名称:

学生注册信息

简述:

学生入学登记的基本信息

来源:

学生

去向:

学籍管理处

组成:

DX01-01

编号:

D01-02

名称:

学生选课信息

简述:

学期结束后,学生填写的下学期的选课单

来源:

学生

去向:

教学任务研究办公室

组成:

DX03-01

(4)处理逻辑

仅是对数据流程图中最底层的处理逻辑加以说明。

编号:

P1.1

名称:

注册学籍

简述:

即是对学生个人信息的登记

输入的数据流:

注册信息

处理:

根据学生的姓名所学专业判断学生所在学院及班级

输出的数据流:

学生信息

编号:

P1.2

名称:

学生选课

简述:

每学期初之前除必修课外学生的选择的任选院校课程

输入的数据流:

选课单

处理:

选课后形成学生课表

输出的数据流:

课表信息

(5)数据存储

数据存储的条目,主要描述该数据存储的结构,及有关的数据流和查询要求。

编号:

F01-01

名称:

学生信息存储

简述:

存放学生的学籍信息

组成:

D01-01

关键字:

学生学号

相关处理:

P1.1

编号:

F01-02

名称:

学生成绩存储

简述:

学生历次的考试成绩记录

组成:

学生姓名+学号+课程+成绩

关键字:

学生学号

相关处理:

P2.1

(6)外部实体

编号:

X01-01

名称:

学生

简述:

系统用户之一也是管理对象

输入数据流:

成绩表

输出数据流:

选课单、报名表、注册信息

编号:

J01-01

名称:

教师

简述:

系统用户也是管理对象

输入数据流:

教师

输出数据流:

成绩表、所授课程信息

 

三、系统设计

功能结构设计

本系统的设计目标是开发一个基于桌面的教务管理系统,供系统管理员、教师和学生使用。

管理员可以管理教师和学生的信息;教师可以开设课程、管理学生的选课信息以及对学生课程进行评分等;学生则可以选修课程、报考四六级和计算机等级考试等。

本系统采用三层结构开发,位于表现层的是三个WindowsApplication项目,分别为Student、Teacher和Administrator:

位于事务逻辑层的是DataAccess项目,位于数据存储层的是SQLServer中的Student、Teacher和Administrator数据库。

系统总体的结构功能图如下:

 

数据库设计

数据库的概念结构设计:

E-R图

学生:

学号、学生学号、学生密码、学生姓名

学籍信息:

学号、学生学号、学生密码、学生姓名、入学时间、毕业时间、学生专业、学生性别、生日、家庭住址、民族、政治面貌、电话、备注

教师:

用户名、密码

管理员管理员:

用户名、密码

考试等级:

考试时间、考试地点、考试成绩

课程:

课程名、上课时间、课程开始时间、课程结束时间、课程学分、课程教师、课程备注

成绩:

学号、科目、成绩

数据逻辑结构——表的设计

以下表格只是部分数据逻辑结构表

表1:

cet表,保存学生计算机等级考试报考信息。

列名

数据类型

长度

允许空

是否标识

说明

cetID

Int

4

编号,自动递增型

stuID

Varchar

16

学生学号

cetClass

Char

8

四六级考试等级

cetTestDate

Datetime

8

考试时间

cetTestPlace

Varchar

50

考试地点

cetTestScore

Int

4

考试成绩

stuCardTD

Varchar

18

学生身份证编号

表2:

computer表,保存学生计算机等级考试报考信息。

列名

数据类型

长度

允许空

是否标识

说明

comID

Int

4

编号,自动递增型

stuID

Varchar

16

学生学号

comType

Varchar

8

计算机考试等级

comTestDate

Datetime

8

考试时间

comTestPlace

Varchar

50

考试地点

comScore

Int

4

考试成绩

stuCardTD

Varchar

18

学生身份证编号

主要功能模块的详细设计

在此,以学生管理模块的“学生登陆”“新生注册”功能的具体设计进行介绍,学生管理的其他功能模块、教师以及管理员管理模块的设置方法大同小异,就不再赘述。

1系统的登录

主窗体设计如上图,主要实现学生登陆、注销以及注册功能;要实现数据库与用户界面的链接,首先要建立一个名为DataAccess的项目,使其负责整个应用程序的数据访问。

 

至此,整个项目框架已建立,其中Student是表现层项目,而DataAccess则为数据访问层项目。

系统的的源代码将在系统的运行与维护中提及。

代码设计

代码是指代表事物名称、属性、状态等的符号。

代码设计就是以数字或字符来表示各种客观实体。

在管理信息系统中,为便于计算机处理,节省存储空间和处理对象,提高处理的效率与精确度,需要将处理对象代码化。

本系统主要采用顺序码和区间码来设计,以下是对本系统的主要数据代码进行说明:

学生学号:

**********

 

教师编号:

******

 

课程编号:

********

 

输入输出设计

本系统在输入/输出设计上遵循既满足用户需求又方便用户使用的原则。

输入/输出界面的确定都与用户反复沟通,知道用户满意为止。

信息系统的输入输出设计是一个重要环节,一个好的输入设计可以给用户带来良好的工作环境,而一个好的输出设计可以为管理者提高简捷、明了、有效、实用的管理和控制环境。

(1)输入设计

输入设计的目标是:

在保证输入信息正确性和满足输出需要的前提下,做到输入方法简便、迅速与经济。

输入设计要遵循最小量、简单性、早检验、少转换原则。

其主要内容包括:

①输入方式的选择

输入方式根据数据产生的地点,时间,周期,数量及特性,处理要求的确定。

常用的输入方式主要有以下三种:

键盘输入、光电设备输入及声音输入。

本系统主要采用键盘输入。

②输入数据的活动及输入格式的设计

原始数据的获得需要考虑数据产生的部门,确定收集的时间和方法;了解数据产生的周期,平均发生量及最大量。

(2)输出设计

输出设计主要解决的问题是针对不同的用户的特点和要求,以最适当的形式,输出最切合需要的信息。

其主要内容包括:

①输出方式的选择

系统的输出方式根据输出信息的使用要求,信息量的大小、输出设备的限制条件来决定。

②输出表的设计

表内容要根据使用人员的实际需要进行设计。

对不同的用户,应当提供详细程度不同、内容不同的表。

③输出设计说明

输出设计说明包括选用的输出设备,信息输出的频率和数量,各种输出文件及输出报表的格式及表格样本等。

系统配置设计

教务管理系统主要用于学校内部资源的管理,充分利用现代高度信息化手段来整合、优化信息的存储以及管理,形成了目前学校内部受欢迎的教务产品,同时也方便了教务管理人员的管理工作,也方便了学生对自己个人信息的实时了解。

该系统是依托校园网而设计的,系统运行的硬件和软件设施就为校园网的组成。

本系统采用A+C#开发技术,所需开发环境如下:

代码编写平台:

MicrosoftVisualStudio2005;

数据库:

SQLServer2000

操作系统:

MicrosoftWindowsXP。

四、系统运行与维护

管理系统功能运行及其源代码

以下仅为部分功能运行的源代码:

在Student项目中建立用于标识用户是否已经登录的GlobalInfo,cs类文件:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceSchoolMIS.UI.Student

{

classGlobalInfo

{

privatestaticboolisLogin=false;

privatestaticstringstuName;

privatestaticstringstuID;

///

///表示用户是否登陆

///

publicstaticboolIsLogin

{

get

{

returnisLogin;

}

set

{

isLogin=value;

}

}

///

///学生姓名

///

publicstaticstringStuName

{

get

{

returnstuName;

}

set

{

stuName=value;

}

}

///

///学生学号

///

publicstaticstringStuID

{

get

{

returnstuID;

}

set

{

stuID=value;

}

}

}

}

在Student文件夹下的SQLServer子文件中建立Constants类文件,并向其中添加两个变量,以便成功链接数据库:

classConstants

{

///

///数据库连接字符串

///

publicstaticreadonlystringConnString=

@"DataSource=(local);InitialCatalog=student;UserID=sa;Password=1234";

///

///验证学生登陆

///

publicstaticreadonlystringStuLogin=

@"selectstuNamefromstudentwherestuID=@stuIDandstuPassword=@stuPassword";

……

为StudentDB类添加自定义方法Login,代码如下:

publicstringLogin(stringstuID,stringstuPsw)

{

//建立数据库连接对象

SqlConnectionconn=newSqlConnection(Constants.ConnString);

//建立数据库命令对象

SqlCommandcmd=newSqlCommand();

cmd.Connection=conn;

cmd.CommandText=Constants.StuLogin;

cmd.CommandType=CommandType.Text;

//添加参数给数据命令

SqlParameterprmStuNum=newSqlParameter("@stuID",stuID);

SqlParameterprmStuPassword=newSqlParameter("@stuPassword",stuPsw);

cmd.Parameters.Add(prmStuNum);

cmd.Parameters.Add(prmStuPassword);

try

{

conn.Open();

objectstuName=cmd.ExecuteScalar();

if(stuName!

=null)

{

returnstuName.ToString();

}

else

{

returnString.Empty;

}

}

catch(SqlExceptionex)

{

returnString.Empty;

}

finally

{

//确保数据库连接被关闭

if(conn.State==ConnectionState.Open)

{

conn.Close();

}

修改LoginForm中的“确定”按钮,注册按钮单击事件btnOK_Click在LoginForm.cs代码编辑界面顶部添加如下代码,引入数据访问所需要的命名空间,并添加“确定”“取消”单击事件:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

usingSchoolMIS.DataAccess.Student.SQLServer;

namespaceSchoolMIS.UI.Student

{

publicpartialclassLoginForm:

Form

{

publicLoginForm()

{

InitializeComponent();

}

privatevoidbtnCancel_Click(objectsender,EventArgse)

{

this.txtStuNum.Text="";

this.txtStuPassword.Text="";

}

privatevoidbtnOK_Click(objectsender,EventArgse)

{

if(this.txtStuNum.Text.Trim()=="")

{

MessageBox.Show("请输入您的学号","错误提示:

",MessageBoxButtons.OK,MessageBoxIcon.Warning);

}

elseif(this.txtStuPassword.Text.Trim()=="")

{

MessageBox.Show("请输入您的密码","错误提示:

",MessageBoxButtons.OK,MessageBoxIcon.Warning);

}

else

{

StudentDBstuDbAccess=newStudentDB();

stringstuName=stuDbAccess.Login(txtStuNum.Text.Trim(),txtStuPassword.Text.Trim());

if(stuName!

=String.Empty)

{

GlobalInfo.StuName=stuName;

GlobalInfo.StuID=this.txtStuNum.Text;

GlobalInfo.IsLogin=true;

this.Dispose();

}

else

{

MessageBox.Show("用户名或者密码错误,请重新输入。

","错误提示:

");

}

}

}

privatevoidtxtStuNum_TextChanged(objectsender,EventArgse)

{

}

}

}

最后在“学生客户端”界面为“学生登陆”二级菜单注册单击事件stuLogin_

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 电子电路

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1