acm在线评测系统设计报告-软件工程实训课程设计

上传人:自*** 文档编号:80608884 上传时间:2019-02-19 格式:DOC 页数:29 大小:2.23MB
返回 下载 相关 举报
acm在线评测系统设计报告-软件工程实训课程设计_第1页
第1页 / 共29页
acm在线评测系统设计报告-软件工程实训课程设计_第2页
第2页 / 共29页
acm在线评测系统设计报告-软件工程实训课程设计_第3页
第3页 / 共29页
acm在线评测系统设计报告-软件工程实训课程设计_第4页
第4页 / 共29页
acm在线评测系统设计报告-软件工程实训课程设计_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《acm在线评测系统设计报告-软件工程实训课程设计》由会员分享,可在线阅读,更多相关《acm在线评测系统设计报告-软件工程实训课程设计(29页珍藏版)》请在金锄头文库上搜索。

1、西安建筑科技大学课程设计(论文)课程设计(论文)课程名称软件工程实训课程设计题 目在线测评系统院 (系)信息与控制工程学院专业班级软件1202姓 名赵曼学 号120670211指导教师朱旭东、祁飞 2015年 09 月 20 日摘要当今时代是一个信息时代,随着互联网技术和计算机技术的发展,计算机行业起着至关重要的作用。为了更好适应地这个时代选拔人才的标准,提高人们的计算机水平,计算机在线评测系统应运而生。在线评测系统是一个针对计算机人才选拔的网站,主要提供程序设计练习和考试平台。用户可以在这个网站上查询并练习题目,然后当用户针对相应的题目编写了程序以后,可以在在线评测系统上将程序代码以相应题号

2、为准提交到服务器端。服务器接收到提交信息后,将该程序的题号、提交时间、相应题目的信息等传送到后台测试平台,后台将根据这些信息对同学们提交上来的程序代码进行编译执行,并做出相应判断,将测试结果返回相应的数据库。 程序代码提交后,提交结果将在网页上显示出来,同时会有相应的排名数据以及解题信息。 本系统是基于JSP技术建立的药品进销存管理系统,其目标是完成对药品的进、销、存进行管理。整个项目采用MVC的架构。使用Servlet充当控制器,Jsp用来做视图层的显示。这种分层模式可以降低模块之间的耦合度。有利于系统维护、代码重用和后期增加相应的功能。关键词:JSP、SQL Server2005、Java

3、 Web、在线测评、ACM目录1系统概述11.1目的11.2开发工具和运行环境11.2.1开发工具11.2.2运行环境12软件总体结构22.1系统结构设计22.2系统权限划分32.2.1用户操作32.2.2管理员管理32.3系统功能划分32.3.1用户模块32.3.2管理员模块32.3.3在线评判模块32.3.4题库模块33详细设计43.1系统架构目标43.2构架设计53.3系统开发模式63.4数据流图73.5逻辑视图83.5.1系统类图83.5.2人员信息包内的类图93.5.3接口包内的类图93.6过程视图103.6.1 用户登录103.6.2 管理员题目管理113.6.3 用户管理123.

4、6.4 试题评判管理134数据库设计144.1概念模型154.2逻辑模型154.3表的物理结构定义175 相关界面195.1主要功能界面196总结237参考文献251系统概述1.1目的 ACM在线评测系统是一个基于B/S结构的多用户在线系统,允许用户在线提交自己的解题代码,系统会自动编译运行给出结果,并根据用户的解题数量和分数排出名次。1.2开发工具和运行环境 1.2.1开发工具 该系统用到的主要开发工具有Dreamweaver CS6,MyEclipse。 (1)Dreamweaver CS6简介dreamweaver cs6是世界顶级软件厂商adobe推出的一套拥有可视化编辑界面,用于制作

5、并编辑网站和移动应用程序的网页设计软件。由于它支持代码、拆分、设计、实时视图等多种方式来创作、编写和修改网页(通常是标准通用标记语言下的一个应用HTML),对于初级人员,你可以无需编写任何代码就能快速创建web页面。1.2.2运行环境系统网站部分是用HTML语言编写,数据库使用SQL server2005,而服务器用的是tomcat,在Windows系统上运行。(1)tomcat简介Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台

6、机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。2软件总体结构2.1系统结构设计系统架构采用分离可缩放结构。前端服务器负责Web访问,后端tomcat服务器负责编译,运行和测试程序。双方通过数据库耦合。Tomcat服务器与Internet没有连接,彻底保证测试数据不被外泄。 前端设计基于 B/S 模式进行Web服务器设计,后端tomcat服务器采用多线程,多进程并发处理机制,在保证系统稳

7、定性的同时极大地提高系统的响应速度。整个系统采用面向对象的思想进行设计。系统结构图如下:图1 系统结构图2.2系统权限划分2.2.1用户操作 包括用户注册、登陆、用户信息修改、题型浏览、题目浏览、提交题目、查看提交结果、查看做题排名、查询分数、查找题目、账户注销等。2.2.2管理员管理 管理员主要进行的操作有:登陆、题库管理、用户管理、重测提交题目、注册功能、数据维护管理、查看用户提交的源码、账户注销。2.3系统功能划分该在线测评系统主要包括以下几个功能块:用户模块、管理员模块、在线评判模块和题库模块。2.3.1用户模块用户模块主要有用户自行操作的注册功能、登陆功能、注销功能、个人信息查询和修

