admin 管理员组文章数量: 887191
2024年2月7日发(作者:c 教程 while 循环)
华东师范大学硕士学位论文基于B/S结构的学生资助信息管理系统的设计与实现姓名:于乐申请学位级别:硕士专业:软件工程指导教师:张桂芸20091101
摘要随着信息技术的发展,基于WEB的各种网络应用系统随之产生,这些系统已经应用于社会生活的各个领域。把计算机网络技术与学生资助工作相结合,设计开发学生资助信息管理系统,既有助于提高资助管理工作标准化和信息化水平,更是实现资助工作不断探索和创新的重要过程。本文在充分调研的基础上,提出系统需求分析,采用面向对象的软件工程方法分析、设计学生资助信息管理系统。系统采用MVC应用程序框架,并给出系统层次划分和功能模块结构图;数据库的开发过程从数据库设计的原则和基本步骤出发,研究制定完整的数据字典,根据系统涉及的实体和属性,给出系统数据库表关系图;在技术实现过程中,重点描述了四个功能子系统和系统用户登录过程,并给出主要代码实现方法。结合系统功能要求,通过对基于WEB的MIS系统技术分析,提出以MYSQL数据库为依托,采用B/S架构体系结构,使用PHP技术,运用Apache服务器控件设计开发完成。最后,在认真总结本项目开发设计工作的基础上,对学生资助信息管理系统的扩展设计做了进一步展望。目前,该系统已经通过测试,各项功能达到预期效果。实践表明,学生资助信息管理系统能够提高资助管理的工作效率,降低办公成本,使资助工作信息化水平进一步提升。【关键词】学生资助;B/S;Apache:PHP)MySql【论文类型】应用基础
AbstractVariouswebsiteapplicationshavebeenmatureddeveloped,whichhavebeenusedintodifferentasinformationtechnologiesinsociety.Theindustriescombinationofcomputernetworktechnologyandstudentassistanceprogramisdesignedtodevelopthestudentassistanceinformationmanagementsystem,whichlevelinisexpectedtoextendtheexploratoryinformationassistancemanagement,andbeanandcreativemarkinhistory.Thisthesisprovidessystematicanalysisusebasedonfullanddeepresearches,designtheandmakesstudentappliedofobject—orientedsoftwaremethodologytoanalyzeandassistanceinformationmanagementsystem.ThesystemappliesMVCprogramstructure,andpresentssystematicdivisionsandfunctionalmodelsandprimarystructuremap.Theprojectofofdatabasestartswiththetheoriescompletedataproceduresdatabasedesign,constructingdictionary;andpresentstheaccordingtoentityandfeaturesoftheinvolvedsystem,theprojectrelationshipmapofthesystemdatabaseaswell.Duringtheapplicationofthetechnology,theuserthesistriestoemphasizethefoursub—functionalsystemsandtheregistrationsystem,andhelpofalsothedominantcodingsystem.Asthefunctionofdemands,withtheMIssystematicanalysisWEB,theauthorproposestostructure,PHPonfulfillthesystemdevelopmentusingMYSQLdatabase,B/StechnologyandprojectdesignApacheservicecontroller.Atlast,withthecautiousstudytheanddevelopment,theauthorfurtherexplorestheapplicationsofstudentassistanceinformationmanagementsystem.Recently,thesystemhasalreadypassedthetest,andthefunctionshavebeenprovethatfulfilledasexpected.ThepracticalfactsthestudentassistanceinformationandsavemanagementsystemasCanraisetheefficiencyofassistancemanagement,thecostswell,whichfurtherpromotestheinformationalprocessinstudentassistance.
[KeyWords]studentassistance;B/S:Apache;PI-IP:MySqlFoundation[PapersType]Application
学位论文独创性声明本人所呈交的学位论文是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文不包含其他个人已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。、一作者签名:§当=学位论文使用授权声明本人完全了解华东师范大学有关保留、使用学位论文的规定,学校有权保留学位论文并向国家主管部门或其指定机构送交论文的电子版和纸质版。有权将学位论文用于非赢利目的的少量复制并允许论文进入学校图书馆被查阅。有权将学位论文的内容编入有关数据库进行检索。有权将学位论文的标题和摘要汇编出版。保密的学位论文在解密后适用本规定。.’一学位论文作者签名:j、b、导师签名=乏盼参蒡
基TB/¥结构的学生资助信息管理系统的设计与实现第1章绪论1.1引言随着信息技术的发展,计算机和网络已经成为现代化办公不可短缺的工具和信息传输的有效载体,基于Web技术的各类网络管理系统也应运产生,这些网络管理系统被应用于社会生活的各个领域,如政府办公、商贸经济、交通运输、文化教育等。其中,把计算机技术和网络资源应用到同常工作中也变得越来越广泛,困难学生资助管理系统的研究把计算机技术等现代办公手段与学生资助工作紧密结合,通过开发基于网络技术和网络资源的学生资助管理系统,降低工作成本,进一步提高资助管理工作规范化和科学化的水平,使学生资助工作更加的公开公正公平。1.2信息管理系统1.2.1信息的概念信息是客观事物状态和运动特征的一种普遍形式,是当今世界人类获取知识的重要形式之一,也是各类管理系统最基本的元素‘11。信息已经被视为当今世界发展不可或缺的关键因素。信息的获取、传递处理和再生,在人类社会的发展过程中尤为关键。目前,信息已经成为企、事业单位发展不可或缺的重要资源。1.2.2系统的概念系统是由一些相互关联、相互制约的若干部分结合而成的、具有特定功能的一个有机整体。一个系统由若干部分组成,它在与外部环境相互联系、相互作用中表现出来特定的性质和功能。理解系统的概念为我们描述、划分和分析企、事业单位的各种情况提供有用的框架条件。1.2.3信息管理系统的概念信息系统是指由计算机硬件、网络和通讯设备、计算机软件、信息资源、信息用户和规章制度组成的以处理信息流为目的的人机一体化系统。从信息系统的发展和系统特点来看,可分为数据处理系统、管理信息系统、决策支持系统、专
基于B/S结构的学生资助信息管理系统的设计与实现家系统和虚拟办公室五种类型。它们是既是相对独立的,又是相互包容的,即一个组织完整的信息管理系统实际上是以其它系统为基础的。信息管理系统是服务于管理领域的信息系统,指在管理理论和管理方法的指导下,运用计算机、网络通信设备以及其他办公设备,最终为管理服务的信息处理系统。1.3信息管理系统的特征1、辅助管理、决策支持的特征乜1。人在管理工作中占有主导地位,运用计算机只能辅助进行管理,提供有效的信息,支持人员控制、决策。人工管理工作是计算机辅助管理支持决策的基础,人工管理工作必须有合适的管理思想、管理方式和管理流程,才能使一个利用复杂技术建立起来的信息管理系统具有高效率的信息管理过程,才能充分发挥信息管理系统的运行控制、辅助管理、支持决策的功能。2、以计算机为核心的特征。计算机在信息管理系统中充当着重要的角色,没有计算机就很难充分获取和利用信息资源,也很难充分运用经济学、管理学、运筹学等科学管理方法来驾驭管理工作。虽然信息管理系统是人工进行设计开发、应用的,但它与人工利用其它手段进行信息处理有着明显的区别,因此充分发挥计算机的核心功能对提高信息管理系统的应用价值是十分重要的。3、整体性特征。一个完善的信息管理系统应在系统在功能上及开发和应用技术步骤上具有一定的整体性。根据这一特性,在开发系统时,要求我们必须从服从全局的角度出发规划系统的功能,尽管我们所开发的某些信息管理系统的实际功能仅仅可能是针对某个部门的管理工作。如果在规划系统时,对某些可能遇到的问题就能全盘考虑,那么在系统投入使用时就会得心应手。如果在开发的时候只想到系统的某些功能,而不作总体规划,那么到系统实际应用时一定会发现许多漏洞,致使系统无法适应实际需求,需要作大幅修改,甚至要从头做起,必然造成开发周期的延长和资金的浪费。当然,并不是要求系统的开发者要将所有需求都明确以后才能进行系统的开发。只是提醒开发者在开发前要对系统各主要模块、功能的划分作好整体安排。在开发技术、步骤和方法上,要考虑与其它相关系统在应用上的一致性与兼容性。2
基于B/S结构的学生资助信息管理系统的设计与实现4、发展性特性。虽然在信息管理系统的开发阶段会充分考虑使用者的需求,但信息管理系统的基础信息还是具有一定的时效性,同时也会对信息系统产生关联。因此信息系统的建立并不是一劳永逸的事情,需要在应用中根据实际需求不断进行完善和更新。当系统的某一要素发生改变时,信息系统也会随改变。如果是系统的功能目标或运行环境发生根本改变时,建立新系统的要求就会相应提出。这就意味着旧系统使用寿命的结束,新系统随之应运而生,这就是所谓的信息管理系统生命周期。在建立或修改系统时,应尽可能的缩短时间,这样可以相对延长系统正常运行的周期,提高系统的使用效率和效益。学生资助管理系统除了具有上面提到的信息管理系统的一般特性以外,还有其自身的特征。学生的资助的工作既是关系到教育的问题,更是关系到民生的问题,它的管理工作有许多特别之处。管理系统功能需求比较复杂,涉及到不同的级别不同的奖项等各个方面,并且各管理环节之间联系紧密。1.4管理信息系统的现状管理信息系统起源于20世纪70年代的美国,20世纪80年代随着微机的出现、网络技术的飞速发展,管理信息系统也真正的发展壮大,并且很快传入我国。20世纪80年代后半期开始,我国许多企事业单位开发了大量的管理信息系统软件,首先在财务方面取得了巨大的成功,随后应用到各个领域,带动了其他模块的开发,管理信息系统的出现为我国的管理现代化进程作出了不可磨灭的贡献。传统的管理信息系统(MIs)系统的核心是客户机朋艮务器(clien“server一一客户端朋艮务器)架构,它将一个数据库应用分为客户端和服务器两部分,客户端作为终端访问数据库服务器的同时,本身也具有处理数据的能力,能够分担一些任务。在相当长一段时间内,C/S方式依靠强大的技术优势带来了巨大的管理效益,成为当时管理信息系统的主流方式。但是,基于C/S的管理信息系统依赖于专门的操作环境,对使用者的操作空间提出了很大的限制,同时普遍存在软件的开发周期长,软件的维护工作量大,开发费用高等缺点。随着国内外Internet技术的发展和普及,基于互联网的各种应用蓬勃发展。越来越多的MIS采用(Bmwser/server一浏览器/服务器)架构,使用B/S技术开发的MIS系统,采用了www技术的诸多优势,不需要专门的操作环境,在任何能上网的地方,就能够操作MIs系统D1。3
基于B/S结构的学生资助信息管理系统的设计与实现近年来,随着管理信息系统的发展和计算机应用技术的广泛推广,各种类型的信息管理软件不断出现,管理工作信息化水平不断提高,建立一套符合需求的管理信息系统软件,可以促进困难学生资助管理工作的科学化、规范化进程。但是,由于各地区经济条件、硬件环境、要求标准的差异,目前国内专业型困难学生资助管理软件开发层次参差不齐,技术含量高低不同,这些软件存在的缺点或不足,大都表现在以下几个方面“1:(1)大部分系统处于单机运行状态,不能适应信息共享和协同工作的要求;(2)系统功能多局限于信息资料的汇总,类似于一个数据“大仓库”,缺少信息利用开发的价值;(3)数据库信息存在滞后性,数据更新不及时,不能很好的及时反映系统当前状态;(4)软件更新升级能力较差,大部分系统不具备升级空间,在开发设计过程中,缺少软件接口设计,没有充分考虑资助管理工作的发展。1.5项目开发的现实意义近年来,党中央、国务院及天津市委、市政府历来高度重视家庭经济困难学生的资助工作并出台了一系列资助政策。天津市人民政府专门印发文件(津政发(2007)56号),要求建立了我市的学生资助体系。这充分体现了党和政府对民生问题的高度关注,体现了发展为了人民、发展依靠人民,体现了社会主义制度的优越性。学生资助工作,关系到教育事业的持续协调健康发展,关系到广大人民群众的切身利益,关系到社会主义和谐社会建设的全局。截至2007年用于资助学生及助学贷款总计4亿元左右,工作涉及全市18个区县教育局,60个行业主管部门。学生资助管理中心需要对56所高校、百余所中专(含技校)上报的基础数据进行汇总分析。2007--2008学年天津市国家奖学金人数共622人,涉及53所高校;国家助学金人数53080人,涉及53所高校。基础数据量极大,业务关系极其复杂。目前,各级助学机构仅仅依靠一些传统的办公软件报送数据,并以Excel等纸质文件的形式进行报送。对于学校的资助部门来说,把握资助政策,上报大量数据及保证数据的准确性都是极其困难的工作。如何高效地完成每年对在校贫困生的经济资助工作,便成为了一个亟待解决的重要问题。本系统结合各方面的需求,为更好的规范困难学生资助程序、落实国家的资4
基于B/S结构的学生资助信息管理系统的设计与实现助政策,实现资助资金的动态管理和数据统计分析而设计开发的。本系统的建立使奖、助学金的评审、上报、审核流程通过登录计算机网络完成,尽可能减少人为操作带来的不利因素,有利于各级资助机构提高信息管理效率,降低工作运行成本,保证上报数据的准确性,满足资助工作实时监控的需求,具有很强的现实应用价值。1.6本文的组织结构本文主要是通过对PHP及MYSQL的实际应用,完成基于PHP学生资助信息管理系统的设计与实现。系统根据天津市资助管理中心的实际情况,在经过严格的需求分析基础上,进行了详细的数据库设计,实现了系统设置管理、用户管理、人员信息管理、人员信息搜索等功能模块。论文分为七章,按如下方式组织:第1章通过对资助工作简要描述介绍了论文的研究意义与主要研究内容。第2章主要介绍了系统开发环境和开发工具的选择。第3章重点介绍了系统架构和数据库设计。第4章详细阐述了各功能模块的设计与实现。第5章重点分析了系统开发中关键技术解决。第6章详细阐述系统测试的过程和修正的错误。第7章全文的总结和对未来工作的展望。5
基于B/S结构的学生资助信息管理系统的设计与实现第2章系统开发环境2.1开发模式的选择随着计算机技术的发展和应用,计算模式从集中式(数据和应用程序在~台主机上)转向了分布式(数据和应用程序跨越多个节点机),特别典型的是c/s结构(C1ient/server的简称,客户机/服务器模式)。两层结构c/s模式在上个世纪八十年代至九十年代初得到了广泛推广使用,其优点是执行效率高,稳定性好,且数据具有完整性和安全性等特点。之后,它开始向三层结构发展,在原来的客户端和服务器之间加入了应用服务器这样一个中间层。近年来,随着网络技术不断发展,尤其是基于Web的信息发布、检索技术、以及网络技术的飞速发展,导致了很多应用系统的体系结构从c/s结构向更加灵活的多级分布结构发展,使得软件系统的网络体系结构跨入了B/S体系结构(Browser/Server的简称,浏览器/服务器模式)阶段。基于Web的B/S方式的客户机是浏览器,其实它也是一种客户机/服务器方式。为了区别于传统的C/S模式,才特意将其称为B/S模式。充分认识到这些体系结构的特征,对于系统的选型而言是很关键的。2.1。1浏览器朋艮务器模式(Browser/Server)20世纪90年代末期B/S结构开始盛行,目前已成为最流行的系统体系结构,正逐渐取代两层c/s结构,成为大多数网络软件开发商的首选。所谓B/S模式体系结构就是指在TCP/IP的支持下,以HTTP为传输协议,客户端通过浏览器访问Web服务器以及与之相连的后台数据库的技术及体系结构。随着网络的普及和浏览器功能的不断完善,在许多情况下,开发商可以按照一定方法,开发出一套运行于服务器的网络软件,在客户端可以直接使用浏览器进行数据的输入和输出等数据操作,而不必为客户端专门开发特定的软件。也就是说,在一定情况下,浏览器可以取代客户端/服务器结构的客户端软件。在使用网络应用系统时,客户端除了要用到操作系统外,只需要一个Web浏览器“1,就能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和6
基于BIS结构的学生资助信息管理系统的设计与实现管理访问权限,服务器数据库也很安全。如图2—1所示。WES霜:p端数据源2-IB/S模式演示图2.1.2客户端/服务器模式(ClienVServer)c/s结构属于一种客户端向服务器请求服务的计算体系结构。一般的c/s结构系统,需要有一台或多台服务器以及大量的客户端。服务器安装数据库系统,并配备大容量存储器,用于数据的存储、数据检索:客户端装有专用软件,负责数据的输入、运算和输出‘51。通常情况下,客户端和服务器都是独立的计算机。一台机器既可作为客户端也可作为服务器使用,或者两者被同时使用。在c/s结构中,当客户端要访问服务器提供的信息和服务时,它就建立一个网络连接。基于一系列的请求(Request)和响应(Response)客户端和服务器之间的操作关系为:客户端软件发送请求到服务器,服务器接收来自客户端的请求并进行处理,将处理的结果返回给客户端。客户端软件负责把用户请求转换为服务器能理解的格式后发送给服务器,也要把服务器响应转换为用户能理解的方式显示出来。如图2—2所示。7
基于B/S结构的学生资助信息管理系统的设计与实现客户端图2-2c/s结构演示图2.1.3两种模式的比较一、在系统性能上的比较在系统的性能方面,B/S模式可以不受时间、地点和系统的约束,用户只要可以使用浏览器上网,就可以使用B/S系统的终端,它方便快捷具有灵活性。另外当前,网络快速发展,这在一定程度上为B/S结构在与其它结构之间的竞争提供了强有力的支持u1。采用B/S结构由于客户端相对简单,只能完成浏览、查询、数据输入等基本功能,绝大部分工作必须由服务器承担,这大大增加了服务器的负担。而C/S结构,客户端和服务器端都能够处理任务,虽然对客户机的要求较高,但可以大大减轻服务器的压力。二、在系统升级维护上的比较C/S系统各个模块间相互关联独立性差,其中一个模块改变,就要关联到其它模块的变动,使系统升级成本比较大。因为B/S与C/S处理模式相比,则大大简化了客户端,因为客户端就是浏览器。对于B/S而言,开发、维护等工作也就都集中在服务器端,且每个模块相对独立,当企业对网络应用进行升级时,只需更新服务器端的软件就可以,这就减轻了系统维护与升级的成本。如果客户端的软件系统升级比较频繁,那么B/S架构的产品优势更加明显,无论用户规模有多大,所有的升级操作只需要针对服务器进行,这大大减少了系统维护的时间和成本。由于B/S结构需要网络的支持,在系统安全性上较差,开发应用软件时尤其8
基于B/S结构的学生资助信息管理系统的设计与实现需考虑数据的安全性和服务器的安全性等诸多因素。三、在系统的开发上的比较在系统开发过程中,C/S结构要求应用系统开发者自己去处理消息队列、事务管理、数据的复制和同步、通信安全等系统级的问题,这就对众多的应用开发者提出了较高的要求。并且它是建立在中间件产品基础之上的,很难扩展到互联网中去。而且迫使开发者不得不投入很多精力去解决应用程序以外的问题,这使得应用程序的维护、移植和互操作变得复杂。B/S结构与C/S结构相比属于新兴技术,还不够成熟,有待完善,不过B/S结构开发模式对于开发人员来说更加容易上手,简单易学,很利于它的普及推广。2.1.4本系统开发模式的确定B/S结构建立在广域网上,不必是专门的网络硬件环境,有比C/S更强的适应范围,一般只要有操作系统和浏览器就行。在安全性以及访问速度上比C/S有更高的要求,B/S结构的程序架构是今后发展的趋势。开发B/S结构系统并实现其无缝升级,有效的减小了系统维护开销。建立在广域网上,面向不同的用户群,分散地域,与操作系统平台关系最小,建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,降低开发成本‘81。鉴于B/S结构的优点,以及针对本管理系统的使用者为非计算机专业人员,且对于计算系统的维护存在一定得困难,采用浏览器朋艮务器的模式还是适宜的。这样,对工作人员的操作水平要求不高,并且系统维护简单容易。2.2MVC设计模式系统中图形用户界面承担着向用户显示内容和与用户进行操作和I/0交互的作用。用户希望保持交互操作界面的相对稳定,也希望根据需要改变和调整显示的内容和形式。这就要求界面结构能够在不改变软件的功能和模型情况下,支持用户对界面构成的调整。模型一视图一控制(MvC:Model—View—Controller)就是这样的一种交互界面的结构组织模型从界面构成的角度满足对界面的要求,并且使软件的计算模型独立于界面的构成。9
基T-B/S结构的学生资助信息管理系统的设计与实现2。2.1MVG原理MVC由TrygveReenskaug提出,MVC被应用在SmallTalk一80环境中,是许多交互和界面系统的构成基础。对于界面设计可变性的需求,MVC把交互系统的组成分解成模型、视图、控制三种部件阳1。模型部件扮演着数据库的角色,包含了应用问题的核心数据、逻辑关系和计算功能,他独立于具体的界面表达和I/0操作。为视图获取显示数据提供访问数据的操作。视图部件从模型获得显示信息,把表示模型数据及逻辑关系和状态的信息及特定形式展示给用户。对于相同的信息可以有多个不同的显示形式或视图。控制部件是从用户接受请求,将模型与视图匹配在一起,共同完成用户的请求。它接受用户的输入,将输入反馈给模型,实现对模型的计算控制,是使模型和视图协调工作的部件。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都会发生相应的变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,及时更新显示的内容。这实际上就是一种模型的变化一传播机制。如图2—3所示。模型类数据结构和关系视图和控制器的注册关系视图类显示形式显示模式控制状态控制类内部数据和逻辑计算从模型获得数据视图更新操作事件控制控制视图更新向视图和控制器通知数据变化图2-3MVC中的模型、视图和控制类图2.2.2MVC的实现实现基于MVC的应用需要完成以下工作阳1,如图2—4所示。10
基于B/S结构的学生资助信息管理系统的设计与实现Il对系统进行分析与分离上上对视图进行设计与实现弋7对控制器进行设计与实现上上使用可安装和卸载的控制器图2-4MvC的实现过程图(1)对系统进行分析与分离首先分析应用问题对系统内核功能、功能的控制输入、系统的输出行为三大部分进行分离。设计模型部件使其封装内核数据和计算功能,提供访问显示数据的操作,提供控制内部行为的操作以及其他必要的操作接口。以上形成模型类的数据构成和计算关系。这部分的构成与具体的应用问题具有紧密相关性。(2)对视图进行设计与实现设计每个视图的显示形式,并从模型中获取数据,最终将它们显示在屏幕上。(3)对控制器进行设计与实现对于每个视图,指定用户操作的响应时间和行为。在模型状态的影响下,控制器使用特定的方法接受和解释这些事件。控制器的初始化建立起了模型和视图的联系,并且启动事件处理机制。(4)使用可安装和卸载的控制器使用可安装和可卸载的控制器,可以具有更高的自由度,并且帮助形成高度灵活性的应用。控制器与视图的分离,支持了视图与不同控制器结合的灵活性,以实现不同的操作模式,这种分离还为在应用中集成新的I/O设备提供了途径。2。3开发技术的选择2.3.1PageHypertextPreprocessoPHP(PageHypertextPreprocessor)是一种用于创建动态Web页面的服务端脚
基于B/S结构的学生资助信息管理系统的设计与实现本语言。与ASP和JSP相同,用户可以混合使用PHP和HTML编写Web页面,当用户浏览到该页面时,服务器端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器。PHP是一种源代码开放程序,具有良好的跨平台兼容性,用户可以在Windows系统以及许多版本的Unix和Linux系统上运行PHP,而且可以将PHP作为ApachelJ艮务器的内置模块或CGI程序来运行。PHP脚本语言的语法与C语言和Perl语言的语法风格类似。使用PHP创建数组的过程极为简单。用户在使用变量前也不需要对变量进行声明。PHP在开发及维护时间、系统稳定、系统安全、网页结合能力等方面有着明显的优势。同时,PHP还具有基本的面向对象组件功能,可以极大地方便用户有效组织和封装自己编写的代码。PHP的工作原理n盯,如图2-5所示。PHP解释程序(服务器端)系统函数、后台程序、数据库客户端图2-5PI-IP工作原理图(1)用户在浏览器的地址栏中输入要访问的PHP文件名,然后回车触发这个PHP文件请求。(2)浏览器将此PHP请求传送给支持PHP的Web服务器。12
基于BIS结构的学生资助信息管理系统的设计与实现(3)Web服务器接受这个请求,并根据其后缀名,理解到这是个PHP请求。(4)Web服务器从硬盘或者内存中取出用户要访问的PHP文件。(5)Web服务器将这个文件发送给PHP解释程序。(6)PHP程序将会对Web服务器传过来的文件从头到尾进行扫描,并根据命令生成相应的静态的HTML页面。(7)客户端浏览器将该HTML文件解释执行显示在客户端浏览器上。PHP和其他的编程语言类似,使用变量存储临时数值,使用操作符处理变量,一般语言有的数学运算、时间处理、文件系统、字串处理、进程处理等功能,它都具备。PHP的真正价值在于它是一个应用程序服务器,而PHP独特的语法混合了C、Java、Perl以及PHP式的新语法。它可以比CGI或者Perl更快速的执行动态网页。由于源代码开放,很多开发人员在应用过程中进行了修改优化,使得PHP的功能更加强大,并且PHP的版本升级速度很快,目前主要版本为PHP5,是更有效、更可靠的动态Web页开发工具。它拥有很好的跨平台兼容性,用PHP写出来的Web后端CGI程式,可以很轻易的移植到不同的作业平台上,而且可以将PHP作为Apache服务器的内置模块或CGI程序运行。PHP具有非常强大的数据库支持功能,能够访问几乎目前所有较为流行的数据库系统。例如:MicrosoftSQLServer、MySql、Oracle等。在众多的WEB开发语言中,PHP以其简单易学、特性优良、可移植性好以及完全免费的特点,迅速脱颖而出,受到众多开发者的喜爱,运行PHP的Web服务器的数目也在迅速增长。综合起来,PHP的特点主要包括:PHP是一种在服务器端执行的脚本语言,可以很好的与HTML融合,产生需要的文档。PHP通过支持API及其接口程序来完成工作,所以它与平台无关。PHP还支持多种数据库,任何支持ODBC的数据库都可以通过PHP的ODBC接口得到支持。PHP能够通过更新保存在数据库中的内容而不是页面本身,网站内容的编译更容易,并且它只显示用户感兴趣的东西,对于页面中的数据库,可以更新、显示和维护,PHP还可以收集用户信息并及时反馈。它基于模块化设计,扩展性强。PHP被设计成专门用于Web,所以完成简单的数据连接和查询是很方便的。PHP引擎对Web应用程序的响应时间进行了优化,甚至成为Web服务器本身的一部分。PHP与其他CGI的比较n¨,如表2-1所示。13
基于B/S结构的学生资助信息管理系统的设计与实现表2—1PHP与其他CGI的比较比较项目软件价格平台价格速度效率安全性:t’ASP.NETPHP4PHP5免费付费免费免费快高强强免费免费快高强强慢低强弱平台安全性平台支持性是否开源异常机制ooPWin32否是强任意是否弱任意是是强鉴于PHP具有平台无关性,属于开放代码,并且考虑本管理系统属于中小型办公类网站,用PHP开发是比较合适的。2.3.2Apache服务器Apache是目前www网站使用的最为流行的服务器软件,它的功能强大,可以在多种操作系统上使用,如:Unix、Linux、win9X/NT/2000/XP等。可在Apache网站可自由下载免费使用。Apache的源代码是开放的,我们可以根据自己的需求对源代码进行修改。在安全性方面,Apache的比其它的Web服务器要好,在软件的设计方面也充分考虑编码的合理性、安全性,尽可能地避免漏洞的出现。本系统的运行平台是Apache,它是众多的Web服务器软件中的一种,已经成为目前Internet上最流行的Web服务器软件之一。与其它WEB服务器软件相比,Apache具有安装方便,配置简单,效率高,便于管理等优点。“ApacheHTTP服务器是一个模块化的软件,使管理者可以选择核心中包含的模块以裁剪功能。可以在编译时选择被静态包含进httpd二进制映象的模块,也可以编译成独立于主httpd二进制映象的动态共享对象。DSO模块可以在编译服务器之后编译,也可以用Apache扩展工具编译并增加。"其优点主要包括:(1)由于服务器包的装配工作可以在运行时刻使用httpd.conf的配置命令14
基丁B/S结构的学生资助信息管理系统的设计与实现LoadModule来进行,而不是在编译中使用configure来进行,因此显得更灵活。比如:只需要安装一个Apache,就可以运行多个不同的服务器实例。(2)服务器包可以在安装后使用第三方模块被轻易地扩展。这至少对厂商发行包的维护者有巨大的好处,它可以建立一个Apache核心包,而为诸如PHP3,mod_perl,modfastcgi等扩展另建附加的包。(3)更简单的Apache模块原型。使用DSO配合apxs,可以脱离Apache源代码树,仅需要一个apxs—i和一个apachectlrestart命令,把开发的模块新版本纳入运行中的Apache服务器。2.3.3MySql数据库MySql是完全网络化的跨平台关系型数据库系统,一个真正的多用户、多线程SQL数据库服务器,同时是具有客户机/服务器体系结构的分布式数据库管理系统。它具有功能强、使用简便、管理方便、运行速度快、安全可靠性强等优点,用户可利用许多语言编写访问MySql数据库的程序,尤其对于中、小型应用系统是非常理想的。除了支持标准的ANSISQL语句,它还支持多种平台,特别在Unix/Linux系统上该软件支持多线程运行方式,从而能获得相当好的性能。而对于不使用Unix/Linux的用户它可以在Windows系统上以系统服务方式运行,或者在Windows95/98系统上以普通进程方式运行。MySql是以一个客户机/服务器结构的实现,它由一个服务器守护程序MySql和很多不同的客户程序和库组成,MySql的执行性能高,运行速度快,且非常容易使用。MySql是一种网站专用的数据库,具有灵活、快速、高效的特性。事实上,某些性能已经超过了商用数据库。它是一个快速、多用户、多线程,支持SQL的关系数据库管理系统,如图2—6所示。客户端数据库服务器图2-6三层网络数据库系统图MySql的主要特点n龃:15
基于B/S结构的学生资助信息管理系统的设计与实现(1)其核心支持完全多线程。这意味着它能很容易的利用多cpu;(2)可用多种语言编制客户程序来对MySql数据库服务器进行操作;(3)用C和C++开发,因而可运行在和移植到不同的操作系统平台上,如FreeBSD、DECUNIX、SCOUNIXWare、WIN32、Linux等;(4)多种字段类型;它支持1、2、3、4和8字节长度的带符号/无符号整数、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、DATE、TIME、DATETIME、TIMESTAMP、YEAR、SET和ENUM类型。(5)在SELECT语句中的WHERE子句部分支持全部运算符和函数。(6)全面支持SOL的GROUPBY和ORDERBY子句,支持COUNT、AVG、STD、SUM、MAX和MIN等聚合函数。(7)可以在同一查询中混用来自不同数据库的表。(8)一个非常灵活且安全的权限和口令系统,并且它允许基于主机的认证。口令是安全的,因为当与一个服务器连接时,所有的口令传送被加密。(9)每个表允许有16个索引。每个索引可以由1’16个字段或字段的一部分组成。最大索引长度是256个字节(在编译MySql时它可以改变)。一个索引使用一个CHAR或VARCHAR字段的前缀。(10)定长和变长记录。(11)所有字段都有默认值,可以用INSERT插入一个字段的子集,没有明确给定值的字段将被设置为默认值。(12)函数名不会与表或字段名冲突。(13)MySql特有的Show命令可用来检索数据库、表和索引的信息,EXPLAIN命令可用来确定优化器如何执行一个查询。PHP和MySql数据库可谓是一对“黄金搭档",一旦Apache服务器的环境配置成功之后,就可以直接用PHP去访问MySql数据库,不需要做任何配置。由于MySql数据库的访问速度快,而且结构简单,因此非常适用于简单的网络程序设计,如图2—7所示。16
基丁BIS结构的学生资助信息管理系统的设计与实现返回结果目臼圈图2—7Apache、PHP和MySql的组合PHP与MySql的完美组合使编写基于WEB数据库的网上程序非常容易。由于PHP和MySql只要安装好,便很好的帮定在了一起,只需调用一些已封装好的代码即可实现联接。编程者只需用到其中几个功能就可以执行查询,当然,如果需要更多的访问操作,它也提供先进的功能。17
基于B/S结构的学生资助信息管理系统的设计与实现第3章系统架构与数据库设计3.1系统的需求分析需求分析n31是软件定义时期需要完成的重要任务,也是软件生存期中~个重要的环节,它的任务是确定系统要“做什么"的问题。通过需求分析,把软件功能和性能总体概念描述为具体的软件说明,从而奠定软件开发的基础。一、需求分析的必要性需求分析是软件工程中的一个关键过程。在软件开发过程中,需求分析指的是开发者为满足用户的需求,实现系统的总体目标,确定系统的功能时所要做的工作。在这个过程中,系统开发者要做好充分调研,确定顾客的需要,做好分析总结是制定软件需求分析的必要准备。同时,运用先进的手段和科学的方法也是保证此项工需求分析工作顺利完成的必要条件。二、需求分析的特点(1)用户与开发人员沟通困难需求分析是开发人员对用户的业务需求进行分析,明确系统在用户使用过程中在应该”做什么”。这就需要开发人员与用户经常进行沟通,因为软件开发人员对用户的业务活动和业务环境不熟悉,而用户又不熟悉计算机方面的有关问题。由于双方互相不了解对方的工作,又缺乏共同语言,所以在交流时存在着隔阂。(2)用户的需求是动态变化的对于一个信息管理系统,用户很难精确完整地提出它的功能和性能要求。可能要经过长时间的反复认识才逐步明确需求,有时到开发后期还在提新的要求,这样会给软件开发带来极大的困难。对于系统开发者来说,大大降低了工作效率,提高了开发成本。针对以上特点,需求分析阶段要加强开发人员与用户之间的交流,明确系统的功能,减少后期需求变化,形成一份经开发方和用户认可或达成共识的需求规格说明书,可以提高工作效率,避免在使用时的问题和缺陷。需求分析包括需求开发和需求管理两个方面。需求开发过程包括:需求调查,即通过需求调研,获取需求的过程;需求分析,对用户调查得到的各种数据、信18
基于B/S结构的学生资助信息管理系统的设计与实现息等进行分析和总结;需求定义,即编写需求规格说明书。需求管理的目的是在客户与开发方之间建立对需求的共同理解,保持需求与其他工作成果的统一性,并控制需求的变更,主要体现在实时跟踪和有效控制需求变更管理。图3—1是需求分析工程结构图。图3-1需求分析工程结构图3.1.1系统设计目标和原则设计本系统的目的是为了提高学生资助工作信息化管理水平,对资助工作进行有效监控,为各级院校提供统一的信息管理平台。各级学校相关管理人员通过独立的口令登录该系统,可以对本级困难学生信息进行维护和更新,实现资助工作的数字化、网络化管理,提高各级学生资助工作的规范化程度和工作效率,并能够实现批量人员数据的一次性调动、存档及输出,支持表格文件信息生成。系统总体设计原则是n41:(1)符合资助工作规程,按照学生资助工作的规章制度开发设计,为用户提供所需要的高效信息管理平台;(2)满足各级院校学生资助管理工作信息化水平的要求,可进行模块更新升级,以满足需求变化的需要;(3)具备良好的软件开发设计系统化、结构化、模块化标准,保证整个系统的完整性、一致性和灵活性;(4)网络与应用相分离,使应用系统有较大的适应性。19
基于BIS结构的学生资助信息管理系统的设计与实现3.1-2系统功能需求信息管理系统开发的目的是满足用户需求和方便用户使用,为了达到这个目的,开发设计工作开始之前应充分了解掌握系统的总体设计功能目标和用户的工作方式,然后确定系统的功能。根据目前学生资助工作的实际情况,通过充分的调查研究,对开发设计的目标系统提出了如下总体要求:(1)实现信息电子数据式管理,代替现有各种类别奖学金,助学金的申请表,汇总表等纸制表格;(2)提供功能全面的信息管理平台,具有对各类数据的输入、修改、删除、统计、备份功能;(3)具有查询检索功能,用户可以根据实际需要,查询符合条件的数据信息。(4)具有报表打印以及“.txt’’、96'.xls”等文件格式转化功能;(5)具有对不同权限的管理员和用户的管理功能;(6)体现人性化特点,操作简捷、易学易会,方便用户使用。结合上面对系统的需求分析内容,本系统需要实现的功能包括:用户管理、身份管理、部门及组群管理、项目管理、模板管理等。(1)用户管理:通过此功能可以添加不同级别的用户,用户的级别不同所赋予的权限也就不同。添加的新用户需要填写用户名,设置密码,以及填写真实姓名,采用实名制也是为了便于管理进一步保证系统的安全性。添加的用户都要选择一个身份,不同身份代表了不同的操作权限。另外也可以修改用户的相关信息和撤销该用户。系统管理员的权限最高可以看到所有的用户列表,并可以修改和撤销低级别的用户。(2)角色管理:通过此功能可以根据实际需要添加不同身份并且设置相应身份所具有的相关操作权限。例如:系统管理员具有管理和审核功能,系管理员只具有填写申请信息的权限。(3)部门及群组管理:部门管理可以添加新部门,设置该部门的上级部门,主要负责人,联系电话,地址和所属群组。群组管理则可以添加新的群组。例如高校、学院、系等。(4)项目管理:通过此功能则可以根据实际的资助工作的需要添加不同的资助项目。例如:国家奖学金、国家助学金、政府奖学金等。
基于B/S结构的学生资助信息管理系统的设计与实现(5)模板管理:通过此功能可根据实际需要添加一些表格模板,这些模板可以提高工作的效率,所形成的电子表格可以方便导出并适合打印存档。(6)人员搜索:通过此功能可实现对系统所管理人员的搜索,包括单项搜索和复合搜索两种方式。其中单项搜索需遵循特定的搜索规则来实现对人员的搜索。复合搜索功能是本系统中较为重要的模块之一,通过此功能管理员可以轻松快捷的实现对学生进行多条件索引,并在短时间内生成人员列表。(7)人员申请:通过此功能可实现对新加入系统的申请人进行个人信息的录入,该功能只有低级别身份用户具有。3.1.3非功能性需求系统非功能性需求,是针对系统运行状态、数据安全、用户使用等方面提出的非功能性特殊要求,对于开发设计一个完整的信息系统是必不可少的。一、数据安全用户在进行数据信息的增加、更新、修改、删除等操作过程中,为保证数据安全,系统应具有以下功能。操作确认:对于不可恢复的操作(如记录删除等),应有确认操作,避免误操作。数据校验:对于有限制条件的输入信息,具有“自纠错"功能,避免脏数据进入数据库。错误恢复:无意中进行了错误操作,应能有相应的处理程序挽回错误。缺省赋值:对于一些常用信息可以设置缺省值,不必每次都输入这些信息。二、系统运行状态为了保证系统能够长期、安全、稳定、可靠、高效的运行,学生资助工作实时监控系统应该满足以下的性能需求:(1)系统结构合理性:为满足不断变化的需求,系统的结构应是可伸缩、可扩展的多层开放式结构,要尽可能合理的利用设备空间,构造出规范、完整、合理、紧凑的系统结构。(2)系统信息处理的准确性和及时性:在系统设计和开发过程中,要充分考虑系统当前和将来可能涉及的信息量,采用先进的网络技术,并在应用软件的选择或编制中尽可能采用较先进的实现技术,使系统具有及时处理信息能力,提21
基于B/S结构的学生资助信息管理系统的设计与实现高系统响应速度,以满足用户对信息处理的需求。(3)系统可维护性和开放性:系统设计要充分考虑到用户业务流程等方面的调整,面向未来的发展,提供各种必要的标准接口,以便用户可以根据需求的改变随时添加必要的设备和系统,完善系统功能。(4)系统的安全性:本系统包含各个学校受资助学生的基本信息资料,许多信息具有高度的安全保密性要求,例如身份证号码。因此,必须建立一套完善的系统安全保密措施,规定一系列不同级别的权限,并依据分配的权限对系统进行访问。(5)系统的标准性:系统在设计开发使用过程中涉及到操作系统、网络系统、开发工具等都应该符合国际、国家和行业通用标准。在系统的设计开发过程中,制定相关软件工程规范,保证系统的可操作性和可移植性。(6)系统可升级性:随着资助工作集成化发展趋势,实现真正的学生资助管理工作信息化,在现有基础上实现学生资料网上填写,网上申请,网上审核,网上汇总等学生资助工作程序的网络化管理,就必须走出信息孤岛的尴尬境地。因此在进行学生资助系统开发时就必须考虑到系统升级,这样才能保证系统不断发展。同时,还要考虑各种环境下的系统兼容性,提高系统跨平台的能力。3.2体系架构与系统业务流程3.2.1体系架构系统的寿命,主要由其构架决定。有些构架逐渐具有了通用性,如三层的客户机/服务器结构就不是仅限于某一个系统的构架。构架可使系统具有竞争优势,像其他任何资产一样。采用恰当的构架是项目成功的第一步。本系统选用B/S模式构建三层浏览器/服务器体系结构,它由浏览器、web服务器、应用服务器和数据库服务器组成,如图3-2所示。B/S模式突破了传统的文件共享及c/s模式的限制,实现了更大程度的信息共享。本系统的用户为全市高校、中职,操作简便是身十分必要的,各级用户只要通过浏览器即可访问数据库,从而克服了时间和空间的限制。
基丁B/S结构的学生资助信息管理系统的设计与实现HI’11"1肴求o、<L恫小LWEB浏览器HTFP界面WEB服务器应用服务器数据库服务器结束图3-2B/S模式的三层体系结构B/S模式的工作原理是:客户端的浏览器通过URL访问WEB服务器,WEB服务器请求数据库服务器,并将获得的结果以HTML形式返回客户端浏览器。本系统采用了M1『SQL数据库,WEB服务器运行Apache服务器,以PHP作为开发工具,以IE浏览器作为客户端。j3.2.2系统业务流程学生资助管理系统共有两类管理用户,分别为系统管理员、普通管理员。普通管理员也可以根据不同的级别分为学校管理员,学院管理员,系管理员等。多级权限管理,精确到操作对象的范围,每一类管理用户都进行了功能设定,分别对系统中的主要功能子系统进行操作。根据不同管理用户所关注的信息不同,系统分别为每类用户赋予了不同的操作权限。系统总体流程如图3—3所示。图3—3(a)系统流程图
基于B/S结构的学生资助信息管理系统的设计与实现图3—3(b)系统流程图3.3数据库设计3.3.1数据库设计的原则和基本步骤数据库是存储在一起的相关数据的集合,是系统的核心之一。数据服务器是整个系统内共享数据服务的提供者。该系统建立了一个逻辑上统一,物理处于独立的数据库管理系统,具有以下特点n钉:(1)完整性。输入到数据库中的数据要保证正确性和相容性,并且要有审核和约束机制。(2)安全性。保证数据库中数据不会被用户非法使用,避免造成数据泄露、破坏或更改。(3)一致性。为保证系统数据的一致性和有效性,对信息进行统一、系统的分析与设计,并协调好各数据源的逻辑关系。(4)规范化。在设计和操作数据库时,应保证数据J下确的分布在数据库表中,正确地进行表结构设计可以保证数据库的规范化。
基T-B/S结构的学生资助信息管理系统的设计与实现(5)可伸缩性。数据库结构的设计应充分考虑未来发展,应具有良好的扩展性、伸缩性和可移植性。数据库系统设计的过程一般经历以下几个阶段‘61:(1)需求分析阶段是整个设计过程的基础,准确了解与分析用户需求,一般会占用大量的时间和工作量。(2)概念结构设计阶段是整个数据库设计的关键。通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。(3)逻辑结构设计阶段将概念结构转换为现有DBMS支持的数据模型,从功能和性能要求上对转换的模型进行评价,看是否满足用户要求,并且对其进行优化。(4)数据库物理设计阶段为逻辑数据模型安排最合适的存储路径、存储方法、存储结构等。(5)数据库建立与测试阶段根据逻辑设计和物理设计的结果,运用DBMS提供的数据语言、工具等,建立数据库,编制与调试应用程序,组织录入数据,并进行数据库测试。(6)数据库运行和维护阶段经过测试成功数据库即可投入正式运行,在数据库系统运行过程中必须不断地对其进行维护、调整与修改。3.3.2系统数据库概念设计通过对本系统的需求分析,明确了各个子系统的功能和数据流程,从而分解出数据实体,并确定实体之间的关系。系统中涉及的实体及其属性如下所示:(1)用户(旦庄!旦曼、用户名、密码、所在单位ID、真实姓名)(2)角色(角色!Q昱、角色名称,角色优先级、备注)(3)部门(部[]!Q曼、部门名称、上级单位ID、单位负责人、联系电话、地址)(4)群组(登组!旦曼、群组名称、拥有者名称)(5)项目(亟目I旦曼、项目名称、上层项目名称、优先级、备注、动作名
基于B/S结构的学生资助信息管理系统的设计与实现称)(6)模板添加字段(主题I旦呈、字段名称、输入类型、字段类型、字段值来源、上级字段、字段长度、优先级、默认值、可以为空、只读、备选值)(7)项目初始化(亟目!旦呈、初始学年度、年度计划、开放注册、开放提交)(8)申请人员信息(厶虽!旦曼、姓名、出生日期、身份证号码、性别、民族、生源地、家庭户口、入学时间、所在院校、学院、班级、学号、照片、专业排名、成绩、申请理由、学校资助管理机构评审意见、学校审核意见、填写人、提交人、状态、审核人)3.3.3系统数据库逻辑设计数据库系统设计是建立一个操作的数据环境,一般是从某一个或某些具体应用出发来进行数据库设计,将数据库的概念结构转化为数据库所支持的实际数据模型,也就是数据库的逻辑结构,进一步形成数据库的表格以及各个表格之间的关系。如表3—1至3—8。表3-1User(用户表)字段user类型int(11)varchar(25)varchar(100)varchar(25)Null默认注释id否否否否否用户名密码操作人员真实姓名所属单位IDuser——nameuser——passwordoperatordepartment—idIint(11)表注释:用户表,用于存储用户名密码等,并与角色表外联。表3—2Profile(角色表)字段profile——idprofile——name类型int(11)varchar(25)int(5)Null默认注释否否否身份名称身份的优先级,数值越低级别越...Lprofile_priority两profile——memovarchar(100)否I备注I表注释:用于保存身份信息
基于B/S结构的学生资助信息管理系统的设计与实现表3-3Department(部门表)字段department——iddepartment——nameaddressup—departmenttelephoneadministrator——name类型int(11)varchar(25)varchar(200)int(11)varchar(25)varchar(25)Null默认注释否否否是是否NULLNULL组织机构名称地址直属机构ID联系电话单位负责人表注释:用于保存部门信息表3-4Group(群组表)字段group_idgroup_nameOWner类型int(11)varchar(25)int(11)Null默认注释否否是NULL群组名称拥有者,null表示公共的表注释:用于保存群组信息,一个群组对应多个部门表3-5Project(项目表)字段project——idproject——nameproject_memoup_projectprioritycontrol1eraction类型int(11)varchar(25)varchar(200)int(11)int(5)varchar(25)varchar(50)Null默认注释否否是是否是是NU乙LNULLNULLNULL项目名称备注表示上层项目,方便用户批量添加在菜单中显示的优先级动作表注释:项目表,表示某种身份的人员可以参与的项目
基y-B/S结构的学生资助信息管理系统的设计与实现表3-6Field(模板字段表)字段fieldidfield——nametable——idup——field——idvalue——typeinput——typeiSnull类型int(11)varchar(100)int(11)int(11)varchar(25)varchar(25)tinyint(1)varchar(500)tinyint(1)int(5)varchar(zoo)int(11)Null默认注释否否否是是是否是否否是是是NULLNULLNELLNULLNULLNULL1NULL0字段名称对应表格父字段id字段值类型输入控件类型字段值是否为空字段值来源字段值是否可以修改value——fromreadonlyprioritydefaultlengthoptions字段显示时的优先级默认值字段长度备选项varchar(500)表注释:用于表示表中的各种字段表3_7project—info(项目初始化表)字段学年开放注册开放提交类型varchar(50)int(1)int(1)否否否NullI默认注释表注释:项目的初始化信息
基于B/S结构的学生资助信息管理系统的设计与实现表3-8proposer(人员信息表)字段idI类型int(11)Null默认注释I否姓名性别出生年月民族公民身份证号家庭户口入学时间省市生源地学校学院系班学号照片奖励varehar(25)否varehar(2)date否否varchar(25)否varchar(25)否varchar(10)是dateNULL否NUL乙NbLLNULLvarchar(50)是varehar(50)是varchar(50)是int(11)int(11)int(11)否否否varchar(50)否varehar(50)否texttext是是否否否是是否是NULLNULL综合测评排名成绩排名学年成绩学校资助管理int(io)int(10)text机构评审意见学校审核意见填写人提交人状态审核人textNULLtextNULLint(11)int(11)NULL提交人员id未提交;已提交;学院审核通过;学校审核通过;主管单位审核通过varchar(25)否int(11)是NUL乙审核人表注释:申请人员的详细信息
基于B/S结构的学生资助信息管理系统的设计与实现3.4系统运行平台一、系统硬件设备由于系统优化运行的需要,这就对硬件系统尤其是主服务器提出了较高的要求。该系统适合在网络环境下运行,应配置至少一台具有磁盘阵列的双CPU服务器系统进行WEB服务和数据库管理,可进一步提高了安全性和可靠性,确保了该系统对硬件的要求。WEB服务器端配置:CPU:IntelCore2,双CPU;内存:4G;硬盘:300G;考虑系统数据备份和移出保存的需要,采用DVD刻录光盘作为存储媒体,将数据库和其他移出的数据刻录到光盘上。其他:构建网络的硬件通信设备及防火墙。客户端要求:CPU.IntelPIII800MHZ以上;内存:不低于128M:硬盘:不少于20G;二、系统软件环境操作系统:win9x/NT/2000/xP具有强大的功能,高度的安全性和稳定性,易于操作的图形用户界面。数据库系统:MYSQL。客户端:操作系统采用Microsoft浏览器采用IE5.0以上即可。Windows98/2000/XP或以上版本系统,
基于B/S结构的学生资助信息管理系统的设计与实现第4章系统的设计与实现通过前面章节的分析,本系统共有两类管理用户,包括系统管理员、普通管理员,其中普通管理员又分为学校、学院、系等不同级别和权限的管理,精确到操作对象的范围,每一类管理用户都进行了功能设定,分别对系统中的四个功能子系统进行操作。系统的总体页面结构由登录页面和四个功能子系统组成,四个子系统分别是:系统设置管理子系统、人员信息管理子系统、用户设置管理子系统、人员搜索子系统。如图4—1所示。图4.1总体功能结构图31
基于B/S结构的学生资助信息管理系统的设计与实现4.1用户登录界面本系统是基于Web的管理系统,在提供方便快捷的同时,也会存在许多安全隐患。本系统在设计时主要采取了以下一些措施来保障系统的安全。首先针对不同等级的管理者用户设置不同的用户权限,主要分为系统管理员、普通管理员;其次,为保障用户密码的安全性,采用了MD5加密算法,用于对用户密码加密:最后,为保障数据库的安全性,防止数据库被木马等恶意程序攻击下载,将数据库与Web应用程序独立存储,提高数据安全性。4.1.1MD5加密技术原理一、加密方式分类对于任何一个网站来说,对自己注册用户的用户信息进行保密是非常重要的。一般情况下用户的资料信息是保存在数据库中,如果对数据库没有采取任何的保密措施,对于一些数据库来说,用户注册的信息资料很容易被泄露。因此,为了增加安全性,我们有必要对数据库中的资料进行加密,这样,既使有人得到了整个数据库,如果没有解密算法,不能获取数据库中的用户信息。现在最常用的方法就是在用户注册时对用户提交的注册信息进行加密n"。在现阶段,加密技术主要分为两大类,即:单向加密和双向加密。单向加密能将我们能直接理解的明文数据加密为我们不能理解的密文数据,但不能将密文解密为明文。而双向加密既能将明文数据加密为密文数据,在需要的时候,还可以使用一定的解密算法将这些加密以后的密文再解密为原来可以理解的明文。双向加密是加密算法中最常用的。数据库中的用户信息通常可以进行加密,当用户创建一个新的账号或者密码,这些信息不是直接保存在数据库中,而是经过加密以后再保存。这样,既使这些信息被泄露,得到的是一段不能解密的密文,而得不到可以被理解的明文信息。二、MD5技术原理MD5‘181的全称是Message—DigestAlgorithm5,Message—Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一个128bit的大整数。MD5有两个非常重要的特性,第一是任意两段明文数据,经过加密以后的得到的密文是不相同的;第二是任意一段明文数据,经过加密以后,得到的密文一定是相同的。32
基于B/S结构的学生资助信息管理系统的设计与实现MD5算法可以简要的叙述为:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。三、MD5算法保护用户口令原理当用户试图注册登录到一个应用程序时,用户需要在服务器端脚本提供的表格中输入它们的用户名和口令,这个表格是从数十亿可能值中产生的随机数表格,客户端的脚本将这个随机数值添加到口令后并加以MD5单向运算,然后以MD5算法的输出作为口令。客户端脚本将用户名和MD5口令传输至服务器,当用户名和MD5算法得出的口令被Web应用程序接收到后,Web应用程序执行与用户浏览器相同的操作,它将当初传给用户的随机数加到用户口令后,(当然,此口令取自服务器中被保护区域)然后计算出正确的MD5口令值,将此数值与从浏览器收到的值进行比较,如果相等,则确定用户认证通过。随机数是用来防止重新攻击的,如果仅凭用户口令经过MD5运算,此MD5口令将始终保持一个值,加入随机数进行运算则保证了每次新的登录都有一个特定的MD5口令。四、MD5加密算法应用MD5算法在本系统中的应用,主要是针对不同权限管理员的注册登录。用户在注册时所提交的口令利用MD5算法加密之后再保存到数据库中。这样可以防止用户口令的泄露,既使是系统最高级别管理员也无法查看到其他用户的口令,从而有效的保护了系统的安全。在用户每次进行登录时,必须对身份进行验证,需要对输入的口令重新进行MD5加密,然后再与数据库中的口令信息进行比对,如果客户端MD5口令与服务器端MD5口令一致则用户认证通过,可以进入系统;如果不一致则通知用户再次输入用户名/口令。4.1.2系统登录界面设计系统登录界面是进入系统的入口,系统管理员、普通管理员进行系统的管理都要先登入系统。系统登录界面如图4-2所示。登录界面简洁明快,淡蓝色的界面颜色显得庄重大方,亲切友好,初始界面的上方醒目地显示有本系统的名称。登录时输入正确的用户名和密码,即可进入本系统的主界面。33
墨±型!堕塾!盟=|兰尘墅塑鱼星重型墨堑盟堕盐量塞墨图42学生资助管理信息系统登陆界面图在系统登录页面设计时,传统的登陆认证为“用户名/n令”的认证方式,用户名和口令都是以明文(cleartext)方式在嘲上传输,小够安全可靠。本系统对此进行了改进,采用MI)5加密算法来保护用户口令,即用户在注册时所提交的信息(密码)是利用MD5算法加密之后再保存到数据库中的。这样可以防止用户密码的泄露,即使通过其他手段侵入§Ⅱ后台数据库,也无法得到该登陆用户未经』Ju密的原始密码。下面以系统管理员身份的用户名和口令进入到系统功能主界面,如图4-3所示,慧慧霪曼爨隧隳繁纛襄赣翳翳麓暇匿『F*㈣…一……’J*’…"1…Jl慧嚣鬻一1…JF’~^mM…2J………口■………-_…Im……。--L蔓L:型:二二互i里日㈣n*图43系统功能主界而罔
茎!!坚笪塑盐堂生堑塑焦旦壁矍墨堕塑丝盐兰窭塑系统主界面上方显示内容与系统登陆界面相似,中间先侧列出系统常用栏目功能按钮,分别是:用户管理、身份管理、部门及群组管理、项目管理、模板管理、退出系统,它们包括了系统管理员用到的全部功能,让人一目了然。点击系统任一J功能按钮时,则在右侧显示出相应的页面内容,以便于进行对应的功能操作,如在功能主界面中单击“身份管理”,即可进入到身份管理主界面中,如图44所示。I|st;_rg}■删啦iEE∞}t#S晴2删£㈣删㈣3韩*础㈣瓣n“㈩^Ⅲ}㈡I㈣I*Imc例l删I#}{tK{di*&-p●…㈣zⅧI㈣■*【●*R#嘛{一…々t■■£‘Ⅲ图44身份管理主界面图如果以普通管理员身份进入系统,例如以学校管理员身份登录,其登录的方法与系统管理员方法相同,只是登陆后只能看到可进行相麻的项目操作。如图45所示。…In㈩^I#“mI”‘¨}㈠■■■#c■“#"…}}㈣j;i%■PH¨n-回回叵E回RⅢ-图4-5学校管理员登陆界碰图
摹丁B/S结杜J的学牛资助信息管理系统的设计与实现42系统设置管理于系统系统{5}置管理f系统土要是由系统管理员对整个信息管理系统进行一些相芙的设置。该子系统包括:身份管理、部门及群组管理、项目管理、模板管理四个功能模块,如图4-6所示。图4-6系统设置子系统结构图421身份管理功能身份管理功能包括:添加新角色、删除角色、编辑角色、设胃角色权限四部分。(1)添加新角色添加新角色的系统界面如图4—7所示。■脯e…a■图4.7添加角色截面圈系统管理员能够利用该功能根据系统的实际需要为用户的添加新的角色,设置角色的优先级,加注角色描述。(2)设置角色权限由于本系统采用的是不同类别用户分级管理,所以普通用户的操作权限会相
墨士!堕董塑塑堂尘垦墅焦星筻墨墨堑墼丝生兰塞曼应减少,并且普通用户不具备设置角色权限的功能。如图48所示,为系统管理员身份所具有的操作权限。…●…~Ⅷ…一…F…㈨㈣ti㈣i㈣tK删…}i图4-8管理员权限设置截面图(3)删除角色、编辑角色系统管理员除了具有漆加新的角色的功能外,还可以删除和修改角色。这可以根据学生资助工作的实际需要,有不同的变化。由于界面与添加新角色相同,方法也非常简单这里就不在赘述了。422部门及群组管理功能部门及群组管理功能也是系统管理员所特有的管理操作。该功能可以完成添加新部门,修改部门信息,删除部门信息、查看部f]列表,添加新群组,修改群组信息,删除群组信息、查看群组列表等操作。(1)查看、添加、修改、删除部门信息查看部门列表信息,可以看到部门的名称,该部门的上级单位和下属部门数量,以及该部门的联系电话负责人和所属群组信息。如同4-9所示。ml=一慨i一篡M图4-9(a)小同界别部门群组信息列表截面图
基于B/¥结构的学生资助信息管理系统的设计‘0实现图4-9(b)小同界另lJ部门群组信息列表截血图々m±■}iTE“砌0口挂tt'Ptillll^*附tt●#}{麓一*“m●IⅢ㈣Ⅱ∞%§i自;I”I*■i∞I%I№图4-9(c)不同界别部门群组信息列表截面图系统管理员除了具有查看功能外还町以进行部门的添加、删除、修改操作。由于方法比较简单这里既不再赘述了。(2)查看、添加、修改、删除群组信息通过该功能uJ以查看目前所具有的群组信息,并可以添加、删除、修改该信息。添加群组信息,直u图d一10所示截面图。删tIr#《黯Ii旃图4—10添加群组信息截面图423项目管理功能通过该功能系统管理员可以添加项目,并可以根据实际的需要对资助的项日进行编辑修改。项目管理功能只是有系统管理员才能町以进行操作。而且系统管理员可以根据资助项目的不同对普通管理员的权限进行相应设置,这样保证了资助工作的高效、规范。如图4一11所示截面图。Ⅲ㈣r———j…Ⅷm㈣13■㈣JllllUt…0¨图4一11添加项目截面图
堇!!堡堕塑盟堂皇堡些笪星壁堡墨丝盟壁生兰塞塑如图412所示,显示的是系统管理员目前所添加的项目的状况,以项目列表的方式显示出来。_埘一蚱0。蒸瓣二榔胛删肭;l桃图4—12项目列表截面图二一篓蒜瓣熏熏肿椭如图4—13所示,显示的是目前系统管理员可以管理的项目列表{目雠t魁t蚺赫±㈣矾脆髑H№lMI㈨“l'Ⅱ“・l*m№l∞2拂“f“・^m一m}”∞∞∞i*髓女盼1艄㈧“ll㈣mm#n∞i№图4—13系统管理员可管理的项目列表截面图如图414,显示的是目前系管理员(普通管理员)可管理的项目列表,系管理员(普通管理员)管理项目的权限由系统管理员负责设置。…B川■目目㈣删槲㈣㈧酮■et目●々m∞eSM10-m¨IzP一・勰t∞*目l肭¨■目I捕l,目■攥牲自煳㈣##啪E端牲*#彻……,-i雠j2l‘∞噼±《}±髓。女:l‘i目网rf—r丽R,n∞一一--舢…‘删^¨KI删槲j#Sl黼●图4-14系管理员可管理项目列表截面图如图415、4_16所不,系统管理员可以完成对具体项目资助计划的初始化设置,其中包括填写资助工作的属于的学年,该学年的总体计划等设置,并可阻
墨±型!堑塑盟兰尘墼墅焦星嬖堡墨堑盟壁主!:皇塞丑随时根据需要调整分配给各个学校资助计划数量4黼●■N僦聃t愀■m埠±r}4E“一{ti洲m*糊r融P*目Ⅳ■lt口}mr*目畦鞴图4一15项目资助初始化设置截而图上量“f12WJI】∞i髓i;itlo}&目mHL#目i鼬E005i髀&目删5ll黧4.24模扳管理功能【∞l∞Ji±ln耻Ⅲ瞄脯曲图4—16资助计划数量修改截面图通过该功能可以实现各种资助表格的设计与实现,系统管理员町以根据自己的实际需要定制满足自身工作需要的各类表格。通过添加、删除、修改等功能,可以轻松针对不同资助项目的特点,制作不同的模板,这样大大提高了工作的效率,也在一定程度上节约了资源,杜绝了纸张的浪费。添加模板操作,可以自行添加模板表格的字段,并设置该字段的一些属性,如图4一17所示。……,■_q’…f!i]JH}ot■■rj…i…■rir‘ri一4|墨|4—17添加模板字段截面图3用户设置管理子系统用户设置管理了系统主要是完成与用户有关的些操作。包括用户的添加,用户的修改,用户的撤销。用户权限的设置等具体操作。用户注册需要输入真实
量至坠笙塑塑堂皇堡墅焦垦宣堡墨丝盟堡盐皇釜里姓名,保证了系统的安全性,另外为用户设置不同的权限,用户的级别不同权限也就不同,这也方便了系统的管理维护。同时利用用户分级制度,对资助申请进行逐层审批,也符合资助工作规范化标准化的要求。如图4—18所示截面图。㈣I嘲Ifst㈣I…P镕…I㈣I懈㈣I舯铷胖●■■目P…s‘i日r㈣㈣)rml㈣……一*¨^r㈣㈣Ⅻ】*f・R|籀阱鹾ji两¥#j口日_r}㈣㈣I#】r㈣【】图4-18添加用户截面图除了添加用户的功能外还可以查看用户列表并对用户信息进行修改,以及对用户进行撤销操作。如图419所示截面图。1…g567】0●}㈡*胛野…,ⅢJ{鲫…●^慨】l*‘■自t端#略f¥{*鲤*’m#时强‘】*‘】q。J‘…ⅢFt】-ck-㈡。Ⅲ-Ⅷ■“o】m‘…】精t联㈣■雠十0㈣工理鞴…】¨¨l懈日#};*■m搏㈧㈣㈣躺■槲}鞴聃I§月P辩㈣々t貅删壮I帅册女tI聃I删…7JF删I㈣I#目}i㈧I删㈥I舢l㈣I㈣ls*【∞辨日E14aImb图4一19用户列表截面图如图4—20(a)(b)(c),分别显示了学校管理员、学院管理员、系管理员的列表。Ⅱ‘…黼批IJ-}mm^t】u自●月n}∽-囹匡型E7I匣…ul*■●&嗍#sl釉雠■*图4—20(a)学校管理员列表截面囤㈣#*弧#镕戢㈣1…1】¨月P辩㈣■I翳#师目#《}}鞴∞mtH■t#■0i《Sl嘴艚}i盼I喃ee-I?iF==订ri=开雨默:m图4—20(b)学院管理员列衷截面图
垦].!堡堑塑盟兰竺堡塑焦星嬖型墨丝盐重盐兰墨塑o…g‘J…v}f卧oo‘…tnu…¨邮■‘■e…’】Ⅷ-JJu㈣……r司啊r焉ifiEmm”图4—20(c)系管理员列表截面图…q#1~…Ⅲ%*●●t一H㈣…I…I…l*…^f■■nfm自■l…IA44人员信息管理子系统人员信息管理子系统主要足完成申请人填写电子申请表。各级管理员对申请人信息进行审核,审批。441添加申请人信息功能添加申请人信息这项操作只是在低级别的用户才具有这样的操作权限。例如以系管理员为例,系管理员可以根据申请电子表格的实际要求,填写完整的申请人信息,其中一些必须填写项目包括:姓名、性别、出身年月、民族、身份证号、生源地、家庭户口、入学时间、学号、本年度综合测评排名、本年度学习成绩排名、本年度各科成绩等必须如实填写的项目。如图4—21所示。t^㈣㈣㈣㈣tt_pr3一目r]目i日“……rmrⅫ^}柏㈣t%■目㈣■t■日即日g罚博田霸西坪甄习褥阿研两隔习j-・柞掉;=脯肝。州“¨拈。计蚺婚,%脯图4—21添加申淆人信息截面图
—————————董王型茎塑墼堂生童墅笪垦塑堡墨堑塑丝生皇塞垫4.42申请人信息审核功能系管理员填写完申请人信息后,就会将申请信息的电子表格进行提交。提交后由上一级管理员(学院管理员)进行审核,如图4-22所示,系管理员没有对申请人信息进行审核的权利,但是系管理员可以对申请的信息进行查看、修改、…_删除操作。蛀{月坩糟j●_¨悱㈨…∞1T{№#““:“”㈣¨……-i㈣#””号。”㈣㈣{2mm§:……㈣”“=。1”㈣^‘㈣*㈣Ⅷ……“5%・M““笮“”㈣…㈣∞uI-{hH呻i・-衄蜱”。噬u髀㈣…。……轼tt。R广珊h…釉脯梓”。唧‘1衅㈣……帅…一雌叼舡群㈣i……l*㈣#…警”㈣wl}㈣Hl蚋2m…Ⅲ}i.…"I-★5图4-22系管理员显示的已申请列表截面图对于更高一级别的管理员(学院管理员)来说,有管理审核系管理员提交的申请信息。如图4-23所示~-m一…警“*mⅢ《㈡i-…㈨…鼍‘”¨mm㈣t¥m#目%#,Htm……¨㈦#…=-1”籼】“㈨。t。№lm…∞i晰馘}”‘“警工I’目枉tj…㈤#““管‘。㈣3“t……EI_“*岍献・”蚍鼍‘‘蛘岫。㈣…-洲3・㈣川l目I{№…H‘i*w””≮””㈨㈣l。l自i”p“㈣。“鼍”㈣l~…lI…¨#“”≯”㈣2㈣“nIt{一”}崎默}计t”譬“群lH舶}獬l2蝴∞口J-。衄曲图4-23学院管理员显示的已申请列表截面图需要特别说明的是对于申请人的审批都是严格遵循逐级审批制度。如果低级别的管理员没有审核完申请信息。高级别的用户不能越数审批。这样的设簧保证
些』.!坐§。!塾!盟!:!:墼些堡:垦要堡墨丝盟坠丛!!窭堡r审批制度的严谨规范,也牛上绝了人为园素造成的工作滩乱。4.43申请人信息导出功能当中睛人信息全部填写井审核通过后,系统可以导出生成word文件格式的资助项日申请表和汀总表,这类表格是为r方便打印并满足今后存档要求的。如图4—24、4-25所示。*”¥日*#二.¥nql't#Ei#’{十∞i*t…・-=t…‘*:嚣=::…41士圈424word文件格式的个人申请表截面图2008—2009}4&普通¥科;I交、;}Bn{控目i#{2&£{±¥#94£e女自nI自榧l和:口“蜊硝《it{}±柑fl机*&女*甜i{p{杆‘罅】4i日自:l雌’胁日聿号肼}#斛恻蠊^}划f,nj口§I《}&㈣1}l警㈣”id±5‘¨2m2Ⅲ]2Ⅲ幽d-25word文件格式的r}i请人信息汇总表截面图
版权声明:本文标题:基于web的学生资助信息管理系统的设计与实现 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1707236231h512863.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论