软件工程课程设计
软件工程课程设计
学生信息管理系统的设计与实现
专业:
班级:
学号:
姓名:
1
软件工程课程设计
目 录
1 引言 ........................................................................................................................................ 3
1.1 背景 ............................................................................................................................ 3
1.2 目标 ............................................................................................................................ 3
2 需求分析 ................................................................................................................................ 3
2.1 系统需求 .................................................................................................................... 3
2.1.1 性能要求 ............................................................................................................ 3
2.1.2 运行环境 ............................................................................................................ 3
2.2 功能需求 .................................................................................................................... 4
2.3 业务流程图................................................................................................................ 4
3 总体设计 ................................................................................................................................ 5
3.1 基本设计概念和处理流程........................................................................................5
3.2 系统数据流程图........................................................................................................6
3.3 系统层次模块图........................................................................................................6
3.4 模块设计 .................................................................................................................... 6
4 数据库设计 ............................................................................................................................ 8
4.1 数据库的逻辑设计 .....................................................................................................8
4.2 数据库的配置 ............................................................................................................. 9
5 详细设计 ................................................................................................................................ 9
5.1. 新生管理子系统......................................................................................................9
5.2 毕业生管理子模块 ..................................................................................................14
5.3 教学评价打分 ..........................................................................................................18
5.4 学生成绩网上查询 ...................................................................................................19
6 系统维护和改进 .................................................................................................................. 20
6.1 运行维护 .................................................................................................................. 20
6.1.1 运行模块组合 .....................................................................................................20
6.1.2 运行控制 ............................................................................................................. 20
6.1.3 运行时间 ............................................................................................................. 20
6.1.4 人工处理过程 .....................................................................................................20
6.2 系统的改进与提高 ..................................................................................................20
2
软件工程课程设计
学生信息管理系统的设计和实现
1 引言
1.1 背景
学生信息管理系统是为了适应现代化学校管理的需要,加快推进高校数字化校园建设、
充分利用校园网,利用网络、多媒体等计算机应用技术和手段,提高办公效率、改善质量的
高效管理信息系统。
学生信息管理系统是系科综合管理信息系统的重要组成部分,进行学生基本信息、扩充
信息、成绩信息、在校的其它各种信息的集中电子化处理,实现主要系务业务流程的计算机
管理,实现系科学生管理工作的自动化管理和公用信息在校园网上自动发布。
本文档为“学生信息管理系统的设计和实现”的说明书,主要用于为实现系统的功能而
进行的系统详细设计说明,详细系统各软件组成模块的实现流程、功能、接口、编译、测试
要点等内容,便于对系统的编码进行指导和约束。本文档供项目组全体成员及项目组领导,
单元测试人员阅读。
1.2 目标
实现学生信息资料的集中化电子化处理;
实现学生成绩的电子化处理;
实现普通用户的前台多媒体自助查询功能,公用信息在校园网上自动发布;
实现学生管理工作制度化、标准化、规范化;
实现学生管理的其它必要的管理功能。
建立关于学生数据比较全面详细的数据库。
2 需求分析
2.1 系统需求
2.1.1
2.1.1.1
性能要求
时间特性要求
查询服务部分:用户通过多媒体电脑提交命令到返回不超过 5 秒钟。
数据管理部分:提交一笔录入到结果返回不超过 5 秒钟。排课对资源不能满足排课要
求时应首先予以提示,不能出现死循环无限等待。
2.1.1.2
可扩充性要求
各种字典数据的编码要尽可能采用行业标准,自行编码也应合乎规范,征得相关业务
部门认可;
数据库的设计应考虑可扩充性,以适应今后学校发展和系统升级的需要。
2.1.2
2.1.2.1
运行环境
软件环境
学生管理系统的设计与运行基于采用 C/S 网络应用环境运行于校园网上。后台操作系
统为 Microsoft Windows 2000,数据库为 Microsoft SQL Server 2000 ;Web 服务器运
行环境为 Windows NT Server(SP6),浏览器为 IE4.0 以上版本。
数据查询服务部分采用 B/S 网络应用环境。
2.1.2.2
硬件环境
服务器端包括一台标准服务器(也可用性能较好的普通 PC 服务器,数据库服务器、
WEB 服务器也可运行在同一台服务器上)。PC 服务器要求 CPU: PIII 600MHZ 以
上,内存容量大于或等于 512M,硬盘容量大于或等于 20G。
3
软件工程课程设计
客户端包括多媒体电脑、PC 客户机,要求多媒体电脑和 PC 客户机与上述 PC 服务器
物理上连接畅通;
系科业务工作站桌面到校园网带宽要求至少为 10M,保证连接畅快,最好有 100M 带
宽。
2.2 功能需求
进行学生基本信息、扩充信息、成绩信息、在校的其它各种信息的集中电子化处理,实
现主要系务业务流程的计算机管理,实现系科学生管理工作的自动化管理和公用信息在校园
网上自动发布。
整个涉及的工作主要包括:新生录取报到处理、在校生基本管理、学生成绩处理与查询、
学生社团组织管理、毕业生管理等方面,由此整个系统可划分为如下子系统/功能模块:
新生报到管理相关业务(系学生工作助理、辅导员等);
在校生基本管理相关业务(系辅导员、班主任等);
学生成绩汇总与查询相关业务(相关教师、教务干事);
党团组织管理相关业务(学生工作助理、辅导员等);
毕业生信息管理相关业务(系主任、学生工作助理、辅导员、教务干事等)
校友信息管理相关业务(系主任等)。
2.3 业务流程图
本系统主要业务在学生管理办公室进行,但也有部分业务在校园内其他部门进行(如查
询等),或在校园外远程进行(如网上公开信息发布、信息查询等),所以本系统应是一个分
布式、规模可变的系统。数据集中在一个数据库服务器上,处理可能分布到应用程序的各层
上,借助于校园网,各业务人员无障碍地实现分工协作,公共完成目标任务。根据系统总体
目标及技术成熟型、一般企业流行的体系结构,学生管理系统采用分层体系结构,具体划分
为三层:表现层、业务层和数据层,如下图所示:
表现层
业务层
数据层
Windows
及其他
GUI
Web 浏览器
DLLs
COM/DCOM
MTS
ActiveX/
ASP/CGI
文件
数据库
其他数据
1. 表现层:用户和系统进行交互地层次。通过键盘、显示器、鼠标、打印机等进行人
工交互。提供校园网内/外任何时间地点的访问支持(校园内借助于校园网;校园外借助于
图 2-3.1 业务流程图
4
软件工程课程设计
拨号上网)。
①应用基于网页的解决方案:即所谓的“瘦客户机”解决方案。应用则借助于免费的浏
览器如 Internet Explore、 NetScape 等,仅需设计服务器端网页文件,勿需设计专用的前台
的应用程序。本解决方案主要应用于速度要求不高的简单场合,如一般的公共查询等。
②基于网络的 EXE 解决方案:即所谓的“胖客户机”解决方案。编写前台源程序,编
译成目标代码(EXE)文件。本方案是本系统的主要解决方案,完成各种数据管理、数据处
理以及速度要求高的特殊查询。工作平台选用 WIN9X,开发工具选用 Inprise 公司的 Delphi
以及 Microsoft 公司的 Visual Foxpro 等。
2. 业务层:即事务逻辑层或中间层,完成事物处理规则和业务流程约束数据的处
理。考虑到本系统问题的规模以及复杂程度、难度等,本系统业务层应用 Microsoft IIS、FTP
等完成业务层的功能。
3. 数据层:即数据资源管理层,本层完成数据资源等的插入、删除、更新修改等
数据存储管理工作,还包括定义各种存储过程、数据约束等控制、触发器定义等。更多的数
据处理工作在“胖/瘦客户机”上进行。在本系统中采用 RDBMS 来完成数据层功能,应用
Microsoft SQL Serve 来实现。
细化的系统结构图如下:
应用服务器
WEB 服务器
客户机
数据库
请求
WEB 开发工具
应用服务器
开发工具
数据
应用服务程序
数据接口
CGI
ASP
ISAPI
NSAPI
WSAPI 等
请求
数据
请求
页面
浏
览
器
Windows
及其他
GUI
图 2-3.2 细化的系统结构图
3 总体设计
3.1 基本设计概念和处理流程
本系统主要业务在学生管理办公室进行,但也有部分业务在校园内其他部门进行(如查
询等),或在校园外远程进行(如网上公开信息发布、信息查询等),所以本系统应是一个分
布式、规模可变的系统。数据集中在一个数据库服务器上,处理可能分布到应用程序的各层
上,借助于校园网,各业务人员无障碍地实现分工协作,公共完成目标任务。
5
软件工程课程设计
3.2 系统数据流程图
系统总体数据流见下图:
图 3.2-1 系统数据流程图
系统中所有数据都存放在数据库 Server 中,客户机中要保存的数据必须上传到 Server,
交给 Server 来处理、保存。Server 与各前台终端是通过企业网总线通信的,主要机制是 TCP/IP
和 HTTP 协议,对用户名和密码的传输要采用 SSL 或其它加密机制(默认为 DES 算法)。
Server 和后台数据库通过 ADO、JDBC、T3 协议(Weblogic 默认的通信协议)进行通信,
某些重要信息(如帐户、密码等)需要进行加密(DES)。
3.3 系统层次模块图
整个学生管理系统的结构可由以下图示来表明:
学生
管理
系统
新生报到管理模块
在校生日常管理模块
组织社团管理模块
毕业生信息管理模块
其它功能
学生成绩查询模块
图 3.3-1 系统层次模块图
系
科
综
合
信
息
管
理
系
3.4 模块设计
1. 登陆数据库:
6
软件工程课程设计
输 入 数 据 库 服 务 器 名 (ServerIP) 、 用 户 账 号 ()UserID、 密 码 (PassWord) ; 以 账 号
DEP_Computer0、密码 DEP_Computer0 登陆数据库服务器,检索系统权限表,根据权限设置
相应功能模块:
①无此用户或禁止权限
Enable := False;
②浏览权限
Enable := True;
修改 UserID := Dep_Computer1;
修改 PassWord := 1111111111111;
③修改权限
Enable := True;
修改 UserID := Dep_Computer2;
修改 PassWord := 222222222222;
2. 采用 Win31 下程序组、程序项的原理组织各执行模块:
登陆服务器
新生录取数据、入学报道管理
学生信息(在校)管理
学生社团管理
毕业生信息管理
学生成绩综合查询与统计
各程序组、程序项的显示分别可以是分层/树状/大图标/小图标等方式;各程序项或菜
单项的名称命名为相应功能模块的目标代码文件名。
3.可执行功能模块的调用执行:通过程序项或菜单项名称获取可执行目标代码文件名,
应用 API 函数 CreateProcess 开始执行。
i:= StartMenu.IndexOf(MenuItem);
j:=StartMenu.Items[i].IndexOf(MenuItem);
case StartMenu.Items[i].Items[j].Tag of
1: allow:='禁止';
2: allow:='浏览';
3: allow:='修改';
end;
ExecutableFileName :=
Trim(StartMenu.Items[i].Items[j].Name)+'.exe'
FillChar(StartupInfo,Sizeof(StartupInfo),#0);
StartupInfo.cb := Sizeof(StartupInfo);
StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
CreateProcess(PChar(ExecutableFileName),
'',
nil,
nil,
false,
CREATE_NEW_CONSOLE or
NORMAL_PRIORITY_CLASS,
nil,
7
软件工程课程设计
'.\',
StartupInfo,
ProcessInfo);
4 数据库设计
4.1 数据库的逻辑设计
1.数据流字典
数据流名
招生数据流
专业数据流
学 生 基 本 信 息 数
据流
组成
详细参见全国网上招生系统的导出数据表
专业代码+专业名称+所属系科+学制+层次+备注
报考号+学号+姓名+性别+民族+政治面貌+籍贯+家
庭通信地址+邮政编码+家长姓名+家长联系方式+
考生类别+考生毕业类别+报考志愿一+报考志愿二
+报考志愿三+幢号+寝室号+班级代码+年级+传呼+
手机+电子邮箱+备注
备注
“学号”
在新生时
为预分学
号,下同
高考成绩数据流 详细参见全国网上招生系统的导出数据表
高考体检数据流 详细参见全国网上招生系统的导出数据表
班级数据流
寝室数据流
班级代码+班级名称+系科+专业+层次+学制+年级+
总人数+备注
幢号+房间号+总床位数+有效床位数+电话号码+室
长+备注
寝室安排数据流 学号+姓名+性别+寝室数据流
报到数据流
欠费数据流
学号+姓名+性别+签到否+报到手续完成情况(组织
关系、户口、饭卡、体检、缴费情况等)+备注
学号+姓名+性别+专业名称+班级名称+欠费数额+
备注
2. 加 工 说 明 部 分
(1)加 工 名 称 : 招 生 数 据 转 入
激 发 条 件 : 招 生 工 作 完 毕 , 新 生 数 据 下 载 到 本 地 。
加 工 逻 辑 :将 新 生 基 本 数 据 、体 检 信 息 和 成 绩 导 入 在 籍 学 生 数 据 库 中 ,并
分 配 临 时 学 号 。
(2)加 工 名 称 : 新 生 编 班
激 发 条 件 : 新 生 数 据 基 本 入 库 。
加工逻辑:将新生按专业进行分班,分班结果写回学生基本信息表中。
(3)加 工 名 称 : 新 生 寝 室 安 排
激 发 条 件 : 新 生 数 据 入 库
加 工 逻 辑 : 按 学 校 分 配 的 寝 室 可 用 资 源 , 将 新 生 分 配 到 可 用 寝 室 里 , 提 供
手 工 修 改 功 能 , 并 将 结 果 写 加 数 据 库 。
(4)加 工 名 称 : 新 生 报 到 处 理
激 发 条 件 : 新 生 到 校 后 , 现 场 报 到
加 工 逻 辑 : 将 新 生 报 到 情 况 记 录 在 案 , 包 括 签 到 、 组 织 关 系 转 入 否 、 户 口
交 办 否 、 体 检 完 成 否 、 饭 卡 、 收 费 ( 欠 费 ) 情 况 等 ; 以 备 进 行 欠 费 统 计 和 报
到 统 计 。
(5)加 工 名 称 : 欠 费 统 计
8