8、改等。2.3.2管理员模块管理员模块主要负责试卷添加、试卷查询和修改、修改用户权限、增加和修改试题、测试数据管理、数据库备份等功能。2.3.3在线评判模块在线评判模块主要功能是用户通过此模块有查看题目、提交代码、查看分数和排名等。2.3.4题库模块题库模块主要功能是用户能够在此查询、浏览和练习题目。系统功能图如下:图2 系统主功能模块图3详细设计3.1系统架构目标该在线测评系统要达到的软件架构目标如下:(1)可靠性(Reliable)软件产品在规定的条件下和规定的时间区间完成规定功能的能力,软件系统对于用户的商业经营和管理来说极为重要,因此软件系统必须非常可靠。(2) 安全性(Secure)软

9、件系统要保证系统数据的安全性,如用户的基本信息,因为所承担的交易的商业价值极高,系统的安全性非常重要。(3)可扩展性(Extensible)在新技术出现的时候,一个软件系统应当允许导入新技术,从而对现有系统进行功能和性能的扩展(4)可维护性(MAIntainable) 软件系统的维护包括两方面,一是排除现有的错误,二是将新的软件需求反映到现有系统中去。一个易于维护的系统可以有效地降低技术支持的花费 (5)可伸缩性(Scalable) 软件必须能够在用户的使用率、用户的数目增加很快的情况下,保持合理的性能。只有这样,才能适应用户的市场扩展得可能性。 (6)可定制化(CuSTomizable) 同

10、样的一套软件,可以根据客户群的不同和市场需求的变化进行调整。 (7)客户体验(CustomerExperience) 软件系统必须易于使用。 (8)市场时机(TimetoMarket) 软件用户要面临同业竞争,软件提供商也要面临同业竞争。以最快的速度争夺市场先机非常重要。3.2构架设计构架视图的图形描述称为构架设计图。设计图由以下统一建模语言图组成:逻辑视图:类图、状态机和对象图。进程视图:类图与对象图(包括任务-进程与线程)。实施视图:构件图。部署视图:配置图。用例视图:用例图描述用例、主角和普通设计类;顺序图描述设计对象及其协作关系。3.3系统开发模式 MVC是一个设计模式,它强制性的使应

11、用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。a.视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Macromedia Flash和象XHTML,XML/XSL,WML等一些标识语言和Web services.b.模型模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusion Components这样的构件对象来处理数据库。被模

12、型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。c.控制器控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后确定用哪个视图来显示模型处理返回的数据。整个项目采用MVC的架构。MVC,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用将被分成三层:模型层、视图层、控制层。使用Servle

13、t充当控制器,Jsp用来做视图层的显示。这种分层模式可以降低模块之间的耦合度。有利于系统维护、代码重用和后期增加相应的功能。图3 MVC开发模式图3.4数据流图图4 系统数据流图3.5逻辑视图逻辑视图部分主要叙述了设计阶段的工作。根据系统划分的三类包图,分别讨论人员信息包,接口包和事务包中的类图。其中,人员信息包包含用户和管理员两个类;接口包包含登录、管理员管理模块、用户管理模块、评判管理模块和题库模块五个接口模块类;事务包主要包含用户做题管理、管理员题目管理、管理员用户信息管理、管理员用户组管理等事务类,相应的类图如下各图。3.5.1系统类图图5 系统类图3.5.2人员信息包内的类图图6 人

14、员信息包类图3.5.3接口包内的类图图7 接口信息包类图3.6过程视图3.6.1 用户登录(1)简述用户如果要进行相应操作,需要输入正确的用户名和密码。(2)基本事件流1 用户输入正确的用户名和密码登录系统2 系统进行身份验证3 进入相应页面4 结束(3)活动图 图8 用户登录活动图3.6.2 管理员题目管理(1)简述管理员进入相应管理页面,对题目进行管理。(2)基本事件流1 用户输入正确的用户名和密码登录系统2 系统进行身份验证3 进入相应页面4 管理员进行题目管理5 对题目进行增删改查6 录入数据库7 结束(3)活动图图9 管理员题目管理活动图3.6.3 用户管理(1)简述用户选择试卷,做题并提交。(2)基本事件流1 用户输入正确的用户名和密码登录系统2 系统进行身份验证3 进入相应页面4 选择试卷类型5 做题并提交6 结束(3)活动图图10 用户题目管理活动图3.6.4 试题评判管理(1)简述用户提交代码后,评测系统进行编译,并将结果录入数据库。(2)基本事件流1 用户提交代码2 评判系统存储代码并进行编译3 若编译成功,将结果存入数据库4 调出数据库答案,并进行比对5 得到相应分数6 将分数存入数据库7 结束(3)活动图图11

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号