成教管理系统需求分析.docx
- 文档编号:12811101
- 上传时间:2023-06-08
- 格式:DOCX
- 页数:41
- 大小:199.90KB
成教管理系统需求分析.docx
《成教管理系统需求分析.docx》由会员分享,可在线阅读,更多相关《成教管理系统需求分析.docx(41页珍藏版)》请在冰点文库上搜索。
成教管理系统需求分析
1绪论
1.1成教管理系统需求分析
当今时代是飞速发展的信息时代。
在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。
计算机的最大好处在于利用它能够进行信息管理。
使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
本系统就是为了管理好我校成人教育学生学籍、成绩信息而设计的。
在学校里,学校学生资料繁多,包含很多的信息数据的管理,现今,有很多的学校都是初步开始使用,甚至尚未使用计算机进行信息管理。
根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于学生成绩的统计和核实等往往采用算盘,计算器等工具进行,对学生考试资料,以及成绩管理多用手抄进行。
数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。
总的来说,缺乏系统,规范的信息管理手段。
尽管有的学校有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。
数据处理手工操作,工作量大,出错率高,出错后不易更改。
学校采取手工方式对教务档案进行管理,由于信息比较多,信息的管理工作混乱而又复杂;平时档案资料放在档案柜里,教师和教务处的管理员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。
如要对很长时间以前的成绩进行更改就更困难了。
基于这此问题,我认为有必要建立一个成人教育管理系统,使学生学籍、成绩管理工作规范化,系统化,程序化,避免教务管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改信息
本系统基于WEB设计,采用B/S三层结构体系(前端即浏览器,中间层即响应层,后端即数据端)。
所有应用数据安装在服务器端(后端),由中间层封装了所有业务逻辑,负责前端与后端之间的数据传递和处理,数据库的维护和系统功能升级只需在服务器端进行即可,客户端不进行任何模块的安装与设置,从而实现客户端的零维护,大大减轻管理员的工作量,并且提高了工作效率。
1.2功能模块介绍
1.2.1学籍管理模块(如图1.1所示)
实现对学校在校成教班学生、离校生档案信息资源的查询、统计、维护与管理。
包括:
(1)后台管理员添加、修改(姓名、密码、性别、身份证号、准考证号、专业、学习形式、民族、籍贯、学号、政治面貌、健康状况、婚否、参加工作时间、放学前最高学历、入学时间、现在工作单位名称、详细地址、联系电话、邮政编码、家庭地址、简历、社会关系、结业时间、毕业证编号、学籍变动情况、注册日期)。
〔2〕前台学生登陆后查询自己的档案信息,并可修改除姓名、准考证号、专业、学号、结业时间、毕业证编号之外的所有信息。
注册日期为程序自动提取并录入数据库。
1.2.2班主任管理模块(如图1.1所示)
实现对学校在校成教班学生、离校生成绩信息资源、毕业设计信息的查询、统计、维护与管理。
包括:
(1)班主任登陆后台可添加修改删除本班的所有学期的所有课程。
(2)班主任登陆后台将本班学生成绩添加到相应课程中,并可修改、删除。
输入成绩时按成绩一(第一次考试成绩)、成绩二(如有补考,则输入成绩二),最终记入数据库的成绩为成绩一和成绩二的最高成绩。
(3)班主任登陆后台可对本班学生的毕业设计信息进行增删改查等日常维护。
(4)学生登陆后可查询自己的所有成绩,及自己的毕业设计信息。
1.2.3超级管理模块(如图1.1所示)
1.新闻管理
超级管理员admin登陆后台,可对本系统新闻公告进行增删改查等维护。
2.留言管理
超级管理员admin登陆后台,可回复、删除学生提问及访客留言。
3.班主任、专业、管理
超级管理员admin登陆后台,可对班主任、专业、课程进行增删改查等日常维护。
管理员登陆(login.asp)
超级管理员
班主任
新闻管理
专业及
班主任
管理
添加超级管理员
课程管理
学生档案管理
学生成成绩管理
毕业设计管理
学生备注管理
图1.1成教管理系统功能模块介绍
1.3B/S模式分析
Browser/Server(简称B/S)即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式,其本质是三层结构C/S模式。
B/S模式是基于Intranet的需求而出现并发展的,Intranet是应用TCP/IP协议建立的企事业单位内部专用网络,它采用诸如TCP/IP、HTTP、SMTP和HTML等Internet技术和标准,能为企事业单位内部交换信息提供服务。
在B/S模式中,客户端运行浏览器软件。
浏览器以超文本形式向Web服务器提出访问数据库的要求,Web服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给Web服务器,Web服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。
B/S模式管理信息系统基本上克服了C/S模式管理信息系统的不足,其主要表现在:
●系统开发、维护和升级的经济性
对于大型的管理信息系统,软件开发、维护与升级的费用是非常高的,B/S模式所具有的框架结构可以大大节省这些费用,同时,B/S模式对前台客户机的要求并不高,可以避免盲目进行硬件升级造成的巨大浪费。
●B/S模式提供了一致的用户界面
B/S模式的应用软件都是基于Web浏览器的,这些浏览器的界面都很相似。
对于无用户交互功能的页面,用户接触的界面都是一致的,从而可以降低软件的培训费用。
●B/S模式具有很强的开放性
在B/S模式下,外部的用户亦可通过通用的浏览器进行访问。
●B/S模式的结构易于扩展
由于Web的平台无关性,B/S模式结构可以任意扩展,可以从一台服务器、几个用户的工作组级扩展成为拥有成千上万用户的大型系统。
●B/S模式具有更强的信息系统集成性
在B/S模式下,集成了解决企事业单位各种问题的服务,而非零散的单一功能的多系统模式,因而它能提供更高的工作效率。
●B/S模式提供灵活的信息交流和信息发布服务
B/S模式借助Internet强大的信息发布与信息传送能力可以有效地解决企业、高等学校内部的大量不规则的信息交流。
2数据库理论基础
一个成功的信息管理系统,是建立在许多条件之上的,而数据库是其中一个非常重要的条件和关键技术。
信息管理系统所涉及的数据库设计分五个步骤:
数据库需求分析、概念设计、逻辑设计、物理设计与加载测试。
数据库的设计中,如何处理多对多的关系和如何设计主键,是两个有着较大难度、需要重点考虑的问题。
本章着重从SQL应用、数据库设计范式和查询优化等方面来分析本系统的关键技术和实现难点。
2.1数据库系统设计及范式分析
信息系统的主要任务是通过大量的数据获得管理所需要的信息,这就必须存储和管理大量的数据。
因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速、方便、准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。
2.1.1数据库系统设计
数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。
数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。
数据库设计的步骤是:
(1)数据库结构定义
(2)数据表定义
(3)数据使用权限设置
(4)数据字典设计
2.1.2数据库设计范式分析
建立起一个良好的数据指标体系,是建立数据结构和数据库的最重要的一环。
一个良好的数据指标体系是建立DB的必要条件,但不是充分条件。
我们完全可以认为所建指标体系中的一个指标类就是关系数据库中的一个基本表,而这个指标类下面的一个个具体指标就是这个基本表中的一个字段。
但如果直接按照这种方式建库显然还不能算最佳。
对于指标体系中数据的结构在建库前还必须进行规范化的重新组织。
在数据的规范化表达中,一般将一组相互关联的数据称为一个关系(relation),而在这个关系下的每个数据指标项则被称为数据元素(dataelement),这种关系落实到具体数据库上就是基本表,而数据元素就是基本表中的一个字段(field)。
规范化表达还规定在每一个基本表中必须定义一个数据元素为关键字(key),它可以唯一地标识出该表中其它相关的数据元素。
在对表的形式进行了规范化定义后,数据结构还有五种规范化定义,定名为规范化模式,称为范式。
在这五种范式中,一般只用前三种,对于常用系统就足够了。
而且这五种范式是“向上兼容”的,即满足第五范式的数据结构自动满足一、二、三、四范式,满足第四范式的数据结构自动满足第一、二、三范式,……,依此类推。
第一范式(firstnormalform,简称1NF)就是指在同一表中没有重复项出现,如果有则应将重复项去掉。
这个去掉重复项的过程就称之为规范化处理。
在本文所讨论的开发方法里,1NF实际上是没有什么意义的。
因为我们按规范化建立的指标体系和表的过程都自动保证了所有表都满足1NF。
第二范式(secondnormalform,简称2NF)是指每个表必须有一个(而且仅一个)数据元素为主关键字(primarykey),其它数据元素与主关键字一一对应。
只要知道了一个合同记录的合同号,就可以唯一地在同一行中找到该合同的任何一项具体信息。
通常我们称这种关系为函数依赖(functionaldepEndence)关系。
即表中其它数据元素都依赖于主关键字,或称该数据元素唯一地被主关键字所标识。
第三范式(thirdnormalform,简称3NF)就是指表中的所有数据元素不但要能够唯一地被主关键字所标识,而且它们之间还必须相互独立,不存在其它的函数关系。
也就是说对于一个满足了2NF的数据结构来说,表中有可能存在某些数据元素依赖于其它非关键宇数据元素的现象,必须加以消除。
为防止数据库出现更新异常、插入异常、删除异常、数据冗余太大等现象,关系型数据库要尽量按关系规范化要求进行数据库设计。
2.2SQL语言介绍
2.2.1SQL基础
SQL(StructuredQueryLanguage,结构查询语言)是一个功能强大的数据库语言。
SQL通常使用于数据库的通讯。
ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。
SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。
使用SQL的常见关系数据库管理系统有:
Oracle、Sybase、MicrosoftSQLServer、Access等等。
虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。
但是,标准的SQL命令,比如"Select"、"Insert"、"Update"、"Delete"、"Create"和"Drop"常常被用于完成绝大多数数据库的操作。
SQL语言有着非常突出的优点,主要是:
⏹非过程化语言
⏹统一的语言
⏹是所有关系数据库的公共语言
2.2.2SQL语句
SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组:
DML(DataManipulationLanguage,数据操作语言):
用于检索或者修改数据;
DDL(DataDefinitionLanguage,数据定义语言):
用于定义数据的结构,比如创建、修改或者删除数据库对象;
DCL(DataControlLanguage,数据控制语言):
用于定义数据库用户的权限。
DML组可以细分为以下的几个语句:
SELECT:
用于检索数据;
INSERT:
用于增加数据到数据库;
UPDATE:
用于从数据库中修改现存的数据;
DELETE:
用于从数据库中删除数据。
DDL语句可以用于创建用户和重建数据库对象。
下面是DDL命令:
CREATETABLE,ALTERTABLE,DROPTABLE,CREATEINDEX,DROPINDEX
下面是一个简单SQL语句的例子:
我们使用SQL语句来从Students中检索stu_ID为15的学生姓名:
SELECTNameFROMStudentsWHEREstu_ID=15
数据定义语言DDL:
它是用来创建和修改数据库结构的一种语句,包括Create、Alter和Drop语句。
数据操作语言DML:
包括数据查询与数据更新。
数据查询主要是由Select语句完成,这一点不再赘述。
而数据更新所造成的风险大大超过数据查询。
数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,DBMS还必须协调多用户的并行更新,以确保用户和它们的更改不至于影响其它用户的作业。
用于修改数据库内容的SQL语句主要有以下三个:
(1)Insert,向一个表中加入新的数据行
(2)Delete,从一个表中删除数据行
(3)Update,更改数据库中已经存在的数据
3ASP数据库编程
3.1ASP简介
MicrosoftActiveServerPages即我们所称的ASP,其实是一套微软开发的服务器端脚本环境,ASP内含于IIS3.0和4.0之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。
有了ASP你就不必担心客户的浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。
当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
以下罗列了ActiveServerPages所独具的一些特点:
1.使用VBScript、Jscript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。
2.无须compile编译,容易编写,可在服务器端直接执行。
3.使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。
4.与浏览器无关(BrowserIndependence),用户端只要使用可执行HTML码的浏览器,即可浏览ActiveServerPages所设计的网页内容。
ActiveServerPages所使用的脚本语言(VBScript、Jscript)均在WEB服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。
5.ActiveServerPages能与任何ActiveXscripting语言相容。
除了可使用VBScript或Jscript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如REXX、Perl、Tcl等。
脚本引擎是处理脚本程序的COM(ComponentObjectModel)物件。
6.ActiveServerPages的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
7.可使用服务器端的脚本来产生客户端的脚本。
8.物件导向(Object-oriented)。
9.ActiveXServerComponents(ActiveX服务器元件)具有无限可扩充性。
可以使用VisualBasic、Java、VisualC++、COBOL等编程语言来编写你所需要的ActiveXServerComponent。
3.2ASP内置组件介绍
什么叫组件(ActiveServerCompontents)?
组件是基于Activex技术的代码片断,通过指定接口提供指定的一组服务,组件供给客户端(Clients)在运行时候请求的对象。
你可以理解成组件是一种程序,通过调用这种程序,你可以实现你在ASP程序中无法实现或者很难实现的功能,组件是一种很好的代码重用方法。
我们可以运用ActiveServerPages设计制作动态、交互的Web页面,但是一旦你开始着手工作,参与一些实际工作的时候,你会发现asp在某些方面功能不强,甚至不借助服务器端组件就很难实现某些功能,例如:
数据库操作(我们通常使用ADO,ADO就是一个组件),邮件功能,文件系统操作,图形功能...但是幸运的是我们可以找到很多组件来提高ASP编程应用能力,下面对ASP内置组件作简单的介绍。
·ADROTATOR组件
广告轮显组件
属性:
Border,Clickable,TargetFarms
方法:
GetAdvertisement
·FILEACCESS组件
文件操作组件
FileSystemObject对象
方法:
CreateTextFile,OpenTestFile,CopyFile,DeleteFile,
FileExists,GetExtensionName,GetFile,GetFileName,MoveFile,
CopyFolder,GetParentFolderName,GetSpecialFolder,GetTempName,
GetDrive,GetDriveName,DriveExists,Drives,
GetAbsolutePathName,GetBaseName..
·CONTENTLINKING组件
此组件主要用于管理网页网址间的超文本链接
方法:
GetListCount,GetNextURL,GetPreviousDescription,
GetListIndex,GetNthDescription,GetPreviousURL,
GetNextDescription,GetNthURL...
·BROWERCAPABILITIES组件
浏览器性能组件
属性:
browser,version,majorver,minorver,beta,Platform,ActiveXControls,backgroundsounds,Cookies,Frames,
Javaapplets,Tables,Vbscript,Javascript,cdf...
建立方法
SetBrowerType=Server.CreateObject("MSWC.BrowserType")
3.3SQL语言在ASP中的应用
数据库查询语言(SQL)是使用于关系数据库的标准语言,被很多类型的数据库所支持。
下面简单介绍我们平时使用最频繁,也是本系统所使用的主要语句:
SELECT的语法以及使用。
语句的语法如下:
SELECT[all|*|distinctcolumn1,column2]
FROMtable1[,table2]
WHERE[condition1|expression1][ANDcondition2|rxpression2]
在上面的语法中,[]外的语句是必须的,而[]内的是可选的,对于以|分割的操作符,则表明语法中必须从|分割的操作符中选择一个。
下面的语法描述同上。
在SELECT...FROM...WHERE语句中其中SELECT指定需要检索的字段,FROM指定要查询的表,WHERE指定选择纪录的条件,另外还可以包含ORDERBY语句来制定排序纪录。
语法如下:
ORDERBYcolumn1|Integer[ASC|DESC]
其中column1制定排序的字段,也可以使用Integer指定的字段索引来排序,ASC为升序、DESC为降序。
在SELECT语句的WHERE中,我们可以使用操作符号>来比较大小以及使用LIKE进行匹配。
在WHERE语句中,可以使用的操作符有以下几类:
1、比较操作符
包含=、<>、>、<、>=、<=等若干类
2、逻辑操作符
包含以下若干类:
LIKE、IN、BETWEEN、UNIQUE、ISNULL、EXISTS、ALL和ANY
LIKE操作符通过使用通配符将一个值同其它值比较,在ASP的SQL查询中,可以使用的通配符是*和?
其中*代表任意的若干个字符,而?
代表一个字符,例如上面语句中的LIKE'*Beginner*代表查找所有包含字符串Beginner的值。
不过要注意的是使用*和?
作为通配符是VB的专利。
真正的SQL语言的通配符是%和_,其中%代表任意多个字符,_代表一个字符。
另外MicrosoftJetEngine对于LIKE操作符还提供了其它一些的过滤选项。
IN操作符用于比较某一个值是否等于几个值中的一个值,例如下面的语句:
"SELECT[stu_name],[Year]FROM[student]WHERE[Year]IN(2001,2002,2003)"
将从表Titles中选择所有在2001,2002,2003年入学的学生名单。
BETWEEN操作符勇于在两个值之间搜索,例如WHERE[Year]BETWEEN2000AND2003指定入学年份必须在1989年和1991年之间。
对于逻辑操作符,可以结合NOT操作符实现改变查询条件的方向。
例如WHERE[Year]NOTIN(2001,2002,2003)
3、连接符
WHERE中的连接符包括AND和OR,使用AND时,所有查询都必须是True时,条件才成立,而使用OR时,只要连接的一个查询为True,条件就成立。
在使用比较操作符时要注意,在ASP操作数据库引擎时对于查找的字符串,要使用单引号或者双引号将字符串括起来,例如WHERE[Name]='LiGang'。
而对于日期类型的数据,要使用#号将日期括起来,例如WHERE[BirthDay]>#1980-10-01#而在使用通配符和LIKE操作符时,需要使用引号而不是#号,例如WHERE[BirthDay]LIKE"1990-01-*"。
引号告诉数据库引擎将日期当字符串处理,而#号告诉数据库引擎将日期当数字处理。
4成教管理信息系统设计
4.1成教管理系统数据库设计
4.1.1概念设计
在概念设计阶段中,应该从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。
然后再把概念模式转换成逻辑模式。
将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。
利用ER方法进行数据库的概念设计,可分成三步进行:
首先设计局部ER模式,然后把各局部ER模式综合成一个全局模式,最后对全局ER模式进行优化,得到最终的模式,即概念模式。
(1)设计局部ER模式(如图4.1)
实体和属性的定义:
学生{ id(自动编号) 、stu_name(姓名) 、stu_pw(密码)、stu_sex(性别)、stu_card(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 成教 管理 系统 需求 分析