1、软件开发设计文档模板软件开发设计文档文档管理信息表主题在线考试系统版本1.0内容基于web的在线考试系统关键字MVC模式 在线考试 考生.题库管理参考文档JSP实用教程(第二版)清华大学出版社(耿祥义.张跃平编著)创建时间2016/7/4最新发布日期2016/7/61 引言.11.1 设计背景 .31.2 编写目的.41.3 系统概述.42 开发规划 42.1 开发人员 42.2 开发计划 42.3 开发环境和工具 53 开发设计 6 3.1 需求概述.6 3.2 软件结构.73.3 基本设计描述 93.3.1 系统总体逻辑结构图 83.3.2 系统部署结构图 91、引言1.1 设计背景随着计
2、算机网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了教学,通过计算机实现异地教育和培训。如今,计算机硬件技术的发展已经达到了相当高的水平。但是,教学软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到教学当中去,这就给软件设计人员提出了更高的设计要求。 教学包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然教学已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成
3、绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,应用不断扩大,如教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。从而,在线考试系统设计成为当今教育的信息化趋势以及高校教育信息化系统建设的方向,
4、其目的是充分利用学校现有的计算机软、硬件和网络资源实现无纸化考试以避免传统手工考试的不足。其意义在于:与传统考试模式相比,在线考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求。通过Internet来实现在线考试,是现代教育技术的一个具体实现,具有很重要的现实意义。 本系统设计的主要目的是实现课程的无纸化考试,从而为开展各种网络教学提供支持和帮助。本系统设计以软件程序设计课程为例,主要是考虑其教学对象覆盖面较广的特点,开展相关设计有一定的实用价值。1.2编写目的 在本在线考试系统项目的需求分析阶段中,已经将系统用户对本系统的需求做了详细的分析,这些用户需求已经在分析讨论阶
5、段中以及对各个在线考试系统的实际调研中获得。并且在系统的需求分析的基础上,对软件系统做概要设计。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在下文的设计报告中将对设计进行详细的说明。在详细设计中,程序设计员可参考设计报告,在设计报告对在线考试系统所做的模块结构设计的基础上,对系统进行详细设计。在的软件测试以及软件维护阶段也可参考此说明书,以便于了解设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。1.3系统概述我们小组本次选择基于web的线考试系统的开发。采用M
6、VC模式,小组成员经商量后分工完成各部分代码。模型(Model)用 Javabean来实现。用于存放考生信息;视图(View)由多个jsp构成。控制器(Controller)为Servlet。通过数据库存储考生信息和题目信息。2、开发规划2.1开发人员2.2开发计划我们小组本次选择在线考试系统的开发。采用MVC模式,小组成员经商量后分工完成各部分代码。模型(Model)用 Javabean来实现。用于存放考生信息;视图(View)由多个jsp构成。控制器(Controller)为Servlet。通过数据库存储考生信息和题目信息。2016/7/4确定开发课题2016/7/4开发过程分工,设计文档
7、初步撰写2016/7/5软件开发设计分析2016/7/5相关设计文档内容补充2016/7/6数据库填充2016/7/6模式、视图、控制器部分架构设计2016/7/6M/V/C三部分编程实现2016/7/7设计文档填充2016/7/7各个部件链接调试2016/7/8软件开发设计成果展示2.3开发环境TomcatTomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现
8、,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat最初是由Sun的软件构架师詹姆斯邓肯戴维森开发的。后来他帮助将其变为开源项目,并由Sun贡献给Apache软件基金会。由于大部分开源项目OReilly都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名。因为他希望这种动物能够自己照顾自己,最终,他将其命名为Tomcat(英语公猫或其他雄性猫科动物)。而OReilly出版的介
9、绍Tomcat的书籍(ISBN 0-596-00318-8)1的封面也被设计成了一个公猫的形象。而Tomcat的Logo兼吉祥物也被设计成了一只公猫。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache
10、独立的进程单独运行的。当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。MySQLMySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于Oracle旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。M
11、ySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。特性1使用 C和C+编写,并使用了多种编译器进行测试,保证了源代码的可移植性。2支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris
12、、Windows等多种操作系统。3为多种编程语言提供了API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby,.NET和 Tcl 等。4支持多线程,充分利用 CPU 资源。5优化的SQL查询算法,有效地提高查询速度。6既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。7提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。8提供TCP/IP、ODBC 和JDBC等多种数据库连接途径。9提供用于管理、检查、优化数据库操作的管理工具。10支持大型的
13、数据库。可以处理拥有上千万条记录的大型数据库。11支持多种存储引擎。12.MySQL 是开源的,所以你不需要支付额外的费用。13.MySQL 使用标准的SQL数据语言形式。14.MySQL 对 PHP 有很好的支持,PHP是目前最流行的 Web 开发语言。15.MySQL是可以定制的,采用了GPL协议,你可以修改源码来开发自己的 MySQL 系统。16.在线 DDL/更改功能,数据架构支持动态应用程序和开发人员灵活性。17.复制全局事务标识,可支持自我修复式集群。18.复制无崩溃从机,可提高可用性。19.复制多线程从机,可提高性能。开发工具Note book 我们采用最原始的记事本来编写我们的
14、源代码。3、程序设计3.1需求概述功能需求系统需求3.2软件结构MVC模式示意图MVC模式图该系统中的MVC模式解析模型(Model):一个Javabean。用于存放考生信息,如:考生姓名Name、考号Number、密码Password、考试成绩Score;存放题目信息,如:题目Question、题号、题目数量、选项、题目示意图;存放答案,如:用户给出的答案answer、正确答案correctAnswer。视图(View):多个jsp构成。一个登陆界面、答题界面、成绩界面。其中答题界面提交答案后按下一题跳转至下一道题目。控制器(Controller):接收根据用户提供的答案,并与正确答案进行比
15、较,给出得分。数据库:建立一个数据库,两个表。存储考生用户信息及题目信息。软件系统模块结构3.3 基本设计描述3.3.1 系统总体逻辑结构图 3.3.2 系统部署结构图系统网络拓扑结构系统总体逻辑结构图3.4 主要界面描述3.4.1打开界面3.4.2答题界面3.4.3结果显示界面3.5模块列表模块名称功能用户登入用户登录系统在线答题在线选择题目并提供选项答题自动阅卷根据用户由系统提供的答案阅卷给出成绩4、数据结构数据库设计User:usernamenameExam:Bian haoQuestion Da anAnswer:userQuestion bian haoUsers answerunsure题型以选择题为主UML图示意 Question类有题目的一般属性,编号、答案、题干内容Xuanze类有选项集合属性数据库表列表表名作用数据库链接关系5、模块设计5.1用户登入模块设计描述模块界面描述5.2在线答题模块设计描述模块界面描述5.3自动阅卷模块设计描述模块界面描述6、接口设计6.1数据库与jsp页面6.1.1 用户数据库 描述用户试题答案提交,与考试结果存储 集成和部署 6.1.2 试题数据库 描述调取试题库中试题及其选项内容 集成和部署6.2 MVC模式内部连接定义数据库存储过程接口
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1