完整word版学生成绩管理系统UML面向对象设计.docx

上传人:b****0 文档编号:8939830 上传时间:2023-05-16 格式:DOCX 页数:50 大小:535.10KB
下载 相关 举报
完整word版学生成绩管理系统UML面向对象设计.docx_第1页
第1页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第2页
第2页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第3页
第3页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第4页
第4页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第5页
第5页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第6页
第6页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第7页
第7页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第8页
第8页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第9页
第9页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第10页
第10页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第11页
第11页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第12页
第12页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第13页
第13页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第14页
第14页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第15页
第15页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第16页
第16页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第17页
第17页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第18页
第18页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第19页
第19页 / 共50页
完整word版学生成绩管理系统UML面向对象设计.docx_第20页
第20页 / 共50页
亲,该文档总共50页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

完整word版学生成绩管理系统UML面向对象设计.docx

《完整word版学生成绩管理系统UML面向对象设计.docx》由会员分享,可在线阅读,更多相关《完整word版学生成绩管理系统UML面向对象设计.docx(50页珍藏版)》请在冰点文库上搜索。

完整word版学生成绩管理系统UML面向对象设计.docx

完整word版学生成绩管理系统UML面向对象设计

《学生成绩管理系统》文档 

 

姓名:

李欢

班级名称:

2013级软件工程

指导教师:

王新年

实验日期:

2014年4月

日期

版本

描述

作者

<4/28/2014>

<1.0>

<李欢>

2014年4月

 

1.概述

1.1系统简述

随着网络通信技术的迅速发展和信息技术的广泛应用,计算机的应用已普及到经济和社会生活的各个领域。

教育领域也不例外,现今已经出现了各种远程网络在线教育系统、图书馆管理系统、学籍管理系统……其中学生成绩管理是任一院校都不可缺少的部分,它的内容对于学校的决策者和教学管理者来说都至关重要,而传统的人工管理方式效率较低,为数据的查询、更新和维护代来了极大的不便。

所以学生学籍管理信息系统的开发和应用是必要的,它能够为管理人员提供充足的信息和快捷的查询手段,提高学校学籍管理的效率。

系统的可行性分析

(1)系统实施运行的可行性:

各教师,学生都已熟练掌握计算机的基本实用方法和操作技能,对新系统的开发,表现出极大的热情。

提出了很多好的建议和要求。

(2)技术可行性:

校园网已正常运行;开发人员已熟练掌握开发工具。

技术上实现系统是可行的。

(3)经济可行性:

校园内部局域网络已经建成;硬件投入不需要很大。

学生成绩管理在大学里是一件非常耗时的活动,学校还面临着给学生缺考的问题。

在学生选择那些课程后,教务处将这些信息输入到一个计算机系统,然后给没一人打印一份课表和对应的成绩表给学生。

一旦给所有学生都登记好了成绩,突然出现成绩错误是,教务处就需要询问学生以便得到其他选择。

改学生成绩管理系统是一个面向学生,教师用来进行对学生成绩管理的管理信息系统。

该信息系统能够为师生提供各种管理服务:

(1)学生成绩查询系统能够为一定数目的学生提供服务,每个学生都能够有唯一的账号,每一个账号包括个人的编号和个人信息,系统通过一个单独的程序为学生提供服务,不需要人员的干预,这些服务包括:

查询成绩、修改自己的密码;

(2)学生的成绩需要教师对其进行录入、修改或删除,既学生不直接与系统交互,教师代其与系统进行交互,当然教师也可以进行对成绩的查询;

(3)而系统管理员主要负责的是对教忙或者学生的信息进行管理,并且管理员还得对本系统设置权限,或者可以通过师生的唯一账号对成绩进行查询。

运行环境简述:

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:

1

一个学生查看当前课程成绩

2

教师与课程

n:

n

一个教师教授多门课程;一门课程被多位老师教授

3

学生与成绩

1:

n

一个学生可以查看多门成绩

4

教师与成绩

1:

n

一个教师可以给他教授的多门课程录入成绩

5

管理员与成绩

1:

n

管理员可以修改任何输入有误的成绩

表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

类型:

String

描述:

学生性别

约束:

3.属性:

Birth

类型:

Date

描述:

学生生日

约束:

4.属性:

Major

类型:

String

描述:

学生所学专业

约束:

5.属性:

Address

类型:

String

描述:

学生家庭住址

约束:

6.2.1.2方法描述:

1.方法:

SetName

返回类型:

void

参数:

Name

返回值:

读取/修改的属性:

修改

调用的方法:

2.方法:

GetName

返回类型:

Name

参数:

返回值:

Name属性值

读取/修改的属性:

读取

调用的方法:

3.方法:

SetSex

返回类型:

void

参数:

Sex

返回值:

读取/修改的属性:

修改

调用的方法:

4.方法:

GetSex

返回类型:

Sex

参数:

返回值:

Sex属性值

读取/修改的属性:

读取

调用的方法:

5.方法:

SetBirth

返回类型:

void

参数:

Birth

返回值:

读取/修改的属性:

修改

调用的方法:

6.方法:

GetBirth

返回类型:

Birth

参数:

返回值:

Birth属性值

读取/修改的属性:

读取

调用的方法:

7.方法:

SetMajor

返回类型:

void

参数:

Major

返回值:

读取/修改的属性:

修改

调用的方法:

8.方法:

GetMajor

返回类型:

Major

参数:

返回值:

Major属性值

读取/修改的属性:

读取

调用的方法:

9.方法:

SetAddress

返回类型:

void

参数:

Address

返回值:

读取/修改的属性:

修改

调用的方法:

10.方法:

GetAddress

返回类型:

Address

参数:

返回值:

Address属性值

读取/修改的属性:

读取

调用的方法:

6.2.2对象:

Teacher

用途:

记录教师基本信息

约束:

临时对象

持久性:

从教师登录到退出

6.2.2.1属性描述:

1.属性:

Name

类型:

String

描述:

教师姓名

约束:

2.属性:

Sex

类型:

String

描述:

教师性别

约束:

3.属性:

Birth

类型:

Date

描述:

教师生日

约束:

4.属性:

College

类型:

String

描述:

教师所在学院

约束:

5.属性:

Address

类型:

String

描述:

教师家庭住址

约束:

6.2.2.2方法描述:

1.方法:

SetName

返回类型:

void

参数:

Name

返回值:

读取/修改的属性:

修改

调用的方法:

2.方法:

GetName

返回类型:

Name

参数:

返回值:

Name属性值

读取/修改的属性:

读取

调用的方法:

3.方法:

SetSex

返回类型:

void

参数:

Sex

返回值:

读取/修改的属性:

修改

调用的方法:

4.方法:

GetSex

返回类型:

Sex

参数:

返回值:

Sex属性值

读取/修改的属性:

读取

调用的方法:

5.方法:

SetBirth

返回类型:

void

参数:

Birth

返回值:

读取/修改的属性:

修改

调用的方法:

6.方法:

GetBirth

返回类型:

Birth

参数:

返回值:

Birth属性值

读取/修改的属性:

读取

调用的方法:

7.方法:

SetCollege

返回类型:

void

参数:

Major

返回值:

读取/修改的属性:

修改

调用的方法:

8.方法:

GetCollege

返回类型:

College

参数:

返回值:

College属性值

读取/修改的属性:

读取

调用的方法:

9.方法:

SetAddress

返回类型:

void

参数:

Address

返回值:

读取/修改的属性:

修改

调用的方法:

10.方法:

GetAddress

返回类型:

Address

参数:

返回值:

Address属性值

读取/修改的属性:

读取

调用的方法:

6.2.3对象:

Manager

用途:

记录用户基本信息

约束:

永久对象

持久性:

系统初始化时创建并一直存在,直到人为销毁

6.2.3.1属性描述:

1.属性:

Account

类型:

String

描述:

用户登录帐号(学生、教师或管理员)

约束:

2.属性:

Password

类型:

String

描述:

登录密码

约束:

3.属性:

Identity

类型:

Enum

描述:

UserStudent,UserTeacher,UserManager

约束:

6.2.3.2方法描述:

1.方法:

SetAccount

返回类型:

void

参数:

Account

返回值:

读取/修改的属性:

修改

调用的方法:

2.方法:

GetAccount

返回类型:

Account

参数:

返回值:

Account属性值

读取/修改的属性:

读取

调用的方法:

3.方法:

SetPassword

返回类型:

void

参数:

Password

返回值:

读取/修改的属性:

修改

调用的方法:

4.方法:

GetPassword

返回类型:

Password

参数:

返回值:

Password属性值

读取/修改的属性:

读取

调用的方法:

5.方法:

SetIdentity

返回类型:

void

参数:

Identity

返回值:

读取/修改的属性:

修改

调用的方法:

6.方法:

GetIdentity

返回类型:

Ident

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2