文档库 最新最全的文档下载
当前位置:文档库 › 学生信息管理系统设计说明书

学生信息管理系统设计说明书

学生信息管理系统设计说明书
学生信息管理系统设计说明书

学生信息管理系统设计说明书

1 系统设计

在数据库系统开发的前期,一般要对系统的开发目的、使用对象、实现的功能等进行详细的分析,确定系统的开发方案。

?系统功能分析

?系统功能模块设计

?操作流程图

1.1 系统功能分析

开发目的:

学生信息管理系统的开发目的是管理全校学生的各种信息,方便学生信息的查询。系统的使用对象是学生管理部门,如教务处工作人员、校院系领导、班主任、教师等。本章所开发的系统的主要使用对象是教务处。

主要功能:

?学生基本信息的录入,包括:学号、姓名、性别、班级、出生日期、籍贯等;

?学生基本信息的修改维护;

?学生学籍变动情况的记录,包括:休学、复学、转系、结业、毕业等;

?学生奖惩情况的记录和修改,包括:奖励和处罚;

?学生信息的查询;

?院系设置管理,包括院系的添加、修改和删除等;

?班级设置管理,包括班级的添加、修改和删除等。

1.2 系统功能模块设计

根据系统所要实现的功能,按照结构化程序设计的原则,可以将整个系统划分为若干个功能模块。

1.3 操作流程图

通过操作流程分析,不但可以具体化系统的功能模块的组成,还可以明确系统中的数据流程,明确系统中所要保存的数据以及数据间的关系,为下一步的数据库设计打好基础。本书中采用以下的符号表示操作流程。

大家对学生信息管理是比较熟悉的,因此不难画出右图所示的学生信息管理操作流程图。需要说明的是各所学校的实际情况可能有所不同,同学们可以根据自己学校的实际情况画出符合本校特点的操作流程图。

2 数据库设计

数据库是信息管理系统的基础,在系统中占有重要的地位,数据库结构是否合理直接关系到系统功能的实现和运行的效率。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性,也有利于系统的编程实现。

数据库系统设计一般包括如下几个步骤:

?需求分析;

?概念结构设计;

?逻辑结构设计;

?物理结构设计;

?应用程序设计及调试;

?性能测试与确认。

2.1 数据库需求分析

需求分析是整个数据库设计过程中最重要的步骤之一,是后继各阶段的基础。在需求分析阶段,需要从多方面对整个系统进行调查,收集和分析系统对信息和处理两个方面的需求。

收集资料是数据库设计人员和用户共同完成的。必须强调用户的参与,这是数据库应用系统设计的特点。收集资料的目的是明确用户的需求。用户的需求主要包括第三个方面:

?信息需求,用户要从数据库获取的内容;

?处理需求,即完成什么处理功能以及采用何种处理方式;

?安全性及完整性需求。

分析的过程是对所收集的数据进行抽象的过程。抽象是对实际事物或事件的人为处理,抽取共同的本质特征,忽略细微末节,并用各种概念进行精确描述,这些概念组成某种数据模型。

在上节对学生信息管理系统操作流程分析的基础上,可以列出以下学生信息管理系统所需的数据项和数据结构:

?院系设置:院系编号、院系名称、院系描述、院系领导、领导联系方式等;

?班级设置:班级编号、班级名称、班级创建时间、班级描述、所属院系、班主任、

班主任联系方式等;

?学生基本情况:学号、姓名、性别、出生日期、籍贯、所属班级等;

?学籍变更记录:记录号、学号、变更类别、记录时间、详细描述等;

?奖励记录:记录号、学号、奖励类别、记录时间、详细描述等;

?处罚记录:记录号、学号、处罚类别、记录时间、详细描述等。

2.2 数据库概念结构设计

E-R模型(Entity-Relationship Module)简称E-R图,是描述概念世界,建立概念模型的实用工具。数据库设计工作比较复杂,将现实世界的数据组织成符合具体数据库管理系统所采用的数据模型一般情况下不可能一次到位,P.P.S.Chen于1976年提出形象的实体-联系方法。通过绘制E-R图,可以描述组织模式,并可以进一步转化为任何一种DBMS所支持的数据模型。E-R图有三要素:

?实体:用矩形框表示,框内标注实体名称;

?属性:用圆角矩形形表示,并用连线与实体连接起来,表示实体的有关属性;

