班级管理系统设计报告.docx
《班级管理系统设计报告.docx》由会员分享,可在线阅读,更多相关《班级管理系统设计报告.docx(12页珍藏版)》请在冰豆网上搜索。
班级管理系统设计报告
班级管理系统设计报告
班级:
材卓1401
姓名:
陈耀
学号:
U201411358
1.设计理由。
为便于班长、资委等班干部对班上成员的管理,增强其对班上同学的基础情况的了解,减少他们在人员管理资料整理方面花费的时间资源与人力资源,使班委工作的效率提高。
2.设计方法。
(1)需求分析;(采用结构化分析法)
(2)概念结构分析;(采用E-R图进行数据库设计)
(3)逻辑结构分析;
(4)物理结构分析。
3.设计过程。
3.1摘要
班级的事务是比较单一的,主要有:
班上成员的基础信息储存与更改;有关成绩项目的学生信息,考勤记录与其评分,班级活动的记录信息。
此系统面向两个方面:
其一是面向班委的数据录入与更改,班委在录入学生的基本信息之后还要维持其的持续更新;其二是面向同学的有关自己的数据的查询,以及对其他成员之间的信息的保护。
通过需求分析,可将系统的事务分成如下几个部分,并由此将管理系统分成不同的几个模块。
分别是个人基本信息管理子系统、成绩信息管理系统、考勤管理子系统、班级活动管理子系统。
根据事务结构划分,设计出系统的数据流图与细化的数据流图和数据字典。
在概念设计阶段,从需求分析得到的数据流图与数据字典中抽取系统中所有的实体与属性。
建立系统的局部的E-R图并合成、优化得到全局的E-R图。
在逻辑结构设计阶段,将概念结构设计阶段得到的E-R图转化为关系数据模型,并将其用规范化理论优化数据模型得到如下的关系模式:
·学生信息(班级编号,学号,姓名,性别,联系电话,QQ号,籍贯,寝室编号)
·成绩信息(课程编号,课程名,教师,成绩,备注)
·班级活动信息(活动名称,日期,开始时间,时长,发起人,备注)
·考勤记录信息(班级编号,出勤次数,请假天数,评分,备注)
根据关系模式设计出数据库的表结构。
在物理设计阶段利用MicrosoftSQLServer2008来实现数据库。
采用结构化分析法,自顶上向下分析班级的事务结构,得到顶层的数据流图,细化得到底层数据流图。
3.2班级总体事务结构
经过分析与抽象,班级的日常事务主要可分为四个部分,非别是班级成员的个人信息管理、成绩信息的管理、班级活动的进行与记录、成员考勤。
各事务的流程如下:
①个人信息的管理
在建立数据库的初期,班委将搜集班上同学的基本信息录入到数据库中。
当学生的信息发生变化的时候,由成员向班委发出申请,经班委确定后,在数据库中进行修改。
②成绩信息管理
每当发生考试时可以对成绩信息表进行修改,但在信息录入后,所录入的信息并不能修改,但可以被查询,并且每个人只能查询到自己本人的成绩信息。
③活动信息管理
每当班委决定并组织好一次活动后,将数据记录,之后信息不允许修改,每个同学都可以进行查询。
④考勤评分信息管理
由班委负责收集每个成员的考勤信息,并进行审核,打分后录入系统,每个团队成员都可以查看到自己的考勤情况。
3.2数据流图
3.3数据字典
数据项
数据项名:
班级编号
数据项含义说明:
唯一标识每一名成员
数据类型:
整型
取值范围:
0-100
取值含义:
用十进制表示成员编号,与其他数据项的逻辑关系,每一个成员只有一个班级编号,且班级成员之间并不相同。
数据项名:
学号
数据项含义说明:
唯一标明每一名成员的学号
数据类型:
字符型
长度:
8
取值范围:
0-99999999
取值含义:
用十进制表示学号,与其他数据项的逻辑关系,每一个成员只有一个学号,且班级成员之间并不相同。
数据项名:
姓名
数据项含义说明:
标识每一名成员的姓名信息
数据类型:
字符型
长度:
10
取值范围:
五个汉字及以内
取值含义:
与其他数据项的逻辑关系,每一个成员只有一个姓名,且班级成员之间并不相同。
数据项名:
性别
数据项含义说明:
标明每一名成员的性别信息
数据类型:
字符型
长度:
1
取值范围:
男or女
取值含义:
与其他数据项的逻辑关系,每一个成员只有一个性别,且班级成员之间可以相同(对应同一性别)。
数据项名:
联系电话
数据项含义说明:
标明每一名成员的电话信息
数据类型:
字符型
长度:
11
取值范围:
11位数字的电话号码
取值含义:
与其他数据项的逻辑关系,每一个成员只有一个电话号码,且班级成员不相同。
数据项名:
QQ号
数据项含义说明:
标明每一名成员的QQ信息
数据类型:
字符型
长度:
10
取值范围:
10位数字的QQ号码
取值含义:
与其他数据项的逻辑关系,每一个成员只有一个QQ号码,且班级成员不相同。
数据项名:
籍贯
数据项含义说明:
标明每一名成员的籍贯
数据类型:
整型
长度:
4
取值范围:
4个汉字
取值含义:
与其他数据项的逻辑关系,每一个成员只有一个籍贯,且班级成员之间可以相同(对应同一籍贯)。
数据项名:
寝室编号
数据项含义说明:
标明每一名成员的寝室编号
数据类型:
6
长度:
**#***(前面为楼栋号,后面为寝室号)
取值范围:
**与***部分为数字,中间用“#”号隔开
取值含义:
与其他数据项的逻辑关系,每一个成员只有一个寝室,且班级成员之间可以相同(对应同一寝室)。
数据项名:
课程编号
数据项含义说明:
唯一标明每一项课程
数据类型:
字符型
长度:
3
取值范围:
0-999
取值含义:
用十进制表示课程,与其他数据项的逻辑关系,每一个课程只有一个课程编号,且每个课程之间并不相同。
数据项名:
课程名
数据项含义说明:
唯一标明每一项课程的名称
数据类型:
字符型
长度:
8
取值范围:
4个汉字及以下
取值含义:
与其他数据项的逻辑关系,每一个课程只有一个课程名,且每个课程不相同。
数据项名:
教师名
数据项含义说明:
唯一标明每一项课程的任课老师
数据类型:
字符型
长度:
8
取值范围:
4个汉字及以下
取值含义:
与其他数据项的逻辑关系,每一个课程只有一个任课教师,且每个课程的任课教师不相同。
数据项名:
成绩
数据项含义说明:
唯一标明每一项课程的成绩
数据类型:
整型
长度:
3
取值范围:
0-100
取值含义:
100分制的成绩表,每一个课程有且只有一个成绩。
数据项名:
活动名称
数据项含义说明:
唯一标识每一个活动
数据类型:
字符型
长度:
8
取值范围:
4个汉字及以下
取值含义:
与其他数据项的逻辑关系,每一个活动只有一个名称,且活动名称并不相同。
数据项名:
日期
数据项含义说明:
标识每一项活动的举行日期
数据类型:
字符型
长度:
8
取值范围:
********(前四个数字表示年份,中间两个表示月份,最后两个表示日期)
取值含义:
与其他数据项的逻辑关系,每一个活动只有一个举行日期,且活动日期可以相同。
数据项名:
开始时间
数据项含义说明:
标识每一项活动的开始时间
数据类型:
字符型
长度:
2
取值范围:
0-24
取值含义:
表示小时,与其他数据项的逻辑关系,每一个活动只有一个开始时间,且开始时间可以相同。
数据项名:
时长
数据项含义说明:
标识每一项活动的开始时长
数据类型:
字符型
长度:
2
取值范围:
0-24
取值含义:
表示小时,与其他数据项的逻辑关系,每一个活动只有一个时长,且时长可以相同。
数据项名:
发起人
数据项含义说明:
标识每一项活动的发起人
数据类型:
字符型
长度:
10
取值范围:
5个汉字以内
取值含义:
与其他数据项的逻辑关系,每一个活动只有一个发起人,且发起人可以相同。
数据项名:
出勤次数
数据项含义说明:
标识每一个班级成员的出勤次数
数据类型:
整型
长度:
3
取值范围:
0-300
取值含义:
与其他数据项的逻辑关系,每一个班级成员只有一个出勤次数数据,且次数可以相同。
数据项名:
请假天数
数据项含义说明:
标识每一个班级成员的请假天数
数据类型:
整型
长度:
3
取值范围:
0-300
取值含义:
与其他数据项的逻辑关系,每一个班级成员只有一个请假天数数据,且天数可以相同。
数据项名:
评分
数据项含义说明:
标识每一个班级成员的考勤评分
数据类型:
整型
长度:
3
取值范围:
0-100
取值含义:
100分制,其他数据项的逻辑关系,每一个班级成员只有一个评分数据,且分数可以相同。
数据项名:
备注
数据项含义说明:
标识需要备注的信息
数据类型:
字符型
长度:
100
取值范围:
最多有50个汉字或100个字符
数据结构
可见于3.1中的数据的关系模式
数据流
数据流名:
个人信息
说明:
班级成员的个人信息
来源:
个人信息表
流向:
个人信息的查询
组成:
班级成员信息
数据流名:
成绩信息
说明:
班级成员的成绩信息
来源:
成绩信息表
流向:
成绩信息的查询
组成:
成绩信息
数据流名:
考勤评分信息
说明:
班级成员的考勤评分信息
来源:
考勤评分信息表
流向:
考勤评分信息的查询
组成:
班级成员的考勤评分信息
数据流名:
活动信息
说明:
班级活动信息
来源:
活动信息表
流向:
活动信息的查询
组成:
活动信息
数据储存
数据储存名:
个人信息表
说明:
班级成员的个人信息
组成:
成员信息
数据储存名:
活动发起表
说明:
活动的信息
组成:
活动信息
数据储存名:
成绩信息表
说明:
班级成员的成绩信息
组成:
成绩信息
数据储存名:
考勤评分信息表
说明:
班级成员的考勤信息
组成:
考勤评分信息
3.4概念结构的设计
有前面的数据流与数据字典,可以抽取出几个实体,做出E-R图如下
3.5逻辑结构设计
见数据结构中的数据模型,克制该种关系符合3NF范式。
4.结果分析
通过设计可以得到四张表格,且每一个非主属性既不传递依赖于码,也不会部分依赖于码。
班级的基本信息都有其对应的表,能够满足班级成员的查看需求和班委的数据操作要求,数据量也相对较小。
5.总结
通过这学期的学习和数据库设计作业,我收获了许多,有如数据库设计的方法和SQL编程,也对数据库的设计过程有了更深的了解。
希望今后能通过更多的学习,进一步提高我的数据库的设计能力和模型抽象能力。