(机械设计及理论专业论文)数据可视化技术的研究及其在教务信息数据库中的应用.pdf_第1页
(机械设计及理论专业论文)数据可视化技术的研究及其在教务信息数据库中的应用.pdf_第2页
(机械设计及理论专业论文)数据可视化技术的研究及其在教务信息数据库中的应用.pdf_第3页
(机械设计及理论专业论文)数据可视化技术的研究及其在教务信息数据库中的应用.pdf_第4页
(机械设计及理论专业论文)数据可视化技术的研究及其在教务信息数据库中的应用.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(机械设计及理论专业论文)数据可视化技术的研究及其在教务信息数据库中的应用.pdf.pdf 免费下载

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

文档简介

数据可视化技术的研究及其在教务信息数据库中的应用 摘要 随着高等教育事业的发展和教学改革的深入,学校办学规模f 1 益扩大,教 学计划管理就更显得繁琐和复杂。传统教学计划管理的方法、手段以及工作效 率已不适应发展了的新情况,并有碍于教学管理水平的进一步提高。将计算机 引入教学计划管理,实现管理手段现代化,就成为解决问题的思想出路。 以数据库系统为代表的信息管理技术正在向更高层次的决策支持系统演 变。这种演变的实质是要对已有的数据做 h 分析和理解并进而做出预测,提高 库中数据的利用率。在这里数据可视化技术将发挥重要作用,成为数据联机分 析中一种不可或缺的工具。 数据可视化指的是运用计算机图形学和图像处理技术,将数据转换为图形 或图像在屏幕上显示出来,并进行交互处理的理论、方法和技术。它涉及到计 算机图形学、图像处理、计算机辅助设计、计算机视觉及人机交互技术等多个 领域。该技术采用人机对话的方式,通过在三维场景中用图形直观地表现数据, 容易找出数据规律,进而提供决策支持。 本文首次将数据可视化的概念引入剑教务信息数据库中,在用v c + + 对 s o l i d w o r k s 二次开发的基础上,通过机械设计中的参数化建模的思想,在教务 数据库中实时提取时间三维信息,形成图形绘制的参数。然后在s o l i d w o r k s 系 统环境中加载菜单,并利用其巾的成熟的二维图形绘制和操纵功能,完成了三 维场景的创建和图形的显示,并编写了二维显示模块和数据库管理模块,通过 协和工作,米完成教务数据库的辅助管理。文中尝试了用a d o 技术进行数据 库的访问,通过c o m 编程建立和s o l i d w o r k s 环境的连接,并对数据库三维信 息的提取和s o l i d w o r k s _ 二次开发技术做了详细介绍,具有较大的理论和现实意 义。 关键词:数据可视化,二次开发,参数化,数据库 r e s e a r c ho nd a t av i s u a l i z a t i o na n dt h ea p p l i c a t i o ni ne d u c a t i o n a l a d m i n i s t r a t i o ni n f o r m a t i o nd a t a b a s e a b s t r a c t w i t ht h e d e v e l o p m e n t a n dr e f o r m o fh i g h e re d u c a t i o n ,t h es c a l eo fs c h o o l h a s i n c r e a s i n g l ye x t e n d e d ,t h em a n a g e m e n to f t h et e a c h i n gp l a ns e e m st ob em u c hm o r e t e d i o u sa n dc o m p l i c a t e d t h et r a d i t i o n a lm e t h o da n dw o r ke f f i c i e n c yn o to n l yh a v e n ta d a p t t ot h en e wc o n d i t i o n sb u ta l s ob e c o m ea no b s t a c l eo ft e a c h i n gm a n a g e m e n t t h ek e yp o i n t o fs o l v i n gt h a tp r o b l e mi st oi n t r o d u c ec o m p u t e ri n t ot h et e a c h i n gp l a nm a n a g e m e n t t h ei n f o r m a t i o nm a n a g e m e n tt e c h n i q u e ,w h i c ht a k e st h ed a t a b a s es y s t e ma st h e r e p r e s e n t a t i v e ,i sc h a n g i n gt o w a r dt h eh i g h e rl a y e ro fs u p p o r t i n gs y s t e m t h i sk i n d o f s u b s t a n c ef o rc h a n g ei st oa n a l y z ea n dc o m p r e h e n dt h ee x i s t i n gd a t aa n dg i v et h ee s t i m a t e a tt h es a m et i m e h e r e ,d a t av i s u a l i z a t i o nt e c h n i q u ew i l lb e c o m em u c hi m p o r t a n ta n da k i n do fn e c e s s a r yt o o li nt h ed a t am a c h i n ea n a l y s i s d a t av i s u a l i z a t i o nt e c h n i q u eu s et h ek n o w l e d g eo fc o m p u t e rg r a p h i c sa n di m a g e p r o c e s s i n gt oc o n v e r tt h ed a t aa st h es k e t c ho rt h ep i c t u r es h o w i n go nt h es c r e e n ,a n dc a n b ec o m m u n i c a t ew i t hc l i e n t i ti n v o l v e sm a n yf i e l d s ,s u c ha sc o m p u t e rg r a p h i c s ,i m a g e p r o c e s s i n g ,c a d ,c o m p u t e rs e n s eo fv i s i o na n dp e r s o n si n t e r f a c et e c h n i q u ee t c i ta d o p t t h em o d eo fm a n m a c h i n ec o n v e r s a t i o n ,b yc o n v e r tt h ed a t at ot h ep i c t u r ei n3 ds c e n e ,w e c a ne a s i l yf i n dt h er u l e ,a n dt h e nm a k et h es c i e n t i f i cd e c i s i o n t h i sp a p e rf i r s t l yi n t r o d u c et h ec o n c e p to fd a t av i s u a l i z a t i o nt oe d u c a t i o n a li n f o r m a t i o n m a n a g e m e n ts y s t e m b yr e d e v e l o p i n gt h es o f t w a r e s o l i d w o r k si nv c + + a n da d o p t i n g p a r a m e t e r i z e dm o l d i n gm e a n so fm a c h i n ed e s i g n ,d i s t i l l t h e3 di n f o r m a t i o nf r o mt h e e d u c a t i o n a la d m i n i s t r a t i o nd a t a b a s et of o r mt h ep a r a m e t e rt h a tt h es k e t c hd r a ww i t h t h e n a d dn e wm e n ui nt h es o l i d w o r k ss y s t e me n v i r o n m e n t ,a n dm a k eu s eo fi t sm a t u r e3 d s k e t c hd r a wa n dm a n i p u l a t ef u n c t i o n ,f o u n da3 ds c e n et oe s t a b l i s hm a n i f e s t a t i o no ft h e s k e t c h t h es o f t w a r ea l s oh a v et h ef u n c t i o no f2 dd i s p l a y i n ga n ds e a r c h e sf o rt h ed a t a b a s e i n f o r m a t i o n ,b yw o r k i n gc o n s o n a n c e ,c o m p l e t et h ea s s i s t a n tm a n a g e m e n to f t h ee d u c a t i o n a l a d m i n i s t r a t i o nd a t a b a s e t h ep a p e ra t t e m p t st ou s ea d ot e c h n i q u et oa c c e s sd a t a b a s ea n d c o n n e c tw i t hs o l i d w o r k sb yc o mp r o g r a m m e dm e t h o d ,a n di n t r o d u c e st h et e c h n i q u eo f d i s t i l l i n g3 di n f o r m a t i o nf r o md a t a b a s ea n dr e d e v e l o ps o l i d w o r k si nd e t a i l ,h a v eg r e a t m e a n i n gi nt h e o r ya n di nr e a l i t y k e yw o r d s :d a t av i s u a l i z a t i o n ,r e d e v e l o p m e n t ,p a r a m e t e r i z e d ,d a t a b a s e 图2 1 图2 2 图3 1 图3 2 图3 3 图3 4 图3 5 图4 1 图4 2 图4 3 图4 4 图5 1 图5 2 图5 3 图5 4 图5 5 图5 6 图5 7 图6 1 图6 2 图6 3 图6 4 图6 5 图6 6 图6 7 插图清单 三维可视化模型4 教务信息辅助系统模块结构图9 教务信息辅助管理系统数据流图1 4 教务信息辅助管理系统程序流程图1 5 a d o 应用的结构1 6 打开数据库文件2 2 教务数据库查询界面2 4 教务信息数据库2 5 数据库提取界面2 6 周数据提取流程图3 1 节信息的数据提取流程一3 2 参数化建模流程3 8 s o l i d w o r k sa p l 对象梗概3 7 教务辅助管理系统主菜单4 0 可视化界面菜单4 0 三维可视化演示4 2 按某节课查看三维模型4 4 按某周查看三维模型4 4 西二1 0 l 第9 周上课信息二维展示5 1 西二1 0 1 所有星期五上课信息二维展示5 1 西二1 0 1 所有第三节课上课信息二维展示5 2 西二5 0 3 所有旱期五上课信息二维展示5 3 于立萍老师所有星期一上课信息二维展示5 4 安装程序制作向导 安装程序运行界面 5 5 5 5 表2 - 1 表3 1 表3 - 2 表4 - 1 表4 1 2 表牟3 表5 1 表5 2 表5 _ 3 表6 - 1 表6 - 2 表6 - 3 课程数据表 表格清单 a d o 的光标类型 a d o 的锁定类型 每条数据的数据格式 周信息的字符串格式 节次字符串的格式 s o l i d w o r k s 中的特征分类 a d d m e n u l t e m 函数参数说明 周坐标方向二维数据表 5 1 7 1 7 3 0 3 0 3 2 西二1 0 1 的上课信息原始数据 西二5 0 3 的上课信息原始数据 于立萍老师的上课信息原始数据 4 0 4 7 5 0 5 2 5 3 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表或撰写过的研究成果,也不包含为获得合肥工、眦大学或 其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所 做的任何贡献均己在论文中作了明确的说明并表示谢意。 学位论文作者签名:翮乞研 签字日期: 面年7 月乒r 学位论文版权使用授权书 本学位论文作者完全了解盒月b 王、业太堂有关保留、使用学位沦文的规 定,有权保留并向国家有关部门或机构送交论义的复印件和磁盘,允许论文被 查阅和借阅。本人授权佥目巴兰些盍堂可以将学位论文的全部或部分内容编 入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学 位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名 孙金新 导师签名 签字日期: o 年7 月妒日 签字同期: 学位论文作者毕业后去向: 3 :- 淘 9 五也巷确限乇司 i 作单位: 电话: 通讯地址: 邮编: 莎6 年尹甲日 妒吾犰 致谢 本论文是在尊敬的导师王卫荣老师的指导下完成的,三年以来,王老师渊 博的知识严谨的治学态度和高度的责任心时时影响和激励着我,使我受益匪 浅。无论是在治学和做人上,王老师都给了我无微不至的关怀和耐心细致的指 导。三年的学习经历将成为我人生道路上最为宝贵的财富之一,在此我要向王 老师致以最真诚的感谢和最崇高的敬意。 于卫荣老师对我研究生阶段的学习和论文撰写工作自始至终都倾注了大量 的心血,对我论文的选题、修改直至定稿部给予了精心的指导。在学业和生活 上,王老师始终以一个长者和朋友的双重身份来哭心帮助着我,令我受益非 浅。 而且,机械设计教研室的柯尊忠教授、高荣慧、黄康、1 曙光、赵小勇、 翟华、胡兆稳、董迎晖等各位老师都给予我很大的帮助。在此,一并向他们表 示诚挚的感谢和崇高的敬意! 在论文撰写期间,张r 丌、许志伟、宋率展、倪国华、金鹏、齐芬、李浩等 同学以及室友姜晓林、李文彪都给了我无私的帮助和支持,在此向他们表示衷 心的感谢! 最后,还要特别感谢我的父母和亲人。我在外地读研期间,无论在学习还 是生活中,他们都给了我最坚定的支持和鼓励,使我能够安心顺利地完成学 、i k ! 作者:孙金升 2 0 0 6 年4 月 第一章绪论 1 1 引言“ 高校教务管理工作是高等教育中的一个极为重要的环节,是整个院校管理 的核心与基础。随着高校办学规模的扩大和计算机及通讯技术的飞速发展,高 等教育对教务管理工作提出了更高的要求。如何在有限的教学资源下更大地提 高资源的利用率,运用现代化手段进行科学管理,已经成为整个教育系统亟待 解决的课题之一。数据可视化技术的引进正是适应现代化管理的需要,以期望 减轻劳动强度,改善数据繁多,信息冗乱的管理环境,增加教学资源的利用率。 1 2 数据可视化技术简介及发展现状”4 ” 为了在教务信息数据库中引入数据可视化技术,有必要对数据可视化的概 念做简单介绍。至今对于数据可视化,学术界还没有一个严格的定义,一般可 以认为数据可视化指的是运片j 计算机图形学和图像处理技术,将数据转换为图 形或图像在屏幕上显示出来,并进行交互处理的理沦、方法和技术。它通常满 足下面三个特点:交互性,多维性和可视性,也可以把这种技术称之为数据体 现化技术。 按照数据之间存在的规律,数据可视化分为连续数据的可视化和离散数据 的可视化。连续数据的可视化一般可表现为连续的曲线和图形,从中可看出数 据存在的规律。离散数据可视化的对象是大量离散的数据,是为了获得对数据 的理解与洞察,从中了解数据的整体布局。 数据可视化的应用范围非常广泛,在医学,地球科学,有限元分析,气象 场,数据库信息查询等许多方面都有广泛的应用前景。崮外很多研究机构及公 司已经在数据可视化领域取得了大量成果,我国数据可视化的研究开始于9 0 年代初,由于数据叮视化对技术和硬件要求都比较高,因此数据可视化开始都 是在国家级研究中心、高水平的大学和大公司中进行研究和应用,但是商业化 的软件很少,和国外先进水平还有相当的差距。 教务信息数据库数据的t _ 视化,是属于三维离散数据可视化,可视化r 作 主要分两步进行:数据库i 维信息的提取和二三维信息的可视化处理。信息的提 取是u 视化工作的前提和基础,可视化是信息提取的后续和加工。对数据库数 据的可视化,通常有两种方法:一种是完全自己编写程序和图彤环境,实现数 据的可视化;另一种是借助成熟的三维软件,通过对三维软件的二次开发实现 数据的可视化。前一种方法界面统一,风格比较个性化,程序运行速度较快, 但工作量巨大,要求作者具有很高的编程水半和专、l k 的图形处理方面的知识, 单靠一两个人的力量不可能实现。而后者需要作者有一定的编程水甲就可以了, 但需要掌握要开发的三维软件的a p i 对象库模型以及其中的函数和属性。通常 这样的函数是成百上千的,而开发资料缺乏,并且以外文资料为主,同时需要 灵活解决编程中遇到的一些不常见的问题。 1 3 课题来源、研究内容及意义 本课题是作为安徽省重点教改研究项日的一个子课题,项目名称为:学分 制条件下高等院校数字化、个性化新型教务管理模式的探索、研究与实践,项 目编号为2 0 0 5 0 0 5 ,主要研究可视化技术在教务信息数据库中的应用。 课题首次将数据可视化的概念引入到教务信息管理系统中。教学计划管理 是高校教务管理系统中的重要组成部分。长期以来,由于教务信息数据库数据 庞大,总共大约有两万五千条记录,数据格式多种多样,并且主要用字符串表 示,就使得教学计划制定劳动强度大、工作效率低、重复性劳动多,工作环境 容易使人疲劳。随着高等教育事j l k 的发展和教学改革的深入,学校办学规模日 益扩大,教学计划管理就更显得繁琐和复杂,教学资源也显得臼益紧缺。传统 教学计划管理的方法、手段以及工作效率,有碍于教学管理水平的进一步提高。 将数据可视化技术应用在教务信息数据库,实现管理手段现代化,就成为解决 问题的思想出路。 在教务管理中,可以从大量复杂的教务信息中按周,天,节次提取i 维信 息,从而在建立查询时,把查询得到的教学资源使用情况在白定义的三维场景 中表现出来。通过缩放、旋转、切片、动画等功能的实现,使杳询环境赏心悦 目,查询结果方便直观,表现力强,并能通过人机交瓦,实现实时、动态地查 询。这样,管理人员通过查询的结果,配合二维查询结果模型,可以迅速直观 地了解教学资源的使用情况,为教学计划的安排制定科学合理的依据和决策, 增加教学资源的利用率。所以,课题期望编写一个教务信息辅助管理系统,实 现上面的功能,满足教务管理的需求。 1 4 论文结构安排 本文共分六章对所做的研究进行介绍。 第- 章从计算机技术的发展对现代教务管理提出的挑战入手,介绍了三维 离敞数据可视化的概念、意义及发展现状。在分析了研究的必要性和实用性之 后,给出了本文研究的土要内容及意义。 第一二章在建盘= 维可视化模型的基础卜,运用软件工程的方法和理论,对 要编写的教务信息辅助管理系统进行了各种需求分析和评价,论述了所确立方 案的可行性。通过对程序编写用到的工具和技术方法的介绍,通过对比,可以 看出选择这些工具的好处和优势,力求寻求最经济可行的技术路线。 第三章主要编写系统中的数据库导入和数据库查询两个模块。首先对 v c + + 进行a d o 数据库编程的技术和方法,进行了详细介绍。通过介绍的方法 和理沦,编写相关代码,实现教务信息库的导入和查询功能。 第四章分析了教务信息数据库中的数据信息的特点,制定了数据提取的策 略。对数据提取中用到的函数进行了简单介绍,最后详细给出了数据库数据提 取的详细过程。 第五章针对前面数据提取后的结果,通过对s o l i d w o r k s 的二次开发,建 立了和s o l i d w o r k s 系统环境的连接。在s o l i d w o r k s 环境中,挂接加载新的菜单, 建立三维模型和场景,同时和用户进行交互,达到数据可视化的目的。最后还 对二维可视化和动画演示进行了阐述。 第六章对软件的使用作山了说明,并通过选取典型的测试用例,对软件进 行了系统测试。 第七章全文总结和工作展望。对全文进行总结,指出作者所作的主要工作 和仍存在的问题。针对这些问题和缺陷,对以后的工作提出了展望。 第二章教务信息辅助管理系统总体设计 本章建直了教务信息三维数据可视化模型,并制定了可视化方案。通过建 立软件丌发计划,运用软件工程的思想,进彳j :需求分析和总体设计,进一步沦 证方案的可实施性,最后确定初步方案。通过选择编程语言,数据访问方式和 第三方三维软件,寻求最可行的技术路线。 2 1 教务信息三维可视化方案制定 2 1 1 三维数据可视化模型设想”7 1 三维显示数据库需要使数据库的数据以三维的方式表示,即用三个坐标轴 表示数据,数据有三个向量,分别赋予三个单位,从而组成三个坐标轴来对应 一个数据的结构,便可以使用下罔的三维空间来显示数据库。 h2 1 三维可视化模1 q 在建寺的用户坐标系中,所有的数据足按周次,星期,节次为坐标轴,依 次排列。此数据结果所具有的特点是= 个向量来决定个数掘,教务信息数据 4 库包含了全部的教务信息,从中可以提取对制定教学计划感兴趣的资源信息, 如学生信息,教室信息,教师信息等,这些信息都和教学时间一一对应,即对 于某个教室,在某周、某天、某节课珂用可不用。如果不可用,说明教室在该 时间已经被占用,当该教室在整学期中的使用情况都表示在上述坐标模型中, 用户就可以很直观地根据三维体的排列,了解该教室的使用情况以及是否还有 很多空闲,从而町以决定是否再在该教室安排课程。 2 1 2 教务信息可视化方案制定 在教务信息数据库中,所有的教学资源都可以看作是时间的函数,即随着 时- u j 的变化,教学资源的使用情况也跟着变化。如教寰资源,某个教室在不同 的一天,使用情况是不同的。 现在,按照学校教学习惯,将时间分为三个变量,即教学周f 下文统一用“周” 表示) 、星期几( 下文统一用“星划”表示) 及第几节课( 下文统一用“节”表示) 。 而在某一个教室中,这三个变量所对应的数据就是在这个时间是否有谋。那么, 用教室作为一个大的单位,在某个教室中,查询某节课是否被占用,就需要调 用这三个变量,查询是否有课了。 用表格表示如下: 表2 一l 课程数据表 周星期节教室 32 b西二20l 3 26西二2 0i d 3 1 东楼215 这样就可以通过输入某个教室号,来查找此教室在三个变量上的值,即是 否有课。凡是输入到此表的数据均代表有课,所以在查询中,如果奄询有某条 记录就表示有课,如果没有记录,就是没有课。如( 表2 1 、中,有两条记录为第 3 周,星期2 的第5 、6 节在教室两二2 0 1 ,这样,在查找教室西二2 0 1 时,查 到此条汜录,代表有课。如果没有提及到的时间段,则代表没有课。 这样,就构成了一个三维场景,而教学资源,如教室、教师、学牛等在 个学期里( 2 5 周,每周7 天,每天1 1 节课) 的使用或工作状况,就可以存这个三 维场景中眼看出来。至此,教务信息二维i - j _ 视化方案初步确定。 2 2 软件需求分析”,” 根据软件工程的思想方法,首先对所写软件进行需求分析,具体包括以下 几个方面的内容。 2 2 1 功能需求 通过对教务管理工作的考察和实际需要,具体欲实现下面几个功能: 数据库的读取和加载功能通过增加数据库的导入模块,方便迅速地定位教 务信息数据库。取得数据库的接口指针,为下面数据库信息的提取和可视化处 理,提供前提和必要准备。当再次使用数据库中数据时,通过该指针,然后建 立记录集对象即可。 数据库查询功能此功能主要是为了方便用户查看数据源,软件给出了有效 的几种查询条件,用户通过输入检索关键字,可以迅速找出要查看的数据库记 录,获得需要的数据库信息,方便对数据库的管理。 教务信息数据库三维信息的提取数据库中字段格式复杂多样,通过分类, 分解,逐步提取字段数据,获得对应可视化模型的三维数组,为可视化做出准 备。 教室信息三维和二维可视化建立三维可视化坐标模型,把提取的教室信息 按周,天,节在三维场景中表现出来。并可进行放大和缩小显示、旋转、平移、 着色、等功能,力争增强三维表现力,完成三维数据的可视化显示。通过对三 维模型的切片,可以铁得教务数据库的局部信息,增强用户对数据的理解力。 教师信息三维和二维可视化把提取的教师资源的三维信息在可视化场景 中表现卅来。二维切片和动画功能辛要是为多角度观察和提高表现力。 2 2 2 性能需求 性能需求是指软件的性能指标,包括存储容量限制、运行时问限制、安全 保密性等。软件为实时查询系统,并且处理数据量非常大,对运行时问的要求 尤其重要。期望通过程序结构设计,在满足软件功能基础上,使系统能比较稳 定运行。 2 2 3 环境需求 环境需求是指软件运行时所处环境的要求,例如:存硬件方面采用什么机 型、还需要什么外部设备、数据通信接口等;住软件方面,采用什么支持软什f 指 操作系统、网络软件、数据库管理系统等) :在使用方面需要操作人员具备怎样 的技术条件等。木软件是以s o l i d w o r k s 2 0 0 4 为前台,以v i s u a lc + + 6 0 为后台 开发l 具开发而成。所以要求工作人员能对s o l i d w o r k s 2 0 0 4 软件的操作有简单 认识。 2 2 4 其他需求 其他方而包括软件的可靠性需求、安全保密性需求、用户界面需求、资源 使用需求、软件的成本消耗与开发进度需求,以及预先估计以后系统可能达到 的目标等。具体来说,在可靠性和安全保密性上,要尽量做到性能稳定、安全 可靠:在用户界面方面,应该以与s o l i d w o r k s 2 0 0 4 原有界面协调一致,美观简 洁为目标;在成本消耗与开发进度方面,采用模块化设计丌发的方法,分为儿 个相对独立的功能模块,缩短开发周期,节省资源消耗;最后开发出的系统应 该达到与s o l i d w o r k s 完美结合,方便、实用的目标。 2 3 教务信息可视化系统总体设计 2 3 1 总体设计依据 所渭总体设计,就是在需求分析的基础上,提出能够实现预定目标的各种 方案,并从这些方案中选出最合适的一种。根据软件工程的基本思想,总结前 人开发软件的基本经验,应该遵循以下基本准则: ( 1 ) 尽力提高模块独立性。对软件的初步结构进行评价,通过模块的分解或 合并,提高模块独立性。对各个模块的处理功能迸行分析,将公共的处理部分 从多个模块中提取出来,生成一个单独的的模块,供这些模块调用。对于耦合 性很强的模块,可以通过模块的合并以减少信息的传递以及对全局数据的引用, 并且降低接口的复杂程度。 ( 2 ) 选择合适的模块复杂度。模块的规模应该根据具体情况确定。根据经验, 模块的规模最好以一页纸( 高级语言5 0 行左右) 为宜,这种规模易于阅读和理解。 但也不能一概而论,还应根据具体情况而定。 ( 3 ) 模块的深度、宽度、崩入和扇出应该适当。深度是指软件结构中模块的 层数。如果层数过多,则应该考虑是否有某些模块太简单。宽度是结构中同一 层次上的模块总数的最大值。一般来说,宽度越大,系统结构越复杂。扇出是 指直接调用的下级模块数。扇出过大说明模块结构过于复杂,其所控制的下级 模块数太多。经验表明,平均扇出的最佳值应该是3 到4 。扇入是指一个模块 有多少个上级模块直接渊用它。扇入越大,晓明上层模块中共享该模块的数目 越多,这是有好处的。理想的软件结构应该是,顶层扇出高,中层扇出较少, 下层调用公共模块。 f 4 ) 模块的作用范围应该在控制范围之内。模块的控制范削是指该模块本身 和它的所有直接或间接的下属模块的集合;模块的作用范围是指模块中一个判 定的作用范围,是从功能方而束考虑的。 ( 5 ) 降低模块接l | 的复杂度。经验表明,接口的复杂度是软件发生错误的一 个重要原因。设计单入l j 单出l 】的模块,避免“病态连接”。“病态连接”是指 一个模块从中部进入或访问另外一个模块,要尽量避免这种连接。 2 3 2 系统总体设计 从模块化的设讣思想出发,对软件的结构进行总体设计。模块化是人们处 理复杂问题的一种常用方法,把一个复杂的问题分解为几个相对简单的问题, 有利于减小问题的复杂度,使原本复杂地任务更容易实施执行,软件结构清晰, 减小错误耦合度,便于程序地调试和维护。在软件设计中,这种思想也有广泛 的应用,模块化的概念己被大家广泛接受,几乎所有的软件结构设计技术都是 以模块化的思想为基础。对于面向对象的软件设计方法,从实质卜讲,软件的 结构设计就是确定各个模块之间的调用关系。 从以上需求分析结合软件的主要功能出发,可以把软件分为以下几个功能 模块,分别进行开发设计。综合考虑教务信息辅助管理系统的实际需求,把软 件程序分为以下几个功能模块: ( 1 ) 添加菜单模块添加系统的菜单,完成划其他功能模块的调用。 ( 2 ) 数据库的导入模块通过系统打丌文件通用对话框,迅速定位教务信息 数据库。为下面数据库信息的提取和可视化处理,提供前提和必要准备。 ( 3 ) 数据库查询模块增加对教务信息数据库数据源的查询功能,并通过设 定检索条件,轻松完成对数据库的记录查看。 ( 4 ) 三维信息提取模块通过对教务信息数据库中记录形式的分类总结,对 导入的数据库信息进行依次进行、己录提取,周、天、节三维数据信息的提取, 为数据的可视化提供最终准备。 ( 5 ) 教窜信息三维可视化模块建立三维可视化坐标模型,把提取的教室信 息按周,天,节在三维场景中表现出来。并可进行放大和缩小显示,旋转、平 移、着色、等功能,完成二维数据的可视化显示。 ( 6 ) 教师信息三维可视化模块把提取的教师资源的i 维信息在可视化场景 中表现出来。 ( 7 ) 维切片和动画展现模块对提取的资源信息进行二维展现,可以更清 晰,详细地观察局部信息,再结合i 维总体信息展示,做出科学、合理的决策。 根据初步规划,使用y o u r d o n 提出的结构图法。”3 ,表示软件的可行结构。 如图2 2 所示。图框中的内容表示各个模块的名称,箭头的指向表示它们问的 调用关系。在结构图中,菜币模块直接调用数据库导入模块,可视化处理模块 和数据库管理模块,可视化处理又细分为三维可视化模块,二维切片展示模块 和动画展现模块。软件为所有模块编写了子函数,通过函数调用,组合在 s o l i d w o r k s 环境f ,以动态链接库的形式,形成s o l i d w o r k s 系统的插件,在系 统中挂接菜单,调用用户各功能界面。 添加菜单模块 、 i 数据库导入模块数据提取模块数据库查询模块 二! 臣巫e 墨臣固 图2 2 教务信息辅助系统模块结构图 2 4 软件开发语言和技术方法的选择 2 4 1 软件开发语言的选择“” 作为数据库开发的前端工具或开发环境有许多种,用得比较多的有d e l p h i 、 v i s u a lb a s i c 和c + + b u f f d 等。对v i s u a lc + + 来说,从v c + + 4 0 开始就对数据 库开发提供了较好的开发环境,在v c + + 6 0 中,对数据库的访问技术更成熟、 功能更强大。借助于v c + + 可以轻松地开发出功能强、速度快、应用广并且占 用资源少的应用样序。 另外,v i s u a lc + + 提供了多种多样的数据库访问技术一一o d b c a p i 、m f c o d b c 、d a o 、o l ed b 、a d o 等。这些技术各有自己的特点,它们提供了简 单、灵活、访问速度快、可扩展性好的开发技术。同时,这也是与其他技术相 比v c + + 开发数据库软件的优势所在。 f 1 ) 简单性 由于v i s u a lc + + 中提供了m f c 类、模板类以及a p p w i z a r d 和c l a s s w i z a r d 等一系列“向导”,用于产生应用程序这一点会大大简化应用程序的开发。如果 借助于某些控件,丌发者甚至可以无需编写代码就可以产牛一个完整的数据库 应用。 ( 2 ) 功能强大、编程灵活 v i s u a lc + 十提供了m f c ( 微软基础类) 库,可以缩短开发时间,使代码更简 洁,在不降低编程自南度和灵活性的前提下提供支持,并提供了对易于编程的 削户界面元素和技术( 如a c t i v e x 和i n t e r n e t 编程) 的方便访问。v i s u a lc + + 完全 支持面向对象软件开发方法,用户可以根据需要,编写定义自己的类和成员函 数,虽然有时代码会比v b 等快速编程t 具多一些,但功能和灵活性是其他语 言不能比拟的。 f 3 ) 访问速度快 速度快是v i s u a lc + + 的最主要的优势,这主要是由于v i s u a lc + + 在代码生 成时比较彻底,执行效率虽然没有汇编语言高,但比其他高级语言却高很多。 在数据库编程中,为了解决o d b c 开发的数据库应用程序访问数据库的速度慢 的问题,v i s u a lc + + 提供了新的访问技术一一o l e d b 和a d o 。o l e d b 和a d o 都是基于c o m 接口的技术,使用这种技术可以直接对数据库的驱动程序进行 访问,这大大提高了访问速度。 ( 4 1 可扩展性 v i s u a lc + + 提供了o l e 技术和a c t i v e x 技术,这种技术可以增强应用程序 的能力。使用o l e 技术和a c t i v e x 技术可以使开发者利用v i s u a lc + + 中提供的 各种组件、控件以及第三方开发者提供的组件来创建自己的程序,从而实现应 用程序的组件化。使用这种技术可以使应用程序具有良好的可扩展性。 ( 5 ) 访问不同种类数据源 传统的o d b c 技术只能访问关系型数据库,在v i s u a lc + + 中不仅可以访问 关系型数据库,还可以访问非关系型数据库。 基于上面的介绍,可以看到v i s u a lc + + 在编写数据库程序时有较大优势, 可以满足教务辅助管理系统的开发需要。 2 4 2 数据库访问方法的选择”“”1 v i s u a lc + + 提供了丰富的数据库访问方法和接口,主要包括下面这些数据 库访问接口。 o d b c ( o p e nd a t a b a s ec o n n e c t i v i t y ) m f c o d b c ( m i c r o s o f tf o u n d a t i o nc l a s so d b c 、 d a o ( d a t aa c c e s so b j e c t ) o l e d b ( o b j e c tl i n ka n de m b e d d i n gd a t a b a s e 、 a d o ( a c t i v e xd a t ao b j e c t s ) 这些技术在访问数据库时无沦是易用程度还是运行性能都各有千秋,比较 如下: ( 1 ) o d b c o d b c 是为客户应用程序访问关系数据库时提供的一个标准的接口,对于 不同的数据库,o d b c 提供了一套统一的a p l ,使应用程序可以应用所提供的 a p i 来访问任何提供了o d b c 驱动程序的数据库。而且,o d b c 已经成为一种 标准,所以,月前几乎所有的关系数据库都提供了o d b c 驱动程序,这使o d b c 的应用非常广泛,基本上可用丁所有的关系数据库。 优。i 足,由于o d b c 是一种底层的访技术,因此,o d b c a p i 可以使客 户应用程序能够从底层没置和控制数据库,完成一些高层数据库技术无法完成 的功能。但不足之处是由于o d b c 只能用于关系数据库,使得利用o d b c 很难 访问对象数据库及其他非灭系数据库。另外,直接使用o d b ca p i 编写应用程 1 0 序要编制大量代码,增加了程序编制的复杂程度,所以o d b c 应用并不是很广。 ( 2 ) m f c o d b c 由于直接使用o d b ca p i 编写应用程序要编制大量代码,在v i s u a lc + + 中 提供了m f co d b c 类,封装了o d b c a p i ,这使得利用m f c 来创建o d b c 的 应用程序非常简便。所以通过m f co d b c 类可以简化程序设计。不足之处是 该技术没有键供对数据库的底层控制,即无法对数据源进行底层操作。 ( 3 ) d a o d a o 提供了一种通过程序代码创建和操纵数据库的机制。多个d a o 构成 一个体系结构,在这个结构中,各个d a o 对象协向工作。m f cd a o 是微软提 供的用于访问m i c r o s o f tj e t 数据库文件( s m d b ) 的强有力的数据库开发工具,它 通过d a o 的封装,向程序员提供了丰富的操作数据库的手段。 该接口的最大特点是对m i c r o s o f tj e t 数据库的操作很方便,而且是操作j e t 数据库时性能最好的技术接口之一。 ( 4 ) o l e d b o l ed b 是v i s u a lc + + 丌发数据库应用中提供的新技术,它基于c o m 接口。 因此,o l ed b 对所有的文件系统包括关系数据库和非关系数据库都提供了统 一的接口:这些特性使得o l e d b 技术比传统的数据库访问技术更加优越。直 接使用o l ed b 来设计数据库应用程序程序需要大量的代码,与o d b c 技术相 似,o l ed b 属于数据库访问技术中的底层接口。 ( 5 ) a d o a d o 技术是基于o l ed b 的访问接口,它是v i s u a lc + + 中提供的面向对象 的o l ed b 技术。继承了o l ed b 技术的优点,并且a d o 对o l ed b 的接口 作了封装,定义了a d o 对象,使程序丌发得到简化,a d o 技术属于数据库访 问的高层接口。具体地讲,用a d o 访问数据库有以下优点。 第,易于使用。a d o 是高层数据库访问技术,所以相对于o d b c 来说, 具有面向对象的特点。同时,在a d o 的对象结构中,对象弓对象之间的层次 结构不是非常明显,这会给编写数据库程序带来很多便利。 第二,可以访问多种数据源。与o l ed b 一样,a d o 也儿乎可以访问所有 关系数据源和非关系数据源,这使得应用程序具有很好的通用性和灵活性。 第三,访问数据源效率高,a d o 是以o l ed b 技术为基础的,所以它继 承了o l ed b 访问数据源的高效性。 第四,方便的w e b 应用。a d o 以a c t i v e x 控件的形式出现,这可以大大 方便w e b 麻用程序的编制。 第五,技术编程接口丰富,可以在多种编程语言中使用。 通过比较可以发现,o d b c 和o l ed b 均属于底层访问方法,用起来不方 便。d a o 性能不均衡,在数掘库是m i c r o s o f tj e t 以外时,执行效率就得不到保 证。m f co d b c 和a d o 均属于数据库高层访问接口,编码方便。但o d b c 编 程前需要预先做一些额外的工作,即在o d b c 管理棵序中定义用户自己的数据 源,并且如果在编程过程中,出现意外故障导致数据源丢失,程序将不再顺利 运行。所以,从各方面考虑,a d o 数据库访问方法无疑是一个较好的选择。 2 。4 。3 数据可视化三维软件的选择” 如果完全通过自己编程实现三维数据可视化的功能,将是一件难度特别火 的事情。这其中涉及到了几乎计算机领域的所有知识,包括图形的绘制,图形 的着色和编辑,图形的旋转和缩放算法,三维图形生成和存储结构,图形的拾 取,光源的设置等众多很复杂和前沿的知识和技术,要求作者对计算机图形学、 操作系统、数据结构、人工智能和低级语言等都比较精通,并且要有足够的时 间和精力,单靠一个人的力量远远不够。因此,r 可以通过一些成熟的三维图形 系统,通过对其二次开发,实现系统需要的功能,达到数据可视化的要求。 s o l i d w o r k s 软件是美围s o l i d w o r k

温馨提示

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

评论

0/150

提交评论