注:仅展示部分文档内容和系统截图,需要完整的视频、代码、文章和安装调试环境请私信up主。
1.3 国内外发展现状
相比于国内,国外的线上管理系统建设比较早,在上世纪就已经很先进,但受七十年代的经济危机影响,导致部分国家发展缓慢,但也有些发达国家走群众路线,全面发展网络技术。
在国内,线下管理已经特别完善,它基于计算机技术,让系统具有信息化、科学化、自动化等特性。在计算机的辅助下,国内该类系统可使管理者提高信息的复用率,对数据的处理、备份等方面也有了显著的效率提升,这种有效的工作可辅助管理者高效决策,也实现了“无纸化”的信息管理方式。由于其功能特别完善,也导致系统比较庞大,所以在了解该类系统的功能、操作后,因此本论文开发一款滑雪管理系统,该系统体量小操作简单、快速、准确的特点,体现了设计它的意义。
政府、企业和媒体对滑雪产业的推广和支持也是促进滑雪运动发展的重要因素之一。政府出台相关政策扶持滑雪产业发展,包括资助滑雪场建设、提供滑雪场地土地、鼓励民间投资等[3]。企业则大力推广滑雪场,提高设施和服务质量,并积极培养以及推广滑雪文化和体验。媒体则通过报道和宣传,让更多的人了解滑雪运动和滑雪场的相关信息。这些支持让滑雪运动的宣传和推广更加广泛,促进了滑雪运动的发展和受众的扩大。滑雪是一项需要长期坚持的运动,由于国家对全民健身的大力提倡,对国民素质的提高,更多的人参与到滑雪运动中来,参与滑雪运动也将成为一种时尚。随着人民对休闲和旅游的需求也越来越高。这就需要滑雪场不断提高服务水平,以满足消费者不断增长的需求。
1.4研究内容和论文结构
(1)调研:通过网络、图书馆等渠道调查该课题的参考资料。
(2)系统需求分析:对参考资料分类整理,设想需求与功能,再研究实现功能所需的开发工具、技术、数据库等。
(3)系统概要设计:设计功能模块、流程、数据库模型、表与字段间的关系等。
(4)系统实现:对系统用户以文字加截图的形式进行精细化分解。
(5)系统测试:测试的作用和好处,测试的具体操作步骤,分析需求与测试结果是否一致。
本论文分为六个章节
第一章,绪论,其包含本课题的研究的背景、意义和研究内容以及国内外的发展现状,本课题所使用开发工具的描述等信息。
第二章,开发工具及技术介绍,主要介绍了滑雪管理系统的开发工具以及开发技术,以Java语言作为脚本语言,采用MySQL数据库、Springboot框架、B/S架构,构成本系统关键开发技术。
第三章,系统分析,首先使用定性分析和定量分析获取功能需求,从技术可行性需求、经济可行性需求、社会可行性需求进行设计分析,再讲述系统流程图的设计,使该系统更加符合现实。
第四章,系统概要设计,介绍滑雪管理系统的设计,包括了系统的设计原理、系统的所有功能模块,将功能按权限来讲解总、数据库主要实体E-R图以及数据库的关键部分关系数据存储等。
第五章,系统功能实现,介绍该系统的主要功能是滑雪管理,详细介绍了本系统功能实现及后台各个角色模块功能实现方式。
第六章,系统测试,对系统的性能测试及注册、登录部分功能测试,以检验系统是否达到预期目标。同时顺利完成功能测试并撰写详尽测试评估报告。
最后对论文进行总结,包括致谢和参考文献等内容。
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
2.5 JSP简介
JSP(全称Java Server Pages)是由SunMicrosystems公司主导创建的一种动态网页开发技术[9]。JSP部署于网络服务器上,主要用于实现JavaWeb应用程序的用户界面部分,可以根据用户请求动态生成HTML、XML或其他格式的页面,并且可以在页面中包含Java代码和HTML代码。Java编程语言是目前最热门的网络开发编程语言之一。以Java语言具有脚本语言特性,可以同时与服务器上的其它Java程序紧密协作,共同处理各种复杂业务需求。具有以下特点:
(1)Java代码可以借助模板化的方法地嵌入HTML模板中,使动态网页的内容扩展异常简单。
(2)JavaBean技术和标签库是多路复用的绝佳方式,能够大幅提高代码的可重用性和可维护性,让常用的功能代码得以通过其得到高效复用[10]。标签库的丰富程度超乎想象,既包含通用的内置标签(如JSTL),又可支持自定义标签库,为开发者提供了更加便捷的编程体验。
(3)有良好的工具支持,能够快速高效构建Web应用程序。
(4)具有Java语言的易用性、可读性、可维护性。
(5)JSP是建立在Java语言技术基础上的,拥有很好的跨平台特性,编写的代码可以在多系统运用,例如Windows、MacOS和Linux等[11]。
(6)JSP将页面中的动态内容单独的网页和静态内容分离,使用分散但有序的方式将它们组合在一起,并将程序逻辑和外观视图结构分离,这种分离的方式有助于简化代码和提高可读性,高效的分工合作和简化的代码维护。
(7)可与其它企业级Java技术兼容JSP作为一种分层开发的工具,可其特别之处在于其仅关注于数据的呈现[12]。这种专注于一点的设计,有效地避免了不必要的干扰和混淆,使得开发效率更高、更易于管理。
本系统以JSP为主要前端界面呈现方式同时采用接收和设置方法获取以及存储JavaBean的信息。运用标签显示信息,图像用图像标签,数据链接用a标签或link标签。标签不仅可以显示输入框、文本内容、表格信息和表单,而且它们和其他链接标签也一样,都使用输入、区域、标签和表,将表单和其他标签展现在眼前。
3.1.1 系统执行者
(1)会员用户和客服用户:用户在使用该系统前须注册,可以通过自行注册也可是管理员代注册,登录后可以重新填写个人的注册信息账户密码,会员用户可以通过系统在线购票,预约教练租赁滑雪装备,在社交论坛交流学习滑雪知识。会员用户和客服用例图如图3.1所示。
3.2.3 社会可行性
社会可行性,从道德、法律、社会三方面来看,一个系统的社会可行性是多维度的。每个方面都会深刻地影响系统的形成及其持续发展。重要的是,系统的形成本质上是由独立且不具有传播性质的信息构成的,这与道德和法律层面无关。本系统严格遵守国家法律,无任何违反法规的赌博、色情等信息。更未曾触犯任何法令,严谨管控,营造健康和谐的网络环境;社会方面,该系统是为方便客户提供更好的服务,是轻量级的滑雪管理系统,会为人们带来快速并有效查询的功能,也是具有贡献意义的。总体而言,该系统也是具有社会可行性的。
4.1 系统设计原理
功能模块化后,变成可组合、可拆解的单元,在设计时,会将所有信息分解存储在各个表中,界面不会显示所有定义的字段[14]。在设计时,会有几大要求,抽象、模块化、信息隐藏、耦合低、内聚等特性,本系统的设计也符合以上几大特性。制作和显示流程都属于程序员需要分析研究的一部分。每个模块都是相对独立的,系统前台不显示账号操作权限范围外的信息。
5.2 后台模块实现
后台用户登录,在登录页面选择需要登录的角色,在正确输入用户名和密码后,进入操作系统进行操作。如图5.4所示:
管理员点击教练管理。在教练页面输入教练工号、教练姓名和选择性别进行查询、新增或删除教练列表,并根据需要对教练详细信息进行详情、修改、查看评论或删除操作。如图5.7所示:
6.2 软件测试过程
软件测试是软件设计的最后一个阶段,它贯穿于整个设计过程,是一项巨大的任务。软件测试需要测试程序的所有部分[15]。每个部分的测试是不同的,在测试之前需要分为以下几个阶段:
(1)单元测试,即模块测试;这是检查软件程序代码的测试。用于软件的最小单位部分。单元测试分为手动测试和动态测试。为了保证程序算法的正确性,静态检测应标准化程序的逻辑、标准化和正确性。该步骤是检测尽可能多的错误。动态检测通过将实际结果与预期结果进行比较来检测错误。
(2)集成测试:该测试基于单元测试,用于测试系统的各个功能模块。在集成测试过程中,由于测试是在模块之间进行的,因此在测试过程中可能不会发现问题,但在整个测试过程中会暴露出来[16]。同时,在集成测试过程中,注意模块连接过程中是否有数据丢失。单个模块的误差可能很少且没有影响,但拼接可能对系统产生很大影响。
(3)系统测试:系统测试遵循集成测试。系统测试将通过集成测试的部分作为整个系统的一部分。它与电子设备的所有软硬件一起,可以通过实际操作检测模拟的实际环境中是否存在错误。系统测试需要与计划中的理想情况进行比较,以找出与预期的差异。在软件的实际操作过程中,会出现许多意外错误,测试人员可能无法在第一时间解决问题。因此,系统测试应尽可能在实际运行情况下进行,以达到更好的测试目的。
(4)验收测试:验收测试是在设计完成和发布之前对系统的最终测试。它需要了解用户和合作伙伴的需求。我们将与他们一起完成测试,并根据他们的需求进行有针对性的修改,成为能够更好地同时满足五者需求的软件。
6.3 系统测试用例
性能测试是指通过自动化测试工具模拟系统在不同负载和压力情况下,观察平均响应时间、CPU占用率和内存占用率等性能评价指标的变化情况,以检验系统性能是否能达到预期目标,确保平台上线后稳定运行[17]。
6.3.1 API网关性能测试
本论文采用开源的测试工具JMeter模拟用户对平台API网关的并发请求行为,并发量从200开始逐渐递增,利用JMeter自带的监听器与插件记录平均响应时间、CPU占用率和内存占用率等性能评价指标。具体测试结果如表6.1所示。
表6.1 API网关性能测试结果
并发量 | 平均响应时间(ms) | 异常率 | 响应失败率 | CPU占用率 | 内存占用率 |
200 | 93 | 0.00% | 0.00% | 7% | 20% |
400 | 179 | 0.00% | 0.00% | 13% | 33% |
600 | 302 | 0.00% | 0.69% | 35% | 41% |
800 | 708 | 0.00% | 2.01% | 51% | 59% |
1000 | 1087 | 0.00% | 2.95% | 64% | 72% |
1200 | 1311 | 0.00% | 3.43% | 78% | 89% |
1400 | 1754 | 4.50% | 5.72% | 90% | 97% |
由测试结果可知,在系统并发量逐渐递增到1200的过程中,平均响应时间控制在1.5秒内,异常率保持为0%,响应失败率小于5%,CPU占用率小于80%,内存占用率小于95%,达到了预期的性能目标。当并发量达到1400时,有一部分请求出现异常,各项性能指标也超出以上标准,说明目前系统在1400并发请求时达到了性能瓶颈。