(生物医学工程专业论文)医学多媒体在线考试系统的设计与实现.pdf_第1页
(生物医学工程专业论文)医学多媒体在线考试系统的设计与实现.pdf_第2页
(生物医学工程专业论文)医学多媒体在线考试系统的设计与实现.pdf_第3页
(生物医学工程专业论文)医学多媒体在线考试系统的设计与实现.pdf_第4页
(生物医学工程专业论文)医学多媒体在线考试系统的设计与实现.pdf_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

, 华中科技人学同济医学院 硕士学位论文 d e s i g n a n d r e a li z a t i o n o f m e d i c a lm u l t i m e d i a o n - ii r e t e s t s y s t e m m a s t e rc a n d i d a t e :p e n gj i n g j i n g a c a d e miok d vis o r :p r o f e s s o rl a ns h u n bi a b s t r a c t t o d a y ,m a n ys c h o o l 8h a v ec o n v e r t e dt h e i rt e s t i n gm e t h o d sf r o mp a p e r t e s t st oc o m p u t e rt e s t s c o m p u t e rt e s t i n g h a s a d v a n t a g e s o v e r t r a d i t i o n a lp a p e rt e s t i n gm e t h o d s c o m p u t e r a d m i n i s t e r e dt e s t ss a v e p r i n t i n g a n d p a p e rc o s t s ,l i g h t e n t e a c h e r 8t r o u b l ea n di m p r o v e e f f i c i e n c y t a k i n ga d v a n t a g e o fc o m p u t e ri n f o r m a t i o na n a l y s i s , c a t e r i n gt oam e d i c a lu n i v e r s i t yt e s t sn e e d sa n dt h el i k e ,id e v e l o p e d am e d i c a lm u l t i m e d i ao n l i n et e s ts y s t e m m e d i c a lm u l t i m e d i ao n - l i n et h et e s ts y s t e mw a sd e v e l o p e du s i n gs q l s e r v e r2 0 0 0d a t a b a s ea n dd e l p h is o f t w a r e s e v e r a lf u n c t i o n a lm o d u l e s w e r ed e s i g n e d t h i sp a p e rd i s c u s s e ss o m et e c h n o l o g i e so ft h es y s t e m i n c l u d i n gd c o mfm d 5 | m u l t i m e d i at r a n s m i s s i o nlt r a n s a c t i o np r o c e s si n g i a n d n o r m a lt e s t t h et e s ts y s t e ms u p p o r t s m a n yf u n c t i o n s ,s u c ha s : a u t o m a t i ce x a ms c o r i n g ,s i m u l t a n e o u st e s t i n gs t u d e n t s ,r a n d o ms e l e c t i o n o ft e s tq u e s t i o n s ,a d m i n i s t r a t i o no ft e s tq u e s t i o n s ,a d m i n i s t r a t i o no f u s e r s ,a d m i n l s t r a t i o no fs c o r e sa n ds of o r t h e s p e c i a l l yo nt h eb a s i s o ft h et r a d z t t o n a lt e x t l e s se x a m ,i ta d d e dm u l t i m e d i af u n c t i o n s ( v i d e o , a u d i o ,p i c t u r e ) i ti sv e r yf i t f o rm e d i c i n et e s t t h ep a p e ri n c l u d e st w op a r t s :t h ef i r s tp a r ti l l u s t r a t e ds o m e p r o b l e m st h a tm u s tb ec o n s i d e rf o rd e s i g nam e d i c a lm u l t i m e d i ao n l i n e t e s ts y s t e m ,i n c l u d i n ga r c h i t e c t u r eo ft h et e s ts y s t e m ,ac o m p o s i t i o n a l p a r t , f u n c t i o n a lm o d u l e s ,a n ds y s t e mi n t e r f a c e t h es e c o n dp a r t i l l u s t r a t e d i m p o r t a n t 七e c h n 0 1 0 9 i e s a n d d i f f i c u l t yr e s o l u t i o n s , e s p e c i a l l yh o wt ou p l o a da n dd o w n l o a dam u t i m e d i af i l eo ft h es y s t e m i ti n t r o d u c e df t pf a s h i o nf o r t h i sw a y a ne v a l u a t i o no ft h et e s t i n gs y s t e ms h o w e dt h a tt h ep r o g r a mw a ss t a b l e , a n dm e tt h eu n i v e r s i t y sn e e d sf o rac o m p u t e r i z e dm e d i c a le x a m i n a t i o n t h es y s t e mi sr e a d yt ob ed e p l o y e df o rr e g u l a ru s e k e y w o r d s :t e s ts y s t e m ;t r a n s a c t i o np r o c e s s i n g ; m u l t i m e d i a t r a n 8 m i g s i o n jn o r m a lt e s t :t i d f t p s e r v e r ;t i d u s e r m a n a g e r 2 毕中科技人学同济睡学院 硕士学位论文 刖罱 随着 f 算机网络技术的迅猛发展,人类正在进入数字化时代。计算机技术不 断地改变着人们的学习和生活方式,也改变了学生考试的方式,采用计算机考试 系统代替传统考试,将是时代发展的必然趋势。 传统考试的一般流程是:教师出卷印刷试卷考试( 地点:教室) 一 一教师发卷学生考试考试结束收卷阅卷( 教师手工批改) 手工 扩总考试成绩。 采用计算机进行考试流程是:教师出卷计算机生成试卷一考试( 地点: 公共机房) 教师启动考试系统服务器( 考试系统服务器加载试题库) 考 牛臀录考试( 考生使用考试系统学生端,输入学号和密码连接上服务器,获得试 卷,进行考试) 考试结束提交试卷( 考试系统服务器取得所有考生的答卷) 阅卷( 客观题系统自动批改,主观题由教师评阅) 计算机汇总考试成绩。 当前,利用局域网进行上机考试,并借助计算机代替人工完成从试题库中组 卷、发卷、收卷、阅卷已成为可能。采用计算机进行考试优势在于: l 、客观性:考试系统采用试题数据库抽题,试题抽取面广,试卷整体覆盖面 大,可基本反映考生的实际水平,从而保证考试的客观性和准确性。 2 、题型多样性:卷面考试只能考察选择题,填空题,简答题等,而采用计算 机避 j 考试,。,以进一步发展到考察学生对于音频,视频,图像( 以下简称多媒 体试题) 的掌握情况,以反映考试内容的多样性。 3 、便利性:考试系统进行考试,方便快捷,既节省了印刷试卷的成本,又减 轻了教师改卷的负担,提高了工作效率。 目前市面上已有的考试系统多数已能实现动态随机抽题、系统自动判卷、试 题管理等基本功能。但却难以满足医学专业考试形象、生动、直观的要求,即难 以考察医学生对听诊音频,解剖视频,标本图像的掌握情况。因此,研究适合医 学专业的医学多媒体在线考试系统显得非常迫切和必要。 根掘医学专业的考试特点,实现动态随机抽题、多个学生同时在线考试、系 统自动判卷、试题管理、用户管理、分数管理等基本功能,并能针对一个班或者 套试卷的考试成绩进行统计分析,以及实现多媒体技术( 音频,视频,图像) 存考试系统中的应用进行了有益的尝试和探索。因此,医学多媒体在线考试系统 能全面考察医学生掌握医学知识的情况,适合医学考试的特点。 3 华中科技人学同济医学院 硕士学位论文 第一部分考试系统的设计 1 设计考试系统要考虑的问题 本系统结构复杂,功能比较全面,在系统设计上需要解决的主要问题有: 1 1 考试系统的体系结构 从目前来看,大多数的考试系统采用了b i s 结构嘲、c s 结构、或者采用两者 相结合的混合结构“1 ,b i s 结构适合于考试环境在广域网中或者客户端数量多,且 参与考试区域分散的情况。如果考试环境在局域网中,且客户端数量不太多,考 试范围集中在定区域内,那么可以使用c l s 结构。因此,本系统采用c l s 结构。 1 2 采用的分布式技术 分布式结构中应用程序服务器的构建,基本上基于两种不同的标准:一是 m i c r o s o f t 制定的c o m d c 0 m c 嘶+ 技术( c 叫d c o m 服务器,m t s 服务器) ;二是 s u n 、i b m 、i n p r i s e 、n e t s c a p e 等众多厂商共同提倡的c o r b a 技术( c o r b a 服务器) 。 其中c o m d c o m c o m + 是以w i n d o w s 为中心的开发环境,而c o r b a 则是跨平台的开 发环境。这两种分布式技术“1 都具有可扩展性和健壮性的结构等特点,并且具有各 自不同的优势。c o m d c 0 m 适合于系统运行微软操作系统,并且其规模分布上不是 很广的情况。c o r b a ”1 则适用于异构的、大规模的分布式系统。因此,本系统采用 的是d c o m 技术。 1 3 组卷方案 系统应考虑以何种方案进行组卷,即在试题库( 包括选择题题库、填空题题 库和多媒体题题库) 中挑选试题组卷,为了准确和高效的进行组卷,此系统设计 了两种组卷方案,一种是人工组卷,由教师浏览试题库中的每一道试题,来决定 是否放在此试卷中,最后确定每道题的分数和考试时间;另一种是自动组卷,教 师选择题型、试题数目、每道题的分数和考试时间进行自动组卷。后一种方式使 用的是r a n d o m 函数,随机选择各种题型的题目个数,能提高组卷效率。 1 4 多媒体题型 根掘医学院校考试的要求和特点,本系统在实现多媒体形式的考题上采用了 考试中常见的简答题方式。考试时,学生根据一段与医学有关的视频、图片或者 声音柬凹答简答题的试题,这样能全面考察学生掌握医学知识的情况。 1 5 改卷方案 由于选择题是客观题,因此选择题可以在学生考试结束后立刻给出分数。虽 然填空题和多媒体题也能由计算机自动改卷,但由于填空题和多媒体题都是主观 题,同个含义却可以用不同句式、不同词汇柬表达,因此不能简单的用字符串 和标准答案作为判断正误的依据,如果学生多输入一个空格就会影响学生的得分。 因此,为了保证学生考试的正确性和公平性,填空题和多媒体题由教师人工阅卷。 4 华中科技大学同济医学院 硕士学位论文 2 体系结构 目前的管理信息系统有两种体系结构,一种是c s 结构,一种是b s 结构。 c s 结构提供了更安全的存取模式。由于c s 是配对的点对点的结构,适用于 局域网、安全性比较好的网络协议( 例如:舸的n e t b e u i 协议) ,安全性可以得到 较好的保证。而b s 采用一点对多点、多点对多点这种开放的结构,并采用t c p i p 这一类运用于i n t e r n e t 的开放性协议,其安全性只能靠数据服务器上管理密码的 数据库来保证。由于c s 在逻辑结构上比b s 少一层,对于相同的任务,c s 完成 的速度总比b s 快,使得c s 更利于处理大量数据。而b s 特别适用于网上信息 发布。因此c s 结构是目前建立管理信息系统的主要方式之一。本系统正是采用 的这种结构。学生在考试结束后,把相关的信息通过提交到服务器端,然后应用 程序根据服务器上的数据库信息对提交的信息进行处理,即阅卷。最后把学生的 考试分数进行登记和统计学分析。 本系统的三层c s 结构如图一所示。 图一c s 结构图 3 系统组成部分 3 1 服务器端 服务器端即r e m o t e s e r v e r 端。为实现多媒体文件的上传下载,必须在服 务器端打斤一个f t p 服务,该服务授权两个账户登录并获取上传文件,其中,学 生端的账户只拥有下载权限,只能从服务器端下载多媒体文件进行考试;教师端 的账户拥有全部权限,不仅可以用本教师端出题和上传多媒体文件,还能使用任 何f t pc l i e n t 工具对服务器端的所有多媒体文件进行管理等。 3 2 教师端 教师端即出卷和阅卷端。通过服务器端查询教师端登录的f t p 帐号和密码, 程录并h 传文件( 如服务器端f t p 为开放,教师端在上传文件过程中可远程打开 服务器端的f t p 服务) 。 3 3 学生端 学生端即在线考试端。在学生根据学号密码等信息登录后,自动查询本 华中科技人学同济医学院 硕士学位论文 次考试是否有多媒体试题,如有,则在考试正式开始之前,首先从服务器端获取 所有相关多媒体文件,保存在程序下的m e d i a d a t a 目录下,以备学生答题时播放 观看之用。 4 系统功能模块图 图二功能模块图 5 系统功能模块 5 1 教师端 教师端设计了7 个功能模块,下面分别阐述: 5 i 1 试题管理模块 增加试题 新添加选择题到b q u e s t i o n 表中,填空题到s q u e s t i o n 表,多媒体题到 m q u e s t i o n 表。并填加试题的题号,内容,难度,答案,科目等信息。 查询浏览 可以浏览已经添加到表中的所有试题,并可以根据题型、难易程度、科目、 题号来查找试题。当双击l i s t v i e w 时,弹出此选定的试题的详细信息如添加时 6 华中科技大学同济医学院 硕士学位论文 间,此题答案等。当教师发现试题有错误时,也可修改或者删除。 确定知识点 首先要选择科目,每个科目有1 0 个知识点,教师在组卷之前应在此处添加知 识点,以便分析试卷时计算某知识点的得分情况。 5 1 2 试卷管理模块 生成试卷 即教师组卷。教师有两种组卷方式。一是人工组卷,教师可根据考试的科目 分别选择填空题、选择题和多媒体题,以决定是否选择此题为本次的考题。此方 法是每一题按顺序显示出试题内容,答案,难度等,选择了一定量的试题后可存 放在p a p e r 表中,并给出此次考试的试卷号和每一小题的分数;另一种方法是自 动组卷,教师先选择考试的科目,然后选择填空题和选择题分别出多少道,按确 定即可。自动组卷的算法是利用随机函数在b q u e s t i o n 表、s q u e s t i o n 表和 m q u e s t i o n 表中随机抽取试题,每取一次题的题号都存放在一个t s t r i n g l i s t 对象 中,看t s t r i n g l i s t 对象中是否有重复的题号,如果有,则说明抽取重复,则这 次随机函数产生的题号不算数,重新计算,直到需要的试题数为止。当教师选择 试题进行组卷时,可自动记录当前时间存放在p a p e r 表中。 确定时日j 两种方法组卷完成后还需要确定整个考试要多长时间完成,也可以修改已确 定的试卷的考试时间。 浏览试卷 当组卷完成后,可以根据试卷号浏览整个试卷,如果还须修改某个试卷,也 口,以在此模块中完成。 5 1 3 考试管理模块 改试卷 为了保证阅卷的客观性,本系统设计的填空题为教师人工改卷。教师选择试 卷号和班级,则可以看到此班参加这门考试的学生的信息,点中某行学生信息, 就可以看到学生的填空题答案和标准答案,如果学生回答正确在题号前打钩,如 果错误小 j 钩,改完后,给出选择题分数,并按确定按钮,在按下此按钮的时候 自动加上选择题的得分存入s t u d e n t 表中的s c o r e 字段中,如果某题错误,在此 试题对应的知识点字段加1 。 试卷分析 可以根据试卷号和班级号进行j 下态性检验,看是否符合正态分向,并可以计 算h 某班参加某项考试的所有学牛分数的最大值,最小值,算术平均值,偏度系 数,峰度系数。 查看知识点 华中科技人学同济医学院硕士学位论文 可以选择试卷号来查看参加此考试的学生的考试出错情况。通过一个表显示 出某试卷的所有题号和对应的知识点以及此题出错的个数。 5 1 4 帐号管理模块 管理员 在登录此系统时,如果权限字段为1 的教师则是管理员,他能设置其他教师的 权限,还可添加或删除某个用户。 用户 修改此用户的密码。 5 1 5 学生管理模块 添加学生 在考试之前,教师应添加学生信息在s t u d e n t 表中。包括学生姓名、班级、 性别、学号、试卷号、考试科目、专业、成绩、是否重修。 查询成绩 此模块分为两部分,一部分是一般查询,即根据参加考试学生的姓名、学号、 试卷号等信息查询学生的成绩,还可以对查询结果根据分数或者学号进行升序或 降序排列。另一部分是高级查询,即根据一个班,考试科目或者试卷号对每个分 数段的学生人数和学生成绩的平均分,中位数,方差等进行查询。 5 1 6 数据模块 备份 备份整个数据库,以免丢失数据。 5 1 7 帮助模块 帮助 帮助中阐述了本软件的使用方法。 关于 在此描述了本软件的版本号,开发的单位,开发时间。 5 2 学生端 52 1 学生考试模块 学生在输入自己的姓名的学号登录后,才可进入考试系统进行考试。题型有 填空题,选择题和多媒体题。左边的t r e e v i e w 可看到所有的题号,并可点击跳转。 右边显示出试题号、试题、考试时间。学生可按“交卷”提前交卷。考试时间使 用倒记时的方式,提示“现在还剩多长时间”,到了规定的时间后,学生不能继续 做题,考试结束。系统自动把学生的选择题答案和标准答案进行比对,立刻给出 分数。为了保证客观性,填空题的答案由教师进行改卷。 华中科技人学同济医学院硕士学位论文 6 系统界面设计 图三新增试题界面 图四增加学生界面 9 华中科技火学同济医学院 硕士学位论文 图五组卷方式界面 图六阅卷界面 1 0 华中科技大学同济医学院 硕士学位论文 图七学生考试界面 7 数据库设计 本数据库共有9 个表,分别是s t u d e n t 表,t e a c h e r 表,b q u e s t i o n 表,s q u e s t i o n 衷,p a p e r 表,s u b j e c t 表,k n o w l e d g e 表,m q u e s t i o n 表,f t p u s e r 表。s t u d e n t 表 为学生表,记录了学生的姓名,学号,班级,性别,考试的科目,成绩,是否重 修,分数。t e a c h e r 表为教师表记录了教师的权限,帐号和密码,为了教师密码的 安全性,密码在数据库中保存的是m d 5 算法计算后的值,因此密码字段设计为 v a r c h a r3 2 位。b q u e s t i o n 表为选择题试题库记录了试题的题号,内容,难度, 答案,科目,a 、b 、c 、d4 个选项,录入的时间。s q u e s t i o n 表为填空题试题库 记录了试题的题号,内容,难度,填空的数目,科目和答案( 每个填空题填空数 不超过4 个) ,录入的时间。p a p e r 表为试卷库,s u b j e c t 表是为了编程方便而 华中科技大学同济医学院硕士学位论文 设置的,有两个字段,分别为科目号和科目代码。k n o w l e d g e 表记录了关于知识点 的信息。包括科目号,知识点的内容等。m q u e s t i o n 表为多媒体题试题库,包括有 图片,视频和声音。记录了试题的题号,试题内容,多媒体文件所在的位置等信 息。f t p u s e r 表为权限表,确定教师上传的帐户和密码和学生下载时候的帐户和密 码。 表一s t u d e n t 表 字段类型字段长度说明 n a m 匣v a r e h 盯6 主键,学生姓名 p a p e r n ov a r e h 盯 1 0 考试的试卷号 s n ov a r e h a r8学号 c l av a r e h 盯1 0 班级 m a j o rv a r e h a r2 0专业 g e n d e rv a r e h a r2 性别 s c o r es m a l f i n t 2 分数 s u b j e c t v a r c h 盯l 参加考试的科目号码 t m d m e f i m e8 录入时阿 r eb i ti 是否重修 a n s w e rv a r h a r1 0 0 0 学生考试答案 s e l e c l a n s w e rs m a l l i n t2 选择题得分 表二t e a c h e r 表 字段类型字段长度说明 i dv a r c h a r2 0 主键,教师用户名 n a m ev a r c h a r6 教师姓名 p a s s wv a r c h a r3 2 密码 t m d a t e t i m e8 录入时间 a u t hv a r c h a r1 权限号 字段类型字段长度说明 i dv l r c h a rl o 主键,选择题题号 c o n t e n t v a r c h a r2 5 0 试题内容 e a s yv 扑c h a r4 难易度,分为简单,中等,难,最难 1 2 华中科技人学同济医学院 硕士学位论文 a n s w e rv a r c h a rl答案 k n o wv a r c h a r3 0知识点 s u b j e c t _ i d v a r c h a r1科目号 av a r c h a r5 0 选项a 内容 bv a r c h a r5 0选项b 内容 cv a r c h a r5 0 选项c 内容 dv a r c h a r5 0选项d 内容 t md a t e t i m e8 录入时间 表四 s q u e s t i o n 表 字段 类型字段长度 说明 i dv a r c h a r1 0主键,填空题题号 e a s yv a r c h a r 4 难易度,分为简单,中等,难,最难 c o n t e n t v a t c h a t2 5 0 试题内容 k n o wv a r c h a r3 0 知识点 s u b j e c t _ ! d v a r c h a rl科目号 a n s w e r lv a r c h a r4 0填空l 答案 a n s w e r 2v a r c h a r 4 0 填空2 答案 a n s w e r 3 v a r c h a r4 0 填空3 答案 a n s w e r 4v a r c h a r4 0 填空4 答案 s h u m uv a r c h a rl填空个数 t md a t e t i m e8 录入时间 表五p a p e r 表 字段 类型字段长度 说明 c o d ei n t4 主键,加一递增 p l dv a r c h a r1 0试卷号 i dv a r c h a r 1 0 试题号 s u b j e c tv a r c h a r1 科目号码 t md a t e t i m e8 生成试卷的时间 f e n s h us m a l l i n t2此小题的分数 t i md a t e t i m e8 考试所需要的时间 n u m b e ri n t4 此题做错的人数 1 3 华中科技火学同济医学院硕士学位论文 表六s u b j e c t s 表 字段类犁字段长度 说明 s u b j e c tl dv a r c h a r 1 主键,科目号码 s u b j e c t v a r e h a r 2 0 科目号码对应的值 表七 k n o w l e d g e 表 字段类型 字段长度说明 k i di m 4 主键,加一递增 s u b j e c t _ i d v a r c h a r 1 科目号码 k n o wv a r c h a r 3 0 知识点 表八m q u e s t i o n 表 字段 类型字段长度说明 i d v 盯e h a r1 0 主键,加一递增 c o n t e n t v a r c h a r2 5 0 试题内容 e a s y v a r c h a r6难易度 k n o wv a r c h a r3 0知识点 s u b j e c ti dv a r c h a r l 科目号 a n s w e rv a r c h a r 5 0 0 答案 m e d l af l l ev a r c h a r2 5 0 多媒体文件名( 使用g u i d 号) m e d l ae x tv a r c h a r 8 多媒体文件的扩展名 t md a t e t i m e8录入时间 表九 f t p u s e r 表 字段类型字段长度说明 u s e tn a m ev a r c h a r2 0主键,用户名 u s e r _ p a s s w o r d v a r c h a r2 0 密码 u s e r _ _ r i g h t ;n t4 权限代表的数字 1 4 华中科技大学同济医学院 硕士学位论文 8 e - r 图 9 数据流图 图八e _ r 图 1 0 开发环境 ( 1 ) 主要硬件环境: 主机p e n t i u m5 5 0 h l h z 以上 内存1 2 8 m b 以上 显示卡彩显v g a 图九数据流图 华中科技大学同济医学院硕士学位论文 硬盘空间2 0 0 m b 以上硬盘剩余空间 ( 2 ) 操作系统: 服务器的操作系统采用m i c r o s o f tw i n d o w ss e r v e r2 0 0 0 。客户机采用 m i c r o s o f tw i n d o w s 2 0 0 0 。 ( 3 ) 数据库服务器:s q ls e r v e r 2 0 0 0 ( 4 ) 开发语言和开发工具:d e l p h i 7 0 1 1 运行环境 本系统可以把数据库、服务器端软件和教师用机软件放在同一个主机上,也 可以把服务器和教师用机软件放在同一个主机上,而把数据库放在另一个机器上 服务器端采用w i n d o w s 2 0 0 0 以上的操作系统和s o ls e r v e r2 0 0 0 数据库,硬件采 用2 5 6 m 以上内存和p 4l g 以上c p u 。学生机,教师用机即客户端采用w i n d o w s 2 0 0 0 以上的操作系统,硬件采用1 2 8 m 以上内存和p 35 5 0 m 以上c p u 。 第二部分关键技术及难点的解决 12 关键技术及其实现 1 2 1d c o m 技术 传统的c s 结构为两层结构的应用程序。两层分别为客户端应用程序部分 ( c l i e n ta p p l i c a t i o n ) 和数据库服务 器部分( d b m s ) 。由于客户端应用程序 都是直接连接的数据库,所以数据库需 要为每个客户端程序打开一个连接通 路。而本文中增加了a p p l i c a t i o n s e r v e r 层,它介于c l i e n ta p p l i c a t l 0 n 和d b m s 之间,负责接受c l i e n t a p p l i c a t i o n 的响应,并传递给服务器 数掘库,再将数据库的数据传递给 c l i e n ta p p l i c a t i o n 。 目前,分布式结构中应用程序服务 器的构建有两中不同的标准,一种是 m i c r o s o f t 铝0 定的c o m d c o m c o m + 技 术,d c o m 是以w i n d o w s 为中心的开发 环境,并扩展了组件对象模型技术 ( c 伽) ,使其能够支持在局域网、广 图十考试系统结构图 1 6 华中科技人学同济医学院 硕士学位论文 域网甚至i n t e r n e t 上不同计算机的对象之间的通讯。另一种是c o r b a ( c o m m o n o b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ) ,用来定义“分布式对象系统”,由 o m g ( o b j e c tm e n a g e m e n tg r o u p ) 作为发起和标准制定单位。c o r b a 的目的是定义 一套协议,符合这个协议的对象可以互相交互,不论它们是用什么样的语言写的, 不论它们运行于什么样的机器和操作系统。 本系统用到的是d c o m 技术,首先在服务器端建立一个接口( i n t e r f a c e ) , 它的父接口类型为i a p p s e r v e r ,然后才能在此基础上建立r e m o t e d a t a m o d u l e 远程 数据模块“”,使用接口可以使一个对象可以很容易地被( 实现了相同接口的) 的 另一个对象所替换。增加了代码的重用性。 在r e m o t e d a t a m o d u l e 远程数据模块上增加一个a d o c o n n e c t i o n ,这个 a d o c o n n e c t i o n 的作用是指定连接的数据库的位置,并设置a c t i v e 属性为t r u e 。 然后设置多个d a t a s e t p r o v i d e r 和与之对应的a d o q u e r y ,并使每个 d a t a s e t p r o v i d e r 的d a t a s e t 属性连接a d ( q u e r y 的n a m e ,每个a d o q u e r y 的 c o n n e c t i o n 属性连接a d o c o n n e c t i o n 的n a m e 属性。在客户端中建立一个 d a t a m o d o l e 本地数据模块,在此数据模块中添加一个d c o m c o n n e c t i o n 以连接服务 器端的接l ,多个c 1 i e n t d a t a s e t 和与之对应的d a t a s o u r c e ,以对应每个要用到的 数据集。客户端的每个c l i e n t d a t a s e t 的p r o v i d e r n a m e 属性连接服务器端与之对 应的d a l a s e t p r o v i d e r ,并把a c t i v e 设置为t r u e ,它的r e m o t e s e r v e r 属性连接 d c o m c o n n e c t i o n 的s e r v e r n a m e 属性。客户端的d a t a s o u r c e 的d a t a s e t 属性连接 d a t a c l i e n t s e t d e 的n a m e 属性。这样客户端用c l i e n t d a t a s e t 通过r e m o t e s e r v e r 向数据库服务器请求数据。从而对客户端屏蔽了如何进行网络连接等方面的细节。 本系统的结构如图十所示。 1 2 2m d 5 加密算法 传统的认证方式是用户在登录过程中输入用户名和口令,通常以未加密的明 文在网络中传输,并直接保存在数据库中。这种认证方式很容易遭到黑客窃听或者 被人恶意打丌数掘库,从而造成密码泄露。为了保护教师端的安全性,教师登陆 本系统的密码用到了m d 5 算法,即使数据库被人取得,也不可能知道密码具体是 什么意思,当然,密码也就不会泄露,极大程度的保护了系统的安全性。 m d 5 算法”1 在9 0 年代初由m i tl a b o r a t o r yf o rc o m p u t e rs c i e n c e 和r s ad a t a s e c u r i t yi n c 的r o n a l dl r i v e s t 开发出来,经仰2 、m d 3 和m d 4 发展而来。它 的全称是m e s s a g e d i g e s ta l g o r i t h m5 ( 信息一摘要算法) 。m d 5 以5 1 2 位分组来 处理输入的信息,且每一分组又被划分为1 6 个3 2 位子分组,经过了一系列的处 理后,算法的输出由四个3 2 位分组组成,将这四个3 2 位分组级联后将生成一个 1 2 8 位散列值。通过其不可逆的字符串变换算法“压缩”成一种保密的格式( 就是 1 7 华中科技大学同济医学院硕士学位论文 把一个任意长度的字符串变换成一定长的大整数) 。产生一个唯一的1 2 8 位的信 息摘要,即“压缩”成一种保密的格式,以防止被篡改。如果在以后的应用中, 教师密码发生了任何形式的改变( 包括人为修改等) ,重新计算m d 5 时就会发现 信息摘要不相同,显然他得到的是一个不正确的密码。因此加密后的密码,即使有 黑客窃取,也无法通过窃取到的密文得到原有密码。即使数据库被人恶意打开,也 不可能得到教师密码。 1 2 3 多媒体文件传输 。医学是- - f 实践性很强的学科,采用多媒体文件进行考试,能够图文并茂, 形象生动,感性直观,适合医学考试的特点。在本系统中,多媒体文件采取f t p 方式传输,利用著名的i n d y 组件库中的t i d f t p s e r v e r 组件和一个t i d u s e r m a n a g e r 组件嘲来实现所需功能。这里t i d u s e r m a n a g e r 组件是用来进行f t p 服务器帐户管 理的。把t i d f t p s e r v e r u s e r a c c o u n t s 属性关联到t i d u s e r m a n a g e r 组件。然后将 教师端和学生端的登录密码保存在数据库中。t i d u s e r m a n a g e r 则通过读取数据库 中的相艾数据,进行登录验证和权限分配的记录,最后由t i d f t p s e r v e r 来实行权 限控制。当教师出多媒体试题时,教师可以在界面中直接选择一个视频文件,点 击上传,程序内部将自动完成登录和上传操作。为了避免因上传的文件名相同而 造成文件名冲突的问题,教师端将自动生成一个唯一的g u i d 号来表示上传的视频 文件名,服务器端则根据该g u i d 给出服务器上的上传文件命名,从而解决了名称 冲突的问题。 在实现细节上,通过调用t i d f t p c i i e n t c o n n e c t 方法连接上服务器,并调用 t i d f t p c il e n t p u t 方法上传文件。上传的路径和文件名保存在数据库中,供学生 端答题时获取文件相关信息并下载播放。学生端启动后,首先从数据库中提取f t p 帐户和密码,然后用t i d f t p c i i e n t 连接服务器端,调用t i d f t p c i i e n t c o n n e c t 函数,连接成功后,使用t i d f t p c i i e n t g e t 函数开始从指定目录中下载多媒体文 件。将这些文件下载并保存在学生端程序所在目录下的一个名为m e d i a d a t a 目录 中。下载完成后,学生即可进入考试系统答题,在回答视频试题时,将调用内嵌 的w jn d o w sm e d i ap l a y e r 来播放已经下载的视频文件,学生看完视频后可以根据 刚j 看到的视频回答问题。 为了最大限度减少网络传输的负荷,在上传和下载的过程中,程序使用z l i b 趣缩算法对数据进行压缩。i n d y 组件库已经内置了z l i b 压缩算法,在服务器端、 学生端和教师端分别放上一个t i d c o m p r e s s o r z l i b e x 组件,并分别和对应的 t l d f t p s e r v e r 组件、t i d f t p c ii e n t 组件相关联,那么在传输过程中,相关数据就 会在发送和接收的过程中自动进行压缩和解压。通常每次考试的所有多媒体文件 可以控制在5 m 一1 0 m 。这样,在1 0 0 n 的局域网中,当服务器性能比较好的情况下, 1 8 华中科技大学同济医学院 硕士学位论文 如有1 0 0 台学生机同时下载,在1 分钟内就可以下载完毕。 1 2 4 事务处理 当学生考试结束后,教师可了解学生掌握知识点的情况,可以知道每道题有 多少学生回答错误,以及对应的知识点。k n o w 表为知识点表,字段有知识点,科 目号,知识点。每门课程设置了1 0 个知识点,知识点的内容由教师决定,在考 试| ; 输入。当学生考试完后,系统能自动将考试信息反馈,找到出错的题号、对 应的知识点、记数,记数用k 。表示,此字段在考试开始前为0 ,当有学生答完题 提交时就把记数字段自动加l 。如果有多个学生同时考试完毕,并同时把考试信息 提交到数据库时,则会产生死锁。为了保证数据库的一致性,采用了事务处理中 的一级封锁协议,当一个学生提交出错的题号时,锁定知识点表,这样能防止并 发操作引起的丢失修改导致的数据不一致性。当所有的学生考试完后,就可以立 刻统计出学生出错的知识点个数s ,使老师能了解某个班参加考试的学生掌握各个 知识点的情况。t a d o c o n n e c t i o n 类封装了a d o 连接对象。通过i s o l a t i o n l e v e l 属 性设置事务隔离级别,利用b e g i n t r a n s 函数启动事务和获得事务嵌套级别。并判 断事务执行状态,采用d e l p h i 的异常处理语句,当有异常发生时回滚事务,否则 提交事务“”。关键原代码如下: s e r v e r i s o l a t i o n l e v e l := i s o l a t e d :s e r v e r 为a d o c o n n e c t i o n 组件,i s o l a t e d 为最高级 别,对褴个表锁定。 尢在服务器端定义一个过程,此过程如下: p r o c e d u r et r e m o t e _ s e r v e r u p d a t e k n o w l e g e c o u n t ( c o a s tp a p e r i d q u e s t i o n i d :w j d e s t r i n g ; i n c r e a s e c o u n t :i n t e g e r : v a re r r o r s t r :v i d e s t r i n g ) : v a r t r a n s l d :i n t e g e r ; s q l c o m m a n d :s t r i n g : a d o c o m m a n d :t u o o c o m m a n d : b e g i n e r r o r s t r := ”: s e r v e r i s o l a r i o n l e v e l := i s o l a t e d ; t r a n s l d := s e r v e r b e g i n t r a n s : t r y s q l c o m m a n d := f o r m a t ( u p d a t ep a p e rs e tn u m b e r = n u m b e r + dw h e r ei d = ”s + ,a n d p i d = ”s 。 i n c r e a s e c o u n t ,q u e s t i o n i d , p a p e r i d ) : a d o c o m m a n d := t a d o c o m m a n d c r e a t e ( n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论