信息系统工程与实践
《教务管理系统》
设计报告
专业班级: 计本1201班
项目分组: 计本1201班第二组 姓名学号1: 戴明昊1205170107 姓名学号2: 杨新芬1205170130 姓名学号3: 万丽涛1205170102 编写人: 戴明昊1205170107
目录
1引言 ............................................................................................................................................... 0 1。1编写目的 .............................................................................................................................. 0 1。2项目背景 .............................................................................................................................. 0 1.3定义......................................................................................................................................... 0 1。4参考资料 .............................................................................................................................. 0 2系统范围描述 ............................................................................................................................... 1 2。1系统目标 .............................................................................................................................. 1 2。2软硬件配置 .......................................................................................................................... 1 2。3系统功能 .............................................................................................................................. 1 2。4限制与约束 .......................................................................................................................... 2 3系统设计描述 ............................................................................................................................... 2 3.1数据结构 ................................................................................................................................. 2 3.2过程描述 ................................................................................................................................. 3 3.3软件体系结构 ......................................................................................................................... 6 3.4输出报表描述 ......................................................................................................................... 7 3。5图形用户接口界面 .............................................................................................................. 8 4各模块描述 ................................................................................................................................. 10 4。1学生类详细设计 ................................................................................................................ 10 4。2管理员类详细设计 ............................................................................................................ 11 4.3教学质量评价类详细设计 ................................................................................................... 11 4。4学期类详细设计 ................................................................................................................ 12 4.5成绩类详细设计 ................................................................................................................... 12 4。6课程类详细设计 ................................................................................................................ 12 5数据库设计 ................................................................................................................................. 13 5。1概念设计 ............................................................................................................................ 13 5.2逻辑设计 ............................................................................................................................... 14
系统设计报告
1引言
1.1编写目的
编写本报告是为了保证项目团队按时保质地完成项目目标,便于项目团队成员更好地了解项目情况,使项目工作开展的各个过程合理有序,因此本报告确定各个项目模块的开发情况和主要的负责人,供各项目模块的负责人阅读,做到及时协调,按步有序进行项目的开发,减少开发中的不必要损失。
本报告预期的读者是设计人员、开发人员、项目管理人员、测试人员和用户.
1.2项目背景
教务管理教务管理系统面向教务处、院、系教师和全校学生,实现学籍管理、课表管理、成绩管理、教学质量监控等功能。
1。3定义
SQL(Structured Query Language)结构化查询语言。SQL 语言的主要功能就是同各种数据库建立联系,进行沟通。PHP开发平台.
1.4参考资料
(1) 钱乐秋等,《软件工程》,清华大学出版社;
(2) 张害藩,《软件工程导论》(第四版),清华大学出版社; (3) 王珊等,《数据库原理及设计》,清华大学出版社; (4) 赵池龙等,《软件工程实践教程》,电子工业出版社。
0
2系统范围描述
2.1系统目标
旧的教务管理系统,是传统手工作业方式,在学生信息注册、教师查询成绩、管理员修改成绩等方面存在诸多不利于管理的地方,不适应现代的教学管理形势和信息资源开发利用的要求。
开发新的教务管理系统使学校的教务管理工作实现了信息化、规范化,不仅使学校能够高效率完成教务管理的日常工作,还使学校深入开发利用教学资源成为可能.
2.2软硬件配置
运行环境:Windows 数据库:MYSQL
硬件条件:服务器sun工作站,终端为pc机
2。3系统功能
开发教务管理系统旨在改变原有人工进行教务管理的工作方式,实现学籍管理、课表管理、成绩管理、教学质量监控等功能。下图是教务管理系统功能模块图:
教务管理系统 管理员模块 教师模块 学生模块 进行教学质量评价 登录 录入信息 查询信息 修改信息 登录 录入信息 查询信息 登录 查询信息
图 1教务管理系统功能模块图
1
2.4限制与约束
a.系统的运行寿命的最小值:2年 b.进行系统方案选择比较的时间:1周 c。经费来源:**公司 d。运行环境:Windows e.数据库:MYSQL
f.硬件条件:服务器sun工作站,终端为pc机 g。系统投入使用的最晚时间:2个月
3系统设计描述
3。1数据结构
综合可行性研究和需求分析,得出教务管理系统的实体类、边界类和控制类。 (1)教务管理系统的实体类有课程表、管理员、学生、教师、成绩表和教学质量评价表,下图为教务管理系统实体类图:
图 错误!未定义书签。 教务管理系统实体类图
(2)教务管理系统边界类有用户登录界面类、课程表管理界面类、教学质量评价管理
2
界面类和成绩管理界面类。
图 2 教务管理系统边界类图
(3)教务管理系统控制类有按钮类和链接类。
图 3 教务管理系统控制类图
3。2过程描述
教务管理系统分为管理员模块、教师模块和学生模块,有录入课表、录入成绩、查询课表、查询成绩、进行教学质量评价、设置用户等用例,为更形象的表现各用例的实现过程,建立以下时序图:
(1)管理员、教师和学生都可以进行查询信息的操作,查询过程类似,首先输入自己的用户名和密码登入系统,点击“查询成绩”按钮或“查询教学质量评价”按钮或“查询课表”按钮。对于查询成绩,选择学期可查看相应学期成绩,只是学生查询到的是本人各科目成绩,教师可以查看班级成绩,管理员可查看全校学生成绩。
3
图 4查询信息时序图
(2)管理员可以修改成绩,操作过程为:登录——>点击“修改成绩”按钮——〉选择学号——>选择课程--修改该科目成绩。
图 错误!未定义书签。修改成绩时序图
(3)学生应当对教师进行教学质量评价,进入教学评价质量界面后,根据评价细则选择评价等级完成评价。
图 5进行教学质量评价时序图
(4)录入成绩由教师来操作,教师根据科目、学生学号录入学生成绩。
4
图 6录入成绩时序图
(5)管理员进行录入课表的操作,登录成功后,选择“录入课表\"按钮,根据系统所给表格,填入各节课程,保存后完成录入课表操作。
图 7录入课表时序图
(6)设置用户由管理员来操作,可以注册用户、修改用户信息和删除用户信息.注册用户就是运用sql语句中的insert into在数据库中插入信息;修改信息运用update对数据库进行操作;delete为删除用户信息。
图 错误!未定义书签。录入学生信息时序图
5
(7)用户有两种状态,未注册和已注册,状态图如下:
图 8 用户状态图
(8)对于教学质量评价表,它的状态也有两种,即已评价和未评价。
图 9 教学质量评价表状态图
(9)成绩表的两种状态,未录入和已录入。
图 10 成绩表状态图
(10)课表的两种状态,未录入和已录入。
图 11 课程表状态图
3.3软件体系结构
(1)组件图
根据类图创建的教务管理系统组件图包括:成绩管理、课表管理和教学质量评价管理。
图 错误!未定义书签。教务管理系统组件图
6
(2)配置图
教务管理系统处理器及其设备之间的连接,以及处理器到处理器的布置,如下图:
图 错误!未定义书签。 教务管理系统配置图
3。4输出报表描述
教务管理系统中输出的报表有学生成绩、课表、教学质量评价、学生信息. (1)管理员可以查看全体学生成绩,报表输出如下:
图 12 成绩报表图
(2)学生登录后可以查看自己的成绩,报表输出如下:
图 错误!未定义书签。 学生个人信息报表图
7
3。5图形用户接口界面
教务管理系统分为管理员模块、教师模块和学生模块,各个模块图形用户接口界面如下: (1)鉴于教务管理系统面向的用户有管理员、教师和学生,所以下图为登录界面,用户输入自己的用户名和密码后,选择身份进入系统.
图 错误!未定义书签。 用户登录界面图
(2)学生登录后直接查出自己的成绩,并可以进行教学质量评价和修改密码.
图 错误!未定义书签。 查询成绩界面图
(3)学生可以修改密码,界面如下图:
图 错误!未定义书签。 学生修改密码界面图
8
(4)管理员登录后可以查询成绩、查询学生信息、录入成绩、查看教学质量评价和留言等。
图 错误!未定义书签。 管理员操作界面图
(5)管理员可以查询学生信息,界面如下图:
图 13 管理员查询学生信息界面图
(6)录入成绩界面如下图:
图 错误!未定义书签。 录入成绩界面图
9
4各模块描述
4。1学生类详细设计
4。1.1属性设计
学生类包含学生的各种信息,如姓名、所属班级、密码等,详细的格式设计见下表: 表 1 学生类属性设计表 名称 Sname Scode Sqs Sas Sclass Sno 说明 学生姓名 学生密码 学生密保问题 学生密保答案 班级 学号 可见性 长度 私有 私有 私有 私有 私有 私有 20 20 10 11 类型 int int text text varchar int 描述 学生信息 学生信息 学生用于保护和找回学生密码 学生用于保护和找回学生密码 学生信息 学生信息 4。1。2方法设计
1、function tosubmit1()和function tosubmit2()函数,有两个变量,submit和submit1,分别供“学生\"按钮和“管理员”按钮使用。输入用户名和密码后,点击“学生\"按钮调用function tosubmit1()函数,function tosubmit1()函数又调用document。form1.submit()函数,使得onclick事件跳转到student_login。php页面即学生登录后进入的页面;点击“管理员\"按钮,调用function tosubmit2()函数,同点击“学生”按钮,只是跳转到admin_login.php页面即管理员登录后进入的页面。
2、mysql_query()函数执行一条MySQL查询,参数为query即要发送的sql查询。学生要进行教学质量评价,使用查询语句”select distinct evaluate.Sno from sreport,course,term,student,evaluate where sreport。Sno = ’”。$sno.”' and sreport。Sno =student.Sno and sreport.cno=course。cno and term.tid=sreport。tid and sreport。Sno=evaluate。Sno and sreport。cno=evaluate.cno ”,将成绩表、学生表、课程表、评价表连结。
3、mysql_fetch_array()函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有返回根据从结果集取得的行生成的数组,如果没有更多行则返回 false.经2使用mysql_query()函数查询到结果后,用mysql_fetch_array()函数将Cmt_no即评分等级取出,再用if语句进行判断,若Cmt_no不空,则用echo显示“已评价”.Cmt_no是长度为11的int型变量.
4、form表单处理,超全局变量$_GET 和 $_POST 用于收集表单数据.学生可以修改自
10
己的密码,输入原密码和新密码,点击“修改”按钮,“修改\"按钮在seditcode。php页面,点击“修改”按钮后跳转到sedit1.php页面,在这个页面用post来接收,使用sql语句里的\"update student set scode='”。$ncode.”' where Sno='\"。$sno。”’\"更新数据库中的字段“学生密码”。
4。2管理员类详细设计
4。2。1属性设计
管理员类包含管理员的各种信息,如管理员ID、管理员密码等。 表 2 管理员类属性设计表 名称 Aid Acode Aqs Aas 说明 管理员ID 管理员密码 管理员密保问题 管理员密保答案 可见性 长度 私有 私有 私有 私有 20 20 类型 varchar varchar text text 描述 管理员的一个唯一标志 用于管理员登录 用于保护和找回密码 用于保护和找回密码 4.2.2方法设计
管理员可以修改自己的密码,方法同学生修改密码,管理员还可以查询信息:学生成绩、教学质量评价和课程,方法如下:
1、查询成绩运用form表单和sql语句查出后,用tr标签将变量显示出来。管理员查询成绩时可以按学号查也可以按学期查,有两个提交按钮,分别为submit2和submit,运用tosubmit1()函数,点击submit2即按学号查询,调用tosubmit1()函数跳转到查询出个人成绩页面;点击submit即按学期查询,调用tosubmit2()函数跳转到查询出全体成绩页面.
2、实现注册新生时,点击“注册新生”按钮,链接到insert_sinfo.php页面。因为有以及提交按钮,所以也是使用form表单来完成,只是要修改sql语句为\"insert into student values(’\".$sno.\"',’”.$sname。”',’”.$scode.\"’,'\"。$sqs.\"','\".$sas.”')”.
4。3教学质量评价类详细设计
4。3.1属性设计
教学质量评价是为学生对教师进行评价而设置的,学生通过对课程的评价从而实现了对教师的评价,因为课程是由各个教师所教学的。 表 3 教学质量评价类属性设计表 名称 Sno
说明 学号 可见性 长度 私有 11 11
类型 int 描述 学生信息 Cno Cmt_no 课程号 评价等级 私有 私有 20 11 int int 课程信息 学生对教师的评价等级 4.4学期类详细设计
4。4。1属性设计
学期类属性有学期号和学期名称。
表 4 学期类属性设计表 名称 Tid Tname 说明 学期号 学期名称 可见性 长度 私有 私有 20 20 类型 varchar varchar 描述 学期的唯一标志 学期名称 4。5成绩类详细设计
4.5。1属性设计
成绩通过一条一条的记录去保存,一条记录保存一个学生一门课程某个学期的成绩.
表 错误!未定义书签。 成绩类属性设计表 名称 Rid Rgrade Rnote Tid Sno Cno 说明 记录号 成绩 备注 学期号 学号 课程号 可见性 长度 私有 私有 私有 私有 私有 私有 20 20 20 20 11 20 类型 varchar int int varchar int int 描述 成绩的记录号 学生成绩 成绩表里的备注信息 学期的唯一标志 学生信息 课程信息 4.6课程类详细设计
4.6.1属性设计
课程的属性有课程号和课程名称。
表 5 课程类属性设计表 名称 Cno Cname 说明 课程号 课程名称 可见性 长度 私有 私有 20 20 类型 int varchar 描述 课程信息 课程信息
12
5数据库设计
5。1概念设计
教务管理系统中涉及的实体类有:管理员、教师、学生、课程、教学质量评价、成绩,详细的类的属性和方法见下图:
(1)管理员这个类的属性有用户名和密码,类的方法有增删改查课表、增删改查学生信息和教师信息、删改查成绩、查询教学质量评价。
图 14 教务管理系统管理员类图
(2)教师类的属性有用户名、姓名、密码和工号。
图 15 教务管理系统教师类图
(3)学生类的属性有学号、密码、姓名和班级,方法有查询成绩、查询课表和进行教学质量评价.
图 错误!未定义书签。 教务管理系统学生类图
(3)课程类属性有课程号和课程名称.
13
图 错误!未定义书签。 教务管理系统课程类图
(4)教学质量评价类有评价等级、学号和课程号三个属性。
图 16 教务管理系统教学质量评价类图
(5)成绩类图有属性:记录号、课程号、学期号、学号和成绩.
图 错误!未定义书签。 教务管理系统成绩类图
5。2逻辑设计
本节描述数据库中关系表、主外键及各表的联系。对于教务管理系统,要实现的功能有录入学生基本信息、录入教师基本信息、录入课表、录入成绩、进行教学质量评价;查询成绩、查询课表、查询教学质量评价;还有管理员可以对部分信息进行修改和删除操作。所以所涉及的表有8个分别为admin表、course表、evaluate表、feedback表、sreport表、student表、teach表、term表,以下分别对各个表进行详细解释。
(1)admin表保存管理员的信息,管理员的属性有ID、密码、密保问题和密保答案,密保为保护管理员密码和修改密码所需.
表 6 admin表
管理员ID(主键) 管理员密码 管理员密保问题 管理员密保答案
Aid Acode Aqs Aas admin1 1001 how are you good admin2 1002 nice to meet you 3q admin3 1003 are you OK fine
表间关系:
14
❖ admin表与feedback表有联系,且是1对多的关系,一个管理员可以进行多条留言。 ❖ admin表与teach表有联系,为多对多的关系,一个管理员可以录入多门课程,一 门课程也可以由多个管理员来管理。 (2)course表反映的是课程号和课程名称。管理员录入课表时,系统作出的响应就是在course表中插入课程号和课程名称。
表 错误!未定义书签。 course表
课程号(主键) 课程名称
Cno Cname 1 Math 2 Chinese 3 Database 4 Program 5 Economics 6 Finance 7 English
表间关系:
❖ course表与evaluate表是多对多的关系,表面上是学生对教师进行教学质量评价,实质
是通过选择课程来通过对教学这门课程的教师进行评价.一门课程对应多个学生学习,因此有多个评价;一个学生学习多门课程,所以课程与评价是多对多的关系。
❖ course表与sreport表是1对多的关系,一门课程有多个成绩记录,即一门课程被多个
学生学习,有多条成绩记录;一个记录只有一门课程成绩,所以课程与成绩记录是1对多的关系。
❖ course表与teach表是多对多的关系,一门课程可以由多个管理员来管理,一个管理员
也可对多个课程进行管理。 (3)evaluate表是学生对教师进行教学质量评价所需。学生进行教学质量评价时,系统的响应就是在evaluate表中插入一条条的评价记录,包括哪个学生(学号)对哪门课程(课程号)做出的评价等级。
表 7 evaluate表
学号(主键) 课程号(主键) 评分号
Sno Cno Cmt_no
5 201402 1
1 201401 4
201401 2 1 201401 3 5 201401 1 5
5 201402 2
表间关系:
❖ evaluate表与student表是多对多的关系,一个评价对应多个学生,一个学生可进行多个
评价。
15
(4)feedback表是保存管理员留言的表。
表 8 feedback表
管理员ID 管理员留言 Aid Afb admin1 ni hao admin2 hello admin1 how are you admin1 333 admin1 21221 admin1 111 admin1 2222
表间关系:
❖ feedback表与admin表是1对多的关系,一个反馈对应一个管理员,一个管理员可进行多
条反馈。 (5)sreport表是记录学生各学期各科成绩的表,由学号、课程号和学期号共同构成主键。
表 9 sreport表
记录ID 学号(主键) 课程号(主键) 学期成绩 学期备注 学期ID(主键) Rid Sno Cno Rgrade Rnote Tid report1 201401 1 99 null 0001 report6 201402 1 92 null 0001 report9 201401 2 93 null 0002 report12 201402 2 98 null 0002 report2 201401 3 78 null 0001 report3 201401 4 66 null 0002
表间关系:
❖ sreport表与student表是1对多的关系,一条成绩记录对应一个学生,一个学生有多条
成绩记录,因为学生学习多门课程.
❖ sreport表与term表是1对多的关系,一条成绩记录对应一个学期,一个学期有多条成绩
记录,因为一个学期里有多门成绩。 (6)student表,记录了学生的属性,学号、姓名、密码、班级等。
表 10 student表
学号 姓名 Sno Sname 201401 Jack 201402 Amy 201403 Handy 201404 Ganby
密码 学生密保问题 学生密保答案 班级 Scode Sqs Sas Sclass 201401 where are you from beijing CS01 201402 how old are you 20 CS01 201403 Are you OK? OK CS02 201404 is it good good PP01
16
201405 Tommy 201405 you me PP02
表间关系:
❖ student表和evaluate表是多对多的关系,一个学生可以进行多个教学质量评价,一个教
学质量评价也由多个学生评价。 (7)teach表反映管理员所管理的课程号.
表 错误!未定义书签。 teach表
管理员ID 课程号 Aid Cno admin1 1 admin1 2 admin1 3 admin2 4 admin2 5 admin3 6 admin3 7
表间关系:
❖ teach表和admin表是多对多的关系,一个管理员对应管理多个课程,一个课程可以由多
个管理员管理. (8)term表反映学期号和学期名称。
表 错误!未定义书签。 term表
学期ID 学期名称 Tid Tname 0001 2014term1 0002 2014term2
表间关系:
❖ term表和sreport表是1对多的关系,一个学期对应多条成绩记录,因为一个学期有多
门课程、多个学生学习;一条成绩记录对应一个学期,因为成绩记录是一个学期一门课程一个学生独有一条成绩记录。
17
因篇幅问题不能全部显示,请点此查看更多更全内容