资源描述
综合测评系统的分析与设计
目 录
第一章 需求分析 2
一、需求调查 2
二、建立用例图 2
三、描述用例 3
第二章 系统分析 5
一、寻找系统中的实体类 5
二、建立实体类的类图 7
三、建立用户界面类的类图 7
三、建立交互图 8
第三章 系统设计 10
一、类图的调整与修改 10
二、人机界面设计 10
三、数据库设计 14
第四章 系统实现 15
一、开发环境 15
二、建立数据库 15
17
第一章 需求分析
一、需求调查
为贯彻党的教育方针,加强对学生的教育管理,鼓励学生在校期间刻苦学习、奋发向上、德智体全面发展,培养具有较高综合素质的优秀人才,河南科技大学制定了《河南科技大学学生德智体综合测评试行办法》、《河南科技大学优秀学生奖学金评定办法》。根据这两个文件的有关精神,我校每个学期都要对学生进行综合测评,并根据综合测评的结果,评选综合奖学金。由于在校学生较多,传统的手工计算方式难以满足学校日常工作的要求,因此,我校急需开发一个综合测评系统,以提高该项工作的效果和效果。
通过调查,我校综合测评工作的运行过程如下:由学习委员录入本班学生上一学期的各门课程的成绩,计算各个学生的课程成绩的平均分。由团支书录入本班学生上一学期的德育成绩。由体育委员录入本班学生上一学期的体育成绩。德智体三个方面的成绩录入完成后,由班长计算各个学生的综合分,计算公式为:综合分=智育分×70%+德育分×20%+体育分×10%。最后,由辅导员根据综合分评选综合奖学金。
二、建立用例图
从以上需求描述中,我们发现系统中的参与者有:学习委员、团支书、体育委员、班长、辅导员。识别出参与者后,从参与者的角度就可以发现系统的用例,并绘制出系统的用例图,如图1-1所示。
图1-1 用例图
三、描述用例
用例图中仅仅给出了用例的名称,每一个用例的内部细节尚不清楚,需要对此进行描述。描述用例有两种方式,一种是用文字或表格,另一种是活动图。需要说明的是,对于简单的用例,不需要进行描述。由于辅导员“评选综合奖学金”这一用例比较复杂,在此用活动图进行描述,如图1-2所示:
图1-2评选综合奖学金的活动图
第二章 系统分析
一、寻找系统中的实体类
通过对系统需求的分析,我们发现系统中的类有:课程成绩类、德育成绩类、体育成绩类、总分成绩类、学生基本信息类。还需要增加一个数据库访问类(Data)。
1、课程成绩类(CourseScoreClass)
该类描述学生的课程成绩。
(1)属性
EnglishScore:学生的英语成绩。
ComputerScore:学生的计算机成绩。
MathScore:学生的数学成绩。
AvgScore:英语、计算机、数学三门课程成绩的平均分。
(2)操作
RecordCourseScore:输入学生的课程成绩。
AvgCourseScore:计算学生的课程成绩平均分。
QueryCourseScoreByID:根据学号查询学生的课程成绩。
QueryCourseScoreAll:查询所有学生的课程成绩。
2、德育成绩类(MoralScoreClass)
该类描述学生的德育成绩。
(1)属性
MoralScore:学生的德育成绩。
(2)操作
RecordMoralScore:输入学生的德育成绩。
QueryMoralScoreByID:根据学号查询学生的德育成绩。
QueryMoralScoreAll:查询所有学生的德育成绩。
3、体育成绩类(SportScoreClass)
该类描述学生的体育成绩。
(1)属性
SportScore:学生的体育成绩。
(2)操作
RecordSportScore:输入学生的体育成绩。
QueryvScoreByID:根据学号查询学生的体育成绩。
QuerySportScoreAll:查询所有学生的体育成绩。
4、总分成绩类(SumScoreClass)
该类描述学生的总分成绩。
(1)属性
SumScore:学生的德智体成绩总和。
MoneyLevel:奖学金等级。
(2)操作
CountSumScore:计算学生的成绩总和。
QuerySumScoreByID:根据学号查询学生的总分成绩。
QuerySumScoreByID:查询所有学生的总分成绩。
CountMoneyLevel:确定学生的奖学金等级。
QueryMoneyLevelByID:根据学号查询学生的奖学金等级。
QueryMoneyLevelAll:查询所有学生的奖学金等级。
5、学生基本信息类
该类Student描述学生的基本信息。
(1)属性
StuID:学生的学号。
StuName:学生的姓名。
StuAge:学生的年龄。
StuClass:学生的班级。
StuAddress:学生的籍贯。
(2)操作
无。
6、数据库访问类(Data)
类Data为数据库访问类,用于将相关数据从数据库中读出来,或写入数据库中。
(1)属性
sConn:数据库连接字符串。
(2)操作:
ExecuteSqlNonQuery:根据SQL语句修改数据库。
ExecuteSqlDataSet:根据SQL查询数据库。
二、建立实体类的类图
根据以上分析,建立如图2-1所示的类图。
图2-1 实体类的类图
三、建立用户界面类的类图
需要建立用户界面类,如图2-2所示。
图2-2 用户界面类的类图
LeanerWindow:学习委员录入和查询课程成绩的窗口。
MoralerWindow:团支书录入和查询德育成绩的窗口。
SporterWindow:体育委员录入和查询体育成绩的窗口。
MonitorWindow:班长计算和查询总分成绩的窗口。
TeacherWindow:辅导员评选和查询综合奖学金的窗口。
三、建立交互图
交互图包括顺序图和通信图,二者是类图的辅导模型。在建立顺序图和通信图时,将会发现新的操作,并可以将它们添加到类图中。
1、录入课程成绩的顺序图
如图2-3所示。
图2-3 录入课程成绩的顺序图
2、计算课程成绩平均分的顺序图
如图2-4所示。
图2-4 计算课程成绩平均分的顺序图
3、根据学号查询课程成绩的顺序图
如图2-5所示。
图2-5 根据学号查询课程成绩的顺序图
4、查询所有学生的课程成绩
如图2-6所示。
图2-6 查询所有学生的课程成绩的顺序图
第三章 系统设计
在系统设计阶段,要考虑系统的实现环境,对分析阶段的类图模型进行调整与完善,并对人机界面和数据库进行设计,最终形成一个可实现的系统设计模型。本系统将采用C#进行编程。C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。
一、类图的调整与修改
在系统设计阶段,要对系统分析阶段的类图,根据实现条件对其进行补充与调整。需要补充与调整方面有很多:如有的编程语言不支持多重继承和多态,在设计模型中就要去掉多重继承,并考虑如何不使用多态而仍能完成原有的功能;根据编程语言的特性,确定属性的数据类型;若能得到可复用的模型成分,则要对模型进行修改;根据需要还可能要合并或分开一些类、属性或操作。本系统中,由于系统分析阶段的类图较为简单,没有出现多重继承,C#语言对多态的支持性很好,因此不需要对类图作其他修改。
二、人机界面设计
1、首页的设计
首页是系统的第一个页面,主要功能是供各类人员登录,其界面设计如图3-1所示。
图3-1 首页
2、学习委员页面的设计
该页面是学习委员录入和查询课程成绩的页面,其界面设计如图3-2所示。
图3-2 学习委员的页面
3、团支书页面的设计
该页面是团支书录入和查询德育成绩的页面,其界面设计如图3-3所示。
图3-3 团支书的页面
4、体育委员页面的设计
该页面是体育委员录入和查询体育成绩的页面,其界面设计如图3-4所示。
图3-4 体育委员的页面
5、班长页面的设计
该页面是班长计算和查询总分成绩的页面,其界面设计如图3-5所示。
图3-5 班长的页面
6、辅导员页面的设计
该页面是辅导员评选和查询奖学金等级的页面,其界面设计如图3-6所示。
图3-6 辅导员的页面
三、数据库设计
由于目前面向对象数据库系统还不成熟,本系统将采用关系数据库系统存储永久对象(需要长期存储的对象)。主要工作是将类图转换为关系模型。
在实体类的类图中,由于CourseScoreClass、MoralScoreClass、SportScoreClass、SumScoreClass与StuInfoClass之间分别存在多对一的关联关系,因此,需要分别在前4个类中加入2个属性“stuID”、“stuName”以表明各个类别的成绩是属于哪个学生的。另外,data类不需要保存,因此,不需要将类转换成关系模型。据此,奖实体类转换成如下几个关系模型:
CourseScoreTable(stuID,stuName,EnglishScore,ComputerScore,MathScore,AvgScore)
MoralScoreTable(stuID,stuName,MoralScore)
SportScoreTable(stuID,stuName,SportScore)
SumScoreTable(stuID,stuName,SumScore,MoneyLevel)
StuInfoTable(stuID,stuName,StuAge,StuClass,StuAddress)
通过分析,以上各个关系模型均符合三范式的要求,不需要作进一步的调整。
第四章 系统实现
一、开发环境
本系统采用B/S(Browser/Server)架构进行开发。前台的页面制作工具为Microsoft Visual Studio 2005,网页采用XHTML+CSS技术进行布局。后台的开发语言为C#,通过ASP.NET 2.0(基于C#语言)技术访问和操作数据库。采用Microsoft SQL Server 2000建立数据库。
二、建立数据库
本系统采用Microsoft SQL Server 2000建立数据库,数据库名称为“score.mdf”,其中包含5张表,如图4-1所示。
图4-1 数据库
1、表CourseScoreTable
该表用于存储学生的课程成绩信息,如图4-2所示。
图4-2 CourseScoreTable的结构
2、表MoralScoreTable
该表用于存储学生的德育成绩信息,如图4-3所示。
图4-3 MoralScoreTable的结构
3、表SportScoreTable
该表用于存储学生的体育成绩信息,如图4-4所示。
图4-4 SportScoreTable的结构
4、表SumScoreTable
该表用于存储学生的总分成绩信息,如图4-5所示。
图4-5 SumScoreTable的结构
5、表StuInfoTable
该表用于存储学生的基本信息,如图4-6所示。
图4-6 StuInfoTable的结构
课程设计的评语及得分
评
语
得分
展开阅读全文