学籍管理系统详细设计方案
编号 003
版本
详细设计说明书
;
项目名称学生成绩管理系统
项目负责人
组员
~
2013年 6月 10 日
.
学籍管理系统详细设计说明书
目录
学籍管理系统详细设计说明书 (1)
1引言 (2)
,
2
(3)
3
(4)
4总体方案确认 (5)
系统总体结构确认 (5)
系统详细界面划分 (7)
¥
5
(7)
—
}
1引言
1.1&
1.2编写目的
依据学生成绩管理系统的需求分析和总体设计详细说明学生管理系统各个层次中的每个程序和数据库系统的设计考虑,为后期程序员编码提供依据。
其中重点说明学生管理系统各个模块的执行流程和数据库系统的详细设计。
1.3背景
系统名称:学生信息管理系统
由于学校的规模不断扩大,使得人工管理学生成绩变得越来越低效,故开发此系统提高工作效率。该系统是基于C/S构架的桌面客户端软件,使用对象为学生和教师,学生用来查询个人成绩,教师通过软件录入各个学生的信息
[1]张海藩.软件工程导论第五版.清华大学出版社.2008
1.6术语定义及说明
成绩管理:对学生的基本信息、课程选择、成绩的录入、修改、删除、查询等一系列的操作。
JRE Java Runtime Environment
[
\
2设计概述
2.1任务和目标
2.1.1【
2.1.2需求概述
业务需求:学生使用各自的账号密码登入查询成绩,老师使用管理员权限可以录入和修改信息。
学生:
输入:学生账号,密码,身份
输出:学生的个人信息界面
教师:
输入:管理员账号,密码,身份
输出:管理系统界面
】
主要功能:能够实现管理员和学生对成绩的管理,即完成一些基本的功能,查询,删除,添加,修改等,也要实现成绩的统计,并且能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果,同时也要实现权限的管理
性能需求:
a.响应时间:少于3秒
b.更新处理时间:少于2秒
c.数据的转换和传送时间少于5秒
说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,
a.操作方式上的变化:更人性化
b.运行环境的变化:在windowsXP或以上的版本都能运行
^
2.1.3运行环境概述
操作系统:windows 7
数据库系统:文本文档
软件环境:JRE
配置要求:需将JRE路径配置到系统环境变量中
2.1.4条件与限制
1)由于系统较小,且在Windows7系统下开发,故在Windows环境下运行没
有什么限制。
2)、
3)学生的一些私人信息必须要保护好。
4)该系统要受资金、寿命、社会等系列因素的制约和限制。
5)界面风格上受到Java特有风格的限制
2.1.5详细设计方法和工具
设计方法:数据流程图
工具:rational rose
3系统详细需求分析
3.1—
3.2详细需求分析
功能需求分析:
(1)信息维护:实现学生信息维护,包括增加学生信息,删除学生信息,
修改学生信息
(2)信息查询:实现按姓名查询,按学号查询
(3)成绩统计:输入任意一个课程名和一个分数段,统计在此分数段的学
生情况
(4)排序:用户指定的任意课程名,按成绩升序或降序排列学生数据并显
示排序结果(使用表格的形式显示排序后的输出结果)
性能需求分析:
·
(1)数据精确度:所有在相应域中包含查询关键字的记录都应被查到同时
保证准确率
(2)时间特性:响应在一秒以内
(3)适应性:满足运行环境在允许操作系统之间的安全转换
(4)灵活性:在需求发生变化时,本系统的对这些变化的适应能力相对而
言是比较强的,包括操作方式上的变化;运行环境的变化
系统运行环境和限制条件分析:
(1)硬件奔腾处理器以上的均可,操作系统XP以上均可
(2)安装了JRE的都可以,JRE基本都可以安装
3.3—
3.4接口需求分析
硬件接口: 支持一般的P II获更高档微机,笔记本电脑
软件接口:在这里主要考虑软件与操作系统的接口,可运行于多种操作系统之上。考虑到文档处理的需要有可能可以包括与较常用的办公软件的接口
4总体方案确认
4.1系统总体结构确认
系统组成确认:
系统结构确认:
~
学生表
课程表
成绩表
]
成绩管理系统
取得数据 输出结果
计算成绩
字段名 数据类型
主键 姓名
学号 :
Y
String String
字段名
数据类型
&
主键
学分
课程名 Y
String double
每个数据项都可以直接通过相关文件更新。查询时,也可以直观的在页面输入查询条件,就可得到结果
系统工作流程确认:
】
)
—
4.2 系统详细界面划分
`
数据类型
课程名 学号 —
String
字段名
主键 Y
String 成绩
^
int
Y
系统界面主要由前台登陆界面和后台功能界面组成,登陆界面负责确认信息,功能界面负责主要功能的实现
登陆界面:
!
包括简单的信息录入,确认
功能界面:
包括信息维护,信息查询,成绩统计,排序功能选项,同时提供退出和注销功能
界面的功能都通过后台数据库的交互来实现各自的功能,其中使用数据库提供的接口来实现查询,删除功能
5系统详细设计
5.1系统结构设计及子系统划分
-
系统结构设计:
前端:
登陆模块
功能模块
后端:
数据库模块
子系统划分:
前端功能模块划分:
}
信息维护,信息查询,成绩统计,排序,排名系统后端数据库模块划分:查找,删除,更新,插入,排序
5.2系统功能模块详细设计
模块名称:查找(由于模块较多(详见代码),仅举一例)
输入:学生姓名
[
处理:
public static String[][] queryBySname(String sname) throws IOException {
RandomAccessFile rf = readFile(STable);
long pos;
int[] where = { 0 };
String[] who = { sname };
ArrayList res = new ArrayList();
pos = check(STable, 0, where, who);
-
while (pos >= 0) {
(pos);
String line = myReadLine(rf);
String[] atbs = (",");
String[][] eles = queryBySnum(atbs[1]);
for (int i = 0; i < ; i++)
(eles[i]);
pos = check(STable, (), where, who);
…
}
();
return castToStringArray(res);
}
算法描述:按照姓名查询目标学生的所有信息
、
输出:姓名,学号,课程名,成绩
arseInt(pivotKey[3])) {
j--;
}arseInt(pivotKey[3])) {
i++;
}xt");
String str = "";
$
int c;
while((c = ())!=-1)
str+=(char)c;
String[] s = (" ");
for(int i = 0;i < ;i = i+2){
if(s[i].equals(s1)&&s[i+1].equals(s2)){
();
return true;
:
}
}
();
return false;
}catch(Exception e){
}
return true;
!
}
etText().equals("登录")){
if().isEmpty()||().isEmpty())
(jf,"请输入信息!");
else if(!correct(),(),(String)())){
("");
("");
:
(jf,"用户名或密码错误!");
}
else{
();
String s = null;
if().equals("学生"))
s = ();
ManagerSystem m = new ManagerSystem(s);
:
}
}
if(((JButton)()).getText().equals("退出"))
(0);
}
算法描述:判断用户名密码的正确性,三个参数为用户名、密码、权限
事件监听器,判断是否成功登录或者退出系统
&
输出:退出按钮---退出
登陆按钮---正确进入系统,错误报错
管理系统主界面较复杂使用流程图表示
|
,
—
*
学生流程图
-
、《
[
管理员流程图
、