学生管理系统需求分析_总体设计_详细设计
第一章引言
1. 1 编写目的
本需求规格说明书是为了开发学生信息管理系统而编写,主要面向系统分析员、程序员、测试员、实施员和最终用户。
本说明书是整个软件开发的依据,它对以后阶段的工作起指导作用,也是项目完成后系统验收的依据。
1. 2 项目背景
开发软件的名称:学生信息管理系统
项目的任务提出者:江汉大学文理学院
开发者:袁俊
用户:江汉大学文理学院学生信息管理员
实现软件的单位:06软件一班
兼容系统:Windows XP SP2/SP3
开发工具:https://www.360docs.net/doc/fd10772251.html,+ Microsoft SQL Server 2000
1.3 相关术语
Macromedia Dreamweaver 8:网页设计工具
Microsoft SQL Server:数据库工具
1.4 参考资料
[1]《软件工程模型与方法》,肖丁等,北京邮电大学出版社。
[2]《https://www.360docs.net/doc/fd10772251.html,+Dreamweaver8案例精粹》武新华等,西安电子科技大学出版社
[3]《信息系统应用与开发案例教程》,陈承欢,清华大学出版社。
第二章需求规定
2.1 功能分析
在学生信息管理系统中,主要有用户登陆、学生信息管理、课程信息管理、用户管理等功能,功能分析如下:
(1)用户登陆
学生信息管理网站采用用户名及密码验证模式,进入学生信息管理网站前,用户必须在登陆页面输入用户名及密码,只有验证通过的用户方可进入学生信息管理网站操作主页面。(2)学生信息管
包括3个功能模块:学生个人信息的添加、学生信息的查询以及学生信息的修改于删除。(3)课程信息管理
包括3个功能模块:课程基本添加与删除处理、成绩查询处理以及学生选课信息的查询处理。
(4)用户管理
包括2个功能模块:用户信息查询以及用户的删除与处理。
2.2 性能要求分析
(1)系统易操作性
所开发的系统应做到操作简单,尽量使系统操作不受用户对电脑知识水平的限制。(2)系统具有可维护性
由于系统涉及的信息比较广,数据库中的数据需定期修改,系统可利用的空间及性能也随之下降,为了使系统更好地运转,学院可以对系统数据及一些简单的功能进行独立的维护及调整。
(3)系统具有开放性
该系统能够在开放的硬件体系结构中运行,并且能与其他系统顺利连接,不会因外部系统的不同面要做在量的修改工作。
2.3逻辑模型的建立
经过以上调查分析,明确以所开发系统的功能需求和性能要求,发现了存在的问题,弄清了系统的功能,为系统逻辑模型的建立提供了依据。系统分析的主要成果是建立系统的逻辑模型,本系统的逻辑模型主要以系统的数据流图和数据词典作为描述功具。
2.3.1 数据流图
(1)顶层图
分析学生信息管理系统的数据来源和去向,确定外部项,绘制出数据流图的顶层图,如图2-1所示。
图2-1 学生信息管理系统的顶层图
(2)顶层数据流图从总体上反映了学生信息管理系统的信息联系。按自顶向下、逐层分解的方法对顶层图进一步细化,划分出几个主要的功能模块,并明确各功能之间的联系,绘制出数据流图的0层图,如图2-2所示。
图2-2 学生信息管理系统的0层图
2.3.2 数据字典
2.3.2.1 数据流词条描述(1)学生信息描述
(2)选课信息描述
(3)学生成绩查询描述
(4)用户信息描述
2.3.2.2数据元素词条描述学生学号定义
2. 4输入需求
用户需输入学生的学号进入相应用户界面。
2. 5输出需求
跟据用户需求输出相应信息。
学生信息管理系统详细设计
一.系统模块的实现
在系统中包括以下功能:系统管理、学籍信息管理、课程信息管
理、成绩信息管理、帮助。分为以下几个模块
主窗体
1.1登录模块
为了系统的安全,在进入系统之前首先会出现一个登录模块,用户只有在输入正确的用户名和正确的密码之后,才能进入系统。
用户登录窗体中放置了两个文本框(Textbox),用来输入用户名和密码;两个按钮(CommandButton)用来确定或者取消登录。
设置一个SSTab控件,供不同用户登录时选择用户权限,超级用户拥有一切权限(包括添加删除和修改以及对用户的管理),普通用户拥有受限制的权限(查询及修改密码),提高了数据库的安全性。
1.2系统管理模块
1.2.1添加用户窗体的创建
进入系统后,将会出现一个主窗体,选择系统管理模块下的添加用户,就可以进入添加用户窗体,可以通过该窗体增加新的用户。
在这个窗体中放置了三个文本框,用来输入用户名和密码;两个按钮用来确定是否添加用户;三个标签用来标示文本框的提示。
1.2.2修改密码窗体的创建
在系统管理模块下,进入修改密码窗体,用户可根据需要修改自己的密码。
在这个窗体中放置了两个文本框,用来输入密码和确认密码;两个按钮用来确定是否修改密码;两个标签用来标示文本框的内容。
1.3学籍管理模块
1.3.1添加学籍信息功能
选择主窗体中学籍管理模块下的添加学籍信息,就可进入添加学籍信息的窗体,在该窗体中我们可以对学生的学号、姓名、性别、出生日期、班号等学生的信息进行添加。设计时我尽可能设想各种边界条件,如记录为空,输入为空,输入出错等,当输入的信息满足这些边界条件时,将会弹出一个提示框提醒用户,以便用户能及时地做出修改。添加的信息将全部存储到数据库中。
在窗体上放置多个文本框和下拉式文本框,用来输入学籍信息;两个按钮用来确定是否输入学籍信息;一个按钮用来退出窗体;多个标签用来提示文本框中需要输入的内容。
1.3.2修改学籍信息功能
点击学籍管理模块下的修改学籍信息,就进入修改学籍信息的窗体,在该窗体中我们可以对前面添加的学籍信息进行修改。由于用户的需求不同,有的是要对学生的信息做个别的改动,有的是需要删除该条记录,所以该窗体同时包括了修改记录的功能和删除记录的功能。又考虑到用户的误操作,为了方便,我在该窗体中增添了取消修改的功能,可一次性把输入文本框的内容全部置空。
1.3.3查询学籍信息功能
进入学籍管理模块下的查询学籍信息窗体,在该窗体中可以对学生的信息进行查询,有三种查询方式。我在设计时,一方面考虑到简洁的因素,用户可以只
设置一种查询方式进行查询;另一方面又为了避免数据的重复,用户可以输入详细的信息,也就是同时设置多种查询方式进行查询。进入查询窗体时,myflexgrid 中会显示出所有学生的学籍信息,如果不设置查询方式就进行查询,是无效查询,系统会给出提示。在设置好查询方式后,便开始查询,将在myflexgrid中显示出用户所需的学生的学籍信息。
1.4课程管理模块
1.4.1课程信息浏览功能
点击主窗体中课程管理模块下的课程信息浏览,可进入课程信息浏览窗体。为了用户的使用方便,我使用了SSTab控件,故在该窗体中同时包含了课程信息的添加和修改的功能。并且我还在窗体上设置了myflexgrid控件。添加和修改记录后,对于数据有何变化都可以在myflexgrid中显示出来,使用户对所做的操作一目了然。
1.4.2年级课程设置功能
进入课程管理模块下的年级课程设置窗体,可以对每一个年级的课程进行设置。
1.5成绩管理模块
1.5.1成绩信息管理功能
点击成绩管理模块下的成绩信息浏览,进入成绩信息浏览窗体,考虑到美观和实用性,界面设置如下图。用Frame控件在窗体中划定一个可浏览成绩信息地方,再在Frame中添加MSFlexGrid控件,运行时将在MSFlexGrid中显示所有学生的成绩信息。使用Toolbar来建立工具条。点击工具条中的修改、添加和查询按钮就可分别进入修改成绩信息窗体、添加成绩信息窗体和查询成绩信息窗体。这三个窗体的界面设置分别类似于学籍管理下修改学籍信息窗体、添加学籍信息窗体和查询学籍信息窗体。
1.6其它
操作人员在遇到困难时即可进入帮助菜单寻求帮助。帮助菜单下的“使用说明”将解答你的疑问。帮助菜单下的“关于”详细地列出了关于作者的一些情况,关于
版权的一些情况和关于系统的一些情况。进入打印菜单栏,可对你所需要的信息进行打印。
二系统后期工程
在开发这个软件系统的漫长过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观现实,在本次设计过程中,我采用循环测试法,力求在每个阶段结束之前通过严格技术审查,即每完成一个功能,就进行测试,尽可能早的发现并纠正差错,完成模块测试之后再进行系统测试。
在该设计中,我偏重考虑了当用户输入的信息出错时,系统就会出现提示,以便让用户知道出错的原因,并能及时做出修改,所以我站在用户的角度考虑,尽可能设想各种边界条件,如记录为空,输入为空,输入出错等,以此来发现错误,纠正错误,取得了一定的效果。
当然,该学生信息管理系统也存在一些不足之处。在成绩管理界面,当3次改变成绩为不同的内容时,程序会出错。虽然尝试了很多方法,仍不能解决。再一点就是关于打印和年级课程信息设置都未能实现,这有待于以后的进一步提高。一个应用系统性能的优劣,效率的高低始终应当由用户来做出判决,应用系统在运行过程中,用户会提出一些新的需求和建议,我就会根据用户需求的变化,对本系统做出一定的修改,使其进一步地得到完善和提高。
1. 概述
1.1.目的
为了彻底解决了长期困扰教学信息化工作当中安全性、可靠性的问题;
为了使管理人员可以随时看到更新的数据,极大地提高信息传递的速度;为了管理者再也不必为聘用专门的操作人员来给众多教师编辑学生成绩资料而殚精竭虑,在此,设计了学生课程成绩查询管理信息系统,使得各个使用者在操作上,从此变得那么从容简单,省时又省心。
1.2. 参考文档
[1] 张海藩.软件工程导论[M].第4版.北京:清华大学出版社.2007.25-63.
[2] 赵洋,张丽,王恩东,李玉红.基于B/S结构学生成绩管理系统设计与实
现[J].沈阳化工学院学报.2007,21(2).140-142.
[3] 游应德.基于Intemet的学生信息管理系统—学生成绩管理系统[D].电
子科技大学.成都:电子科技大学,2007.
[4]郑若忠,王鸿武.数据库原理与方法.湖南科学技术出版社.
2. 总体结构设计
2.1.层次图
2.2结构图
2.3
功能设计
学生成绩单录入部分可以对某一个学生进行成绩录入,但是一次只能录入一条成绩记录,同时可对缺考、免考、补考学生成绩进行录入。
学生成绩显示/修改部分可以对已录入的成绩进行显示和修改,但是只能对系统默认的当前学期的记录进行修改。
学生成绩显示/删除部分可以对已录入的成绩进行显示和删除,但是也只能对系统默认的当前学期的记录进行删除。
2.3.
运行环境设计
登陆
学生端 教师端 教务处
查询成绩
查询基本
录入成绩
修改成绩
删除成绩
查询成绩
录入基本
修改学生
删除学生
查询信息
2.3.1.硬件设计
1.服务器:
CPU:P4 2.0G以上
内存:512M
硬盘:60G以上
网络:100M /1000M Ethenet
2.客户机:
CPU:500Mz
内存:64M以上
硬盘:1G以上
网络:10M Ethenet
2.3.2.软件设计
1.服务器:
操作系统:Windows 2000/XP/2003
WEB服务:IIS5.0
数据库:SQL Server 2000(建议打Service Pack 3补丁)
2.客户机:
操作系统:Windows系列之一
浏览器:IE6.0以上版本
2.3.3.网络设计
采用sql server2000网络关系型数据库,存储读取数据将同步进行。
3.详细设计
用判定树表示教师端模块
4.数据结构设计
4.1.数据分析
第一层:基础数据及基础数据库分析
此类报表主要反映学校教师、学生和课程等的资料情况。此类报表是将系统中较为常用的学生、教师和课程等基础资料以报表的形式予以反映。
在本层需要设计三个主表,分别用来存储学生资料、教师资料和课程资料。
第二层:业务流程数据及业务流程数据库分析
在编辑此类表单时,可以点击相应的下拉按钮,这时所有的选项资料都会显来,您可以根据实际情况来编制表单,使整个过程更加清晰,操作更加简便。
在本层需要设计一个学生成绩主表,用来存储学生的平时成绩表。
4.2.数据库设计
4.2.1.设计原则
1.密码管理:学生修改学生查询密码;教师可以修改查询密码。
2.每个教师可以查看所有学生的成绩,包括每门课程的成绩、每门课程的
平均成绩、每个分数段的成绩。
3.学生根据自己的学号查询本人的成绩。
4.教师可以登记、修改、查询自己所讲授课程的学生的成绩、该课程的总
分、平均成绩、各分数段成绩人数统计、不及格学生的名单、成绩等等。
4.2.2.数据库组成
数据表3个:
学生表(5个字段:xh, xm, xb, csrq, bj),其中有各班学生的记录
课程表(4个字段:kch,kcm, js, xf),其中有课程的记录;
成绩表(3个字段:xh, kch, cj),其中有学生成绩的记录。
学生基本信息表(Student)描述如下:
学生期末成绩表(Grade)描述如下:
学生的课程管理(Course)描述如下:
4.2.3.面向对象数据库设计方法
1)考虑对象的静态和动态属性
对象属性决定了数据库或包含具有相同类型对象的表的内容。
2)描述数据实体及其属性
包含所有静态属性的单个对象被称作数据实体。每个单独的数据实体必须唯一,这样可以与其他实体区分。包含在数据实体中的对象的性质被称作为属性。(attribute)
3)用方法来说明对象的行为
关系数据库对象的行为决定了数据对象参与事务的特征。事务的发生对应着事件,通过使用响应事件的方法来实现事务。
4)在单个表中合并不同实体
可以在单个表中包含不同对象类型的说明,只要可以按照相同方式描述属性和行为,以及区分不同对象类型即可。