(计算机应用技术专业论文)基于异构数据库的分布式教务管理系统设计.pdf_第1页
(计算机应用技术专业论文)基于异构数据库的分布式教务管理系统设计.pdf_第2页
(计算机应用技术专业论文)基于异构数据库的分布式教务管理系统设计.pdf_第3页
(计算机应用技术专业论文)基于异构数据库的分布式教务管理系统设计.pdf_第4页
(计算机应用技术专业论文)基于异构数据库的分布式教务管理系统设计.pdf_第5页
已阅读5页,还剩47页未读 继续免费阅读

(计算机应用技术专业论文)基于异构数据库的分布式教务管理系统设计.pdf.pdf 免费下载

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

文档简介

摘要 随着教育体制的改革,提高全民素质,高校招生名额每年以3 0 的速度递增。而各 个高校在原有的硬件,软件条件下,学生人数都不同程度的按比例增加,为了保证教 学质量,最大程度的发挥软硬件作用,有必要提供一个开放的、分布式的、支持决策 的高校教务管理系统。本文通过对教务管理系统的分析,结合教务管理系统的特点, 目的是构架一个通用的、开放的、分布式的、提供决策的高校教务管理系统。其基本 内容包括以下几个方面:1 很多学校各部门采用的数据库管理系统和数据库结构都存 在不同程度的差异,为了保护原有数据,提供异构数据库之间的数据转换接口:2 考虑 到部分高校两地办学和教务管理人员的类型以及分布的物理位置,数据库方面采用分 布式数据库技术:3 软件体系方面采用多层的应用程序结构( m u l t i t i e r ) 和扩展的b s 结构。 关键词:教务管理异构数据转换分布式数据库多层架构 a b s t r a c t a l o n g w i t he d u c a t i o nc o n s t i t u t i o n a lr e f 0 1 - m ,t oe n h a n c ea l lt h ep e o p l ep r e d i s p o s i t i o n , q u o t ao fr e c r u i ts t u d e n t si n c r e a s eb y3 0 p a c ey e a r l y 。e a c hc o l l e g eo ru n i v e r s i t ys t i l lw o r k o no l dh a r d w a r ea n ds o f t w a r e ,b u tq u a n t i t yo fs t u d e n ti n c r e a s ew i t hv a r yd e g r e ep r o p o r t i o n 。 f o re n s u r i n gq u a l i t yo ft e a c h i n g ,a tu t m o s tt oe x e r ta f f e c to fh a r d w a r e s o f t w a r e ,a sm u c ha s m u s to f f e ra l l o p e n 、d i s t r i b u t e d a n dd e c i s i o ns u s t a i n e de d u c a t i o n a la d m i n i s t r a t i o n s y s t e m ( e a s ) 。o v e rp a s s i n ga b o v ea n a l y s i sa n dl i n k u p i n gt h ec h a r a c t e r i s t i co f e d u c a t i o n a l a d m i n i s t r a t i o n ,t h ed i s s e r t a t i o nd e s i g nas o f t w a r ef r a m et oc o m p o n e n tag e n e r a l 、o p e n 、 d i s t i l b u t e da n da s s i s t a n tt om a k eas t r a t e g i cd e c i s i o ne d u c a t i o n a la d m i n i s t r a t i o ns y s t e mo f c o l l e g eo ru n i v e r s i t y 。i t sb a s i cc o n t e n ti n c l u d e : 1 m a n ys c h o o l sa n dd e p a r t m e n t so ft h e d a t a b a s em a n a g e m e n ts y s t e mu s i n gt h ed a t a b a s es t r u c t u r ea n dt h e r ea r ev a r y i n gd e g r e e so f d i f f e r e n c e s ,i no r d e rt op r o t e c tt h eo r i g i n a ld a t ab e t w e e nh e t e r o g e n e o u sd a t a b a s e s t op r o v i d e d a t ac o n v e r s i o ni n t e r f a c e ;2 s o m ec o l l e g e sa n du n i v e r s i t i e s ,t a k i n gi n t oa c c o u n tb o t hs c h o o l a n da c a d e m i cm a n a g e m e n t ,a sw e l la st h ed i s t r i b u t i o no ft h et y p eo fp h y s i c a ll o c a t i o n , d a t a b a s ed i s t r i b u t e dd a t a b a s et e c h n o l o g y ;3 s o f t w a r es y s t e mu s i n gm u l t i l a y e rs t r u c t u r eo f t h ea p p l i c a t i o n ( m u l t i t i e r ) a n de x p a n s i o no f t h eb | ss t r u c t u r e k e yw o r d s :e d u c a t i o n a la d m i n i s t r a t i o nh e t e r o g e n e o u s d a t ac o n v e r s i o nd i s t r i b u t e d d a t a b a s e m u l t i - l a y e rs t r u c t u r e 长春理工大学硕士( 或博士) 学位论文原创性声明 本人郑重声明:所呈交的硕士( 或博士) 学位论文,填写论文题目是本 人在指导教师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用 的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的作品成果。对 本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全 意识到本声明的法律结果由本人承担。 作者签名:l 盟作者签名:左生鲨生巫年五月竺曰 长春理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“长春理工大学硕士、博士学位论文版 权使用规定 ,同意长春理工大学保留并向中国科学信息研究所、中国优秀博硕 士学位论文全文数据库和c n k i 系列数据库及其它国家有关部门或机构送交学 位论文的复印件和电子版,允许论文被查阅和借阅。本人授权长春理工大学可以 将本学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印 或扫描等复制手段保存和汇编学位论文。 作者签名:j 1 似 饼 导师签名:上 卫年上竺日 互年上月 第一章前言 1 1 分布式教务管理系统开发的意义和目的 1 1 1 教务管理系统开发的意义 教务管理是教学管理的一个重要而不可缺少的环节,它涉及到教学的各个方面, 它为教学的顺利进行提供保障,也是各教学管理部门的纽带。教务管理的主要功能: 硬件资源管理,如:教室,实验室等,怎样合理和充分地利用各类硬件资源。 软件资源管理,如教学模式,师资等,怎样改进教学模式和师资建设。 学生管理,怎样了解学生动向,加强学生教育。使学生德、智、体、美、劳全 面发展。 教学质量,专业设置管理,怎样评估教学质量和专业设置。为社会提供更多、 更好的人才,满足社会对不同人才的需求。 为了完成上述功能,就需要一个更完善的教务管理系统,充分的利用现有的软、 硬件资源,在保证教学质量的同时,更好的进行专业设置,满足社会的需求。 此外教务管理的好坏直接的影响教学质量的好坏,是培养高素质、高水平人才的 基本条件,更好的为社会服务,它关系到一个学校的存亡。 随着招生规模的不断扩大和教育体制改革的不断深入,教务管理日趋重要,它面 临更高的挑战,同时也为教务管理赋予新的含义,信息的共享,管理的科学性。让我 们必须重新理解教务管理的重要性。它不仅仅是教学环节的日常管理,而且是一个学 校战略目标制定的基本依据,也是学校和社会信息交流的主要平台。 1 1 2 教务管理系统设计目的 由于教务管理的重要性和特殊性,在充分体现学校的战略目标、发展方向的基础 上,教务管理系统设计目的有: 提高工作效率和减轻劳动强度; 提高信息处理速度和准确性; 提供新的处理功能和决策信息; 为教学、科研提供更方便的服务项目; 充分的、合理的利用学校现有的软硬件资源; 保证系统的可操性、可靠性、可扩展性等; 使更多的人参与到教务管理中,更好的发挥教务管理的功能。 1 2 教务管理研究的现状 随着教育体制的改革,提高全民素质,高校招生名额每年以3 0 的速度递增,各高 校的招生人数按不同程度的比例增加,在短短的几年中,各高校的在校学生人数已是 原来学生人数的1 2 倍,各个高校在原有的硬件,软件条件下,很难适应当前的办校 规模,有的高校为了扩大招生规模,采用两地办学的方法,给教务管理带来巨大的不 便,也为教务管理提出了更高的要求。为了保证教学质量,最大程度的发挥软硬件作 用,就必须提供一个开放的、智能的高校教务管理系统。 纵观现有的教务管理,管理效率低,许多管理工作还处在半人工处理阶段,虽然 有大批的教务软件的介入,但这些软件都存在不同程度的缺陷,主要有: 缺乏通用性,由于各高校的教务管理模式存在差异( 如学年制和学分制) ,大多 数高校不能完全使用,甚至不能使用,也不能满足各高校实际教务管理的要求。 缺乏系统性,多数高校都根据自身的实际情况购买或开发了一些局部软件( 如学 籍管理系统等) ,造成各类资源的共享性很差,如果各局部软件的开发采用不同的技术 实现,软件之间不能相互兼容,数据接口、数据格式不统一,通常只能采用报表的形 式人工参考,数据的冗余度大,数据的安全性、一致性得不到保障,再加上大量的重 复性建设,浪费大量了人力、物力、财力。 系统缺乏开放性,大多数教务软件采用的基于i n t r a n e t 的c s 模型n 1 ,不能把 教务管理信息有效发布到i n t e r n e t 上,提高教务管理的应用范围,如学生网上选课, 网上成绩查询,家长通过网络了解子女的在校表现,用人单位验证文凭的真伪等。 缺乏智能性,大多数教务管理软件只提供一般的查询和统计,不能为教学质量 的衡定,学科建设,专业设置等方面提供辅助决策功能,提高教务管理的科学性。 通过上面的介绍可以看到,随着教育体制的深入改革,教务管理面临着深刻而长 远的变化,尽管现有的教务管理系统软件在某些方面能简化工作人员的繁重工作,但 是还存在不少的缺陷。 1 3 论文主要研究内容及结构 随着我国政治经济制度的不断创新,教育制度也进行着不断地变革,各高等院校 的招生人数不断地逐年在增加,这就要求高等学府要摈弃以往的管理模式,借鉴国外 先进的管理经验,结合国内实际,创造出自己的一套管理模式,在这种环境下,先进 的教务管理系统软件应运而生,该软件的出现,提高了工作效率,节省了人力、财力。 为各高校步入先进学府的行列奠定了基础。 目前,国内关于教务管理系统软件有很多开发公司,都有着自己的一套开发经验, 但由于各高校的管理缺乏统一性,这就使高校内部存在着多种管理软件,且共享性、 兼容性都比较差,在此,本论文的主要通过对教务管理系统的分析,结合教务管理系 统的特点。通过软件体系的设计,目的是构架一个通用的、开放的、分布式的、提供 决策的高校教务管理系统。其基本技术包括:考虑到部分高校两地办学和教务管理 人员的类型以及分布的物理位置,数据库方面采用分布式数据库技术,软件体系方 面采用多层的应用程序结构( m u l t i - t i e r ) 和扩展的b s 结构。辅助决策方面采用多 2 维数据仓库,支持o l a p 和数据挖掘,本论文共分四章,各章节内容如下: 第一章:主要介绍分布式教务管理系统开发的意义和目的以及目前国内外研究的 状况,对论文结构进行阐述。 第二章:利用原有软硬件资源,解决好新旧平台之间的接口,保证共享数据库与 子系统之间、子系统与子系统之间的数据自动交换,从而达到节省投资、避免重复开 发、缩短开发周期、提高工作效率之目的。为了保护原有数据,数据转换就显得特别 重要。本章主要介绍了几种o r a c l e 与其他数据库管理系统之间的数据移植方法。 第三章:关于教务管理系统的软件设计,对系统的基本情况进行描述,论证实现 新系统目标的可行性;对教务管理系统设计的目标、思路和方法进行简要说明:本章 对建立系统模型的u m l 进行了简述,并详细阐述了系统设计的各个层面。 第四章:通过第三章的分析设计,本章着重解决系统如何实现,开发工具、平台 的选择,建立分布式数据库的原因及其实现等。 3 第二章异构数据库之间的数据转换 随着教育体制和数据库技术不断发展,教务管理系统也在不断的更新,在实际中, 不少学院在建立教务管理系统时,不仅自行开发了不少应用软件,而且还包括上级部 门下达的或购买了一批商业软件,这些软件应用于教务管理环节的各个部门,采用的 数据库管理系统和数据库结构都存在不同程度的差异。在开发过程中,就必须注意尽 量利用原有软硬件资源,解决好新旧平台之间的接口,保证共享数据库与子系统之间、 子系统与子系统之间的数据自动交换,从而达到节省投资、避免重复开发、缩短开发 周期、提高工作效率之目的。为了保护原有数据,数据转换就显得特别重要。由于我 采用的数据库管理系统是( o r a c l e ) 。下面主要介绍几种o r a c l e 与其他数据库管理系统 之间的数据移植方法: 2 1 使用其他数据库管理系统自带的im p o r t e x p o r t 工具 i m p o r t e x p o r t 工具可以方便的把数据移植到o r a c l e 。只需要通过定义o d b cf o r o r a c l e 作为目的源。这样的方法可以保证其他数据库管理系统的绝大部分数据移植到 o r a c l e 中去,但预先你必须在o r a c l e 建立u s e r 和相应的表空间。但是对其他数据库 管理系统( 如s q l 7 ) 中一些特殊的数据类型,如t e x t 、i m a g e 等,当一个表中有多于一 个t e x t 或i m a g e 的字段时,将出现错误,不能执行。这是需要进行类型转换,把t e x t 镜像为v a r c h a r 2 ( 4 0 0 0 ) 或者镜像为l o n gd a t at y p e ,但l o n gd a t at y p e 一个表里只 能有一个。该方法还有可能遇到字符集的问题,可以和下面的第3 种方法结合使用。 例:使用a c c e s s 的e x p o r t 工具将a c c e s s 数据导出到o r a c l e 数据库中实现步骤: ( 1 ) 打开m i c r o s o f ta c c e s s 2 0 0 0 ,修改要导出表中字段的名称中小写字母为大 写字母。因为在o r a c l e 中,所有对象的名称都是以大写字母保存的,所以,如果a c c e s s 的字段中含有小写字母,会出现无效列名错误。 ( 2 ) 确认o r a c l e 实例、t n sl i s t e n e r 服务都己启动成功( 参考t n s n a m e s o r a 文 件) ,配置o d b c :开始一 设置一 控制面板一 管理工具一 数据源( o d b c ) 一 添加一个系统 d s n :设置数据源名称( 自己设:j w g l x t ) ,服务名称( o r a c l e 主机字符串:j w g l x t ) ,用 户名称( o r a c l e 用户名:如t a n s a n ) 。 ( 3 ) 导出记录,在m i c r o s o f ta c e e s s 2 0 0 0 中,在要导出的表上单击鼠标右键一 导出一 保存类型为o d b cd a t a b a s e s 0 一 输入目标表的名称一 j s b ( 可以使用默认的相同 表名,但要注意改成大写,否则在o r a c l e 中操作此表时,需要用双引号括起表名) 。 ( 4 ) 选择o d b c 源( j w g l x t ) 一 确定一 输入t a n s a n 用户的密码( 1 2 3 4 5 6 ) 一 o k ( 5 ) 连接到s q l * p l u s 中,查看结果。 4 2 2 使用o r a ciem ig r a tio nw o r k b a n c h o r a c l em i g r a t i o nw o r k b a n c h ( o m w b ) 工具目前的版本是2 2 ,这个工具在o r a c l e9 i s e r v e r 中自带,也可以在h t t p :t e c h n e t o r a c l e c o m 免费下载。它是o r a c l e 提供 的一个代替s q i * l o a d e r 的工具,当然目前该工具仍然不能完全取代s q l * l o a d e r 。使用 o m w b ,只要定义了o d b cf o rm ss q l 7 或a c c e s s 或s y s b a s e ,就可以很方便的把t a b e l s 、 v i e w s 、t r i g e r 、p r o c e d u r e 、s h o r t n a p s 、u s e r s 等完全转到o r a c l e 中去,对于t e x t , 可以镜像为c l o b 类型,c l o b 类型可以在一个o r a c l et a b l e 里有多列。i m a g e 可以镜 像为b l o b 。但是遗憾的是o m w b 2 2 不支持中文c l o b ,数据m i g r a t e 到o r a c l e 后,都 变成了? ? ? ? ,但对o m w b 对数据流( 如i m a g e ,v i d e o ,s o u n d ) 的控制非常方便。 例如:把a c c e s s 表导入到o r a c l e 中,其步骤是: ( 1 ) 打开a c c e s s ,如果你使用的是a c c e s s 9 7 ,选取菜单文件打开路径为 o r a c l eh o m e o m w b m s a e e e s se x p o r t e r o m w b 9 7 m d e ,如果是a c c e s s 2 0 0 0 则打开 o r a c l e _ h o m e o m w b m s a e e e s s _ e x p o r t e r o m w b 2 0 0 0 m d e 。 ( 2 ) 填写需要导出的a c c e s s 的m d b 文件,以及转换的x m l 文件。 ( 3 ) 打开o r a c l em i g r a t i o nw o r k b a n c h 向导。你只需把第二步得到的x m l 文件 填入 ( 4 ) 修改转换类型即可。 2 3 使用o r a c l e 的s o l * l o a d e r 使用s q l * l o a d e r 是最有效的方法。可以使用各种方法把源数据导到一个外部分件 中。如使用m s s q l 7 带的b c p 工具,可以把那些特殊多t e x t 字段的t a b l e s 导出作为外 部文件。然后使用s q l * l o a d e r 在把这些数据导到o r a c l e 的一个临时表里,在对第2 中方法出现的? ? ? ? 字段进行u p d a t e 。 例:使用s q l * l o a d e r 实现d b a s e ,f o x b a s e ,f o x p r o 向o r a c l e 9 i 移植。实现步骤: ( 1 ) 从f o x p r o 中导出数据 打开v f p 的f i l e e x p o r t ,t y p e 选择d e l i m i t e dt e x t ,在t o 项中给出导出的数据 文件名,字段间以“, 区分开,f r o 项选择要导出的f o x p r o 数据库文件,并选择数 据文件存储位置。打开o p t i o n s ,根据需要设置s c o p e 、f o r 、w h i l e 和f i e l d s 。点击 0 k 进行导出。例如导出教师表的序号、姓名、性别、出生日期数据文件,保存为j s c t l 文件名。其内容如下: l , 白余量 ,“男”,0 4 1 6 1 9 6 4 2 。”李汉为”,“男”,7 3 ,“郭正林”,”男”,0 5 1 2 1 9 7 0 5 ( 2 ) 编辑数据文件为控制文件格式。 l o a dd a t a i n f i l e 宰 r e p l a c e i n t ot a b l eo r a js b f i e l d st e r m i n a t e db y ”。o p t i o n a l l ye n c l o s e d ” ( x h ,n a m e ,s e x ,b i r t hd a t e ( 2 0 ) “m m d d y y y y ”) b e g i n d a t a l ,”白余量护 ,“男,0 4 1 6 1 9 6 4 2 ,”李汉为 ,“男 , 3 , 郭正林 ,“男 ,0 5 1 2 1 9 7 0 其中,i n f i l e * 表示数据在控制文件后部,r e p l a c e 是数据装载方式,也可以是 i n s e r t 、a p p e n d 等。o r a j s b 是o r a c l e 数据库表名。( x h ,n a m e ,s e x ,b i r t hd a t e ( 2 0 ) “n u n d d y y y y “) 是o r a j s b 中的字段名,“m m d d y y y y ”是被转换日期数据的格式。 b e g i n d a t a 以后是要装载的数据。 ( 3 ) 把数据文件f t p 到数据库服务器上。 ( 4 ) 以o r a c l e 用户身份登录到数据库服务器。 ( 5 ) 在命令行输入s q l l d ru s e r i d = t a n s a n 9 7 6 6 3 3c o n t r o l = j s c t ll o g = j s 1 0 9 b a d = i s b a d 执行数据装载。 其中,u s e r i d 指定的用户对o r a j s b 要有一定权限,可指定l o g 文件和b a d 文件对 装载过程进行检查。本命令还可带有多个参数进行装载控制,可在命令行输入s q ll d r 查阅。 对于f o x p r o 的m e m o 字段数据可利用c o p ym e m o 命令导出到文本文件,再按上述 方法装入。如果数据装载不成功,请查阅l o g 文件和b a d 文件,其原因多与数据类型 的匹配和长度有关。对于f o x p r o 日期型数据如果为空( 如上例第2 条记录) ,o r a c l e 不识别“ ,则装载会失败,因此在从f o x p r o 导出前,我先给所有b i r t h 为空的记 录赋予一个日期“1 1 1 9 9 8 ”,待装载成功后只需一个命令 u p d a t eo r a j s bs e tb i r t h = w h e r eb i r t h = 卜j a n 一9 8 即可在o r a j s b 中恢复 相关记录的b i r t h 空值。 有关s q l * l o a d e r 及f o x p r o 的e x p o r t 和c o p ym e m o 的详细用法请参阅o r a c l e 和 f o x p r o 的文档。 2 4 使用程序进行移植 该方法最灵活、功能最强大,但需要用户编程,其基本思想是使用数据库连接组 6 件( 中间件) 如o d b c ,o l ed b ,a d o ,d b e ,j d b c 等连接各异构数据库,由程序控制异构 数据库间的数据转移和数据共享。其中o l ed bn 盯是m i c r o s o f t 的一个战略性系统级编 程接口,用于管理整个组织内的数据。o l ed b 是建立在o d b c 功能之上的一个开放规范。 o d b c 是为访问关系型数据库而专门开发的,o l ed b 则用于访问关系型和非关系型信息 源,例如主机i s a m v s a m 和层次数据库,电子邮件和文件系统存储,文本、图形和地 理数据以及自定义业务对象。o l ed b 定义了一组c o m 接口,对各种数据库管理系统服 务进行封装,并允许创建软件组件,实现这些服务。现有流行的数据库应用程序开发 工具都支持或部分支持以上数据库连接组件,我们只需使用合适的数据连接组件,数 据访问组件和数据控制组件就能可视化的数据移植。 例:从s q l 7 0 向基于n t 下的o r a c l e 数据库导入数据,程序语言:j a v a ,与数据 库的连接:s q l 7 0 :j d b e o d b e 桥,j a v a 自带。o r a c l e :j d b c ,o r a c l e 提供。 代码如下: i m p o r tj a v a 1 a n g 水: i m p o r tj a v a s q l 水: i m p o r to r a c l e j d b e d r i v e r 木: 导入要用到的包 p u b li cc l a s sh h we x t e n d so b j e c t ( p u b l i c s t a t i cv o i dm a i n ( s t r i n ga r g s 口) t h r o w ss q le x c e p t i o n ,c l a s s n o t f o u n d e x c e p t i o n 抛出s q le x c e p t i o n 异常 c l a s s f o r n a m e ( “s u n j d b e o d b e j d b e o d b e d r i v e r ) : c l a s s f o r n a m e ( “o r a c l e j d b e d r i v e r o r a c l e d r i v e r ) : 登记驱动程序,准备联接数据库 c o n n e c t i o nc n l = d r i v e r m a n a g e r g e t c o n n e c t i o n ( “j d b e :o r a c l e :t h i n : 1 9 2 1 6 8 1 5 2 :1 5 2 1 :s o n i c ,s a d l y ,s a d l y ) : c o n n e c t i o nc n 2 = d r i v e r m a n a g e r g e t c o n n e c t i o n ( “j d b e :o d b e :s q l ,“s a ”, ) : 联接到数据库,建立到两个数据库的连接 s t a t e m e n ts l = c n l c r e a t e s t a t e m e n t0 : s t a t e m e n ts 2 = c n 2 c r e a t e s t a t e m e n t0 : r e s u l t s e tr s l = s 2 e x c c u t e q u e r y ( “s e l e c t * f r o mu s e r sw h e r ei d oa n di d 4 0 0 0 0 ”) : 从数据源中取得数据,定义一些中间变量 i n ti d : s t r i n gn a m e = n e ws t r i n g ( “1 ”) : s t r i n gp a s s w d = n e ws t r i n g ( “1 ) : 7 s t r i n ge m a i l = n e ws t r i n g ( “1 ) : 执行另一个查询,向目的数据库插入数据 w h i l e ( r s l n e x t ( ) ) i d = = r s l g e t i n t ( 1 ) : n a m e = r s l g e t s t r i n g ( “n a m e ) : p a s s w d = r s l g e t s t r i n g ( “p a s s w d ) : e m a i l = r s l g e t s t r i n g ( “e m a i l ”) : s 1 e x e c u t e q u e y ( “i n s e r ti n t ob b s u s e rv a l u e s ( “+ i d + , + n a m e + , ” + p a s s w d + ”, + e m a i l + ) ) : ) ) ) 2 5 使用o r a c ie 9i 的x m l 工具集 一个x m l 文档对应于可扩展标识语言的定义,x m l 是s g m l 的子集,经过简化使得 开发人员能够设计自定义标识语言,既x m ls c h e m a ,用于描述结构化、半结构化数据, 优化在w w w 环境中文挡的传输,支持电子商务和其他应用。 x m l 工具集是p l l s q l 过程、函数和包的集合,开发人员能够用于从x m l 文档中提 数据,将数据存储到o r a c l e 数据库对象中,如o r a c l e 表、c l o b 数据库列、高级队列 等。其步骤是: ( 1 ) 创建控制文件( c o n t r o l f il e ) ( 2 ) 调用p l s q l 过程: w e x m l l o a d ( c o n t r o l f il e ) 或w e x m l l o a d _ f ( c o n t r o l f il e ) 例:如下把o r a 9 e x a m p l e e x l x m l 文件的数据导入到教师表( j i a o s b ) 其脚本为: b e g i n w b x m l lo a d ( 控制文件 j f i f o r a 9 e x a m p l e e x l x m l ,l l l j i a o s b i l l ) e n d : 当x m l 文档中的元素名与目标表列的名称不能匹配时,必须包括x s l 样式表单, 8 重新格式化数据。 2 6 使用o r a cie 透明网关实现异构数据库之间的数据转移 o r a c l e 透明网关n 们允许o r a c l e 客户端应用程序访问非o r a c l e 数据库数据,如: m i c r o s o f ts q ls e r v e r ,s y b a s e 等,访问是通过结构化查询语言( s q l ) 完成的。o r a c l e 数据库服务器的网关将会创建驻留在o r a c l e 数据库服务器中的所有数据,即使这些数 据可能是广泛分布的。 2 6 1 0 r a c l e 透明网关 网关被l i s t e n e r 调用,网关不是多线程的j 也不能支持共享的数据库连接。每个 网关会话产生一个单网关进程,同时连接也不能被共享。透明网关合成了异类服务工 具,异类服务( h s ) 扩展了o r a c l es q l 引擎。能识别非o r a c l e 系统数据,以及它们之 间的映射( 数据类型转换) 。其体系结构如下图2 6 1 所示。 田2 1 同先讳晕嘻问 2 6 2 实现步骤 ( 1 ) 配置网关; ( 2 ) 配置网关的监听器( t n s l i s t e n e r ) ; ( 3 ) 配置网关访问的o r a c l e 数据库服务器。既编辑t n s n a m e s o r a 中的连接描述符; ( 4 ) 创建数据库连接: ( 5 ) 使用网关进行数据移植( 也可以先定义同义词,提供数据位置透明性) 。 9 3 1 系统基本情况描述 第三章教务管理系统设计 随着社会进步,社会对人才素质要求越来越高,相应的,需要学校的管理工作越 来越周到、全面、先进、高效。这不仅使教务管理的日常工作日趋复杂繁重,而且, 对它提出了更高的要求。教务管理系统强化了教务管理的职能,涵盖了教师管理、学 籍管理、排课系统、教材管理、决策支持等主要功能,对教务管理工作进行了提炼和 概括,使教务管理工作日益规范化、制度化和科学化。教务管理系统的使用,大大减 少了管理者的手工劳动,提高了工作效率,是学校管理的得力助手和必不可少的工具。 3 1 1 主要功能 学籍管理排课系统教师管理教材管理 决策支持系统系统设置管理w e b 系统 3 1 2 功能概述 学籍管理包括学生基本情况管理和学生成绩管理,学生基本情况管理是教务行 政管理工作的重要内容,主要涉及学生的基本信息、学生异动、学生奖惩、学生干部、 学生毕业信息等,为客户提供各种登记和查询功能以便及时反映学生的在校信息。成 绩管理主要包括学生在校期间各科学习成绩的登录,统计处理,各种成绩表册及成绩 报告单打印和保存,提供各种查询功能以便及时了解各科教学情况和各班学习质量。 排课系统,根据现有的软硬件资源,自动的、合理的、高效的完成排课工作。 教师管理包括管理教师的基本情况,统计教师的工作量,衡量教师的工作水平 等功能。 教材管理,教材的预定、教材的进、销、存管理。 决策支持,为教务管理的决策者提供辅助决策系统。 系统设置,包括学校的组织结构,教学计划、教学进度等等系统基本信息的管 理和维护。提高系统的通用性。 w e b 系统,提供各类查询和咨询,网上选课和各种论坛。 3 1 3 系统特点 分布式数据库构架,各部门局部自治,并提供全局应用。 分布式应用程序构架,可针对不同的用户需求定制系统部分功能,系统易于扩 充,可靠性高。 为高层决策者提供辅助决策功能,保证教学质量,评优和专业设置提供科学依 据。 开放的工作平台,为用户提供多样化的访问接口。 1 0 3 2 可行性分析 根据新系统目标来衡量所需的技术是否具备,一般可以从硬件、软件的性能要求、 环境条件、技术人员水平和数量等等方面去考虑和分析。从硬件环境来看:各高校都 建立了自己的校园网,且与i n t e r n e t 连接。从软件技术来看:数据库技术( 如:o r a c l e 、 m s s q l s e r v e r 2 0 0 0 ) 非常完善,能满足设计要求。应用程序开发工具( 如d e l p h i , c + + b u i l d e r ,p o w e r b u i i d e r ,v j ,v c + + ,p h p 等) 是流行的c s 或b s 应用程序开发工 具。 3 3 设计的基本目标、思路和方法 3 3 1 基本内容 考虑到教务管理系统是一个庞大而复杂的系统,它涉及到教学过程中的各个环节, 它需要对各类资源管理和分配,如教师、教室、学生、教材、教学安排、专业设置等 等,它是教学工作中的一个重要环节,需要不同类型的管理者参与到教学管理中,同 时为了适应教务管理的新要求,在系统设计时,我们不应该只强调教学事务的单纯管 理,既传统的o l t p 系统2 1 ,其目的只是由计算机代替人完成复杂而烦琐的工作,追求 管理的快捷性和准确性。我们应该向智能型、开放型、分布式教务管理方向发展,具 体的设计内容目标是: 构架一个分布式的网络管理平台。 设计一个智能型的支持辅助决策的系统。 提供一个开放式的管理方案。 建立一个高可靠性、可扩展的教务系统。 3 3 2 设计思路 在软件设计时,在考虑用户要求和功能实现的同时,还应考虑到软件的通用性、 可靠性、安全性、可扩展性以及软件的可操性。我们设计的大体思想是: 由于教务管理涉及到不同类型人员,且不同类型管理人员的工作也不相同,所 以软件的设计应面向用户、面向管理对象分别开发。 由于教务管理涉及到不同的部门和单位,且分布在不同的物理位置,就必须建 立一个分布式管理体系。 为了利用现有的教务管理信息,必须考虑旧系统和新系统之间的数据转移。 为了管理的科学性,就必须在传统的教务管理的基础上提供辅助决策功能。 为了吸引更多的人( 学生、家长、教育者) 参与到教务管理中,必须打破传统的 封闭管理模式,提供一个开放的管理环境。 为了提高软件的可靠性和可扩展性,有必要采用先进的软件设计思想。 3 3 3 主要方法 教务管理系统属于m l s 系统3 1 ,它涉及到软件开发的各个方面,涉及的技术和方 法很多。我们主要从以下几方面介绍: 数据库方面,由于系统复杂而庞大,涉及多个部门的参与且数据分散。教务管 理系统应该在数据库设计方面采用基于网络的分布式数据库,提供数据的共享,同时 管理工作细化,各个部门可自治其数据,减少网络开销。 智能型方面,通过数据仓库的构架“1 ,o l a p 5 1 ,数据挖掘等技术,在原有的 事务数据中发现新的知识,如:课程的关联性,教学质量的衡量指标,学生教师的评 优参数等等,为高层决策者提供辅助决策服务,用于教学计划的改进,专业方向的设 置,合理的资源分配等。 应用程序方面,采用流行的m u l t i - t i e r 结构 1 ,建立中间应用服务器,便于系 统功能的扩展,实现分布式应用程序框架8 1 。 数据转移方面,为了利用原有教务管理信息,减少资源浪费,本文介绍了几种 数据移置方法。 3 4u m l 简述 教务管理系统的设计首先要完成需求提出和需求分析,这一步是非常重要的,它 关系到系统设计的成败,为了更好的描述系统和用户需求,本设计使用u m l 建立系统 模型,目的是便于和用户交流,更好的系统分析,以及系统最终实现。 统一建模语言u m l 是一个由o m t 阳1 ( 对象建模技术) 和o o s 1 们( 面向对象的软件工程) 统一而得到的符号,u m l 也受到其他面向对象符号的影响,如s h l a e r m e l l o r , c o a d y o u r d o n 等符号的影响。u m l 是一个通用的可视化建模语言,用于对软件进行描 述、可视化处理、构造和建立软件系统制品的文档。它记录了对必须构造的系统的决 定和理解,可用于对系统的理解、设计、浏览、配置、维护和信息控制。u m l 适用于各 种软件开发方法、软件生命周期的各个阶段、各种应用领域以及各种开发工具,u m l 是一种总结了以往建模技术的经验并吸收当今优秀成果的标准建模方法。u m l 包括概念 的语义,表示法和说明,提供了静态、动态、系统环境及组织结构的模型。它可被交 互的可视化建模工具所支持,这些工具提供了代码生成器和报表生成器。u m l 标准并没 有定义一种标准的开发过程,但它适用于迭代式的开发过程。它是为支持大部分现存 的面向对象开发过程而设计的。u m l 描述了一个系统的静态结构和动态行为。u m l 将系 统描述为一些离散的相互作用的对象并最终为外部用户提供一定的功能的模型结构。 静态结构定义了系统中的重要对象的属性和操作以及这些对象之间的相互关系。动态 行为定义了对象的时间特性和对象为完成目标而相互进行通信的机制。从不同但相互 联系的角度对系统建立的模型可用于不同的目的。u m l 还包括可将模型分解成包的结 构组件,以便于软件小组将大的系统分解成易于处理的块结构,并理解和控制各个包 之间的依赖关系,在复杂的开发环境中管理模型单元。它还包括用于显示系统实现和 1 1 组织运行的组件。u m l 不是一门程序设计语言。但可以使用代码生成器工具将u m l 模型 转换为多种程序设计语言代码,或使用反向生成器工具将程序源代码转换为u m l 。u m l 不是一种可用于定理证明的高度形式化的语言,这样的语言有很多种,但它们通用性 较差,不易理解和使用。u m l 是一种通用建模语言。对于一些专门领域,例如用户图形 界面( g u i ) 设计、超大规模集成电路( v l s i ) 设计、基于规则的人工智能领域,使用专门 的语言和工具可能会更适合些。u m l 是一种离散的建模语言,不适合对诸如工程和物理 学领域中的连续系统建模。它是一个综合的通用建模语言,适合对诸如由计算机软件、 固件或数字逻辑构成的离散系统建模。 u m l 为广泛的应用而设计,因此它能为大多数的系统和活动提供结构( 例如:实时 系统、分布式系统、分析、系统设计、配置) 。系统的开发集中于系统的3 个不同模型: 功能模型,在u m l 中由用例图表示,从用户观点描述系统功能。 对象模型,在u m l

温馨提示

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

评论

0/150

提交评论