校园信息助手毕业论文.doc_第1页
校园信息助手毕业论文.doc_第2页
校园信息助手毕业论文.doc_第3页
校园信息助手毕业论文.doc_第4页
校园信息助手毕业论文.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科毕业设计说明书(论文) 第 42 页 共 42 页 1 引言随着科学的发展,时代的进步,当今社会已经步入了信息化的时代,计算机的使用已经深入到人们工作生活中的每一个角落,计算机网络的应用也越来越普遍,应用计算机网络传播信息和进行工作管理已经成为一种新的趋势。时至上世纪末,因特网已将全球各国各地区一“网”打尽,它打破了传统的地缘政治、地缘经济、地缘文化的概念,形成了虚拟的以信息为中心的跨国界、跨文化、跨语言的全新空间。二十一世纪的到来,计算机技术的发展更加迅猛,在各行各业的应用更加广泛,与此同时为满足各领域对数据管理的进一步需求,很多人忙于各种网站的构建,提高工作效率。同样,在校园信息管理领域中,引入计算机管理系统,可以大大提高管理效率和质量,是学校进行现代化,标准化建设的必然趋势。近年来随着各个高校的不断扩招和改革,高校学生和教职员工的人数在急剧增多,对校园人事和校园日常事务的管理就成为了一个重要任务。以前,校园人事信息是存入到纸质档案中,但现在由于学生和教师的人员数量大,修改、查询等操作极为不便,人工管理费时费力,而且容易造成数据的丢失。在传统的学生给教师年终评优打分过程中,老师将学生组织到一起,在固定的地点,固定的时间,通过填写评优卡片的形式完成给每个任课教师打分的过程,但这个过程缺乏一定的灵活性。在本设计中,学生可以通过Web形式进行投票,不受场地、时间的限制,由系统自动的完成对投票结果的统计分析。本设计通过B/S(Browser/Server)模式,主要完成学校学生和教师的人事管理,使得校园人事管理活动更加灵活、方便,同时通过管理员对学校课程的安排,学生可以在网上进行选课,并对其所选课程的教师进行投票打分,本设计会自动对教师的得分结果进行分析,生成相应的柱状图和饼状图,使得教师评优这个环节更加便捷和完善。2 开发工具与开发语言2.1 开发工具简介2.1.1 Dreamweaver简介Dreamweaver是美国Macromedia公司开发的集网页制作和网站管理于一身的所见即所得的网页编辑器,它是第一套针对专业网页设计特别开发的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。Dreamweaver的特点:a) 最佳的制作效率 Dreamweaver可以用最快速的方式将Fireworks,FreeHand,或Photoshop等档案移至网页上。使用检色吸管工具选择萤幕上的颜色可设定最接近的网页安全色。对于选单、快捷键与格式控制,都只要一个简单步骤便可完成。Dreamweaver能与个人喜爱的设计工具,如Playback Flash,Shockwave和外挂模组等搭配,不需离开Dreamweaver便可完成,整体运用流程自然顺畅。除此之外,只要单击便可使Dreamweaver自动开启Firework或Photoshop来进行编辑与设定图案的最佳化。 b) 网站管理 使用网站地图可以快速制作网站雏形,并可以设计、更新和重组网页。改变网页位置或档案名称,Dreamweaver会自动更新所有连结。使用支援文字、HTML码、HTML属性标签和一般语法的搜寻及置换功能使得复杂的网站更新变得迅速又简单。c) 无可比拟的控制能力 Dreamweaver提供了视觉化编辑与原始码编辑同步的设计工具。它包含HomeSite和BBEdit等主流文字编辑器。进阶表格编辑功能可以选择单格、行、栏,同时也可以排序或格式化表格群组。Dreamweaver 支援精准定位,利用可轻易转换成表格的图层置放的方式进行版面配置。Dreamweaver成功整合动态出版的视觉编辑及电子商务功能,提供超强的支援能力给Third-party厂商。当您正使用Dreamweaver在设计动态网页时,所见即所得的功能,让您不需要透过浏览器就能预览网页。Dreamweaver将内容与设计分开,应用于快速网页更新和团队合作网页编辑。建立网页外观的样版,指定可编辑或不可编辑的部份。也可以使用样版,正确地输入或输出XML内容。另外,支持跨浏览器的Dynamic HTML和层叠样式表也是Dreamweaver的一大特点15。2.1.2 Eclipse 简介Eclipse是基于Java的、开放源代码的可扩展开发平台,它最初由IBM公司投入巨额开发,后来被捐赠给国际开放源代码团体。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。Eclipse附带了一个标注的插件集,包括了Java开发工具JDT(Java Development Tools)。虽然目前大多数用户将Eclipse当作Java IDE来使用,但Eclipse的目标不仅限于此。Eclipse还包括插件开发环境PDE(Plug-in Development Environment),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许开发人员构建于Eclipse环境无缝集成的工具。Eclipse软件可以集成不同的软件工具开发供应商的产品,任何开发工具厂商都可以将它们的开发工具或组件加入到Eclipse平台,用户可以通过相同的接口使用不同的工具。由于Eclipse具有这种整合不同工具的特性,开发者可以进行综合调节、监测、调试等处理,从而可以在较短的时间内开发出高性能和高质量的软件。Eclipse平台提供了团队在软件项目中共享代码和分配工作的能力。Eclipse广泛地支持各种代码管理解决方案,这要归功于它的插件体系结构。Eclipse平台体系结构的重点在于工作空间,它包含对象(源代码和资源),它还保存了用于项目、IDE和插件的配置设置。工作空间是在开发人员的机器上本地进行维护的,而团队则通过外部资源库进行协作,不同开发人员的代码在资源库进行汇集。可以经由因特网通过“客户机-服务器”体系结构访问资源库。Eclipse平台提供了对于直接从工作空间进行团队开发操作的支持。这种支持允许开发人员并发地与几个独立的资源库以及不同版本的代码或项目进行交互。工作空间中的资源允许团队支持组件处理版本和配置管理的问题。当然,单个工作空间可以同时访问不同类型的资源库。Eclipse平台并没有提供它自己的代码管理解决方案,它总是依靠外部系统。2.1.3 Tomcat 简介目前,基于Web的应用越来越多,传统的 Html已经满足不了如今的需求。我们需要一个交互式的Web,于是便诞生了各种Web语言。如ASP,JSP,Php等。当然,这些语言与传统的语言有着密切的联系,如Php基于C和C+ 语言,JSP基于Java语言。所要介绍的Tomcat是一个JSP和Servlet的运行平台。Tomcat是一个免费开源的Servlet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache、Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现。Tomcat Java World杂志的编辑选为2001年度最具创新的Java产品,可见其在业界的地位。Tomcat 5.0中采用了新的Servlet容器:Catalina完整的实现了Servlet2.3和JSP1.2规范。Tomcat提供了各种平台的版本供下载,可以从上下载其源代码版或二进制版。由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(Web Archive)文件。WAR是Sun提出的一种Web应用程序格式,与JAR类似也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和JSP 文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录。通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和JSP或Servlet所依赖的其它类(如Java Bean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。 在Tomcat中,应用程序的部署很简单,只需将WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。当在浏览器中访问这个应用的JSP时,通常第一次会很慢,因为Tomcat要将JSP转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,可以在远程通过Web部署和撤销应用,当然本地也可以。 Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache。但可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理动态的JSP,同时这种集成只需要修改一下Apache和Tomcat的配置文件即可。在Tomcat 5.0中,还可以利用Servlet2.3提供的事件监听器功能,能够对应用或者Session实行监听。Tomcat也提供其它的一些特征,如与SSL集成到一块,实现安全传输,还有Tomcat也提供JNDI支持,这与那些J2EE应用服务器提供的是一致的。通常所说的应用服务器(如Web Logic)与Tomcat的区别在于,应用服务器提供更多的J2EE特征,如EJB,JMS,JAAS等,同时也支持JSP和Servlet。而Tomcat则功能没有那么强大,它不提供EJB等支持。但如果与JBoss(一个开源的应用服务器)集成到一块,则可以实现J2EE的全部功能。既然应用服务器具有Tomcat的功能,那么Tomcat有没有存在的必要呢?事实上,我们的很多中小应用不需要采用EJB等技术,JSP和Servlet 已经足够,这时如果用应用服务器就有些浪费了。而Tomcat短小精悍,配置方便,能满足我们的需求,这种情况下我们自然会选择 Tomcat。 基于Tomcat的开发其实主要是JSP和Servlet的开发,开发JSP和Servlet非常简单,可以用普通的文本编辑器或者IDE,然后将其打包成WAR即可。这里要提到另外一个工具Ant,Ant也是Jakarta中的一个子项目,它所实现的功能类似于Unix中的make。当需要写一个build.xml文件,然后运行Ant就可以完成xml文件中定义的工作,这个工具对于一个大的应用来说非常好,我们只需在xml中写很少的东西就可以将其编译并打包成WAR。事实上,在很多应用服务器的发布中都包含了Ant。另外,在JSP1.2中,可以利用标签库实现Java代码与Html文件的分离,使JSP的维护更方便。 Tomcat也可以与其它一些软件集成起来实现更多的功能。如与上面提到的JBoss集成起来开发EJB,与Cocoon(Apache的另外一个项目)集成起来开发基于xml的应用,与Open JMS集成起来开发JMS应用,除了这几种,可以与Tomcat集成的软件还有很多。它确实是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性。如今,开源软件越来越收到人们的重视,Linux就是一个成功的典型。人们不再限于只使用软件,而且注重软件的具体实现。2.1.4 SQL Server 2000 简介 用户对数据库的使用是通过数据库管理系统提供的语言来实现的。不同的数据库管理系统提供不同的数据库语言。关系数据库管理系统几乎都提供关系数据库标准语言SQL。SQL(Structured Query Language)即结构式查询语言。SQL虽然名为查询语言,但实际上具有定义、查询、更新和控制等多种功能。由于它使用方便、功能丰富、语言简单易学,很快得到应用和推广1。从20世纪70年代末起,在推出的关系数据库系统产品ORACLE、SQL/DS、DB2、SYBASE上实现了SQL语言。很快,SQL语言被整个计算机界认可。1987年6月,国际标准化组织(ISO)采纳为国际标准。随后,ISO对标准进行了大量的修改和扩充。在1992年推出了新的标准SQL2。SQL的标准化工作还在继续,新的标准已被命名为SQL3,将包括许多新的数据库概念,正在不征求意见和进行修改。Microsoft SQL Server 2000是在SQL Server 7.0的基础上对性能、可靠性、质量以及易用性进行了扩展。SQL Server 2000的数据库引擎集成了对XML的支持,同时以可扩展、易于使用和安全的特点,成为了建设大型Web站点最好的数据存储设备之一。SQL Server 2000的编程模式在很大程度上与专用开发Web应用的Windows DNA架构想集成。同时,SQL Server 2000所携带的诸如英语查询以及Microsoft查询服务等为开发Web应用提供了友好而强大的查询界面。a)可扩展性和可用性为了兼顾各种配置计算机的使用,SQL Server 2000的数据库引擎可以运行在从装Windows 98的台式机、笔记本电脑到安装Windows 2000数据中心的多处理器计算机上。SQL Server 2000企业版,具有联盟服务器、视图索引以及超大规模的内存支持等特征,完全可以满足最大规模的Web站点的性能要求。SQL Server 2000所支持的联盟服务器特性允许用户在多个数据库服务器上水平划分数据表,从而用户把本来一台服务器负责的功能扩展到多台数据库服务器上。这多台数据库服务器彼此合作提供类似于集群服务器所能提供的强大的性能。b)企业级数据库SQL Server 2000关系数据库引擎具备有完善的而强大的数据处理功能。它在有效保证数据库一致性的基础上,尽量降低成千上万的数据库用户进行并发访问时的管理和延迟成本。SQL Server 2000的分布式查询允许用户同时引用多处数据源,但其友好的界面使用户觉得好像自始至终是在一个数据源3。c)简单、友好的操作方式SQL Server 2000包含一整套的管理和开发工具。这些工具都具有非常友好的用户界面,在提供强大功能的同时,易于安装、使用和发布。用户可以把更多的精力放在自己的业务问题上,可以非常迅速的建立并发布强大而复杂的数据库应用系统。d)数据仓库支持SQL Server 2000为了满足现代企业对大规模数据进行有效分析和利用的要求,包含了一系列提取、分析、总结数据的工具从而使联机分析处理成为可能。同时,SQL Server 2000提供了英语查询工具和编程接口,使得以英语为基础设计和管理、查询数据库成为可能。随着数据库系统规模的不断扩大和信息敏感性的提高,数据安全性显得尤为重要,安全性的威胁可能来自三个方面,它们是外来入侵者、内部人员、意外闯入。因此数据库的安全性体系十分重要。作为数据库管理系统SQL Server 2000具有良好的安全性措施。它使用登录管理、用户管理、角色管理共同构成了其强大的安全性体系。SQL Server 2000中包含许多新特性,这些特性使其成为针对电子商务、数据仓库和在线商务解决方案的卓越的数据库平台。其增强的特性包括对丰富的扩展标记语言(XML)的支持、综合分析服务以及便捷的数据库管理。在使用由Microsoft SQL Server 2000关系数据库引擎的情况下,XML数据可在关系表中进行存储,而查询则能以XML格式将有关结果返回。此外,XML支持还简化了后端系统集成,并实现了跨防火墙的无缝数据传输。你还可以使用Hypertext Transfer Protocol(超文本传输协议,HTTP)来访问SQL Server 2000,以实现面向SQL Server 2000数据库的安全Web连接和无须额外编程的联机分析处理(OLAP)多维数据集8。Microsoft SQL Server 2000非常明显的改进就是增加了OLAP(联机分析处理)功能,这可以让很多中小企业用户也可以使用数据仓库的一些特性进行分析。OLAP可以通过多维存储技术对大型、复杂的数据集执行快速、高级的分析工作。数据挖掘功能能够揭示出隐藏在大量数据中的倾向及趋势,它允许组织或机构最大限度的从数据中获取价值。通过对现有数据进行有效分析,这一功能可以对未来的趋势进行预测。2.2 JSP语言简介JSP是Sun Microsystems公司与1999年6月开发出来的一种全新的动态页面技术。它是在传统的html代码中,利用html标签的扩展,插入JSP脚本代码(目前主要是Java语言)构成JSP页面,其中对于脚本代码,同样是在服务器端(Server-Side)处理,不同的是它对脚本的处理,摒弃了常用的解释执行方式,而采用的是一种全新的先对代码进行转换、编译,而后再执行的方式。在美国,EJB+Servlet+JSP几乎成为电子商务的开发标准,而在中国JSP刚刚兴起,许多电子商务网站也开始使用JSP技术了,由于它是一种服务器端的HTML嵌入Java代码的脚本语言,在保证最大可操作性的前提下,它提供了比一般脚本语言(ASP/PHP/CGI)更快的执行速度,由于JSP是基于Java语言的,使它可以无缝的运行在UNIX/LINUX和WINDOWS平台上。 Java Server Pages技术就是被设计用来满足这样的要求的。JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。Sun Microsystems Inc.开发出这个规范来整合和平衡已经存在的对Java编程环境(例如,Java Servlet和JavaBeansTM)进行支持的技术和工具。其结果是产生了一种新的、基于Web应用程序的方法,给予使用基于组件应用逻辑的页面设计者以强大的功能。使用此技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识来生成页面上的动态内容,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。Web页面开发人员不会都是熟悉脚本语言的编程人员。Java Server Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,以及执行用其他方法更难于编码和耗时的功能。通过开发定制标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。这种技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用中。作为采用Java技术家族的一部分,以及J2EE的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,可以使用不同的服务器和工具,更改工具或服务器并不影响当前的应用。当与Java 2平台,企业版(J2EE)和Enterprise JavaBean技术整合时,JSP页面将提供企业级的扩展性和性能,这对于在虚拟企业中部署基于Web的应用是必需的。JSP技术的优点:a) JSP的效率和安全性更高ASP以源码形式存放,以解释方式运行,每次ASP网页调用都需对源码进行解释,运行效率不高。JSP在执行以前先被编译成字节码,字节码由Java虚拟机解释执行,比源码解释的效率高;服务器上还有字节码的Cache机制,能提高字节码的访问效率。第一次调用JSP网页可能稍慢,因为它被编译成Cache,以后就快得多了。同时JSP源程序不大可能被下载。b) JSP的组件方式更方便ASP通过COM来扩充复杂的功能, 如文件上传、发送Email以及将业务处理或者复杂计算分离出来成为独立可重复利用的模块。JSP通过JavaBean实现了同样的功能扩充。在开发方面,COM的开发远比JavaBcan复杂和繁琐,学会ASP不难,但学会开发COM可不简单。而JavaBean就简单多了。它可以针对不同的业务处理功能方便地建立一整套可重复利用的对象库,例如用户权限控制、Email自动回复等。c) JSP的适应平台更广ASP目前仅适用于NETfills。虽然Unix下有ChiliSofi的插件来支持ASP,但是ASP本身的功能有限,必须通过ASP+COM的组合来扩充,Unix下的COM实现起来非常困难。JSP则不同,几乎所有平台都支持Java,JSP。JavaBean可以在所有平台下通行无阻。从一个平台移植到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java字节码都是标准的与平台无关的。3 需求分析3.1 概述近年来随着各个高校的不断扩招和改革,高校学生和教职员工的人数在急剧增多,校园人事和校园日常事务的管理就成为了重要任务。以前,人事信息存入到纸制档案中,由于数量大,给个人信息的修改、查询等带来很多不便,而且很容易造成数据的丢失。有时,即便是利用计算机网络实现了人事管理,在其中也缺乏一定的灵活性。因此,需要建立一个灵活、高效的人事管理系统;与此同时,为了提高对学生对教师投票打分的效率,降低人为因素,实现网络投票,并对投票结果进行系统、详尽的分析,本设计通过学生选课的记录,使学生对其任课教师进行投票打分,通过B/S模式完成投票,并且后台的管理程序动态的统计出教师的综合排名情况,以及针对每一个投票选项全体教师的得分分布情况,和每一位教师的得分分析。从而找到教学中的薄弱环节,加以改进,使教学工作得到提高。3.2 系统功能校园信息助手的主要功能如下:a) 实现校园人事管理由于校园人事的管理是针对个人信息记录已经存在的学生和教师,因此本设计不用涉及到人员注册的问题,教师和学生的基本信息都由管理员进行录入,其中包括学生的学号、姓名、性别、所在系、班级、和登陆的初始密码,教师的编号、姓名、性别、所在系、和初始密码。除了添加和查看个人信息,管理员可以在学号或教师编号一栏中填入相应的学生学号或教师编号,就可以查到个人的基本信息并完成个人基本信息的修改或删除操作。由于管理员完成的是基本的人事信息填写,学生和教师登陆后分别完成个人详细信息的填写,其中包括学生的年龄,政治面貌、入学时间、籍贯和个人的自我评价,教师的出生日期、政治面貌、婚姻状况、学历、职称、工作状况、通信地址、电子邮件等。填写完个人信息后,单击提交按钮,在下次登陆时就会在页面中显示出个人信息,并可以在相应的个人信息栏中完成修改。b) 课程制定、分配、选择与管理管理员登陆以后,可以对本学期所授的课程进行制定,包括课程编号、课程名称、学时数、每门课程的学分。将每门课程填入相应得信息栏中,单击添加即可,课程的相关信息就会显示在该网页中。同时也可以对课程的信息进行修改、删除。课程制定完成以后,就要对每一门课程安排其授课教师,在下方的下拉列表中选择课程编号与教师编号,同时在单行文本域中填入这门课程的一些教学计划,单击添加即可。教师可以对管理员的课程安排进行查看,找到关于自己的课程计划,按计划去授课,学生可以根据在学生信息页面生成的课程表进行选择,选出这学期所学习的课程,在单选框中打上对勾,单击提交即可,如果选择错了,可以重新选择。在管理员部分还有一个对学生选课信息查看的部分,可以根据课程序号,或学生编号对所有学生选课信息进行查看并进行管理,将学生选错的课程删去。c) 投票打分与图形分析在学生登陆界面,学生根据每门课程的授课教师的教学情况,对授课教师进行打分,单击投票选项,会出现该名学生本学期所选的课程和这门课程的任课教师,选择教师后,会在网页下方出现一个投票表,表中有十个投票项,每个投票项有A、B、C、D、E,5个分值,学生根据投票表中的选项进行投票。投票完成以后,后台的投票分析程序对学生的投票情况进行分析,在管理员界面会生成全体教师综合排名情况的柱状图(在每一个柱上显示出教师的平均得分情况)和针对每一个选项全体教师得分情况的饼状图(在饼状图上显示出该投票项中每一个分值个数占该选项总分值个数的比例)和每位教师的得分分析图。d) 校园动态和相关的上传下载该功能是本设计的辅助性质的功能,该功能的设计使本系统更加完善。校园动态是在主页中显示出最新的校园新闻和学术报告,起信息提示的作用,上传是通过上传程序,将有用的信息传到服务器指定的地方,下载则是提供了在学校的日常办公中常用到的表格和小型软件。e) 留言板留言板在留言界面中显示出留言者的名称,留言日期和相应的留言内容,单击留言者的名称后,会自动向该留言者发送邮件。普通游客可以直接在留言板进行留言,学生登陆后可以在学生界面进行留言,教师登陆后可以在教师界面进行留言,可以指出教学工作存在的薄弱环节,并在留言板中进行信息的交流。根据需求分析得到系统的用例模型如图3.1所示。学生个人信息选课信息投票建议留言教师个人信息授课信息建议留言课程制定教师综合排名选项分析学生教师管理员得分分析图3.1 用例模型图3.3 业务流程系统业务过程描述:学生登陆后,可以确认个人基本信息,并对个人详细信息进行添加、删除、修改等操作,学生可以进行课程的选择,并根据课程的任课教师对教师进行投票打分,与此同时可以针对教学工作中存在的薄弱环节在留言板中提出建议。教师登陆后,可以完成个人信息的添加、删除、修改等操作,同时查看管理员分配给个人的授课安排。管理员登陆后,完成对学生、教师个人信息的增删改操作,完成对课程的制定和管理学生选课信息的工作,与此同时查看教师综合排名的柱状分析图和对各个测评选项得分分布情况的饼状分析图和每位教师的得分分析。业务流程图如图3.2所示。开始身份判定信息修改授课查询建议留言教师登陆学生登陆信息修改课程选择建议留言投票管理员登陆学生信息教师信息课程安排授课安排选课查询综合排名选项分析得分分析结束图3.2 业务流程图4 概要设计4.1 模块设计本设计采用B/S(Browse/Server)结构模式,B/S结构的主要特点是分布性强、维护方便、开发简单、且共享性强,总体拥有成本低,用户工作界面是通过IE浏览器来实现,能实现不同的人员,从不同的地点,以不同的方式(比如LAN、WAN、Internet/Intranet)访问和操作共同的数据。在本设计中整个网站的管理、资源分配、数据库操作、业务逻辑部件的管理及动态加载等工作都集中于应用服务器。这样一来,仅仅通过提高应用服务器及数据库服务器的性能,就可以提高整个网站的运行效率,服务器端使用流行的SQL Server 2000数据库系统。校园信息助手选课信息模块综合排名模块选项分析模块得分分析模块上传模块学生信息模块校园动态和下载模块管理员模块留言板模块教师信息模块信息修改模块课程选择模块投票模块留言模块信息修改模块授课查看模块留言模块学生信息模块教师信息模块课程制定模块课程安排模块图4.1 功能模块图对齐4.2 模块功能该网站主要划分为5个模块:学生信息模块、校园动态和下载模块、管理员模块、留言板模块、教师信息模块。其中对学生信息模块、管理员模块、教师信息模块又进行了详细功能的划分。4.2.1 学生信息模块学生信息模块又划分为信息修改模块、课程选择模块、投票模块、留言模块这四个子功能模块。由于学生的基本信息是有管理员添加完成,包括学生的学号、姓名、性别、所在系等,所以学生在单击学生窗体完成第一次登陆以后首先要完成个人详细信息的填写,包括个入学时间,籍贯、联系方式、个人评价以及完成修改个人登陆密码操作。完成点击提交后就会自动保存,下次登陆以后就可以直接看到个人信息,点击“重置”按钮,则刚填写的注册信息将全部清空,就可以重新填写信息。学生根据管理员安排的课程可以进行选课,课程选择完成以后,根据教师的授课情况,可以对该课程的任课教师的教学水平进行投票打分,同时可以对教学工作中出现的问题在留言板中提出个人的看法和意见。4.2.2 校园动态和下载模块该功能模块是本设计的辅助性质的功能模块,该功能的设计是使本系统更加完善。校园动态是分为校园新闻和学术报告两类,起信息提示的作用,并随着时间的推移不断进行更新,下载是提供了在学校的日常办公中常用到的各类表格和小型软件。4.2.3 管理员模块管理员模块是本设计中的主要模块,该模块又划分为:学生信息模块、教师信息模块、课程制定模块、课程安排模块、选课信息模块、综合排名模块、选项分析模块、教师得分分析模块和上传模块这九个子功能模块。管理员完成登陆以后,进入到管理员模块,该模块是设计中重要的管理全局的模块,其中包含很多主要的功能:对学生基本信息,包括学生的学号、姓名、性别、所在系、班级、和登陆的初始密码的查询、录入、修改、删除等操作。对教师基本信息,包括编号、姓名、性别、所在系、和初始密码的查询、录入、修改、删除等操作。完成课程的制定,制定本学期课程的编号,课程名称,学时数,学分,同时对授课教师进行分配,并说明该门课程的教学计划。管理学生的选课信息,分别按课程编号,和选课学生的学号进行查看,对学生选错的课程进行删除。完成对投票的动态分析,显示出全体教师综合排名的柱状分析图和针对每一个选项全体教师得分分布情况的饼状分析图,并对每一位教师的得分情况进行分系。在上传模块中,管理员对校园工作中常用到的表格和小型软件进行上传。4.2.4 留言板模块 留言板所显示的信息是从三个地方获取的,首先是学生登陆后,在学生信息模块中有一个留言窗体,学生可以对其校园生活和课程安排或任课教师,发表自己的意见和看法。其次是教师信息模块,在这个模块中,教师可以根据自己在日常工作中所遇到的问题,发表自己的看法,并及时指出教学中的薄弱环节。再次,用户可以不必登陆,直接进行留言。在留言板中会显示出留言人的姓名,单击后就会显示要发送邮件到对方,同时显示出留言时间及内容。4.2.5 教师信息模块教师信息模块又划分为信息修改、授课查看、留言这三个子功能模块。教师登陆到个人信息管理界面后,如果用户不存在或者密码错误将无法进入,登陆完成以后,可以对个人详细信息进行设置,包括出生日期、政治面貌、婚姻状况、学历、职称、工作状况、通信地址、电子邮件等。与此同时可以查询管理员所安排的每一位教师所教授的课程和授课计划,并进行留言。5 数据库设计5.1 数据库需求分析数据库设计是项目开发中非常重要的一个关键环节,在这里强调数据库设计的重要性,是因为数据库设计就像建设高楼大厦的根基一样,如果设计不好,在后来的系统变更和功能扩充时,将会遇到非常大的困难。数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。按照对系统需求的分析和基于客户/服务器开发模式的要求,数据库采用SQL Server 2000,它所支持的字段数据类型包括数值、字符、日期时间以及二进制和整数等类型,它性能稳定适合本设计的工作需求。通过对系统需求的分析,针对校园信息助手的需求,总结出以下需要的数据库表和数据项:a) 学生信息表(student):学号、姓名、系、班级、性别、年龄、密码、籍贯、入学日期、政治面貌、个人评价;b) 课程表(course):课程编号、课程名称、课时、学分;c) 学生选课表(course_student):课程编号、学号、教师编号;d) 教师信息表(teacherinfo):教师编号、姓名、性别生日、政治面貌、婚姻状况、籍贯、教育背景、职务、工作状况、所在系、联系地址、电话、电子邮件、个人评价、登陆密码;e) 教师授课表(course_teacher):课程编号、教师编号、课程描述;f) 管理员登陆表(userpassword):用户名、密码;g) 留言表(message1):用户名、电子邮件、留言内容、留言时间;h) 投票表(vote):教师编号、学号、投票结果、课程编号;i) 选项分析表(voteanalysis):选项、分数、教师编号;学生信息表(student)和教师信息表(teacherinfo)分别为学生和教师的个人详细人事信息,课程表(course)由管理员进行制定,教师授课表(course_teacher)由管理员进行安排,同时教师对其进行查阅,学生选课表(course_student)根据课程表(course) 和教师授课表(course_teacher)通过学生的选课活动来生成。投票表(vote)、选项分析表(voteanalysis)在学生投完票之后记录到数据库中,同时用来向JFreeChart的数据集进行赋值,以便完成投票分析。根据上述分析得到E-R图,如图5.1所示:管理员分析投票结果学生信息课程授课计划选课信息教师信息管理制定管理管理管理学生教师安排投票选择查看留言留言留言信息留言信息管理1n1111nnnn1n111nn1111n1nn1图5.1 系统E-R图5.2 数据库逻辑设计首先创建一个名为assistant的数据库,根据上面的分析各表详细信息如下:表5.1学生信息表(student)字段名字段类型长度是否为空注释snochar5No学号snamevarchar15No姓名sdeptvarchar15Yes 系sclassvarchar15Yes 班级ssexvarchar2Yes性别sagevarchar5Yes年龄spasswordvarchar15Yes密码shomevarchar15Yes籍贯sdatevarchar15Yes入学日期sstatusvarchar15Yes政治面貌sremarkvarchar200Yes个人评价表5.2课程表(course)字段名字段类型长度是否为空注释cnochar3No 课程编号cnamevarchar15Yes 课程名称ctimevarchar15Yes 课时creditvarchar10Yes 学分表5.3学生选课表(course_student)字段名字段类型长度是否为空注释cnochar5No 课程编号snovarchar15Yes 学号tnovarchar10Yes 教师编号表5.4教师信息表(teacherinfo)字段名字段类型长度是否为空注释teacher_idint7No教师编号namevarchar10Yes姓名sexchar2Yes性别birthdayvarchar10Yes生日goverment_statusvarchar15Yes政治面貌marriagevarchar10Yes婚姻状况regionvarchar20Yes籍贯education_idvarchar20Yes教育背景position_idvarchar20Yes职务type_idvarchar20Yes工作状况department_idvarchar20Yes所在系addressvarchar50Yes地址office_phonevarchar20Yes电话emailvarchar20Yes电子邮件remarkvarchar200Yes个人评价passwordvarchar3Yes密码表5.5教师授课表(course_teacher)字段名字段类型长度是否为空注释cnovarchar10No课程编号teacher_idvarchar10No教师编号describevarchar50Yes课程描述表5.6管理员登陆表(userpassword)字段名字段类型长度是否为空注释user_idvarchar10No用户名passwordvarchar10No密码表5.7留言表(message1)字段名字段类型长度是否为空注释usernamevarchar10No用户名emailvarchar30No电子邮件messagevarchar1000No留言mtimevarchar20No时间表5.8投票表(vote)字段名字段类型长度是否为空注释teacher_idvarchar15Yes教师编号snovarchar10Yes 学号resultint4Yes 结果cnovarchar10Yes 课程编号表5.9选项分析表(voteanalysis)字段名字段类型长度是否为空注释itemvarchar5Yes选项value_iint4Yes 分数teacher_idvarchar10Yes教师编号6 系统详细设计6.1 模块功能6.1.1 学生信息模块a) 信息修改模块:该模块完成对学生个人详细信息的添加和修改操作,包括学生的入学时间,籍贯、联系方式、个人评价以及完成修改个人登陆密码的操作。对初始密码修改完成以后,需要进行再次确认,确认完成后提交即可,程序流程图如图6.1所示。填写个人信息提交密码确认正确提交成功结束是开始否图 6.1 信息修改模块流程图b) 课程选择模块:根据管理员对每门课程以及课程的授课教师的安排,学生根据生成的教师授课表进行课程的选择,选课的信息记录到学生选课表。c) 投票模块:该模块根据学生选课的记录,使学生对所选课程的任课教师进行选择,并根据投票项目中的内容对该教师进行投票打分。d) 留言模块:学生对平时教师授课过程中所出现的问题提出意见和建议,并可以在留言板中进行信息交流。6.1.2 校园动态和下载模块该功能模块是本设计的辅助性质的功能模块,校园动态是分为校园新闻和学术报告两类,起信息提示的作用,并随着时间的推移不断进行更新,下载模块是根据管理员上传到服务器的内容,提供了在学校的日常办公中常用到的各类表格和小型软件。6.1.3 管理员模块a) 学生信息模块:该模块完成学生基本信息的查询、添加、修改、删除操作,包括学生的学号、姓名、性别、所在系、班级、和登陆的初始密码。b) 教师信息模块:该模块完成教师基本信息的查询、添加、修改、删除操作,包括教师的出生日期、政治面貌、婚姻状况、学历、职称、工作状况、通信地址、电子邮件等。c) 课程制定模块:制定本学期所授的课程以及课程的属性,包括课程的课程编号、课程名称、学时数。d) 课程安排模块:根据课程的制定,为每门课程安排授课教师,方便学生的选择。e) 选课信息模块:在学生信息模块中,学生完成了课程选择以后,选课的信息就会显示在管理员界面中的选课信息模块中,同时管理员可以根据课程编号和学生学号这两种顺序对学生选课信息进行察看,并对学生选错的课程进行删除。f) 综合排名模块:该模块根据学生投票的结果,统计出各个教师的综合得分,并以柱状图的形式将统计结果显示出来,流程图如图6.2所示。g) 选项分析模块:该模块利用记录在投票分析表中的每一个投票选项和与之相对应的分值,求出每个投票的项目中各个分值所占的比例,并以饼状图的形式显示出来,程序流程图如图6.3所示。h) 得分分析模块:该模块完成对每一名教师得分情况的分析,统计出该名教师在十个投票选中,每个选项的平均得分占总得分的比例。i) 上传模块:管理员将日常校园工作中要用到的表格和小型软件上传到服务器指定的文件夹下,在下载模块中做成超链接的形式,方便用户的下载。开始定义两个vetor向量查询教师名和所得分数ivector.size()将查询到的值赋给vector向量 结果集中还

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论