资源描述
本科生毕业设计
网络安全知识技能学习资源的开发、应用及评价研究
Research of Development, Application and Evaluation
of the Resources on Network Security Knowledge and
Skill
学生姓名
所在专业
计算机科学与技术
所在班级
申请学位
工学学士
指导教师
职称
副指导教师
职称
答辩时间
目 录
目 录
设计总说明 I
INTRODUCTION II
1 绪论 1
1.1 设计背景 1
1.2 设计的目的和意义 2
1.3 设计的内容 2
2 系统开发相关理论与技术 3
2.1 系统开发工具选择 3
2.1.1 操作系统和服务器选用 3
2.1.2 开发平台的选用 3
2.1.3 数据库的选用 3
2.1.4 其他辅助工具的选用 3
2.2 相关理论和开发技术 4
2.2.1 浏览器/服务器(B/S)结构 4
2.2.2 在线测试系统技术 4
2.2.3 ASP.NET技术 4
2.2.4 C#开发语言 4
2.2.5 AJAX技术 5
2.2.6 JavaScript语言简介 5
3 网络安全知识技能系统分析 6
3.1 网络安全知识技能系统介绍 6
3.2 系统分析 6
3.2.1 学习资源浏览 6
3.2.2 学习测评功能 6
3.2.3 高级用户管理功能 6
3.2.4 管理员管理功能 7
3.2.5 角色模型图 7
3.2.6 功能模块划分 8
3.3 系统主要流程图 9
3.4 系统状态转换模型 10
4 系统设计 11
4.1 系统总体结构设计 11
4.1.1 系统功能模块及工作模式 11
4.1.2 系统总架构 11
4.2 网络安全知识技能库设计 12
4.2.1 E-R图 12
4.2.2 逻辑结构设计 12
5 网络安全知识技能系统实现 17
5.1 学习资源浏览 17
5.2 新用户注册模块 19
5.3 用户登录模块 20
5.4 学习评测模块 21
5.4.1 参与测试 21
5.4.2 查看评测记录 23
5.4.3 评论反馈 24
5.4.4 修改密码 25
5.5 高级用户管理模块 26
5.5.1 学习资源管理 26
5.5.2 考点管理 27
5.5.3 试题管理 27
5.5.4 两种组卷方式 28
5.5.5 试卷管理 30
5.5.6 试卷分析 30
5.6 管理员模块 31
5.6.1 学员管理 31
5.6.2 高级用户管理 31
5.6.3 打印题库 31
6 总结 32
鸣 谢 33
参考文献 34
设计总说明
设计总说明
近年来,随着互联网在我国的迅速普及,网络在当代大学生的学习和生活中日益占据着越来越重要的位置,它不仅是大学生获取资源和信息的重要渠道,也逐渐成为他们表达情感和思想的重要场所。网络环境日益变差,以及大学生网络安全知识技能普遍缺乏等原因,也必定导致他们在使用网络过程中遇到各种安全方面的问题,而这些现状与学校在网络安全教育方面的缺失有紧密相关。相比于网络安全知识传统的卷面测试,网上在线学习平台的出现无疑节省了资源、提高了效率,其提供全面的网络安全知识技能,随时随地的评测模式,公正客观的评测结果,更能激发学生的学习兴趣,提高对知识的吸收率。
本文首先分析了现阶段大学生网络安全知识意识的强弱状况,以及关于网络安全知识技能系统开发的必要性,全面阐述了系统开发所应用的主要技术,认真分析了系统需求,概述了系统的总体框架结构和数据库结构,详细地介绍了系统的设计和实现。本系统采用ASP.NET和SQL数据库相结合的技术进行系统开发,采用B/S三层模式结构,实现测试过程中的用户在线学习与测试、自动阅卷及成绩查询、分析等功能,以及后台管理的题库试卷管理、随机动态组卷、用户管理等功能。
本系统以提高大学生网络安全知识技能为前提建立了基于B/S结构的在线学习平台,主要采用ASP.NET和SQL数据库相结合的技术进行开发实现,还利用AJAX技术通过控件ScriptManager和控件UpdatePanel实现局部刷新和保存功能,及时保存试题进度和减少缓存等待时间。系统平台界面简洁美观,操作简单方便,后台管理和维护安全可靠,网络安全知识技能资源的更新及时准确,用户、高级用户管理和管理员三个角色相辅相成。用户可自主选择试题,测试结束后通过查看测试记录能够查询到测试成绩、试卷答题情况和正确答案,实现自主学习与纠正;高级用户可对题库、考点和试题进行统一管理,通过两种可选方式动态随机出题;管理员可以对用户、高级用户信息进行管理。该系统具有通用性以及良好的可拓展性和安全性。
关键词:网络安全知识技能;在线学习平台;ASP.NET;B/S
- 33 -
INTRODUCTION
INTRODUCTION
In recent years, with the rapid spread of Internet in our country, networks in the study of contemporary college students and increasingly occupies an increasingly important place in the life, it is not only important channel of access to resources and information for college students, have gradually become important place to express their emotions and thoughts. Network environment is increasingly worse, as well as students ' knowledge and skills generally lack network security and other reasons, they must use encountered in network security issues, and the status quo and shortage of schools in Internet safety education are closely related. Compared to traditional network security knowledge use the paper to test, online learning platform there will undoubtedly save resources, increase the efficiency, providing a full range of network security knowledge and skills, evaluation mode of anytime, anywhere, fair and objective evaluation of results, better able to stimulate students' interest in learning, increase the rate of absorption of knowledge.
First of all, this article analyzes the strength of awareness of students' knowledge of network security situation at the present stage, on network security, as well as the need for knowledge and skill development, comprehensively expounds the system for developing the application of the technology, careful analysis of the system requirements, outlines the overall framework structure of system and database structure, detailing the design and implementation of the system. This system uses a combination of ASP.NET and SQL database system development technology, using B/S structure of three-layer model, users who implement testing procedures in the online learning and testing, Automatic scoring and performance features such as query, analysis, and back-end management test examination paper management, random dynamic groups, user management, and other functions.
This system in order to enhance students' knowledge and skills as a prerequisite to establish a network security based on b/s structure of online learning platform, mainly using ASP.NET and SQL database development with technology, also uses AJAX technologies through the ScriptManager and UpdatePanel controls to achieve partial refresh the control and save, save the questions progress in a timely manner and reduce the cache latency. System interface is simple in appearance, easy to operate, manage and maintain a secure and reliable, network security knowledge and skill resource update of timely and accurate management of users, power users, and administrators of the three roles complement each other. Users can choose the questions, by looking at test records after the end of the test query to test results, the test answer sheets, and the correct answer, ' self learning and correcting; advanced users can test bank, test centers, and test questions for unified management, dynamic random title by means of two optional; administrators can manage users, power users, information. The system have good versatility, good scalability and security.
KEYWORDS: Network Security Knowledge and Skills;Online Studying Platform;ASP.NET;B/S
广东海洋大学2012届本科生毕业设计
网络安全知识技能学习资源的开发、应用及评价研究
毕业设计说明书
1 绪论
1.1 设计背景
随着互联网的飞速发展,网络安全问题日趋突出。2012年1月16日,中国互联网络信息中心(CNNIC)在京发布《第29次中国互联网络发展状况统计报告》(以下简称 《报告》)。《报告》显示,截至2011年12月底,中国网民规模达到5.13亿,全年新增网民5580万;互联网普及率较上年底提升 4个百分点,达到38.3%[1]。2011年大专及以上学历人群网民普及率已经超过90%,其在网民学历结构中占22.4%。《报告》显示,2011年上半年,遇到过病毒或木马攻击的网民达2.17亿,比例为44.7%,而遇到病毒或者木马攻击的网民数半年增加735万人,达2.17亿。有账号密码被盗经历的网民达到1.21亿人,半年增加2107万人,占到网民总数的24.9%。其中商务应用的迅速发展滋生了网上交易中诈骗、犯罪等问题。
当代大学生中主要存在以下网络安全问题:
1. 大学生网络安全知识技能匮乏。大学生对网络安全方面的基本术语有一般性了解,但大部分学生认为安装防火墙、防病毒软件等网络安全工具能保证上网安全,却不清楚系统本身漏洞、不良的上网习惯、网络安全工具的不正常使用才是危害网络安全的重要因素[2]。近年来,网络聊天受骗、网络交易受骗、阅读信息受骗和遭遇网络攻击成了在大学生群体中最突显的安全问题[3]。
2. 大学生网络法律知识淡薄和网络道德观念模糊,导致不少大学生参与网络活动中无意识的做出失德和触犯法律的事情,如转发未经证实的谣言,把下载的资源刻盘出售,“人肉搜索”等行为。
3. 大学生对网络的过强依赖,往往造成网络成瘾、迷失自我、孤僻寂寞等情况发生,使其网络安全意识愈加稀少[4]。
造成大学生网络安全知识技能匮乏、安全意识浅薄等情况的原因有很多,既有整个网络环境的问题、大学生网络安全知识技能匮乏和自身网络素质的问题,也有学校教育的空缺问题。很多大学生对网络安全方面的认识主要来自于大学生自己的生活体验和同学之间的交流。高校教学中的教学大纲都没有正式把网络安全的法律法规教育纳入,更没有制订相关的课程标准,以致绝大部分大学生没有接受系统的网络安全法律法规教育,对网络违法犯罪产生的途径和后果缺乏清晰的认识。即使是计算机专业的学生,也只注重网络原理、应用和开发方面的学习研究,很少从人文角度认识网络这个新的社区形式。加强大学生系统化、正规化的网络安全法律法规教育,全面提高大学生网络安全的素质,是项十分紧迫的任务[5]。面对大学生在网络安全方面所遇到的各种问题,校方该从各种途径帮助他们增强安全防范意识,提高安全防范技能,如组织学习网络安全的法规,普及网络安全的常识,介绍网络安全的技术。现在,在线学习平台作为一种新型的学习评测方式越来越得到各高校的重视,因此,这次对网络安全知识技能学习资源的开发、应用及评价研究,将采用在线学习的方式,建立一个基于网络安全知识技能的综合系统,主要包括网络安全知识技能数据库、网络安全知识技能系统平台。
1.2 设计的目的和意义
随着互联网信息的日益壮大,当代大学生已成为网络最广泛的使用者和最积极的参与者,包括学习、生活、交友和思想观念都受网络影响并逐渐发生广泛而深刻的变化,网络已成为知识学习、思想交流、娱乐休闲的重要平台。由于大学生受普遍的年龄结构、生活环境和文化背景等条件影响,他们普遍缺乏网络安全意识,导致他们在网络中遇到许多安全方面的问题,有些会出现失德行为及违法犯罪行为等等。
面对大学生在网络安全方面所遇到的各种问题,从各种途径帮助他们增强安全防范意识,提高安全知识技能,成了现今教育实践中重点考虑的问题。而传统的卷面测试从出题印刷到安排统一测试等环节都浪费了不少人力物力,在事后评分总结方面更是有着很大的弊端,因此,该系统为学生提供了一个学习和提高网络安全知识技能的平台,学习时间和地点不受限制,可以随时随地掌握最新和最丰富的网络安全知识技能,大大缩短了测试时间,减少了人力物质等资源的浪费,保证了测试的客观准确性,避免人为误差及人情分等问题。覆盖面全和高质量的网络安全知识技能学习资源,每次从中随机出卷的智能化出题,大大扩大了试卷的整理覆盖面,提高了试卷的科学性,多次测试则可较全面的考察学生的实际水平,这也避免了相互参看等作弊现象的出现。学生通过自主的学习与评测可以认识到自己所欠缺的网络安全知识技能,并可以不断地改进和完善。这对提高大学生网络安全意识,预防网络安全事故的发生,减少网络安全事故带来的损失都具有重要意义。
1.3 设计的内容
1、 学习Visual Studio2005程序开发平台和SQL Server2005等,设计实现系统;
2、 网络安全知识技能数据库的建立,收集网络安全知识和技能,根据网络安全知识技能的分类结果,分析不同类别知识技能之间的关联,进行归纳和分类;
3、 网络安全知识技能系统平台的搭建,包含用户模块,高级用户管理模块和管理员模块。该平台能展示网络安全知识技能的相关学习资源,并提供评测系统的接口。
4、 网络安全知识技能评测系统的设计与实现,包括用户学习、用户评测评价、试卷自动评分等模块。用户登录后根据提示选择试题并在规定时间内完成评测,评测结束后可在学生考试记录看到的分和相应试题的答题情况以及对应答案,用户可以此认识到自己的安全知识技能掌握的具体情况以及需要改进的地方。
2 系统开发相关理论与技术
2.1 系统开发工具选择
2.1.1 操作系统和服务器选用
本系统的操作系统采用Microsoft Windows XP Professional版本2002 Servixe Pack 3;服务器选用 IIS 5.1。
IIS 是Internet Information Server的简称。IIS作为当今流行的Web服务器之一,它提供了强大的Internet和Intranet的服务功能,要实现ASP.NET的应用部署,需要IIS的支持。
2.1.2 开发平台的选用
本系统开发系统采用Microsoft Visual Studio 2005平台开发,它基于.NET2.0框架,是一个非常庞大的软件,同时也能开发跨平台的应用程序,,例如开发使用Microsoft操作系统的手机的程序等,甚至还包含代码测试功能。无论对初学者还是深入开发的程序员都能提供很全面的功能。
2.1.3 数据库的选用
本系统的数据库采用SQL Server 2005数据库,它集成了更多、更优秀的功能特性。
SQL Server是一种关系数据库管理系统,它采用了一套集成的管理工具以及相应的应用编程接口,这样能够促进SQL Server的可操作性、可管理性,还能够更好地支持大型数据库配置。SQL Server通过更加安全和秘密的政策加密措施,增强的安全模式确保企业公司能够向和工作人员、合作伙伴提供可信可靠的数据库应用系统。SQL Server在支持范围上的优越性表现在支持64位系统,能够加强表格分区和复制能力[6]。
2.1.4 其他辅助工具的选用
1、Microsoft Word 2003,用于对毕业论文的撰写和资料的收集保存,主要功能图的绘画;
2、Photoshop CS 3,用于对网页上的图片进行美工处理;
3、FSCapture抓屏工具,主要用于对系统界面的图片截图。
2.2 相关理论和开发技术
2.2.1 浏览器/服务器(B/S)结构
采用浏览器/服务器(Browse/Server)结构模式,其三层应用模型同传统C/S相比,提高了系统的可扩展性、安全性和可重用性,将应用逻辑与用户界面和数据访问相分离,使系统的维护变得简单,同时简化了客户端功能,用户只需浏览器即可使用此考试系统[7]。
2.2.2 在线测试系统技术
网上考试是指通过局域网、城域网进行上机操作的一种考试形式,也可以说成是通过网络媒体进行的考试。随着计算机的普及和网络技术的迅猛发展,互联网已经渗入社会生活各个层面。基于计算机网络技术的远程教育也应运而生并得到大力推广。传统的考试方式已经开始向网络考试发展。 基于Web技术的网络考试系统可以借助于遍布全球的Internet进行。网上考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。学生可以随时从题库抽取题目检测自己的课堂学习效果。试卷可以根据题库中的内容即时生成,可避免考试前的压题和泄题现象,可以给学生一个公平的考试环境。网上考试可以采用大量标准化试题,设计计算机程序进行阅卷,还可以直接把成绩送到数据库中,进行统计、排序等操作。这些便捷的操作可以大幅度提高阅卷效率,减轻阅卷教师的工作量。所以现在较好的考试方法为网络考试,将试题内容放在服务器上,考生通过姓名、准考证号码和口令等验证信息进行登录,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。因此,采用网络考试方式将是以后考试发展的趋势[8]。
2.2.3 ASP.NET技术
Microsoft.NET是微软推出的一套开发平台。该平台可以看成是操作系统提供给开发人员的面向对象的API开发工具包,它由Web服务应用程序和Windows桌面应用程序的软件组件构成,包括.NET框架(Framework)、.NET开发工具和ASP.NET网站开发技术[9]。
ASP.NET是一种建立在公共语言运行库((CLR))上的程序构架,可用于Web服务器创建功能强大的Web应用程序。与传统的Web开发技术相比较,ASP.NET提供许了更多的Web开发模式和手段。ASP.NET可以使用.NET平台快速方便的部署三层架构。ASP.NET在网页中使用基于事件的处理,可以指定处理的后台代码文件,可以使用C#、VB和J#作为后台代码的语言[10]。
2.2.4 C#开发语言
C#(C Sharp)是微软(Microsoft)为.NET Framework量身订做的程序语言,微软公司在2000年6月发布的一种新的编程语言。C#拥有C/C++的强大功能以及Visual Basic简易使用的特性,是第一个组件导向(Component-oriented)的程序语言,和C++与Html一样亦为对象导向(object-oriented)程序语言。
微软C#语言定义主要是从C和C++继承而来的,而且语言中的许多元素也反映了这一点。C#在设计者从C++继承的可选选项方面比HTML要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义).但它还太不成熟,目前不可能挤垮HTML。C#还需要进化成一种开发者能够接受和采用的语言。而微软当前为它的这种新语言大造声势也是值得注意的。目前大家的反应是:“这是对HTML的反击”。
HTML所带来的巨大影响和大家对它的广泛接受已经由工作于这种语言和平台之上的程序员数量明显的说明了(估计世界范围内共有250万程序员使用HTML)。由这种语言写成的应用程序的数量是令人惊讶的并已经渗透了每一个级别的计算,包括无线计算和移动电话(比如日本发明的HTML电话)。C#能够在用户领域获得这样的礼遇吗?我们必须等待并观望,就像已经由SSI公司的CEO和主席KALPATHI S. SURESH指出来的那样:"我发现所有这些都是渐进的。如果C#不存在,我们总能回到HTML或C和C++。这些都不完全是新技术,它们在更大的意义上来说只是大公司制造的市场噱头。
C# (C SHARP)是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。
正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过INTERNET进行调用。
最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。
2.2.5 AJAX技术
AJAX 英文是 Asynchronous JavaScript and XML,就是在浏览器里通过一个机制 ,实现浏览器端与 Web 服务器端的一个异步通信,参与这个过程的有 JavaScript、XML 等技术。AJAX 的引入,使 B/S 信息传递的量减少了,从而加快 Web 页面的响应速度,降低网络的通信流量,改善用户体验。利用Ajax技术解决了考生在线答题时出现的种种问题,大大提高了在线考试系统的性能[11]。
2.2.6 JavaScript语言简介
JavaScript是一种能让你的网页更加生动活泼的程式语言,也是目前网页中设计中最容易学又最方便的语言。你可以利用JavaScript轻易的做出亲切的欢迎讯息、漂亮的数字钟、有广告效果的跑马灯及简易的选举,还可以显示浏览器停留的时间。让这些特殊效果提高网页的可观性。
在基于B/S模式的系统中,浏览器端程序是以动态脚本语言JavaScript为主。浏览器的标签在不刷新的情况下,在初始化时加载用户可能用到的所有JavaScript文件。而对于浏览器端不同权限的用户、同一用户在不同时刻所需要用到的JavaScript文件是不一样的。动态加载JavaScript文件的模型,只传递浏览器端必须用到的JavaScript文件,杜绝了一些安全隐患,减少网络流量,保护了服务端的JavaScript代码[12]。
3 网络安全知识技能系统分析
3.1 网络安全知识技能系统介绍
网络安全知识技能系统主要包括三个部分:网络安全知识技能数据库,网络安全知识技能学习平台,网络安全知识技能评测系统。
网络安全知识技能数据库,是用户获取相关网络安全知识技能资源的数据库,也是评测系统的智能题库。该数据库有相当丰富和高质量的网络安全知识技能学习资源和题库。要实现学生通过网络进行科学的学习与评测的目标,系统必须可以提供完备和高质量的测试题,因此建立网络安全知识技能库是实现评价系统的第一步。
网络安全知识技能学习平台,能够及时地将网络安全知识技能呈现给用户,方便用户在线学习。该平台还需提供注册和登录功能,新用户可注册,享受系统的在线评测权利,登录功能则方便不同角色的用户登录到网络安全知识技能评测系统。该平台要求界面简洁大方,操作简易方便,后台管理和维护安全可靠,网络安全知识技能资源的更新及时准确。
网络安全知识技能评测系统的设计与实现,包括学生参与评测、自动评分、资源更新、试卷生成、题库管理、用户管理等。学生可自主选择试题,测试结束后通过查看测试记录能立刻查询到测试成绩、试卷答题情况,还有正确答案,实现自主学习与纠正。学生根据系统评分和建议了解自己对网络安全知识技能的掌握程度以及需要继续改进之处。高级用户可对题库、考点和试题进行统一管理,通过两种可选方式动态随机出题。管理员可以对用户、高级用户信息进行管理。
3.2 系统分析
3.2.1 学习资源浏览
登陆首页网站,提供网络安全知识技能六大分类的学习资源浏览,包括:网络攻击相关知识、网络防御相关知识、计算机病毒相关知识、网络法律法规相关知识文明上网相关知识、大学生网络安全意识,每个分类下有按发布时间排列的文章列表,用户可以根据自己需求选择相应的文章进行查看。
3.2.2 学习测评功能
学员可自主选择试题,测试结束后通过查看测试记录能立刻查询到测试成绩、试卷答题情况,还有正确答案,实现自主学习与纠正。学员根据系统评分和建议了解自己对网络安全知识技能的掌握程度以及需要继续改进之处。学员还能对评测的试卷进行评论,以互动的方式和其他学员进行交流,也给出题者一些意见或者建议。评测模块包括选择试卷、参与评测、提交试卷、自动评分模块和查看记录模块等。
3.2.3 高级用户管理功能
高级用户可对题库、考点和试题,学习资源进行统一管理,构建课程考点的树型结构,根据每个考点来添加和修改题库中的内容,也可以选定题库中的具体某一试题是否可以使用。高级用户通过分章节出题、总题库随机出题两种方式动态出题:
1)通过分章节出题能让学员重点学习本身网络知识技能有缺陷的部分知识,高级用户的合理科学的安排章节题目,会使试卷涵盖的知识量很均衡,从而间接的提高学员的综合网络安全知识技能。
2)总题库随机出题则达到题海战术的优点,只需指定试卷的题型及该题型题目的数量和分数即可组成一套试卷,和传统在线考试系统一样,但不具有科学性。换个角度说,这样每次随机出的题目范围会更大,对掌握了大部分网络安全知识技能的学员来说具有更高难度,具有一定的正面意义。
出题完成后,高级用户可根据试卷的质量选择启用或禁用某份试卷,从而来管理和控制试卷。高级用户通过学员评测结束后记录的答卷,查看考生的作答情况以及相应题目的正确率,分析后选择停用/删除/修改相应试题,从而保证题库的质量。
3.2.4 管理员管理功能
管理员是本系统很重要的角色,它主要是对系统用户的管理,它可以对用户、高级用户信息进行管理,打印题库。管理员可以对普通用户(学员)、高级用户等进行相应的管理。管理员可以查看学员的个人信息,并可以增加、修改或者删除考生的相关资料。管理员可以查看、添加和修改高级用户的信息,而且高级用户的信息不能通过网站注册录入,必须得由管理员分配账号和密码,从而保证了系统数据库的安全性和统一性。
3.2.5 角色模型图
为了更好的理解角色,下面设计出了普通用户(学员)、高级用户和系统管理员模型图,具体如下:
普通用户
(学员)
浏览
学习资源
查看
考试记录
在线评测
图3-1 普通用户模型
高级用户
管理考点
管理题库
生成试卷
管理试卷
分析试卷
学习资源发布
图3-2 高级用户模型
系统
管理员
学员管理
高级用户
管理
打印试题
图3-3 管理员模型
3.2.6 功能模块划分
表3-1 功能模块列表
序号
功能模块类型
功能模块
备注
1
前台用户
浏览学习资源
分类浏览学习资源
2
前台用户
管理个人信息
用户注册,用户登录
3
前台用户
参与评测
选择试卷,参与评测
4
前台用户
保存/提交试卷
保存试卷,提交试卷
5
前台用户
查看评测记录
查看评测结果
6
前台用户
评论反馈
对试卷进行评论反馈
7
高级用户
高级用户信息
管理员登录
8
高级用户
考点管理
增、删、改考点信息
9
高级用户
题库管理
增、删、改试题信息,停用/删除/修改相应试题
10
高级用户
试卷管理
启用/禁用试卷
11
高级用户
生成试卷
两种方式生成试卷
12
高级用户
学习资源发布
增、删、改学习资源
13
高级用户
分析试卷
查看考生的作答情况以及相应题目的正确率
14
系统管理员
管理员管理
管理员登录
15
系统管理员
学员管理
增、删、改学员信息
16
系统管理员
高级用户管理
增、删、改高级用户信息
17
系统管理员
打印试卷
查看/打印试卷
以上模块功能列表是根据各个功能模块和每个角色之间的关系进行划分的,一共包括17大模块,其中与前台相关的有6个,与后台相关的有11个,简明扼要的阐述了各个角色它们各自负责的功能模块。
3.3 系统主要流程图
1)注册流程图如下图3-4所示:
不相同
相同
N
Y
开始
验证账号是否存在
输入必要信息
注册成功
提示错误
验证两次密码
提示错误
图3-4 注册流程图
2)登录流程图如下图3-5所示:
Y
开始
验证
输入用户名、密码
进入界面
提示错误
N
图3-5登录流程图
3)学员评测流程图如下图3-6所示:
N
Y
选择试卷
答题
提交试卷
查看成绩
图3-6 评测流程图
4)总体流程图
Y
N
登录
管理员
学员
开始
浏览学习资源
验证
验证身份
高级用户模块
管理员模块
在线评测模块
高级用户
答题
提交试卷
查看成绩
非法用户
注册
考点管理
题库管理
试卷管理
生成试卷
学习资源发布
打印试卷
高级用户管理
修改密码
学员管理
分析试卷
图3-7 系统流程图
3.4 系统状态转换模型
添加注册信息
浏览
浏览
已注册用户登录
注册
形成记录
继续评测
学习
注册
用户
信息更新
已
登录
参与评测
填写试卷
开始
未注册用户注册
查看评测记录
提交试卷
选择试卷
图3-8 系统状态转换模型
4 系统设计
4.1 系统总体结构设计
4.1.1 系统功能模块及工作模式
学员评测
管理员管理
高级用户管理系统
WEB 服务器
数据库
客户端浏览器
图4-1 系统功能模块及工作模式
4.1.2 系统总架构
网络安全知识技能评测系统
高级用户模块
管理员模块
考点管理
题库管理
试卷管理
生成试卷
学习资源发布
打印题库
高级用户管理
修改密码
学员管理
分析试卷
学员模块
学习资源浏览
答案查询模块
保存/提交试卷模块
成绩查询模块
评测模块
自动评分模块
评论反馈模块
图4-2 系统总模块图
4.2 网络安全知识技能库设计
4.2.1 E-R图
管理员可以管理学员和高级用户的信息,高级用户可以查看分析学员的试卷。
姓名
三者之间的实习联系如图4-3所示:
N
M
管理员
高级用户
学生
管理
管理
管理
姓名
登录账号
登录账号
登录密码
性别
头像
登录密码
性别
登录账号
登录密码
1
1
N
N
图4-3 管理员、高级用户、学员 E-R图
4.2.2 逻辑结构设计
4.2.2.1 数据库表结构
主要设计了以下几个数据库表:评论表、学员信息表、高级用户表、管理员信息表、学习资源信息表、试题表、答案表、试卷信息表和答案表。
考生评论表用来存放考生对相应试卷的评论信息,具体信息如表4-1所示。
表4-1评论表Comment
字段名称
数据类型
字段长度
中文含义
约束
ID
int
4
评论ID
主键
[Content]
nvarchar
400
ID
CreateDate
datetime
发表时间
name
nvarchar(50)
50
评论者姓名
ParentID
int
4
回复者姓名
PaperID
int
4
试卷ID
学员信息表用于保存考生的个人信息和登录系统的用户名密码等,如表4-2所示。
表4-2 学员信息表student
字段名
展开阅读全文