软件工程课程设计高校教务管理系统Word文档下载推荐.doc
- 文档编号:4036419
- 上传时间:2023-05-02
- 格式:DOC
- 页数:24
- 大小:3.93MB
软件工程课程设计高校教务管理系统Word文档下载推荐.doc
《软件工程课程设计高校教务管理系统Word文档下载推荐.doc》由会员分享,可在线阅读,更多相关《软件工程课程设计高校教务管理系统Word文档下载推荐.doc(24页珍藏版)》请在冰点文库上搜索。
设计依据、要求及主要内容(可另加附页):
为方便学校教务管理,按软件工程软件开发流程开发教务管理系统(教师端),要求:
1)问题定义及需要分析,画出数据流图;
2)完成教师基本信息、课程计划、学生选课查看、课程介绍、教学日历、成绩管理、教务信箱、教师教学评价、发布课程通知等功能;
3)进行设计并用相应的工具表示(如层次结构图、JACSION图等);
4)测试系统,说明测试方法及测试用例;
5)较好的界面设计、完善的帮助功能;
6)编写课程设计报告。
指导教师(签字):
教研室主任(签字):
批准日期:
年月日
摘要
高校教务管理工作是高等教育中的一个极为重要的环节,是整个院校管理的核心和基础。
随着计算机技术的飞速发展和高等教育体制改革的不断深入,传统的教务管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成教学管理工作。
这是开发这个教务管理系统的原因。
本系统主要实现教师查询个人信息、学生选课信息和课程通知等,录入学生成绩、课程计划、教学日历和个人信息等,删改各项信息的功能。
系统使用Powerbuilder制作前台界面,后台使用MicrosoftSQLServer2000制作数据库。
通过Powerbuilder建立MSSMicrosoftSQLServer数据源来连连接前台界面和后台数据库。
经过本次课程设计,实现了一些基本功能,由于我们组仅设计教务管理系统的老师端,对没有实战经验的我们来说,难度增加了,在发布功能上没有实现是我们的不足。
关键词:
高校教务管理系统;
录入;
查询;
SQLServer2000;
Powerbuilder;
目录
1问题定义 1
2可行性研究 2
3需求分析 5
3.1功能需求分析 5
3.2数据库概念设计 5
3.3数据库逻辑设计 6
4总体设计 8
4.1模块化 8
4.2层次结构图 8
5详细设计 9
6实现 11
6.1数据库物理设计 11
6.2编码 12
6.2.1制作菜单 12
6.2.2教师信息管理模块 12
6.2.3成绩管理模块 13
6.2.4课程管理模块 14
6.2.5教学管理模块 14
6.3测试 15
总结 18
参考文献 19
陕西理工学院软件方法课程设计
1问题定义
随着学校规模的扩大,人员的不断增加、复杂程度逐渐增强,学校中,教务是一项繁琐的事,每年都有新生入学、老生毕业,以及其他各种人事变动。
每学期的考试成绩都需要分析,纵、横向比较,能及时反馈信息,还要对教师的教学成绩考核提供数据。
如何有效地管理、分析、处理这些信息,帮助学校和教师掌握学生的情况,这就是教学信息管理系统需要完成的功能。
以前简单的用Excel来打印几张报表的人机作坊再也无法适应当今学校的教学管理了,比如用Excel虽然能简单管理学生的学籍、成绩等,但用户界面简单,管理起来难度大,修改和查找学生的信息都比较麻烦,并且在操作过程中没有用户权限,只要能打开计算机的人就能打开数据进行任意的修改,大大的降低了信息的安全性和保密性,效率低,,人工的大量浪费;
另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入各个领域并发挥着来越重要的作用。
作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有着手工管理所无法比拟的优点.例如:
检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学校信息管理的效率。
(1)本文主要着手于建立数据库以及对数据的各种操作功能。
教师登录后对信息的查看,和录入两大功能。
查看的是个人信息,教学评价,课程计划,课程通知等,录入的是个人信息,学生成绩,教学日志等。
(2)以上各类信息目前还处于手工或半手工的管理状态,效率低,可靠性差。
如果采用计算机进行以上各类信息的管理,必将大大提高工作效率,对各类信息的维护及了解起到积极的作用。
因此一个功能完备的学校信息管理系统的开发都非常有必要。
2可行性研究
1、可行性研究的目的,就是用最小的代价在尽可能短的时间见内确定问题是否能够解决。
首先需要进一步分析和澄清问题定义。
本系统下述三个方面研究每种解法的可行性。
(1)技术可行性
本系统使用了SqlServer2000制作数据库。
运用Powerbuilder制作前台界面,通过MSSMicrosoftSqlServer连接前台和后台。
在技术上是可行的。
(2)经济可行性
本系统仅限于学习实践,并不涉及开发费用,开发费用使用是合理的。
(3)操作可行性
能够良好的解决教师需要的问题。
操作时可行的。
2、数据流图
数据流图,简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
使用逐步求精的方法,从顶层流程图逐一分解,到最终流程图。
从图2.1到图2.5所示。
图2.1顶层流程图
图2.2系统0层图
图2.3系统1层图
图2.4系统1层图
图2.5系统2层图
3需求分析
“需求分析”,是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。
可以说,在软件工程当中的“需求分析”就是确定要计算机“做什么”。
3.1功能需求分析
通过对本系统功能的需求分析,得到如下功能:
(1)教师基本信息的查询、修改、录入:
为了方便教师对基本信息的管理,将本功能分为三个小模块查询、修改、和录入,这样老师就能方便的进行基本信息的管理。
(2)课程计划的录入、查询、修改:
为了方便教师对课程计划的管理,将本功能分为三个小模块查询、修改、和录入课程计划信息。
(3)学生选课的查看:
教师查看那学生选课后可以对课程制作教学日历。
(4)课程介绍:
教师可以利用这个功能了解课程的基本信息,以便老师安排教学。
(5)教学日历:
教师可以利用教学日历知道自己和学校的课程计划。
(6)成绩管理:
教师和学生都可以查看成绩,老师还可以录入、修改成绩。
(7)教务信箱:
学校可以利用此功能通知老师一些安排和信息。
学生可以利用此功能给老师发一些问题和建议。
(8)教师教学评价:
教师可以对老师的教学做评价和提意见。
3.2数据库概念设计
基本项构思ERD的四条基本原则:
①原则1(确定实体):
能独立存在的事物,例如人、物、事、地、团体、机构、活动、事项等等,在其有多个由基本项描述的特性需要关注时,就应把它作为实体。
②原则2(确定联系):
两个或多个实体间的关联与结合,如主管,从属,组成,占有,作用,配合,协同等等,当需要予以关注时,应作为联系。
实体间的联系可分为一对一、一对多、多对多等三类,在确定联系时还要确定其类型。
③原则3(确定属性):
实体的属性是实体的本质特征。
实体应有标识属性(能把不同个体区分开来的属性组),并指定其中一个作为主标识。
联系的属性是联系的结果或状态。
④原则4(一事一地):
信息分析中得到的基本项要在且仅在实体联系图中的一个地方作为属性出现。
根据上面的设计出本系统的E-R图,如图所示:
图3.1所有实体E-R图
3.3数据库逻辑设计
关系模型的逻辑结构是一组关系模式的集合。
将E-R图转换为关系模型就是要将实体型、实体的属性和实体型之间的联系转换为关系模式。
由ERD导出一般关系模型的四条原则;
①一个1:
1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
如果软换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。
如果与某一端实体对应的关系模式何明,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
②一个1:
n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。
③一个m:
n联系转换为一个关系模式。
与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
④3个或3个以上实体间的一个多元联系可以转换为一个关系模式。
与该多元联系项链呢的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
根据以上原则将E-R图转换成的关系模式如下:
根据E—R图分析1:
1的关系转化为2个表,1:
m的转化为2张表,m:
n转化为3张表得出数据库的基本表7张:
教师信息表(工号姓名所属教研室电话备注性别出生日期住址)
课程信息表(课程名课程号课程类型备注)
课程计划表(课程名工号学期上课时间上课教室姓名)
课件表(课程名课件内容)
成绩信息表(学号课程名姓名得分)
学生选课信息表(学号姓名课程名课程类型)
教学评价表(姓名课程名得分评价)
4总体设计
通过总体设计,要达到的基本目的就是回答:
“概括的说,高校教务系统(教师端)是如何实现的”通过总体设计,可以使开发人员站在全局的高度进行分析,通过分析各种可能的方案,分析出其中最合理可行的方案。
4.1模块化
模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的的那个你满足用户的需求。
本系统划分成以下模块:
(1)用户登录模块。
进入系统必须登录或者注册,登录后才能访问其他模块。
(2)教师信息管理模块。
直接进入菜单中的教师信息模块,对个人信息进行增删改的操作,这样的模块内聚高,耦合小。
(3)成绩管理模块。
直接进入菜单中的成绩管理模块,对成绩进行增删改操作。
(4)课程管理模块。
课程计划,学生选课分别是系统管理员上传和学生上传的。
这个模块的属于通信耦合,耦合程度中等。
课程介绍和课程通知是系统管理员发布的,学生和老师均可以看到,内聚较高。
(5)、教学管理模块。
教务信息和教学评价必须通过学生发生邮件后才能看到。
耦合程度高,不过可以在数据库设计中直接添加内容。
类似于制造驱动模块。
老师录入教学日历,学生即可看到。
4.2层次结构图
层次图用来描述软件的层次结构。
通过以上的分析,从需求分析得出的数据流图出发,进行总体设计中的结构设计,该系统有以下几大功能,本系统的软件结构用层次图来表示,如图4.1所示。
图4.1层次结构图
5详细设计
详细设计的根本目标是确定应该怎样具体地驶向所要求的系统,经过这个阶段的工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。
过程设计采用了过程设计工具N-S图。
N-S图简单明了,不允许随意转移控制。
是一个优良的设计工具,所以本系统采用N-S图来描述程序处理的过程。
下面是主要模块的N-S图。
(1)登录模块
连接数据库
Ysle_1.text="
"
N
messagebox()
sle_1.setfocus()
Ysle_2.text="
N
messagebox()
g_user=sle_1.text
g_pwd=sle_2.text
sle_2.setfocus()
条件查询语句
Yg_user=trim(ls_user)andg_pwd=trim(ls_pwd)N
open()
g_input_time=g_input_time+1
Yg_input_time>
3N
close()
Messagebox()
close(w-login)
sle_1.text="
sle_2.text="
图5.1登录模块
(2)教师信息管理模块
Yb_select=1N
name=trim(sle_1.text)
suoshu=trim(sle_2.text)
datatime=trim(sle_3.text)
phone=trim(sle_4.text)
Ysuoshu="
orsuoshu='
'
N
MessageBox()
sle_2.setfocus()
return
Ydatatime="
ordatatime='
N
sle_4.setfocus()
updatejiaoshixinxibiao
Ysqlca.sqlcode<
>
0N
图5.2教师信息管理模块
6实现
实现分为三部分,数据库物理设计、编码和测试。
编码就是把软件设计结果翻译成用某种程序设计语言书写的程序。
本系统测试部分主要使用了黑盒测试。
6.1数据库物理设计
(1)索引的选择建立
由于系统可能要涉及大量数据的操作,所以索引的建立就成为一种必需。
本系统采用索引方法,分别在各个表的主键上建立关系表。
(2)数据存放位置
本系统数据和索引存放在磁盘中。
(3)确定系统配置
根据具体需要配置。
(4)表设计
根据需求分析得出从表6-1到6-7。
表6-1教师信息表
字段名
字段类型
长度
主键或外键
字段值约束
工号
Char
10
PrimaryKey
NotNull
姓名
char
性别
2
出生日期
Datetime
8
所属教研室
12
电话号码
11
入校时间
datetime
住址
varchar
50
表6-2课程信息表
课程名
4
课程编号
课程类型
备注
表6-5成绩信息表
int
PrimaryKeyForeignkey
得分
float
表6-6学生选课信息表
表6-7教学评价表
评价
6.2编码
本系统使用了PBscript语言设计程序。
在PB中,新建一个workshop,新建一个应用,然后逐一在前台界面中输入代码,实现教师信息管理、成绩管理、课程管理和教学管理模块。
6.2.1制作菜单
在PB中新建一个菜单,制作菜单项。
然后保存为m-menu。
制作主菜单m-menu,将该菜单放到窗口中。
菜单如图6.1所示:
图6.1菜单界面
6.2.2教师信息管理模块
制作菜单中的教师信息管理模块,在修改教师信息对应菜单制作窗口w-modify-information。
在“确定”按钮后输入如下主要代码:
stringname,suoshu,datatime,phone
intb_select
b_select=messagebox("
系统提示"
"
确认修改?
exclamation!
yesno!
)
ifb_select=1then
name=trim(sle_1.text)
.......
ifsuoshu="
then
MessageBox("
对不起!
所属教研室不能为空!
sle_2.setfocus()
return
endif
........
updatejiaoshixinxibiao
set教师姓名=:
name,所属教研室=:
suoshu,
入校时间=:
datatime,电话=:
phone
where教师姓名=:
name;
ifsqlca.sqlcode<
0then
messagebox("
更改错误!
messagebox("
更改成功!
);
endif
6.2.3成绩管理模块
(1)建立更改成绩窗口w-chengji。
这个模块实现的功能是,在输入框中输入姓名,点击检索即可看见指定姓名的信息,“检索”按钮后的代码如下:
//取消所有过滤条件
dw_1.setfilter("
姓名='
+sle_1.text+"
dw_1.retrieve()//检索数据,将符合条件的数据显示在数据窗口中
(2)建立数据窗口d-chengji。
通过数据库连接上学生成绩表。
数据窗口如图6.2所示:
图6.2d-chengji数据窗口
数据窗口后加入主要代码:
dw_1.settransobject(sqlca)
dw_1.filter()
6.2.4课程管理模块
(1)课程管理模块中主要涉及了四个部分,查看课程计划、查看学生选课、课程介绍和课程通知。
查看课程计划和查看学生选课功能类似,此处仅仅列举查看学生选课功能。
课程介绍和课程通知是管理员发布的信息,由于本系统仅涉及教师端,在此不对课程介绍和课程通知设计。
根据目录制作窗口w-xueshengxuanke。
在输入框中可以输入学号,检索匹配的数据信息。
“检索”按钮后的主要代码如下:
学号='
(2)建立数据窗口d-xueshengxuanke。
通过数据库连接上xueshengxuankebiao。
数据窗口如图6.3所示:
图6.3d-xueshengxuanke数据窗口
6.2.5教学管理模块
(1)教学管理模块包含三个部分,教务信箱、教学日历和查看教学评价。
教务信箱由于本系统使用PB做前台界面,对于教务信箱的设计有很大局限性,所以对本系统并未设计此功能。
查看教学评价和上节类似,在此不重复设计。
本节主要设计教学日历。
根据目录设计了窗口w-jiaoxuerili,“添加”按钮后的主要代码如下:
longnet
net=dw_1.insertrow(0)
dw_1.ScrollToRow(net)
“保存”按钮后的主要代码如下:
dw_1.u
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课程设计 高校 教务 管理 系统