在线评测系统设计与实现-张传美毕业答辩

需积分: 10 0 下载量 36 浏览量 更新于2024-08-22 收藏 722KB PPT 举报
"这篇文档是张传美同学的毕业答辩内容,主要介绍了一个在线评测系统的设计与实现。该系统主要用于ACM国际大学生竞赛的程序设计评估,具备在线提交、自动评判等功能。系统采用B/S架构,具有良好的可扩展性和安全性,并运用了MVC设计模式,分为前台信息子系统和后台管理子系统。系统的主要功能包括用户训练、比赛管理、系统维护等。在设计实现过程中,涉及到动态数据分析、数据库表设计以及CSS和网页制作等关键部分。" 在线评测系统设计与实现是一个针对程序设计竞赛如ACM国际大学生竞赛的平台,它支持源程序的在线提交、自动评判,提供多样化的编程语言支持,如C和C++。该系统由李晔讲师指导,学生张传美负责实施。系统采用B/S(Browser/Server)架构,这种架构基于面向服务(SOA)的模块化设计,具有较低的模块耦合性,易于添加或修改业务逻辑,同时提高了网络通信的安全性。 系统设计中,采用了MVC(Model-View-Controller)三层模型。视图层负责用户界面展示,用户可以通过界面进行登录、浏览、提交代码等操作。业务逻辑层则处理评分和其他非测试功能,而控制层协调视图层和模型层之间的交互。系统分为前台信息子系统和后台管理子系统,前者服务于用户训练和比赛功能,后者负责题库管理、比赛创建以及代码运行处理。 系统的主要功能包括: 1. 注册用户可以进行平时训练,提交代码进行在线评测。 2. 支持正规赛比赛,满足竞赛需求。 3. 系统具备比赛管理功能,方便组织和管理各类竞赛。 4. 提供系统维护功能,确保平台稳定运行。 在系统设计过程中,进行了动态数据分析,绘制了21个数据流图,以分析和设计数据库表,最终建立了19个数据库表。此外,关键部分的设计与实现涉及CSS样式表的使用以美化网页,网页设计包括登录和注册页面,其中注册页面的核心script代码用于验证和处理用户信息。 这个在线评测系统是一个高效、安全的工具,不仅能够满足ACM等编程竞赛的需求,还能为用户提供日常训练环境,有助于提升参赛者的能力和体验。通过合理的架构设计和功能实现,它充分展示了张传美同学在系统设计和编程实践方面的技能。