基于web的高校学生成绩管理系统.docx
河北工业大学2021届本科毕业设计说明书图3.8 系统数据流程图3.5 数据流程本系统根据上节所设计的各个业务流程图,采用逐层细化的方法,画的每一部分各层的数据流图如下:3.5.1第0层数据流图用户和管理员都可以通过登录系统的界面来进入系统,如图3.9所示。图3.9 第0层数据流图首先,系统的用户可以通过帐户和密码的数据进行登录。此时,数据流通过到数据库的接口输入流进行逻辑验证。如果找到数据记录,则页面跳转,并根据用户身份信息跳转到相应的功能页面,系统用户在系统中执行数据操作。此时,数据流的有效数据流流向数据库中心,执行相应的数据sql语句,完成添加,删除,检查等操作。最后,数据流从系统接口中心进入数据库中心,并显示结果。3.5.2第1层数据流图第1层为系统的详细数据流图,用户,老师和管理员可以通过登录进行访问的过程,如图3.10所示。图3.10第1层数据流图第1层数据流图中,数据实体包括普通用户和管理员,普通用户数据流程包括课程信息,成绩信息;管理员数据流程包括课程管理,用户管理;管理员数据流包括添加信息、删除信息、修改信息、查询信息、浏览信息、提示信息等,数据表包括用户与管理员功能所涉及的表。3.5.3第2层数据流图第2层为系统的管理员数据交流图,可以分别通过添加、修改和自动删除等方式对整个系统的数据进行管理,如图3.11所示。图3.11第2层数据流图(管理员)第2层数据流图中,数据流实体主要是用户和管理员,数据流程包括用户资料管理、课程管理,选课管理,用户管理;数据流包括添加信息、删除信息、修改信息、查询信息、浏览信息、提示信息;数据表包括这些数据存在的表。4 总体功能及数据库设计4.1 开发软件本系统使用的是Java语言进行前后台Web的编写,在软件开发的过程中,系统所需要采用的就是 maven 软件开发工具, maven 软件是完全可以通过自己的方式进行免费使用,这也是一个很好用的软件开发工具。系统的数据库全部存储于数据库之中,本次操作系统全部采用 MySQL 数据库, MySQL 数据库更加安全可靠,是整个系统数据库的不二之选。4.2 总体功能为了简化对系统的开发、维护和使用,系统采取B/S的架构设计,将系统功能可以实现的一个核心组成部分全面集中在一起运行到服务器上。系统基于模块化思想对软件进行了开发,按照其功能划分为学生、教师、管理员等部分,系统的总体功能结构如下图4.1所示。图4.1 系统功能图4.3 数据库设计4.3.1概念模型简单来说,数据库的设计是根据各种业务系统的特点和需求,结合所选用的 dbms ,设计一个最优化的数据仓储模型。同时还要建立良好的表格结构,以及确定表与其他单元之间的相互关联。最后一步所能够实现的目标之一就是:有效地储存了大量的数据,并且能够高效地从一个数据库中提取和分析出所有已经被存储的数据。需求分析逻辑设计物理设计维护优化需求分析:数据是什么;数据有哪些属性;数据和属性各自的特点有哪些。逻辑构造方法:运用 er 图进行对数据库的逻辑构造。物理设计:根据数据库自身的特点把逻辑设计转换为物理设计。维护和索引优化:根据一些新的应用要求对系统的表进行维护修建新的表;并对索引进行优化;大量对表进行拆分。实体:实体就是指可以摸到的存在的具有区分其他事物的特性或属性并与其他实体有联系的实体。例如学生可以是一个实体,课程也是一个实体。属性可以理解为实体的特征。以下为实体介绍。图4.2 学生实体图 图4.3 教师实体图图4.4 成绩实体图4.3.2数据库结构概念性的设计主要是基于数据分析建立系统分析和数据库的设计,然后从前面的分析视角,将所有设计的视角都集成到一起,最后才能够完成系统的整体结构分析和系统优化。建立一个良好的数据库,需要追寻一下原则:1. 尽量较少数据沉余和重复。2. 操作设计和结构设计相结合。3. 数据结构具有相对的稳定性。根据系统的需求分析,同时又根据相关部分数据流程,以下为数据库中的表;1) 课程信息表(course)记录课程信息,用户信息,课程时间等信息。表4-1 课程信息表序号列名数据类型长度标识主键允许空1idbigint20是是否2namevarchar255否否是3userbigint20否否是4contenttext255否否是5xieshivarchar255否否是6gmtTimedatetime255否否是7begindatetime255否否是8enddatetime255否否是2)通知表(news)记录学校通知公告。表4-2 通知表序号列名数据类型长度标识主键允许空1idbigint20是是否2titlevarchar255否否是3contenttext255否否是4gmtTimedatetime255否否是3)系统操作记录表(sys_menu)记录每次系统操作的类型,用户,具体内容等信息。表4-3 系统操作记录表序号列名数据类型长度标识主键允许空1menu_idbigint20是是否2parent_idbigint20否否是3namevarchar50否否是4urlvarchar200否否是5permsvarchar500否否是6typeint11否否是7iconvarchar50否否是8order_numint11否否是4)课程分数记录表(courseord)记录学生的课程成绩表4-4 课程分数记录表序号列名数据类型长度标识主键允许空1idbigint20是是否2coursebigint20否否是3uservarchar50否否是4teachervarchar200否否是5gmtTimevarchar500否否是6stateint11否否是7scorevarchar50否否是5)公告信息表(task)记录学生或管理员给教师的意见或留言表4-5 公告信息表序号列名数据类型长度标识主键允许空1idbigint20是是否2namevarchar255否否是3userbigint20否否是4timedatetime255否否是5contentnvarchar255否否是6urlvarchar255否否是7gmtTimedatetime500否否是5 系统实现5.1 用户登陆当一个用户在数据库中输入自己的帐号与密码后即可注册并登陆成功,当一个用户在其中输入的帐号与密码填写有误时,即表示登陆不成功。其意思是说,填写好以上的账号与密码后若系统没有提示您注册失败,即可以登录成功。用户登录界面如下图5.1所示。图5.1 系统登录模块界面5.2 系统首页用户在第一次进入整个系统的之后,首先我们所看到的应该是整个系统的网站和首页,在整个系统的首页之中,用户已经可以清楚地看到整个系统的各个功能模块,在网站的首页中就已经可以很好地让用户准确的了解整个系统的功能和分布,通过网站的首页,用户已经可以很好地正确的选择和使用整个系统。系统首页界面如图5.2所示。图5.2 系统首页设计模块界面5.3 课程信息 用户在本站注册后可以直接登录本站查询相关课程资料,点击功能即可直接进入相关课程信息管理页面,用户在本站查询时就可以直接从该网站中直接查看相关课程列表资料,输入相关资料后就可以直接进行对本站相关课程的查询操作。课程信息界面如图5.3所示图5.3 课程信息模块界面5.4 选课模块 用户登录系统后可以进行选课操作,点击功能进入选课页面,用户输入选课内容完成选课操作。选课界面如图5.4所示。图5.4 选课模块界面5.5 课程管理老师在注册了系统后就可以在课程管理中自动查看所有的课程信息,在学生的课程名称和列表中的页面,老师也就是可以根据学生的需要对课程信息做出修改,删除操作,点击添加课程后可以选择新增课程信息。课程管理界面如图5.5所示。图5.5 课程管理界面5.6 成绩管理老师在本次登录到系统后就能够在成绩管理中实时查看所有的新增成绩信息,在新增的成绩列表中进入页面,老师也就是能够对新增的成绩信息做出修改,删除等操作,点击添加成绩后就能够选择是否添加新增的成绩。成绩管理界面如图5.6所示。图5.6 成绩管理界面5.7 用户管理管理员提醒您您在登录到了本站用户系统后就已经可以在新增用户相关信息列表管理中自动选择查看所有的一个新增其他用户相关信息,在所有新增的其他用户相关信息自动列表这个信息页面,管理员也就是我们可以对所有新增的其他用户相关信息进行做一些自动修改,删除等相关操作,点击修改新增和删除添加信息到其他用户后就是我们可以自动选择查看新增的其他用户相关信息。用户管理界面如图5.7所示。图5.7 用户管理界面5.8 统计管理管理员登录系统后可以在统计管理中查看所有的课程成绩信息,在统计列表页面,管理员可以查看到课程平均分数信息。统计管理界面如图5.8所示。图5.8 统计管理界面6 系统测试6.1 测试方法常用的测试方法有两种,一:白盒测试;二:黑盒测试。白盒式的测试:白盒式的测试也可以变成了一种结构性的测试,在我们开始使用这种测试方法的那么有些时候,技术人员就需要仔细的去考虑和检测一个程序的内部结构,即是说,测试者和技术人员进行检测的首要前提是对自己的应用程序相当了解和熟悉,清晰的指导自己应用程序的实际操作流程,清晰的掌握应用程序软件的内部结构和语句,并且根据自己已经了解到的结构和特性来进行测试应用在这一步骤的过程中,技术人员需要在不同的位置和地方分别设立一个检查点,通过每一个检查点的位置来确定和检查应用程序目前状态,根据测试的数值和结果情况来进行对比预期的状态,查看之间是否达到一致。白盒测试主要分为四个测试阶段,分别称为测试策略阶段、测试设计阶段、测试实施阶段、测试总结阶段。根据最初的工程项目需求任务书要求来决定如何制订测试的具体进度和操作流程,随后,用规范化的测试手段和方法对软件进行了检测,在这个工程测试的整个过程中,不能一味地盲目进行测试,要针对特定的情况和条件去选择有针对性地设计测试的手段和方法。使用百合测试系统就可以很好地检测得到代码的各种分支和途径,这个百合测试的本身特殊性就会让测试者被迫地去仔细的研究思考百合测试软件的具体实现和方法,并将百合测试代码的错误很好地从检测表现出来,对百合测试比较彻底。但是白盒子的测试也仍然有着一些弊端,他在进行测试的时候没有办法检测得到代码中所有遗漏的错误,不饥饿才能够验证它们的正确性。黑盒测试:黑盒测试又被简称为功能测试,是指测试每一个模块的所有功能都是否已经可以正常工作和使用。这种测试大家就可以简单地理解成"表面"测试,因为它们是在不考虑软件的内部结构和内部特征等条件下执行的,并且主要是针对软件的界面和功能。因此,在测试程序的界面时,黑盒测试只是检查一个程序的所有功能都是否根据项目的预期正常工作而被使用,并且只有当一个程序已经接受到了输入的信息时,才能够向其输出正确的信息。黑盒测试侧重于应用程序的外部架构。它无需考虑内部的逻辑。在这一点上,这与传统的白盒式测试正好相反。黑盒测试被认为是用户群体。本次测试将着眼于软件中的功能。如果外部的功能设计中出现了问题,则导致无法寻找黑盒测试。黑盒测试就是一种节约时间和省力的方式。此次测试并非必须要求我们始终坚持对被检测者进行不断地的监督。测试使用例中的其他部分很快、简单。然而黑盒测试并非没有状态变换的观点。黑盒测试的成绩由测试使用范围和实验中的测试使用范围来确定。所以这就需要我们更好地去设计这个部分。6.2 测试实例本系统一共有3个需要测试的模块,即:(1)管理员模块的使用测试 (2)老师用户的使用测试模块(3)用户的使用测试模块在这里管理员只测试系统的管理功能,测试结果如表6.1所示。表6.1测试结果表测试用例号输入数据测试结果T1登录正常T2用户选课正常T3老师成绩管理正常T4管理员用户管理正常系统经测试和调试后能够按照需求正常运行,基本没有错误,能够满足开发者和用户的需求。在系统总体测试的过程中,系统的功能设计相对来说是比较简单,而且根据不同的数据资源进行了配置,这些都亟待进一步完善。6.3 系统维护所以当整个系统测试完成后,系统就会进入正常运行阶段,这个测试阶段的主要任务就是对系统进行维护。系统的日常维护管理工作主要涉及两个基本方面的内容:一则指的是对系统进行维护与安装升级;二是进行系统的维护和更新。这些人的工作都是持久的,一个成功的系统并不仅仅是他的设计外观和在其生产过程中所需要运用的各种技术,而是它们能否及时地为用户提供有用的资料。(1)系统维护:对于用户本人所提出的系统中可能存在情况,我们应当立即进行检查,如果被证实确是服务器和网站上的一些问题,则我们应及时予以改进。对于目前的用户对该系统所提出的意见和建议,应该采取其优去它们的糟粕,并在今后更好地加以运用。同时将所有无用、过期的数据信息全部删除,减轻了程序运行的负荷,并且还必须大幅度地提高了服务器的运行稳定性和响应时间。(2)系统内容更新:系统发布后需要及时更新添加新的信息。(3)进行系统的布局和更新:在某些时候或者是需要定期地更新一个系统的内容时候,该个系统可能会很难持续地博得大眼球,这就决定了必须要进行定期的更新。(4)系统升级包含以下方面的升级:系统应用程序的升级:整个系统的应用程序由于长期的使用,不可避免地就会产生部分的问题,类似于泄露已经登录过的注册用户资料这种,定会带来很多麻烦,轻者则直接导致了服务器的停机,重者更有可能出现法律争议。所以网站的管理者一定要做到实时监测和管理各个站点的安全公报和提示,当发现存在的问题,立即采取措施,并且随时留意网站各个地方的安全情况公报和提示。系统以及后台的各个数据库安全升级:随着一个系统长期正常运行后很大都有概率可能会出现存在后台数据库升级速度不稳定等安全问题。在一些业务量较小的业务初始开发阶段由于需要采用的资源是大型数据库较为小型而因此导致需要处理的大量大型数据很有概率可能会因此造成整个服务器暂时性的停机。出现以上两种情形时就可能需要用户优先先行考虑其他操作系统的版本升级条件<br>。稳固的网络体系也是提高服务器整体性能的有力保障。19结论本系统从校园的需求出发,针对现有环境下的数据信息服务的现状,将数据资源和用户进行合理结合,采用用户灵活控制的方式,让用户获得对数据的访问、管理的知识和能力,使得管理员在学校的教育和管理过程中拥有一个重要的决策权,避免了每一次都需要在大量的数据资源搜索的繁琐,提升了用户对大量的数据信息资源的整体管理和利用效率。通过与数据库相结合的信息化技术,本体系统能够按照用户的想法来做出操作。另一方面,学校还可以通过系统自动统计出每个学生的技术水平倾向,以引导资源搜集的方向、确立管理的重点体系进行改进和提高。由于各种原因,本系统有许多缺点。针对本系统的一些缺点,在二期开发时主要在以下方面进行改进。(1)进一步加强网站后台的管理和页面建设。本次考试系统仅仅是一个面向用户,对于考试成绩的管理仅仅依赖于人工或者机器学习,耗时又费力。加强了后台管理系统的完善与建设,各种操作都由程序自动来执行,方便、准确,又可以节约人工。(2)不同通信模块的网络连接之间联系相对较为混乱。加强各个成绩数据库管理模块之间的相互关联,条理清晰,链接明确,这样的一个数据库之下的成绩数据管理服务系统的未来将形成是丰富、完善的成绩数据管理算法资料库,应用于企业服务之中,保障用户能够有效使得成绩数据管理成为一种因人而异的、具有一定针对性的自我主动管理服务。参考文献1王芳.基于Java的车间远程监测系统D.湖北:华中科技大学,2019.2伍思洁.基于知识图谱的JAVA程序课程答疑设计与应用研究D.四川:四川师范大学,2019.3王改芳,龚君芳.基于 Java 的考试机设计与实现J.实验技术与管理,2016,(1):147-149. DOI:10.16791/ki.sjg.2016.01.037.4王毛毛.基于java的图书管理系统研究J.信息记录材料,2020,21(1):134-135.5杨永琪,董国泰,朱文豪.基于Java和数据库系统设计的航空售票系统J.电脑知识与技术,2020,16(6):75-76.6O. Lecarme.Beginning HTML5 mediaJ.Computing reviews,2016,57(5):278-279.7Anthony J. Duben.HTML5 programmer's referenceJ.Computing reviews,2016,57(1):8-8.8Steven Pemberton.HTML5 IS THE NEW FLASHJ.,2016,(Apr. TN.278):103-103.9徐完平.Java程序设计教学改革探讨J.福建电脑,2018,34(12):182,168. DOI:10.16707/ki.fjpc.2018.12.103.10王禹程.基于Java语言的人力资源信息系统研究J.电子设计工程,2019,27(2):25-28,33.11黄文娟.基于Java和MySQL的图书馆信息化管理系统设计J.电子设计工程,2019,27(2):20-24.12张华,李超.Java课程智能问答系统设计与实现J.计算机时代,2018,(12):12-15. DOI:10.16644/33-1094/tp.2018.12.004.13周轶凡,邵志勇,王敏, 等.基于SSH框架的车辆维修管理系统研究J.电脑知识与技术,2018,14(31):63-64.14苏庭波,王双喜.基于SSH的校友管理系统的设计与实现J.工业控制计算机,2018,31(10):131-132.15胡欢锋,舒坚.基于SSM的交通政务管理系统的设计与实现J.信息通信,2018,(9):125-127.16Markus J.Buehler,AmitMisra,Michael R.Fitzsimmons.MRS Spring Meetings are on the Move!J.MRS Bulletin,2019,44(1):5-6. DOI:10.1557/mrs.2019.1.17Fatih.Celebi.The double-sided intrusion springJ.APOS Trends in Orthodontics,2018,8(4):230-233. DOI:10.4103/apos.apos_101_17.18Daiva Janusauskaite,Dalia Feiziene,Virginijus Feiza.Comparative response of spring and winter triticale productivity and bioethanol yield to fertilisation intensityJ.Acta Agriculturae Scandinavica, Section B Soil & Plant Science,2019,69(2):95-104. DOI:10.1080/09064710.2018.1501089.19Roger Burbach.A Cuban Spring?J.NACLA Report on the Americas,2018,50(3):337-338. DOI:10.1080/10714839.2018.1525086.20Nahit Oztoprak,Mehmet Deniz Gunes,Metin Tanoglu, et al.Developing polymer composite-based leaf spring systems for automotive industryJ.Science and Engineering of Composite Materials,2018,25(6):1167-1176. DOI:10.1515/secm-2016-0335.致谢借此发表论文之际,向所有曾经帮助、关怀、支援我的指导老师、朋友、同学及所有在网上认识和结遇的科研专业人士,表示我最真挚的敬意。首先感谢指导老师。毕设论文是在老师耐心指导下多次修改完成的。在此,我对她的耐心指导和帮助向师老师致敬,特别要感谢老师在几个月以来给予我的帮助与指导。在这一段时间里,我从班主任和老师身上,不仅让我学会了许多专业知识,更深刻地感受和体会到了她们在教书、工作中兢兢业业,生活中的平易近人的奉献精神。另外,她们严谨的治学态度与刻意做事精神及舍小管人的工作奉献精神都是十分有价值得我一起去借鉴与学习。在此,请允许我说一声:"老师,您辛苦了!"再次感谢她们。非常感谢我的同学。当我在毕业设计过程中遇到问题和困难时,是他们给我指出了不少错误和不当操作,并给出了不少意见和建议,是他们的技术支持与精神鼓励为我提供了不竭的动力。同时,感谢所以给我灌输了很多知识的教师和同学们,感谢在网络上热心的各位网友,感谢一直关心、支持和帮助我的每个人。同时要非常感谢我在这里的大学,我不会一直忘记你们。总之,在以后的学习、工作、生活中我将更加努力,用自己的努力来实现更大的理想和人生价值。