?实体间的联系:用菱形框表示,框内注明联系名称,并用连线将菱形框与有关实

体连接,在连线上注明联系的类型。

在关系复杂的数据库系统的设计中,E-R图的设计包括局部E-R图设计、综合E-R图设计、E-R图优化等步骤。本章的学生信息管理系统的功能比较简单,其E-R图如右图所示。

2.3 数据库逻辑结构设计

概念结构设计的结果得到一个与计算机、软硬件的具体性能无关的全局概念模式。数据库逻辑设计的任务是将概念结构转换成特定DBMS所支持的数据库模型。从E-R图所表示的概念模型可以转换成任何一种具体DBMS所支持的数据模型。

本系统采用关系模型,转换的原则是:

?每个实体转化成一个关系模式(即数据表),实体的属性就是关系的属性,实体的

关键字就是关系的关键字;

?每个1:1的联系转换成一个关系模式。每个实体的关键字都是该关系模式的候选

关键字;

?每个1:n的联系转换成一个关系模式。多方的实体的关键字是该关系模式的关键

字;

?每个m:n的联系转换成一个关系模式。联系中各实体关键字的组合组成该关系模

式的组合关键字;

?具有相同关键字的关系可以合并。

在进行完概念结构的转化以后,还需要进行规范化处理,通过模式合并和模式分解,优化数据逻辑结构,使数据库既能有效减少冗余信息,又能提高数据库的查询、操纵性能。

根据学生信息管理系统的E-R图,通过简单的优化,可以设计6个关系模式(即数据表)来存储所有的信息。为了操作的简便,系统中DBMS选用Access 2000。6个数据表的结构如表1到6所示。

表1 院系设置信息表(Department)

字段名数据类型(长度) 必添字段说明DepartID 文本(2)是院系编号(主关键字)DepartName 文本(20)是院系名称DepartHead 文本(8)否院系领导

Telephone 文本(13)否领导联系电话Description 备注否院系描述

表2 班级设置信息表(Class)

字段名数据类型(长度) 必添字段说明ClassID 文本(6)是班级编号(主关键字)ClassName 文本(20)是班级名称

DepartID 文本(2)是所属院系(外关键字)BeginDate 短日期是班级创建日期

Master 文本(8)否班主任

MasterTel 文本(13)否班主任联系电话Description 备注否班级描述

表3 学生基本信息表(Student)

字段名数据类型(长度) 必添字段说明StudentID 文本(8)是学号(主关键字)Name 文本(8)是姓名

Sex 文本(2)是性别

ClassID 文本(6)是班级编号

Birthday 短日期否出生日期

Native 文本(16)否籍贯

表4 学籍变更记录表(Change)

字段名数据类型(长度) 必添字段说明

CID 自动编号是记录号(主关键字)StudentID 文本(8)是学号

Change 文本(4)是学籍变更类型

RecDate 短日期是记录日期Description 备注否说明

表5 奖励记录表(Reward)

字段名数据类型(长度) 必添字段说明

RID自动编号是记录号(主关键字)StudentID文本(8)是学号

Reward文本(20)是奖励类型

RecDate短日期是记录日期Description备注否奖励具体说明

表6 处罚记录表(Punish)

字段名数据类型(长度)必添字段说明

PID自动编号是记录号(主关键字)StudentID文本(8)是学号

Punish文本(8)是处罚类型

RecDate短日期是记录日期Description备注否处罚具体说明

2.4 数据库结构的实现

数据库逻辑结构设计完成以后,就可以在DBMS上创建数据库和数据表了。一般情况下可以根据DBMS的SQL语法建立相应的SQL语句,相对于直接操作建立数据库而言,通过SQL 创建数据库的好处是便于数据库的重复创建。

2.5 初始数据的录入

在某些数据库系统的开发中,需要录入一些初始据。在完成数据库的创建以后,便可以在DBMS中录入初始数据。本章的数据库中不需要初始数据。

数据库创建完毕以后,还需要对数据库的性能进行一些测试,以确保数据库设计的合理性,避免在系统软件开发过程中发现数据库不合理而修改数据库。

3 系统主窗体的创建

数据设计完成后,下一步的工作就是使用某种程序开发语言实现系统的具体功能,本书采用的语言为微软公司的中文版Visual Basic 6.0程序开发语言。

本节内容包括如下几个方面:

?创建工程文件;

?主窗体的设计;

?主菜单设计;

