完整word版学生成绩管理系统UML面向对象设计word文档良心出品Word格式.docx
《完整word版学生成绩管理系统UML面向对象设计word文档良心出品Word格式.docx》由会员分享,可在线阅读,更多相关《完整word版学生成绩管理系统UML面向对象设计word文档良心出品Word格式.docx(50页珍藏版)》请在冰点文库上搜索。
![完整word版学生成绩管理系统UML面向对象设计word文档良心出品Word格式.docx](https://file1.bingdoc.com/fileroot1/2023-5/3/c8b23846-c232-4589-8c36-bd773717f3c6/c8b23846-c232-4589-8c36-bd773717f3c61.gif)
运行环境简述:
1、硬件环境
CPU:
P43.0G以上
内存:
2GB
硬盘:
硬盘120G
2、软件环境
数据库:
SQLServer2005
应用服务器:
Tomcat6.0服务器
开发平台:
VisualStudio2008
操作系统:
Windows7
1.2软件设计目标
系统管理员登录系统后,通过身份验证,能够对学生的基本信息进行管理,包括如下:
添加学生信息、查询学生信息、修改学生信息、删除学生信息。
1.2.1功能目标
(1)输入一个同学的姓名和学号,系统能够输出学生所在的学院、班级、成绩等学生信息;
(2)对于已经录入学生成绩管理系统的学生信息可以进行修改,例如:
删除、添加。
对于没有录入学生成绩管理系统的学生信息可以添加到系统(此项功能的实现需要对用户身份进行核查);
(3)能够对学生的信息进行保存,即退出系统时,成绩成绩不能丢失;
(4)能够登录和退出系统。
1.2.2性能目标
能够比较准确快捷地完成上述学生成绩管理系统所要求的功能即可。
(1)保证模型和代码高度一致
(2)支持多种语言
(3)为团队开发提供强有力的支持
(4)支持模型的Internet发布
(5)生成使用简单且定制灵活的文档
(6)支持关系型数据库的建模
1.3参考资料
[1]林.巴斯等.软件构架实践.清华大学出版社,2003.8
[2]张海藩.软件工程导论.清华大学出版社,2002.6
[3]郑人杰等.实用软件工程.清华大学出版社,2001.1
[4]吴建,郑潮等.UML基础与建模案例.人民邮电出版社,2005.6
2.术语表
对本文档中所使用的各种专业术语、容易引起歧义的术语以及自定义的术语进行说明。
如果一些术语在需求规格说明书中已经说明过了,此处不用再重复,可以指引读者参考需求说明。
术语
说明
类图
提供了对类及其关系进行建模的一种图形化表示法
关联
描述了有着共同的结构和语义的一组链接
多重性
指定一个类与其关联类的单个实例可能相关的实例数目
信号事件
从一个对象到另一个对象的明确的单向信息流动
变更事件
由满足布尔表达式而引起的事件
时间事件
在绝对时间上或在某个时间间隔内发生的事情所引起的事件
迁移
从一个状态到另一个状态的瞬时变化
场景
系统在某个特定的执行期内所发生的一系列事件
3.设计概述
3.1简述
生成绩管理系统是专门针对学校所开发的一种以管理为基础的信息管理系统,它涵盖成绩管理服务的所有环节,将原始的人工统计方法转换为先进的电脑管理模式。
UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。
其中最常用的是建立软件系统的模型,但它同样可以用于非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。
UML是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。
此外,UML适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶段。
在需求分析阶段,可以用用例来捕获用户需求。
通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。
分析阶段主要关心问题域中的主要概念(如抽象、类和对象等)和机制,需要识别这些类以及它们相互间的关系,并用UML类图来描述。
总之,标准建模语言UML适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试和维护。
3.2系统结构设计
RationalUnifiedProcess(RUP,统一开发过程)是一套面向对象的软件工程过程。
RUP说明了如何有效地使用成熟技术开发软件。
RUP中有9个核心工作流,分为6个核心过程工作流(CoreProcessWorkflows)和3个核心支持工作流(CoreSupportingWorkflows)。
9个核心工作流在项目中轮流被使用,在每一次迭代中以不同的重点和强度重复。
业务建模(BusinessModeling)理解系统的组织结构及其商业运作,确保所有参与人员对开发系统有共同的认识。
3.2.1顶层系统结构
学生管理系统逻辑流程图如下图所示:
图3.1学生管理系统逻辑流程图
顶层数据流图,如图3.2所示:
图3.2顶层数据流图
3.2.2子系统结构
图3.3学生成绩管理数据流图
4.用例
本系统是一个学生成绩管理系统,主要功能是为教师和学生方便查询成绩。
下面使用了用例图的方式表现了整个系统的所有功能。
4.1用例图
1.参与者:
管理员、教师、学生
2.管理员用例图:
图4.1管理员用例图
3.教师用例图
图4.2管理员用例图
4.学生用例图
图4.3管理员用例图
4.2用例描述
用例1:
学生查询成绩
学生在浏览过程中,选中相应操作。
参与者
学生、成绩管理系统
前置条件
用户身份验证。
后置条件
若学生登录成功,且成绩查询无误,则该学生可以关闭该窗口,根据自己的意愿进行其他相关操作;
如果登录不成功则终止操作。
工作流描述
1.系统确认用户已登录;
2.学生浏览想要查询的成绩;
3.确认成绩无误,关闭该窗口;
4.若成绩有误,直接向系统提出修改申请;
5.由系统进行数据库查询,核实成绩,把修改结果反馈给学生;
6.系统提示已批阅申请;
7.学生再次查看成绩,确认无误;
8.退出系统。
例外
学生忘记登录密码、找回密码
限制
学生只能查询自己的成绩
注释
无
表4.1学生查询成绩用例描述
用例2:
教师录入学生成绩
教师录入相关学生的成绩到系统内。
教师、成绩管理系统
学生成绩管理系统正常运行,用户身份验证通过。
若管理员登陆成功,则教师可将相关学生的成绩录入到系统;
否则管理员不可执行该操作。
1.教师进入学生成绩管理系统;
2.教师进入成绩管理界面;
3.教师输入相应成绩;
4.教师提交信息;
5.系统输出添加成功提示。
教师忘记登录密码、找回密码
教师只能录入自己学生的成绩
表4.2教师录入学生成绩用例描述
用例3:
管理员修改信息
管理员修改相应用户信息
管理员、成绩管理系统
若管理员登陆成功,且相应用户信息存在,则管理员可以修改相应用户信息;
1.管理员进入学生成绩管理系统后台;
2.管理员进入用户管理界面;
3.管理员搜索相应用户,点击修改按钮;
4.管理员修改用户信息;
5.管理员提交信息;
6.系统输出修改成功提示。
管理员忘记登录密码、找回密码
管理员不能超越自己的权限进行修改
系统只有一个超级管理员
表4.3管理员修改信息用例描述
用例4:
用户登录
用户根据自己的用户名和密码,登录到成绩管理系统。
学生、教师、管理员、成绩管理系统
若用户登陆成功,该用户可进行权限范围内的相关操作;
否则终止登录。
用户启动系统;
系统提示用户输入用户名和密码;
用户输入用户名和密码;
系统进行验证,给出验证信息;
若通过,用户选择相关信息进行修改查询
系统允许进行权限范围内的相关操作;
若不通过
系统进入错误界面,并输出提示信息。
用户忘记登录密码、找回密码
用户不能超越自身权限进行某些操作
表4.4用户登录用例描述
4.3系统界面
(1)查询所有学生成绩部分:
可以查询所有学生的成绩。
如图4.4所示:
图4.4查询所有学生成绩
(2)按学号查询成绩:
输入要查询的学生学号,点击查询就可以查看学生的学号、姓名、课程的名称和对应的成绩,并且会计算该学生的平均分。
如图4.5所示:
图4.5按学号查询学生成绩
(3)按课程查询学生成绩:
选择要查询的课程,点查询,就可以查看选择该课程的学生学号、姓名和对应的成绩,并且可以查看该们课程的最高分,最低分和平均分。
如图4.6所示:
图4.6按课程查询学生成绩
(4)单个学生成绩录入:
输入学生学号,选择课程,输入对应的分数,如果该学生这门课分数不为空,则不能添加,提示相应的错误信息,如果该学生这门课分数为空,则可添加。
如图4.7所示:
图4.7单个学生成绩录入
(5)批量学生成绩录入:
选择课程,则会显示出选择了这门课的所有学生学号,姓名和成绩,就课进行成绩录入。
如图4.8所示:
图4.8批量学生成绩录入
(6)学生成绩修改:
输入要修改的学生的学号,选择要修改的课程,该学生之前的成绩就显示出来,再进行修改成绩。
如图5.9所示:
图4.9学生成绩修改
(7)学生成绩删除:
输入要删除的学生的学号,选择要删除的课程,点击删除按钮,就可以改学生该们课程的成绩,成功就提示成功删除,否则提示相应的错误信息。
如图4.10所示:
图4.10学生成绩删除
5.对象模型
5.1类定义
在类图中类用矩形框来表示,它的属性和操作分别列在分格中。
如不需要表达详细信息时,分格可以省略。
一个类可能出现在好几个图中。
同一个类的属性和操作可只在一种图中列出,在其他图中可省略。
关系用类框之间的连线来表示,不同的关系用连线上和连线端头处的修饰符来区别。
系统类:
(1)Students(学生类)
属性:
学号、姓名、性别、出生年月、专业、家庭住址、联系方式
方法:
设置学号、获得学号、设置姓名、获得姓名、设置性别、获得性别、设置出生年月、获得出生年月、设置专业、获得专业、设置家庭住址、获得家庭住址、设置联系方式、获得联系方式
(2)Teachers(教师类)
教师号、姓名、性别、出生年月、院系、家庭住址、联系方式
设置教师号、获得教师号、设置姓名、获得姓名、设置性别、获得性别、设置出生年月、获得出生年月、设置院系、获得院系、设置家庭住址、获得家庭住址、设置联系方式、获得联系方式
(3)Manager(管理员类)
帐号、密码、身份
设置帐号、获得帐号、设置密码、获得密码、设置身份、获得身份
(4)Courses(课程类)
课程号、课程名称、开课学期、学时、学分
设置课程号、获得课程号、设置课程名称、获得课程名称、设置开课学期、获得开课学期、设置学时、获得学时、设置学分、获得学分
(5)Grades(成绩类)
学号、课程号、成绩
设置学号、获得学号、设置课程号、获得课程号、设置成绩、获得成绩
学生类、教师类和管理员类继承自Person类,其类图如下:
图5.1Person类继承关系图
系统成绩管理整体类图如下图所示:
图5.2系统整体类图
成绩和课程类图:
图5.3成绩与课程类图
5.2类关联描述
类关联描述如下表所示:
类关联
关联关系
意义
1
学生与课程
1:
一个学生查看当前课程成绩
2
教师与课程
n:
n
一个教师教授多门课程;
一门课程被多位老师教授
3
学生与成绩
1:
一个学生可以查看多门成绩
4
教师与成绩
一个教师可以给他教授的多门课程录入成绩
5
管理员与成绩
管理员可以修改任何输入有误的成绩
表5.1类关联表
5.3对象模型图
图5.4对象模型图
6.对象数据字典描述
数据流图表达了数据和处理的关系,数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。
数据字典在数据库设计中占有很重要的地位。
数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程5个部分。
其中数据项是最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。
6.1数据流描述
数据流编号:
A01
数据流名称:
查询所有学生成绩
简述:
有学生选课记录并有成绩
数据流来源:
点击查询所有学生成绩按钮,访问数据库,显示所有学生的成绩
数据流去向:
数据库中存在的表的信息
数据流组成:
学生学号+姓名+课程名称+成绩
数据流编号:
A02
按学号查询成绩
该学生存在
输入要查询的学生学号,点击查询,根据要求访问数据库,显示该学生所选的所有课的成绩并计算平均分
学号+姓名+课程名称+成绩
A03
按课程查询成绩
该课程存在并且有人选择这么课程
选择要查询的课程,点击查询,根据要求访问数据库,显示选择了这么课程的所有学生的学号、姓名和分数,并且计算最高分、最低分、平均分
数据库中表的信息
课程名+学号+姓名+成绩
A04
单个学生成绩录入
该学生存在并且选修了选中的课程
输入学号并选择课程,输入成绩,点击录入成绩,如果录入成功则显示添加成功,否则显示相应的错误信息
学号+课程+成绩+录入
A05
批量学生成绩录入
该课程存在并且有学生选择这门课程
选择要添加成绩的课程,则会出现选择了这么课程的所有学生的学号、姓名,在成绩那一栏添加成绩,添加完成后点击录入成绩,成功则显示成绩添加成功,否则提示相应的错误信息
课程名称+学号+姓名+成绩+录入
A06
学生成绩修改
要修改的学生存在,选修了相应的课程,并且之前有成绩
输入要修改的学生的学号,选择要修改的课程,就会显示该学生的成绩,修改该成绩,修改完成后点击修改,成功就会提示修改成功,否则就提示相应的错误信息
学号+课程+成绩+修改
A07
学生成绩删除
该学生存在并且选修了该课程
输入要删除的学生的学号,选择要删除的课程,点击删除,成功就会提示成功删除,否则就提示相应的错误信息
学号+课程+删除
6.2子系统中的对象
6.2.1对象:
Student
用途:
记录学生基本信息
约束:
临时对象
持久性:
从学生登录到退出
6.2.1.1属性描述:
1.属性:
Name
类型:
String
描述:
学生姓名
2.属性:
Sex
学生性别
3.属性:
Birth
Date
学生生日
4.属性:
Major
学生所学专业
5.属性:
Address
学生家庭住址
6.2.1.2方法描述:
1.方法:
SetName
返回类型:
void
参数:
返回值:
读取/修改的属性:
修改
调用的方法:
2.方法:
GetName
Name属性值
读取
3.方法:
SetSex
4.方法:
GetSex
Sex属性值
5.方法:
SetBirth
6.方法:
GetBirth
Birth属性值
7.方法:
SetMajor
8.方法:
GetMajor
Major属性值
9.方法:
SetAddress
10.方法:
GetAddress
Address属性值
6.2.2对象:
Teacher
记录教师基本信息
从教师登录到退出
6.2.2.1属性描述:
教师姓名
教师性别
教师生日
College
教师所在学院
教师家庭住址
6.2.2.2方法描述:
SetCollege
GetCollege
College属性值
6.2.3对象:
Manager
记录用户基本信息
永久对象
系统初始化时创建并一直存在,直到人为销毁
6.2.3.1属性描述:
Account
用户登录帐号(学生、教师或管理员)
Password
登录密码
Identity
Enum
UserStudent,UserTeacher,UserManager
6.2.3.2方法描述:
SetAccount
GetAccount
Account属性值
SetPassword
GetPassword
Password属性值
SetIdentity
GetIdentity
返回类