1.开发系统的目的和目标
1.1系统的目的·目标列表
- 利用计算机程序,减轻管理人员的压力和提升工作效率。
- 实现不同角色的用户需求,角色之间灵活多变。
- 进行学生各种信息的日常管理,实现学生信息的系统化、规范化和自动化。
1.2目的A
利用计算机程序,减轻管理人员的压力和提升工作效率。
1.2.1目标A1
利用软件系统来实现学籍管理系统,方便管理人员的手动操作。
1.2.2目标A2
该系统应用计算机在数据处理和数据整理保存方面的优异性能,帮助工作人员提高工作的效率、减少出错情况,同时还能提供快速的查询、检索功能以及按要求进行对学生信息的打印功能。
1.3目的B
实现不同角色的用户需求,角色之间灵活多变。
1.3.1目标B1
学生:浏览个人学籍档案信息,浏览选课表,查询成绩,查询班级信息,修改个人登录密码;
1.3.2目标B2
教师:浏览学生档案信息,浏览课程表,查询学生成绩,录入学生成绩,查询教师个人信息,查询班级信息,修改个人密码;
1.3.3目标B3
系统管理员:查询、添加、删除学生档案信息、老师信息、课程信息、班级信息和学生成绩,修改个人密码,对各大功能模块进行管理。
1.4目的C
进行学生各种信息的日常管理,如查询、修改、增加、删除、学生选课、查询成绩等,实现学生信息的系统化、规范化和自动化。
2.系统概要与系统构成
2.1系统化的业务范围
该系统包括五大模块,分别是成绩管理模块、学籍管理模块、班级管理模块、课程管理模块、打印管理模块,涵盖了学生管理的基本功能,适用于高校和初等中学。
2.2系统概念
2.2.1系统的概要·概念
概念定义:
- 需求分析:软件定义时期的最后一个阶段,准确回答“系统必须做什么的问题”;
- DFD图:数据流图(描述逻辑模型的图形工具);
- E-R图:实体联系图(描述数据模型的图形工具);
- 类图:显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。
- 用例图:是用户与系统交互的最简表示形式,展现了用户和与他相关的用例之间的关系。
功能定义:
- 成绩管理:包括学生成绩管理(课程号、课程名、学号、成绩)的添加、更改、删除和查询(按学号、班级和查询全部)等功能。
- 学籍管理:包括学生基本信息管理。其中学生基本信息管理包括学生基本信息(学生编号、姓名、性别、所在专业等)的添加、更改、删除和查询。
- 班级管理:班级添加、班级修改、班级查询等功能。
- 课程管理:包括课程信息(课程号、课程名称和授课老师)的添加和删除。
- 打印管理:包括输出学生的成绩单、学籍证明单和选课情况等的打印。
2.2.2系统构成图
2.2.2.1系统层次结构图
图1 模块间调用关系图
基本实体间的E-R图
图2 实体间的E-R图
2.2.2.2数据字典
项目 | 组成 | 类型 | 来源 | 去向 | 存储者 | 使用频度 | 变动频度 |
学生信息 | 姓名、学号、班级、性别、籍贯、政治面貌、出生年月、联系方式将、系别、专业、家庭住址、年级 | 数据存储 | 学生 | 管理人员 | 管理员 | 不频繁 | 增加不频繁,更改不频繁 |
班级信息 | 班级号、所在年级、院系 | 数据存储 | 管理员 | 管理员 | 管理员 | 不频繁 | 增加不频繁,更改不频繁 |
成绩信息 | 学科名、学科成绩、学分、平时成绩 | 数据存储 | 老师 | 成绩信息表 | 管理员 | 频繁 | 增加和更改都频繁 |
选课信息 | 课程名、课程号、学时数、教课讲师、授课时间、授课地点 | 数据存储 | 学生 | 选课信息表 | 管理员 | 不频繁 | 增加不频繁,更改不频繁 |
打印信息 | 花名册、个人成绩 打印、学籍证明打印、课程表打印、其他报表打印 | 数据存储 | 学生 | 打印设备 | 管理员 | 频繁 | 增加频繁,更改不频繁 |
老师信息 | 教工号、姓名、性别、职称、出生年月、院系、籍贯、电话 | 数据存储 | 教师 | 管理员 | 管理员 | 不频繁 | 增加不频繁,更改不频繁 |
管理员信息 | 编号、姓名、性别、院系、年龄、职位 | 数据存春 | 管理员 | 管理员信息表 | 管理员 | 不频繁 | 增加不频繁,更改不频繁 |
2.2.2.3数据描述
1.数据库访问权限表 | |||
字段名称 | 数据类型 | 宽度 | 小数位数 |
用户名 | 字符型 | 10 | |
密码 | 字符型 | 3 | 0 |
权限 | 字符型 | 3 | 0 |
级别 | 字符型 | 3 | 0 |
2.学生档案表
字段名称 | 数据类型 | 宽度 | 小数位数 |
姓名 | 字符型 | 10 | |
性别 | 字符型 | 2 | |
学号 | 字符型 | 20 | |
年级 | 字符型 | 12 | |
班级 | 字符型 | 8 | |
专业 | 字符型 | 10 | |
联系方式 | 字符型 | 12 | |
籍贯 | 字符型 | 10 | |
出生日期 | 日期型 | 8 |
3.教师档案表
字段名称 | 数据类型 | 宽度 | 小数位数 |
姓名 | 字符型 | 10 | |
性别 | 字符型 | 2 | |
编号 | 字符型 | 20 | |
职位 | 字符型 | 12 | |
联系方式 | 字符型 | 12 | |
籍贯 | 字符型 | 10 | |
出生日期 | 日期型 | 8 | |
所授课程 | 字符型 | 20 |
4.管理员档案表
字段名称 | 数据类型 | 宽度 | 小数位数 |
姓名 | 字符型 | 10 | |
性别 | 字符型 | 2 | |
编号 | 字符型 | 20 | |
工作岗位 | 字符型 | 12 | |
联系方式 | 字符型 | 12 | |
籍贯 | 字符型 | 10 | |
出生日期 | 日期型 | 8 |
5.成绩信息表
字段名称 | 数据类型 | 宽度 | 小数位数 |
科目名称 | 字符型 | 8 | |
学分 | 字符型 | 2 | |
学时 | 字符型 | 2 | |
授课教师 | 字符型 | 12 | |
名次 | 字符型 | 2 | |
学生名字 | 字符型 | 10 | |
班级 | 字符型 | 10 | |
时间 | 日期型 | 8 |
6.选课信息表
字段名称 | 数据类型 | 宽度 | 小数位数 |
课程名称 | 字符型 | 8 | |
学分 | 字符型 | 2 | |
学时 | 字符型 | 2 | |
授课教师 | 字符型 | 12 | |
授课时间 | 日期型 | 8 | |
地点 | 字符型 | 10 | |
课程号 | 整数型 | 4 |
7.班级信息表
字段名称 | 数据类型 | 宽度 | 小数位数 |
班级号 | 整数型 | 2 | |
班主任 | 字符型 | 2 | |
年级 | 字符型 | 2 | |
所在院系 | 字符型 | 12 | |
班级学生数 | 整数型 | 4 |
3.结构化分析方法分析系统
3.1整体的业务流程
图 3 业务流程图
3.2系统基本数据框架
图4 数据框架图
3.3系统顶层数据流图
图5 系统顶层数据流图
3.4成绩业务的业务流程
- 学生成绩管理流程图
图6 成绩管理业务流程图
2. 顶层数据流图
图7 成绩管理顶层图
3. 0层数据流图
图8 成绩管理0层图
4. 1层数据流图
图9 成绩管理1层图
- 成绩管理的E-R图
图10 成绩管理E-R图
3.5学籍业务的业务流程
1. 顶层图
图11 学籍管理顶层图
2. 0层数据流图
图12 学籍管理0层图
3. 1层数据流图
图13 学籍管理1层图
- 学籍管理的E-R图:
图14 学籍管理E-R图
3.6班级业务的业务流程
1. 顶层图
图15 班级管理顶层图
2. 0层图数据流图
图16 班级管理0层图
- 班级管理的E-R图
图17 班级管理E-R图
3.7课程业务的业务流程
1. 顶层图
图18 课程管理顶层图
2. 0层数据流图
图 19 课程管理0层图
- 选课管理的E-R图
图20 课程管理E-R图
3.8打印业务的业务流程
1.顶层图
图21 打印管理顶层图
- 打印管理的E-R图
图22 打印管理E-R图
4.面向对象分析方法分析系统
4.1功能用例模型
根据系统功能需求,系统的用例图如下:
(1)系统整体用例图
图23 系统整体用例图
(2)管理员用例图:
图24 管理员用例图
(3)教师用例图:
图25 教师用例图
(4)学生用例图:
图26 学生用例图
- 管理员用例说明
用例名称 | 管理员用例图 |
标识符 | Adminstrator |
用户身份 | 管理员 |
基本操作流程 | 1.管理员输入用户名密码登录系统 2.录入或修改学生和老师的信息 3.选课信息录入学生信息管理系统 4.将成绩录入学籍管理系统 5.分配班级和班级信息管理 6.打印信息表和设置打印权限 |
- 教师用例说明
用例名称 | 教师用例图 |
标识符 | Teacher |
用户身份 | 教师 |
基本操作流程 | 1.教师输入用户名密码登录系统 2.录入或修改个人信息 3.学生成绩录入和查询 4.班级信息查询 5.学生选课情况查询 6.打印信息表 |
- 学生用例说明
用例名称 | 学生用例图 |
标识符 | Student |
用户身份 | 学生 |
基本操作流程 | 1.学生输入用户名密码登录系统 2.录入或修改个人信息 3.选课信息的选择 4.成绩查询 5.班级信息查询 6.打印信息表 |
4.2系统类图
建立类图的步骤:
(1)研究分析问题领域确定系统需求。
(2)确定类,明确类的含义的职责、确定属性和操作。
(3)确定类之间的关系。
在UML的静态机制中类图是一个重点,它不但是设计人员关心的核心,更是实现人员关注的核心。建模工具也主要根据类图来产生代码。
- 学生选课类图:
图27 学生选课类图
- 学生成绩类图:
图28 学生成绩类图
- 学生学籍类图:
图29 学生学籍类图
- 学生班级类图:
图30 学生班级类图
- 打印类图:
图31 学生打印类图
5.功能需求
5.1功能需求列表
- 成绩管理的功能需求
- 班级管理功能的需求
- 课程管理功能的需求
- 学籍管理功能的需求
- 打印管理功能的需求
5.2成绩管理的功能需求
学生成绩管理:学生成绩,学生学分,学生课程信息,学生的一般情况,及奖惩、处分情况;老师负责对学生成绩的录入、修改、删除等操作,学生可以查询各科成绩;老师对该模块的功能具有较高权限,学生则只拥有查询的权限,查询成绩的同时还可以将成绩单打印。
5.3班级管理功能的需求
学校可以对学生进行分班,然后将分班信息录入数据库,期间还可以对数据库进行修改。老师只能可以查看本班的学生信息,而学生只能查看自己所属的班级信息。
5.4课程管理功能的需求
学生选课管理:学生进入系统选择或者退选相应课程;老师向学校提出课程申请,经过学校核查和批准后,将该老师的课程列入课程管理系统,由相应的学工部的工作人员进行排课,排好课后录入该系统。学生和老师都只可以查询课表信息。
5.5学籍管理功能的需求
系统管理员负责对学生各种基本信息(包括奖惩情况)的录入、修改、删除等操作;学生学籍管理系统主要用于学校学生学籍的管理,其主要任务是用计算机对学生学籍进行日常管理, 如查询、修改、增加、删除等基本操作。因此,此系统所要完成的功能主要有:学生基础信息管理、学生异动管理、毕业生信息管理等多项管理功能等进行综合管理和快速查询。
5.6打印管理功能的需求
对于所有的功能板块的输出信息都可以打印。
6.质量与性能要求
6.1有关对系统全体要求
6.1.1性能要求
为了能为用户提供充足的信息和快捷的查询手段,用户使用时系统要保证运行稳定、效率高,能够快速做出响应,迅速处理各项数据、信息,显示出所需信息,所以要有一定的可扩展性和灵活性,尽可能的简化用户的操作。
最主要有以下几点要求:
- 数据精确度
在数据精确度需求上,根据实际情况,在各项数据的输入、输出及传输过程中,本系统使用了数摞结构,可以满足各种精度的需求。
- 时间特性
(1)响应时间:浏览个人成绩页面需在2秒内完成,浏览班级排名页面需在5秒内完成;
(2)系统的数据库较小,所以程序在数据更新处理时间上性能是比较突出的;而且也正由于数据量相对较少,故在数据传输时间和系统运行时间上表现的较好。
- 适应性
系统主要使用于高校的局域网,Windows 、XP等环境,连接数据库后,本系统需要DBMS放学生学籍数据库即可;所以,在操作方式、运行环境、与其它软件的接口以及开发计划等发生变化时,系统具有一定的适应能力。
6.1.2质量要求
6.1.2.1可用性要求
操作方便简洁,要求学生和老师能够灵活的自主操作,系统的可用性强。在装载总程序时,异常就会停止;汉语编程系统若出现错误,将会产生问题,重启,整个终端程序就会再启动;程序出现错误,重新装载;若仍有错,按照提示逐步装载。
6.1.2.2维护性要求
功能模块间独立强度高,要求易于维护和升级。系统的组成程序为SQL和编程语言,结构均较简单,直观意义上的较独立。
6.1.2.3可靠性要求
系统数据属于学校内部管理的重要数据,因此除学校管理人员外,其他人员不得访问,要求设有登录密码检验功能,并且此密码可以在以后进行修改;系统有严格的权限管理功能,各功能模块需要有相应的权限方能进入,如学生只能查询自己的信息状况和成绩信息;管理员可以对系统进行日常维护。
6.2与各个功能相关的要求
6.2.1性能需求
各个功能之间的联系密切,模块与模块之间要求高内聚,低耦合,模块间的可重用性强,易于管理。
6.2.2质量要求
6.2.2.1可移植性要求
可移植的环境是内存需在512MB以上;不可修改任何部分;可用向上兼容的高版本的汉语编程系统。
6.2.2.2可接续性要求
软件必须提供对系统中各种码表的维护、补充操作。用户必须对系统的材料成本信息进行维护。
6.2.2.3可扩展性要求
可扩展性强,要求扩展灵活,结构层次分明。
7.安全性要求
7.1安全性策略
系统利用数据库本身严密的安全管理机制,采用对重要数据定期自动备份和采用目前比较流行的MD5数据加密算法,并在应用层通过设置合理的使用权限以及必要的操作记录,保证系统抵御来自内部的威胁,防火墙和安全网关技术为系统提供了抵抗外部入侵的能力。系统数据属于学校内部管理的重要数据,因此除学校管理人员外,其他人员不得访问,要求设有登录密码检验功能,并且此密码可以在以后进行修改;系统有严格的权限管理功能,各功能模块需要有相应的权限方能进入,如学生只能查询自己的信息状况和成绩信息;管理员可以对系统进行日常维护
7.2防止未经授权的访问
7.2.1防止未经授权侵入的措施
严格采用数据库的安全保护措施,防止数据库的不合法访问和恶意破坏数据库,使用防火墙和安全网关技术,为安全提供了保障。
7.2.2内部用户的访问控制
对重要数据定期自动备份和采用目前比较流行的MD5数据加密算法,并在应用层通过设置合理的使用权限以及必要的操作记录。
7.3信息的保护
7.3.1传输数据的保护
系统采用数据加密、访问控制等安全机制以确保学籍数据传输和存储的安全,保证系统运行可靠。
7.3.2数据库的保护
数据库保护设计通常考虑数据完整性、并发控制、数据恢复和数据安全等方面。数据完整性又分为实体完整性、参照完整性、用户定义完整性。数据安全性,采用双重密码保护措施。数据并发性,使用服务器及其操作系统的并发控制机制;解决多个用户,对数据库的并发共享。数据恢复性,定期定时地使用静态海量方式,直接备份学籍管理数据库如果数据库遭到破坏,则可以使用备份数据库进行恢复。
7.4病毒防范措施
经常更新和维护系统,定期备份重要的数据,准备影子系统,做好后端的病毒处理功能,实现严密的杀毒功能。
总结:
本次实验讨论了一个系统的两种分析方法,即结构化分析方法和面向对象分析方法,其中最主要的是分析过程的图解和过程分析。通过这次实验,对于一个系统的设计有了很清晰的见解,也明白了需求分析对软件设计的重要性。小组总结得出,本小组将图片过于细化,造成了图片繁多的现象,使之没有很好的体现图片之间的关联,部分关系过于简化,其实可以再改良一些细节,将多个图片融入一个关系当中,由于时间关系,还存在些许问题,不过主要目的是体验这个设计的过程,有所收获就是目标。
注意:文中很多地方有缺陷,仅供参考