学生学籍管理系统软件设计说明书.docx
《学生学籍管理系统软件设计说明书.docx》由会员分享,可在线阅读,更多相关《学生学籍管理系统软件设计说明书.docx(30页珍藏版)》请在冰豆网上搜索。
学生学籍管理系统软件设计说明书
学生学籍管理系统
面向对象软件设计
说明书
日期:
2011-5-29
目录
1概述4
1.1系统简介4
1.2软件设计目标4
1.3参考资料4
1.4修订版本记录5
2术语表5
3用例5
4设计概述8
4.1简述8
4.2系统结构设计8
4.2.1顶层系统结构8
4.2.2子系统1结构9
4.2.3子系统2结构9
4.2.4子系统3结构10
4.2.5子系统4结构10
4.3系统界面11
4.4约束和假定11
5对象模型11
5.1系统对象模型11
6对象描述12
6.1子系统1中的对象12
6.1.1对象:
学生信息管理12
6.2子系统2中的对象14
6.2.1对象:
学生成绩管理14
6.3子系统3中的对象16
6.3.1对象:
考试管理16
6.4子系统4中的对象17
6.4.1对象:
用户管理17
7动态模型18
7.1场景18
7.1.1:
场景118
7.1.2:
场景219
7.1.3:
场景319
7.1.4:
场景420
7.1.5:
场景520
7.1.6:
场景621
7.1.7:
场景721
7.1.8:
场景822
7.2状态图23
7.2.1状态图1:
学生生命周期状态图23
7.2.2状态图2:
教师生命周期状态图23
7.2.3状态图3:
教务员生命周期状态图24
7.2.4状态图4:
用户登录生命周期状态图24
7.2.5状态图5:
学生成绩管理生命周期状态图25
7.2.6状态图6:
教师成绩管理生命周期状态图25
7.2.7状态图7:
教务员管理模块生命周期状态图26
8非功能性需求26
9辅助文档26
10词汇索引26
1概述
1.1系统简介
学生学籍管理系统主要需要完成对学生信息管理,成绩信息管理,考试信息管理以及用户信息管理的功能。
该系统所面向的用户范围包括学生、教师、管理员(本说明书中也指教务员)等。
系统的运行环境需要在是WindowsXP或以上版本即可,当然还需要开发工具eclipse以及数据库(MYSQL)的连接。
开发工具包也是不可缺少的:
JDKVersion1.6.2和Web服务器:
TomCat。
1.2软件设计目标
该软件的设计目标必须尽量达到人力与设备费用的节省,并且使软件处理数据的速度提高,软件的整个设计过程必须通过生产能力的提高,人员工作效率的提高等等使软件开发成本最小化.实现保证软件质量的前提下的资金投入最小化.
按照设计学籍管理信息系统的原理和方法,采用成熟的计算机和信息技术及手段,支持学校日常管理全过程,加强教学管理活动中各项信息资源的管理和应用,提高学籍各项管理的现代化水平,优化人、财、物和信息资源在学校的综合配置,在为学校管理提供全面信息服务的基础上,提供管理辅助决策能力,为学校各项工作健康、稳定地发展提供有力的支持。
(1)学生信息管理模块目标:
对学生信息(如学号、姓名、性别、联系方式等)进行管理。
(2)学生成绩管理模块目标:
对学生成绩进行管理;
(3)考试管理模块目标:
对考试进行管理,如:
添加新考试,对已有考试信息进行修改/删除,对考试科目进行添加/删除;
(4)用户管理模块目标:
对用户进行管理,如:
添加新用户,对已有用户进行更改用户名、密码和权限,删除用户。
1.3参考资料
【1】王利福,张世琨,朱冰.软件工程.北京:
北京大学出版社
【2】王珊.数据库系统原理教程.北京:
清华大学出版社,2002
1.4修订版本记录
本文档的更新记录如表A-1所示。
表A-1版本更新记录
修改编号
修改日期
修改人
修改位置
修改内容概述
001
2011.5.26
陆微微,袁慧琴
全部
初始发布版本
002
2011.5.27
陆微微
5.1系统对象模型
8非功能性需求
增加
003
2011.5.29
袁慧琴
6.1.1.2方法描述
修改
2术语表
可参考需求说明。
3用例
以下用例图可分为3个角色:
学生,教师,管理员。
学生信息管理系统的功能是对学生信息的录入,查询,修改,删除;学生成绩管理系统的功能是对学生成绩的录入,查询,修改,删除,以及计分与排名;考试管理系统的功能是对考试信息的添加,删除,和修改;用户管理系统系统的主要功能是添加新用户,以及对已有用户名进行更改或密码的更改。
主功能用例图1
学生信息管理系统用例图1
学生成绩管理系统用例图1
考试管理系统用例图1
用户管理系统用例图1
4设计概述
4.1简述
我们采用面向对象分析作为主要的系统建模方法,使用UML(UnifiedModelingLanguage)作为建模语言。
UML为建模活动提供了从不同角度观察和展示系统的各种特征的方法。
在UML中,从任何一个角度对系统所作的抽象都可能需要几种模型来描述,页这些来自不同角度的模型图最终组成了系统的映像。
用例描述角色(用户、外部系统以及系统处理)是如何与系统交互来完成工作的。
用例模型提供了一个非常重要的方式来界定系统边界以及定义系统边界以及定义系统功能,同时,该模型将来可以派生出动态对象模型。
设计用例时,我们遵循下列步骤:
1)识别出系统的角色。
角色可以是用户、外部系统,甚至是外部处理,通过某种途径与系统交互。
重要的是差别是从外部执行者的角度来描述系统需要提供哪些功能,并指明这些功能的执行者(角色)是谁。
尽可能地确保所有角色都被完全识别出来。
2)描述主要的用例。
可以采取不断的问自已“这个角色究竟想通过系统做什么?
”来准确地描述用例。
3)重新审视每个用例,为它们下个详尽的定义。
4.2系统结构设计
4.2.1顶层系统结构
顶层系统结构方框图1
4.2.2子系统1结构
学生信息管理系统方框图1
4.2.3子系统2结构
学生成绩管理系统方框图1
4.2.4子系统3结构
考试管理系统方框图1
4.2.5子系统4结构
用户管理系统方框图1
4.3系统界面
在系统界面部分,根据需求分析的结果,用户需要一个用户有善界面。
在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。
外观上也要做到合理化,考虑到用户多对WINDOWS风格较熟悉,应进尽量向这一方向靠拢。
在设计语言上,已决定用java进行编程,在界面上可使用java提供的可视化组件,向WINDOWS风格靠近。
其中服务器程序界面要做到操作简单,易于管理。
在设计上采用滑动菜单方式,在出错上可JavaScript提供的alter进行错误提示。
具体如下:
页面内容:
主题突出,站点定义、术语和行文格式统一、规范、明确,栏目、菜单设置和布局合理,公布的信息准确、及时。
内容丰富,文字准确,语句通顺。
导航结构:
页面具有明确的导航指示,且全球理解,方便用户使用。
技术环境:
页面大小适当,常用浏览器以不同分辨率浏览;无错误链接和空链接。
艺术风格:
界面、版面形象清闲悦目、布局合理,字号大小适宜、字体选择合理,前后一致,美观大方;动与静搭配恰当,动静效果好;色彩和谐自然,与主题内容协调。
4.4约束和假定
经过我们团队共同讨论,查找资料决定,开发本系统在Windowsxp操作系统的eclipse-SDK中,使用数据库Mysql;假设开发经费不到位,管理不完善,设计时没能用全得到考虑,本项目的开发都将受到很大的影响。
以下是本系统的一些约束:
1、系统能够提供友好的用户界面,使操作人员的工作量最大限度的减少;
2、系统具有良好的运行效率,能够得到提高管理效率的目的;
3、系统应有良好的可扩充性,可以容易的加入其它的系统的应用;
4、平台的设计具有一定的超前性,灵活性,能够适应学校管理的变化;
5、软件设计应当表现出层次结构,它应巧妙地利用各个软件部件之间的控制关系。
6、设计应当是模块化的,即该软件应当从逻辑上被划分成多个部件,分别实现各种特定功能和子功能。
7、设计最终应当给出具体的模块(例如子程序或过程),这些模块就具有独立的功能特性。
8、应当应用在软件需求分析期间得到的信息,采取循环反复的方法来获得设计。
5对象模型
5.1系统对象模型
学生学籍管理系统对象图包括三个角色,有学生、教师和管理员。
数据库只是与该系统链接,存储用户的账号和密码,学生个人信息,考试信息,成绩等内容,方便系统查询。
而学生可进行信息查询和自己密码的修改等操作;教师则可进行成绩和考试信息的录入,修改学生的账号等操作;管理员可进行系统的维护和功能的加强等操作。
6对象描述
6.1子系统1中的对象
6.1.1对象:
学生信息管理
用途:
管理学生的信息,便于学生查询,教师及教务员查询、录入等。
约束:
学生进入该系统时不得录入和修改。
持久性:
持久对象
6.1.1.1属性描述
1.属性:
学号
类型:
int
描述:
该属性是学生的学号,系统中主要的关键码,学生、教师及管理员都可根据该关键码对学生信息进行查询等操作。
约束:
不得有重复。
2.属性:
姓名
类型:
varchar
描述:
该属性是学生的姓名,对学生有一个直观的了解。
约束:
无
3.属性:
出生日期
类型:
Date
描述:
该属性是学生的出身日期。
约束:
要符合学生年龄
4.属性:
班级编号
类型:
varchar
描述:
该属性是学生的班级。
约束:
一个学生只能有一个班级。
5.属性:
身份证号
类型:
varchar
描述:
该属性是学生的身份证号,可以查到该学生的身份、出生日期等,以免有不良人士混入学校。
约束:
每个学生的号码必须跟身份证上的号码没有一点出入。
6.属性:
联系电话
类型:
int
描述:
该属性为学生其中的一种联系方式,便于教师与学生之间的沟通。
约束:
须为长号,11位。
6.1.1.2方法描述
1.方法:
学生信息录入
返回类型:
String
参数:
学生信息中所有的属性
返回值:
保存成功
读取/修改的属性:
以上1~6所有属性
调用的方法:
set方法
处理逻辑:
把学生的所有信息填写好,并保存,系统会把信息放入数据库中。
2.方法:
学生信息修改
返回类型:
String
参数:
学号
返回值:
修改成功
读取/修改的属性:
这个要看具体情况,教师或管理员修改的情况。
调用的方法:
set方法、save方法
处理逻辑:
教师或管理员先调出学生的信息,改好需要改动的属性,再保存,系统会把已经修改的属性替换掉原来属性的值,并放入数据库中。
3.方法:
学生信息查询
返回类型:
String
参数:
学号
返回值:
学生的所有信息
读取/修改的属性:
学生信息的所有属性
调用的方法:
get方法
处理逻辑:
学生、教师或管理员可以根据学生的学号查看的学生的信息。
6.2子系统2中的对象
6.2.1对象:
学生成绩管理
用途:
学生成绩的录入,便于学生和教师查询等。
约束:
学生进入该系统时不得录入和修改。
持久性:
持久性对象
6.2.1.1属性描述
1.属性:
学号
类型:
int
描述:
该属性是学生的学号,系统中主要的关键码,学生、教师及管理员都可根据该关键码对学生信息进行查询等操作。
约束:
不得有重复。
2.属性:
姓名
类型:
varchar
描述:
该属性是学生的姓名,对学生有一个直观的了解。
约束:
不得超过每门课程的总分
3.属性:
各科成绩
类型:
int
描述:
该属性是该学生在校的考试成绩。
约束:
无
4.属性:
总分
类型:
int
描述:
该属性是各科考试成绩的总分
约束:
不得超过各科课程的总分
5.属性:
排名
类型:
int
描述:
该属性是根据学生的成绩进行从高到低的名次。
约束:
无
6.2.1.2方法描述
1.方法:
学生成绩的录入
返回类型:
int
参数:
学号
返回值:
保存成功
读取/修改的属性:
以上所有属性
调用的方法:
set方法、save方法
处理逻辑:
把学生的成绩录入表中,并保存,系统将信息放入数据库中。
2.方法:
学生成绩的修改
返回类型:
int
参数:
学号
返回值:
修改成功
读取/修改的属性:
所有属性
调用的方法:
set方法、save方法
处理逻辑:
教师先调出学生的成绩,改好需要改动的属性,再保存,系统会把已经修改的属性替换掉原来的属性值,并放入数据库中。
3.方法:
学生成绩的查询
返回类型:
int
参数:
学生的学号
返回值:
该学生的成绩
读取/修改的属性:
所有属性
调用的方法:
set方法、save方法
处理逻辑:
教师或学生账号登录后,根据学年查询学生成绩。
6.3子系统3中的对象
6.3.1对象:
考试管理
用途:
存储考试科目。
约束:
学生进入该系统时不得录入和修改。
持久性:
临时对象
6.3.1.1属性描述
1、属性:
科目号
类型:
int
描述:
该属性是课程的序号。
约束:
不得有重复。
2、属性:
科目名称
类型:
char描述:
该属性课程的名称。
约束:
不得有重复
6.3.1.2方法描述
1.方法:
考试信息的录入
返回类型:
char
参数:
考试信息所有的属性
返回值:
保存成功
读取/修改的属性:
以上所有属性
调用的方法:
set方法、save方法
处理逻辑:
把考试号和科目名称录入表中,并保存,系统将信息放入数据库中。
2、方法:
考试信息的修改
返回类型:
char
参数:
考试信息有改动的属性
返回值:
修改成功
读取/修改的属性:
所有属性
调用的方法:
set方法、save方法
处理逻辑:
教师先调出原来考试的信息,改好需要改动的属性,再保存,系统会把已经修改的属性替换掉原来的属性值,并放入数据库中。
3、方法:
考试信息的查询
返回类型:
char
参数:
学生的学号
返回值:
科目的信息
读取/修改的属性:
所有属性
调用的方法:
set方法、save方法
处理逻辑:
教师或学生账号登录后,根据阶段查询考试信息。
6.4子系统4中的对象
6.4.1对象:
用户管理
用途:
对用户进行管理,包括用户名和密码,可以添加用户,修改用户名、密码及删除用户。
约束:
只用管理员能操作这个对象,进行用户的管理。
持久性:
持久性对象
6.4.1.1属性描述
1.属性:
用户名
类型:
varchar
描述:
登录系统时需要的,每个人只有一个用户名,有管理员分配。
约束:
有权限限制
2.属性:
密码
类型:
varchar
描述:
也是登录时需要用的,密码用户自己也能修改。
约束:
只有当用户名和密码都输入正确时,才能进入系统。
3.属性:
权限
类型:
varchar
描述:
对用户要设置权限,因为有些功能只有管理员能执行,一般用户是进不去的。
约束:
分user跟admin。
6.4.1.2属性描述
1.方法:
添加用户
返回类型:
String
参数:
用户名
返回值:
添加成功
读取/修改的属性:
用户名、密码和权限
调用的方法:
set方法、save方法
处理逻辑:
管理员进入系统,如有需要,可以添加新的用户(如有新生注册时),系统会把数据放入数据库中,以便管理。
2.方法:
修改用户名、密码或权限
返回类型:
String
参数:
用户名
返回值:
修改成功
读取/修改的属性:
视情况而定
调用的方法:
get方法、set方法以及save方法
处理逻辑:
当用户有改动时,都可以通过管理员,对用户名、权限等进行修改,同时修改后的值可以保存到数据库中。
3.方法:
删除用户
返回类型:
String
参数:
用户名
返回值:
删除成功
读取/修改的属性:
用户的所有属性
调用的方法:
get方法
处理逻辑:
当学生、教师离开时,管理员可以删除该用户,禁止其对系统的访问,同时数据库中的数据也会消除。
7动态模型
7.1场景
7.1.1:
场景1
描述:
学生登录系统时,需输入用户名和密码,进过系统验证正确才能进入。
7.1.2:
场景2
描述:
和学生一样,教师或教务人员登录系统时时,也需用户名和密码,经系统确认正确后才能进入。
7.1.3:
场景3
描述:
有新生注册时,需教师或教务人员录入学生信息,把学生信息放入系统数据库中。
7.1.4:
场景4
描述:
学生查询个人信息,当所查询的学号在数据库中存在时,就能返回学生的个人信息,否则要重新输入。
7.1.5:
场景5
描述:
教师或教务人员查询学生信息,当所查询的学生学号存在时,就会返回此学生的信息。
7.1.6:
场景6
描述:
学生成绩录入,需教师或教务人员完成,可以同时弯沉搞一个班级的成绩录入后再保存,放入数据库中。
7.1.7:
场景7
描述:
教师或教务人员查询学生成绩,在有需要时,可以随时查询。
7.1.8:
场景8
描述:
学生查询成绩,每个学生只能查询自己的成绩,可以按学期进行查询。
7.2状态图
7.2.1状态图1:
学生生命周期状态图
7.2.2状态图2:
教师生命周期状态图
7.2.3状态图3:
教务员生命周期状态图
7.2.4状态图4:
用户登录生命周期状态图
7.2.5状态图5:
学生成绩管理生命周期状态图
7.2.6状态图6:
教师成绩管理生命周期状态图
7.2.7状态图7:
教务员管理模块生命周期状态图
8非功能性需求
1、系统界面应该漂亮大方,看起来简单不复杂。
2、系统能够使初次使用的人马上掌握。
3、如果系统与设备的通信中断,无法连接数据库服务器等,为了避免长时间等待甚至无响应,系统的反应时间在5秒之内。
4、能够让有经验的操作者在3分钟内完成例行的安装和维护。
5、该系统的操作可不连接网络,对电脑没有病毒危害。
6、系统应保证7*24小时内不宕机,保证2000以同时在客户端登录。
9辅助文档
《软件需求分析》
《需求规格说明书》
《概要分析》
10词汇索引
无