?部分程序的实现。

3.1 创建工程文件

启动Visual Basic 6.0,直接单击【打开】按钮,Visual Basic创建工程文件,并自动产生一个窗体文件。根据Visual Basic配置的不同,有时会出现不同的运行界面,系统会直接创建新的工程文件。

此外,也可以通过单击【文件】→【新建工程】菜单项来创建工程。

为了构造便于用户操作的程序界面,需要在工程中添加相应的部件。单击【工程】→【部件】菜单项,打开“部件”对话框,在“控件”选项卡的列表框中将下面所列控件前面的方框勾选,然后单击“确定”按钮。相应的控件就会被添加到工具箱上。本程序需要添加如下几个部件:

?Microsoft Data Bound Grid Control 5.0 (SP3)

?Microsoft Tabbed Dialog Control 6.0

?Microsoft Windows Common Controls-2 6.0

3.2 主窗体的设计

在设计复杂的应用程序时,为了方便用户的操作,往往要考虑系统的界面框架结构,常用的框架结构有SDI(单文档界面)和MDI(多文档界面)两种。为简便起见,本例采用单文档界面。

打开主窗体(文件名为FormMain),设置窗体的有关属性。

属性名属性值说明

名称frmMain主窗体的名称

Caption学生信息管理系统主窗体标题

BackColor&H8000000C&主窗体背景颜色WindowState 2 - Maximized主窗体启动后最大化

3.3 主菜单的设计

单击【工具】→【菜单编辑器】菜单项,打开菜单编辑器设计窗体的主菜单。为每个菜单项取一个比较有意义的名称。

在系统开发时,应该养成良好的命名习惯。推荐使用驼峰式格式,即每个标识符开头字母要大写,内嵌单词的首字母也要大写,其他字母用小写。在给控件命名时,每个控件名称前面加上该控件的缩写,一般取2~4个字母,采用小写,缩写时取控件名的主要辅音,以元音开头的控件可以取第一个元音字母。本书中所有标识符都采用这个约定。

菜单项结构菜单项名称说明

系统维护(&S)mntSystem一级菜单(mnt是MenuItem的缩写)(&D)mntSysDepart二级菜单项

(&C)mntSysClass二级菜单项

-mntSysSP二级菜单项,分隔线

(&Q)mntSysQuit二级菜单项

学生管理(&t)mntStudent一级菜单

(&M)mntStuManage二级菜单项

-mntStuSP二级菜单项,分隔线

(&Q)mntStuQuery二级菜单项

教务管理(&E)mntEduAdmin一级菜单

(&C)mntEduChange二级菜单项

(&R)mntEduReward二级菜单项

(&P)mntEduPunish二级菜单项

3.4 部分程序的实现

先实现退出功能。单击主窗体的“退出系统”菜单项,系统自动生成相应事件过程框架,并切换到代码窗口,添加退出过程代码如下:

Private Sub mntSysQuit_Click()

End

End Sub

主窗体中其它菜单项功能的实现在后面介绍。

4 院系设置模块

院系设置模块是学生信息管理系统的辅助功能模块,实现院系添加、删除以及院系信息浏览、修改等功能。

本节内容包括如下几个方面:

?模块功能分析;

?窗体的创建;

?模块用户界面的设计;

?模块功能的实现。

4.1 模块功能分析

实现思路

在窗体上添加控件和数据控件,将其它控件与数据控件绑定,就可以实现院系数据的显示和浏览。为了便于用户直观浏览院系设置信息,本系统采用数据表格的形式显示数据。数据的添加、删除、修改可以通过数据控件和数据绑定控件来实现。

为了验证数据的有效性,保持数据库的完整性,在添加、删除、修改数据时必须对数据进行验证,可以在窗体上再添加一个数据控件,通过它查询相关数据表来验证数据。

在添加记录时,通过字段内容检验来实现域值和非空字段验证,通过对新添加的院系编号的查询,验证院系编号的唯一性(记录层验证)。

在删除记录时,通过查询是否有属于该院系的班级来确保数据的完整性。

实现步骤

?添加、保存窗体,设置窗体属性;

?添加控件,设置控件属性,构造窗体界面;

?编写代码,实现相应功能;

?和主窗体连接,测试模块功能。

4.2 主窗体的设计

在Visual Basic中单击【工程】→【添加窗体】(或者工具栏的“添加窗体”按钮),

相关文档