基于VC++的题库管理系统的设计与实现毕业论文Word文档格式.docx
《基于VC++的题库管理系统的设计与实现毕业论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于VC++的题库管理系统的设计与实现毕业论文Word文档格式.docx(51页珍藏版)》请在冰豆网上搜索。
Keywords:
QuestionbankmanagementsystemManuallySetVolumeVC++ADO
目次
1引言
传统的考试出题总是教师考前集中出题、集中组卷,这样很难保证试卷的质量,进而不能准确反映学生的学习效果。
相比之下题库管理系统能够安全方便地录入试题以及自定义出卷,减轻各科教师的教学压力。
该部分主要介绍当前通用试题库管理系统的背景及意义、国内外研究现状和论文的工作安排。
恥諤銪灭萦欢煬鞏鹜錦。
1.1课题背景及意义
随着计算机技术的不断发展,它被更广泛地应用在我国的各行各业中。
其中计算机辅助教育(CAI)在教育系统中的应用,收到了良好的效果,给教育改革带来美好的前景。
在教学管理中,为实现教考分开,更加合理、公平、公正、公开地进行各种考试,利用计算机进行考试题库管理,辅助教师命题组卷已成为各院校教学改革的重要内容之一。
因此对于题库管理系统的开发和应用就显得尤为重要。
相比传统的出题方式,利用计算机实现的题库管理具有操作简便、成卷快、题目搭配合理、试卷难易程度可控等无法比拟的优点,同时能够更好的保证试卷的质量,而且还能更好地反映学生的学习效果,提高教学质量,减轻教师在出题组卷和成绩分析中的工作量。
因此,研制题库管理系统已成为一项重要的课题,是各个学校教学研究的热门话题,并且在国家有关项目的支持下,出现了一系列使用的题库管理系统,但这些成型的题库管理系统有时候并不能满足现在学校教育中的要求。
一个好的题库要求能够在有限的时间内,快速选择出最需要的题目,从而减轻了老师出题的负担,并加强了出题的效率和质量。
鯊腎鑰诎褳鉀沩懼統庫。
1.2国内外研究现状和发展趋势
随着经济的发展,社会的进步,科学技术的不断提高,计算机科学日渐成熟,计算机越来越深入到我们日常的学习、工作及生活中,成为我们补课缺少的辅助工具。
其强大的功能以为人们深刻认知,它已进入人类社会的各个领域,并发挥着越来越重要的作用,在我国的教育系统中,传统的出卷方式,是一个漫长而复杂的过程,已经越来越不适应现代教学的需要,而随着计算机事业在我国的纵深发展,题库在教育领域的应用越来越广泛,一个好的题库管理系统,要求界面友好,能方便的录入试题,组卷灵活快捷,查询试题或出卷迅速,以适应各种知识更新对试卷难易程度、题型的要求,因此领用计算机化的试卷生成系统来组卷是未来学校考试的发展趋势。
硕癘鄴颃诌攆檸攜驤蔹。
1.3本文的工作安排
本文从软件开发生命周期的角度阐述了系统开发过程,首先介绍了项目背景,然后进行系统分析、总体设计和项目的具体设计与实现过程,最后作系统测试及总结。
论文分六部分,具体安排如下:
阌擻輳嬪諫迁择楨秘騖。
第一部分:
介绍课题的背景,课题目的及意义,国内外研究现状及发展趋势等。
第二部分:
系统分析,包括可行性分析、需求分析、系统可行性分析等。
第三部分:
介绍系统的开发环境与开发技术。
第四部分:
根据系统的需求分析进行系统概要设计,包括系统的模块设计,数据库的概念结构设计和数据库的逻辑结构设计。
氬嚕躑竄贸恳彈瀘颔澩。
第五部分:
从整体上介绍了系统的详细设计和实现,包括整个系统界面设计和相关功能及实现过程。
第六部分:
介绍本系统的测试及维护,测试内容及测试方法并总结测试结果。
第七部分:
结束语。
总结在完成系统开发和设计过程中所做的工作,以及系统的优缺点。
2系统分析
系统分析是软件系统开发过程中一项重要工作,系统分析工作质量的好坏将直接决定系统开发工作的成败。
该阶段将从可行性分析、系统需求分析、系统的运行环境几个关键技术对题库管理系统作出详细的系统分析。
釷鹆資贏車贖孙滅獅赘。
2.1可行性分析
2.1.1技术可行性
此次课程设计,使用MFC技术构建题库管理系统的骨干框架,利用SQLServer2005构建系统的后台数据库,运用VC++语言开发,并结合ADO连接数据库的技术,完全有能力设计一个界面比较友好、功能较为全面、操作方便简捷的题库管理系统。
怂阐譜鯪迳導嘯畫長凉。
2.1.2经济可行性
随着计算机技术的迅速发展,尤其在面临日益激烈的市场竞争,以电子计算机为主要技术手段,将大大减轻科技人员的脑力劳动和体力劳动。
计算机技术它具有高智力、知识密集、综合性强、效益高等特点,是当今世界上科技领域的前沿课题。
因此将计算机技术运用到各高校的考试中,开发一款操作简捷、功能齐全的题库管理系统将大大可以提高教师的工作效率和工作质量,改善教师的工作条件,进而提高教学水平,为教研室带来了间接的效益。
谚辞調担鈧谄动禪泻類。
2.2需求分析
该系统设计主要是为了能够减轻教师在考前出卷组卷的工作量,能够方便的让教师浏览、查看各类试题,以最快的速度筛选处所需的试题组成一套完整的试卷,其主要功能如下:
嘰觐詿缧铴嗫偽純铪锩。
1用户登录模块:
用户登录的权限可分为:
系统管理员、教师、学生三种权限,在登录模块中,当用户登录时,首先先输入用户名及登录密码,系统会自动验证该用户的身份,如果该用户存在则根据其登录权限跳转到相应的不同权限的页面;
如用户名不存在,用户也可以先进行注册再登录,也可以通过找回密码重新设置密码,然后再进行登录。
熒绐譏钲鏌觶鷹緇機库。
2信息管理模块:
系统管理员可以对登录用户的信息进行修改、查询、删除等管理操作,并且还可以注册新的用户信息,同时管理员还可向用户发布最新的试题信息并可对用户反馈的信息进行管理。
鶼渍螻偉阅劍鲰腎邏蘞。
3试题管理模块:
系统管理员可以对试题库中试题进行查看、删除、修改等操作;
教师登录后可以上传相关试题,查看个人上传的试题以及全部的试题,修改个人上传试题;
学生登录后可以查看相关试题,并可查看试题答案以及试题详解。
纣忧蔣氳頑莶驅藥悯骛。
4试卷管理模块:
系统管理员可以对用户上传的试卷进行查看、删除、修改等操作;
教师可以对个人上传的试卷进行修改或删除操作,同时可以上传试卷,此外教师还可以针对某一学科进行手动组卷也可选择系统组卷,并且可预览组好的试卷并将其导出为.txt;
学生可对相关的试卷信息内容进行查看。
颖刍莖蛺饽亿顿裊赔泷。
5科目、章节、题型管理:
系统管理员可以对科目、章节、题型的信息进行增、删、改、查的操作。
2.3系统的运行环境
该软件设计是基于VC++的题库管理系统,能够在WindowXP/Win7及其以上版本的系统上顺利运行。
濫驂膽閉驟羥闈詔寢賻。
3系统的开发环境与技术
该课题设计使用MFC技术构建题库管理系统的骨干框架,使用SQLServer2005构建系统的数据库,应用C++语言开发,并结合ADO连接数据库的技术,实现了一个功能相对齐全的题库管理系统。
銚銻縵哜鳗鸿锓謎諏涼。
设计环境:
操作系统:
Win7/WinXP
开发工具:
MicrosoftVisualC++6.0
数据库:
SQLServer2005
开发语言:
VC++
3.1MFC技术
MFC的本质是一个包含了许多已经定义好的类的类库。
MFC是微软提供的,封装了大量WindowsAPI的C++类库。
它基本封装了Windows的所有API函数。
因此,利用MFC建立应用程序更加符合面向对象的思想。
同时利用向导所建立的应用程序隐藏了程序设计的很多细节,简化和标准化了Windows程序设计,因此MFC编程被称为标准Windows程序设计。
挤貼綬电麥结鈺贖哓类。
3.2数据库访问技术
Microsoft提供多种数据库访问技术,此次题库管理软件使用ADO连接数据库的技术,ADO基于Microsoft的ActiveX技术,可在多种语言环境下使用,为不同的应用程序提供一个通用的访问接口。
相对于ODBC技术,ADO可移植性好,可随意将程序从一台机器转移到另一台机器上,无需重新配置数据源。
相对于ADO.NET技术,ADO效率更高,访问速度更快,适用于海量数据的读取和写入。
赔荊紳谘侖驟辽輩袜錈。
3.3VisualC++6.0开发环境
VisualC++6.0,简称VC或者VC6.0,是微软推出的一款C++编译器,将“高级语言”翻译为“机器语言(低级语言)”的程序。
VisualC++6.0它不仅是一个C++
编译器,而且是一个基于Windows操作系统的可视化集成开发环境。
VisualC++是一个功能强大的可视化软件开发工具。
塤礙籟馐决穩賽釙冊庫。
3.4C++开发语言
C++语言是一种优秀的面向对象程序设计语言,它在C语言的基础上发展而来,但它比C语言更容易为人们学习和掌握。
C++以其独特的语言机制在计算机科学的各个领域中得到了广泛的应用。
面向对象的设计思想是在原来结构化程序设计方法基础上的一个质的飞跃,C++完美地体现了面向对象的各种特性。
裊樣祕廬廂颤谚鍘羋蔺。
1C++支持数据封装,支持数据封装就是支持数据抽象。
在C++中,类是支持数据封装的工具,对象则是数据封装的实现。
C++类中包含私有、公有和保护成员C++类中可定义三种不同访控制权限的成员。
仓嫗盤紲嘱珑詁鍬齊驁。
2C++中是通过向对象发关消息来处理对象的,每个对象根据所接收到的消息的性质来决定需要采取的行动,以响应这个消息。
响应这些消息是一系列的方法,方法是在类定义中使用函数来定义的,使用一种类似于函数调用的机制把消息发送到一个对象上。
绽萬璉轆娛閬蛏鬮绾瀧。
3C++中允许友元破坏封装性,友元可以访问该类的私有成员(包含数据成员和成员函数)。
友元可以是在类外定义的函数,也可以是在类外定义的整个类,前者称友元函数,后者称为友元类。
友元打破了类的封装性,它是C++语言另一个面向对象的重要特性。
骁顾燁鶚巯瀆蕪領鲡赙。
4C++允许函数名和运算符重载,C++多态性,C++允许一个相同的标识符或运算符代表多个不同实现的函数,这就称标识符或运算符的重载,用户可以根据需要定义标识符重载或运算符重载。
瑣钋濺暧惲锟缟馭篩凉。
4系统设计
系统设计阶段的根本目标是确定应该怎样具体地实现所要求的功能,经过这个阶段的设计工作,应该得出对目标系统的精确描述。
该阶段是对本系统进行模块分解,确定其软件结构,并对主要功能模块进行详细设计与实现的介绍,从而实现功能模块的精确描述。
鎦诗涇艳损楼紲鯗餳類。
4.1总体设计思想
该题库管理系统主要分为三种登录权限:
管理员权限、教师权限、学生权限。
在登录模块中,当用户登录时,首先先输入用户名及登录密码,系统会自动判断该用户是否存在,如果该用户存在则可成功跳转到相应的不同权限的页面,用户也可以先进行注册再登录,也可以通过找回密码重新设置密码,然后再进行登录。
栉缏歐锄棗鈕种鵑瑶锬。
当以管理员身份进入系统后,管理员可以对用户信息进行管理包括:
查看、修改、删除用户信息以及注册新的教师信息及学生信息;
同时管理员还可以对试题、试卷信息进行管理同样包括查看、修改、删除试题、试卷信息同时管理员还可以上传试题、试卷。
辔烨棟剛殓攬瑤丽阄应。
当以教师身份登录后,教师可以对自己上传的试题、试卷信息进行查看、修改、删除操作,还可以上传试题或试卷信息到题库,同时还可浏览其他人上传的试题及试卷信息。
此外教师可针对某一学科进行手动组卷也可以选择系统组卷,组卷完毕后可以预览试卷效果,如果满意即可保存存档。
教师还可以修改自己的登录密码以及个人信息,并可以查看系统公告,或给系统留言。
峴扬斕滾澗辐滠兴渙藺。
当以学生身份登录后,学生可以针对不同的学科、不同的章节、不同的题型进行练习,同时可以查看题目答案及详解。
此外学生还可以向系统反馈信息,查看系统公告并可以修改登录密码及个人信息。
詩叁撻訥烬忧毀厉鋨骜。
4.2系统功能模块设计
本系统是由管理员模块、教师模块、学生模块和登录模块几部分组成的。
系统流程图如图2所示。
则鯤愜韋瘓賈晖园栋泷。
图2系统流程图
4.2.1登录模块
在登录模块中,当用户登录时,首先先输入用户名及登录密码,如果该用户存在则可成功跳转到相应的页面;
如果登录不成功或用户名不存在,用户可以先进行注册再登录,也可以找回密码,然后再进行登录。
登录模块如图1.1所示。
胀鏝彈奥秘孫戶孪钇賻。
图1.1登录模块图
4.2.2管理员模块
当以管理员身份进入系统后,管理员可以对用户信息、试题、试卷信息、课程信息及题型信息进行管理。
管理员模块如图2.1所示。
鳃躋峽祷紉诵帮废掃減。
图2.1管理员模块图
1.用户信息管理模块
管理员登录后,点击“用户信息管理”按钮即可进入用户信息管理模块,在该模块中,管理员可对已经注册的学生信息以及教师信息进行查看、修改或删除操作,也可以注册新的用户信息。
其模块图如图2.1.1所示。
稟虛嬪赈维哜妝扩踴粜。
图2.1.1用户信息管理模块图
2.试题管理模块
管理员登录后,点击“试题信息管理”按钮即可进入试题管理模块,在该模块中,管理员可以上传试题到试题库,也可以对全部试题进行浏览、修改、删除操作,。
其模块图如图2.1.2所示。
陽簍埡鲑罷規呜旧岿錟。
图2.1.2试题管理模块图
3.试卷信息管理模块
管理员登录后,点击“试卷信息管理”按钮,即可进入试卷信息管理模块,在该试卷管理模块中,管理员可对上传的试卷信息进行浏览、修改、删除操作,其模块图如图2.1.3所示。
沩氣嘮戇苌鑿鑿槠谔應。
图2.1.3试卷信息管理模块图
4.课程信息管理模块
管理员登录后,点击“课程信息管理”按钮后即可进入课程信息管理模块,在该模块中,管理员可对题库中现存的科目及其所包含的章节信息、知识点信息进行查看、修改及删除操作,也可增加新的科目信息,并为其添加相关的章节信息及知识点信息。
其模块图如图2.1.4所示。
钡嵐縣緱虜荣产涛團蔺。
懨俠劑鈍触乐鹇烬觶騮。
图2.1.4课程信息管理模块图
5.题型信息管理模块
管理员登录后,点击“题型信息管理”按钮即可进入题型信息管理模块,在该模块中,管理员可以添加添加新的题型、修改题型信息,也可以删除题型信息,其模块图如2.1.5所示。
謾饱兗争詣繚鮐癞别瀘。
图2.1.5题型信息管理模块图
4.2.3教师模块
当以教师身份登录后,教师可以对自己上传的试题、试卷信息进行查看、修改、删除操作,还可以上传试题或试卷信息到题库,同时还可浏览其他人上传的试题及试卷信息,但不可以进行修改或删除操作。
同时教师可针对某一学科进行手动组卷,通过浏览关于这一学科的全部试题,并将感兴趣的题目加入试卷从而形成一份完整的试卷,教师可以通过预览试卷查看组卷效果,如果满意的话即可选择保存并将该试卷导出为指定的目录下.txt文档;
此外教师还可以选择系统组卷,在教师指定科目、选择改试卷包含的章节、试卷所包含的题型并设置各题型的数量后,系统便会在题库中随机抽取相应的题目加入试卷,组卷完毕后可以预览试卷效果,如果满意即可保存存档。
教师还可以修改自己的登录密码以及个人信息。
教师模块的模块图如图3.1所示。
呙铉們欤谦鸪饺竞荡赚。
图3.1教师管理模块图
1.个人信息管理模块
教师登录后点击“个人信息管理”按钮后即可进入个人信息管理模块,教师可对个人的基本信息进行修改并保存,也可单独修改密码。
该模块的模块图如图3.1.1所示。
莹谐龌蕲賞组靄绉嚴减。
个人信息管理
修改登录密码
修改个人信息
图3.1.1个人信息管理模块图
2.试题信息管理模块
教师登录后,点击“试题信息管理”按钮即可进入试题管理模块,教师可对个人上传的试题信息进行查看、修改、删除等操作,同时可以浏览其他人上传的试题,但不可进行修改,此外,教师还可以上传试题。
其功能模块图如图3.1.2所示。
麸肃鹏镟轿騍镣缚縟糶。
图3.1.2试题管理模块图
教师登录后,点击“试卷信息管理”按钮即可进入试卷信息管理模块,在该模块中,教师可对个人上传的试卷信息进行查看、修改、删除等操作,同时还可以上传新的试卷到题库,此外,教师还可以浏览其他教师上传的试卷信息。
其功能模块图如图3.1.3所示。
納畴鳗吶鄖禎銣腻鰲锬。
图3.1.3试卷信息管理模块图
4.组卷模块
教师登录后,点击“系统组卷”后即可进入系统组卷模块,教师按照向导,依次选择组卷的科目、该课程包含的章节和要加入试卷的题型并设置每种题型的所包含的题量后,点击组卷后,系统会自动到题库中随机选择相应的题目加入试卷,组卷完毕后,教师可阅览组好的试卷,如果满意即可将试卷保存到指定的路径。
此外教师还可选择手动组卷,点击“手动组卷”按钮,教师即可进入手动组卷模块,当选择好需要组卷的科目后,教师便可浏览题库中有关该科目的全部试题,可以逐道查看每道题的详细内容,也可对试题进行筛选后查看,如对该试题感兴趣即可将其加入到试卷,点击“完成”后即完成组卷,教师可阅览组卷后的效果,如满意即可进行保存。
其功能模块如图3.1.4所示。
風撵鲔貓铁频钙蓟纠庙。
图3.1.4组卷模块图
4.2.4学生模块
当以学生身份登录后,学生可以进行在线练习,并可以向系统反馈信息,查看系统公告并可以修改登录密码及个人信息,学生模块如图4.1所示。
灭嗳骇諗鋅猎輛觏馊藹。
图4.1学生模块图
4.3数据库设计
数据库是管理系统必不可少的组成部分,设计一个结构合理的数据库不论是对操作的速度还是对程序的设计都至关重要。
铹鸝饷飾镡閌赀诨癱骝。
数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。
数据库设计的目的是为用户和各种应用系统提供一个信息基础设施和高效率的运行环境。
攙閿频嵘陣澇諗谴隴泸。
4.3.1TB_UserLogin表
TB_UserLogin该表用于记录注册用户的信息,其包含4个字段:
用户编号、用户名、登录口令和用户权限字段,其中用户编号为主键用于标识注册用户,并且设置其为种子标识,int类型初值为1,递增值为1;
用户名为varchar类型可以与真名不同;
登录口令为varchar类型允许为空;
用户权限分为管理员权限、教师权限、学生权限,用于控制不同的用户登录后进入到相应的控制界面。
用户登录表的表结构说明如表1所示。
趕輾雏纨颗锊讨跃满賺。
表1用户登录表TB_UserLogin
字段名称
数据类型
长度
默认值
允许空
字段描述
ID
int
整型
无
否
唯一标识,主键
LoginName
varchar
10
登录名
LoginPwd
20
是
登录口令
LoginRight
8
登录权限
4.3.2TB_TeacherInfo表
TB_TeacherInfo该表用于记录已经注册的教师的详细信息,该表包含9个字段,其中TeacherID为主键,并且该字段为外键,依赖于TB_Userlogin表中的主键ID。
教师的详细信息表的表结构说明如表2所示。
夹覡闾辁駁档驀迁锬減。
表2教师信息表TB_TeacherInfo
TeacherID
TeacherName
真实姓名
TeacherSex
char
2