




已阅读5页,还剩58页未读, 继续免费阅读
(计算机应用技术专业论文)基于构件的移动警务系统的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息f 稃大学硕十学位论文 摘要 基于构件的软件开发( c o m p o n e n t b a s e ds o f t w a r ed e v e l o p m e n t ,简称c b s d ) 是目前 较为先进的开发技术,它已经给软件业带来了新的前景。移动警务系统的建设作为公安部 金盾工程的重要组成部分,由于存在难于进行业务扩展和系统升级等问题,因此,我们采 用基于构件的软件开发方法来改善当前的系统建设情况。 本文通过对河南省移动警务系统存在的问题进行分析,根据公安部门的业务需求,结 合基于构件的软件开发方法的思想,提出了一种基于构件的移动警务系统的总体设计方 案。 本文分别对移动警务系统的客户端和服务端进行了构件化设计。主要是指抽象相同功 能的模块为构件,从而组成了构件库,并且通过x m l 语言对构件之间的逻辑调用关系和 交互接口进行描述。 在客户端设计上,抽象了一组警务系统专用的界面构件和事件处理构件。警务信息的 界面显示主要是根据构件配置文件的属性来调用界面构件库中的相关构件,驱动事件处理 构件来完成。 在服务端的设计上,抽象了一组警务系统专用的业务构件,通过业务调度引擎对业务 构件进行调度,完成相应的业务处理。 改良后的移动警务系统,在透明性、灵活性、高效性、扩展性等方面都得到了提高, 使得移动警务系统的终端用户更加便利。 关键词:构件;构件库;基于构件的软件开发;x m l ;移动警务系统 第1 v 页 信息工稃大学硕+ 学位论文 a b s t r a c t c o m p o n e n t - b a s e ds o f t w a r ed e v e l o p m e n t , 5 0c a l l e dc b s d ,i st h em u c hm o r ga d v a n c e d d e v e l o p m e n tt e c h n o l o g yc u r r e n t l y , h a sa l r e a d yb r o u g h t n e w p r o s p e c tt ot h es o f t w a r ei n d u s t r y a s o n ei m p o r t a n tp a r to ft h eg o l ds h i e l dp r o j e c to fp o l i c ed e p a r t m e n t ,t h ec o n s t r u c t i o no fp o l i c e m o b i l es y s t e me x i t e ds o m ep r o b l e m sl i ei nt w oa s p e c t s ,w h i c hw e r es e r v i c ee x p a n s i o na n d s y s t e mp r o m o t i o n t h e r e f o r e ,w eu s e dc b s dt oi r e p r o v et h ec u r r e n ts y s t e mc o n s t r u c t i o n s i t u a t i o n t h r o u g ha n a l y z i n gt h ee x i s t e dp r o b l e m si np o l i c em o b i l es y s t e mo fh e n a np r o v i n c e ,t h i s a r t i c l ep r o p o s e dad e s i g ns c h e m eo f p o l i c em o b i l es y s t e mb a s e do nc o m p o n e n t , u s i n gt h et h o u g h t o f c b s d ,a c c o r d i n gt ot h es e r v i c ed e m a n do f p o l i c ed e p a r t m e n t t h i sa r t i c l ep r o p o s e dt h ep o l i c em o b i l es y s t e md e s i g nb a s e do nc o m p o n e n to fc l i e n ta n d s e r v e rs e p a r a t e l y t h ec o m p o n e n tr e p o s i t o r yo fs y s t e mi sm a d eu po fc o m p o n e n t sw h a tw e r e a b s t r a c t e df r o mt h em o d u l e sw i t hs i m i l a rf u n c t i o n t h ei n t e r a c t i v ei n t e r f a c ea n dt o g i c a l r e l a t i o n s h i po f c o m p o n e n t sa l ed e s c r i b e db y x m l a sf o rt h ed e s i g no fc l i e n t , i ta b s t r a c t e das e to fi n t e r f a c ec o m p o n e n t sa n dc o m p o n e n tf o r d e a l i n gw i t ht h ee v e n t sf o rt h ep o l i c es y s t e ms p e c i a l l y a c c o r d i n gt ot h ea t t r i b u t eo fc o m p o n e n t c o n f i g u r a t i o nd o c u m e n t ,p o l i c ei n f o r m a t i o ni sd i s p l a y e db yc a l l i n gt h ec o m p o n e n t sf r o m i n t e r f a c ec o m p o n e n tr e p o s i t o r ya n dd r i v i n gc o m p o n e n to f e v e n th a n d l i n g a sf o r t h ed e s i g no fs e r v e r , i ta b s t r a c t e das e to fs e r v i c ec o m p o n e n t sf o rt h ep o l i c es y s t e m s p e c i a l l y t h ec e r t a i nh a n d l i n go fo p e r a t i o ni sa c c o m p l i s h e db yc a l l i n gt h es e r v i c ec o m p o n e n t s b ye n g i n eo f s e r v i c ed i s p a t c h i n g t h ei m p m v e dp o l i c em o b i l es y s t e mi sp r o m o t e di ns e v e r a la s p e c t ss u c ha st r a n s p a r e n c y , f l e x i b i l i t y ,e f f e c t i v e n e s sa n de x t e n s i o na b i l i t y ,w h i c hm a k e t h eu 跎i 8m u c hm o r ec o n v e n i e n t k e y w o r d s :c o m p o n e n t ;c o m p o n e n tr e p o s i t o r y :c b s d :x m l :p o l i c em o b i l es y s t e m 第v 页 论文原创性声明和使用授权 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及 取得的研究成果。尽我所知,除了本文中特别加以标注和致谢中所罗列 的内容外,论文中不包含其它人已经发表或撰写过的研究成果;也不包 含为获得信息工程大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确 的说明并表示了谢意。 本人完全了解信息工程大学电子技术学院有关保留和使用学位论 文的规定,即:学院有权保留论文的复印件,允许查阅和借阅论文;可 以公布论文的全部或部分内容;可以采用影印、缩印或其它手段保存论 文。涉密论文按保密规定执行。本论文取得的研究成果归学院所有,学 院对该研究成果享有处置权。 摊名:孺 喊w 易 导师签名:劳召邑 日溉沁“。f 刍 信息工程大学硕士学位论文 第一章引言 1 1 课题的研究背景 随着信息科技的高速发展,特别是网络技术和移动通信技术的推广和普及,人们获取 信息的手段发生了巨大的变化。人们对通过网络获取信息的依赖性越来越强,要求也越来 越高,这不仅体现在对获取和提交信息量的增大,更体现在对获取信息的实时性和便利性 的迫切需求上,尤其是那些对实时信息要求强烈、移动性强的行业。移动和无线数据技术 将为他们的工作带来崭新的体验及前所未有的效率。当前,各行各业都因为采用新型的高 科技工作模式替换了传统的i t i m 作模式而大幅度的提高了工作效率。 公安行业是一个对移动需求要求较强的行业。随着国家公安信息化建设的加快,强化 一线民警信息化水平、提高现场快速处置事件的能力,已经成为迫在眉睫的问题之一。公 安系统需要一个移动性极强的信息交流工具,以方便外出执行公务的干警可以在任何地点 提交和获取信息。针对这种应用需求,根据“数字警察”的理念,结合公安系统多年的行 业经验,并采用先进的移动技术,我们已经提出了结合g s m 、g p r s 、c d m a 等多种无线 网络及适用于多种类型移动终端的移动警务系统解决方案,以实现公安系统移动互联及相 关的业务应用。 移动警务系统是对公安警务工作的无线延伸,它改变了公安干警传统的工作方式,警 务人员可以在3 5 秒钟内实现对常住人员信息、暂住人员信息、重点人口信息、在逃人员 信息、车辆和驾驶员信息等进行迅速地查询,随时随地获得公安业务信息。包括照片和相 关图片信息。一线干警通过获取紧急和突发事件的信息,可避免重特大案件的发生,为突 发案件的迅速侦破创造信息条件。 虽然当i j 移动警务系统已经基本可以满足公安部门的基本需求,但是系统依旧存在问 题。主要表现在系统的扩展性能不高,尤其体现在面临业务扩展时,系统需要重新开发, 以致于对公安部门的人力物力造成了极大地浪费。随着公安业务的发展日益多元化,业务 扩展速度也逐渐提高,系统所存在的不灵活性、扩展性差的问题日益明显。针对这种情况, 河南省公安厅委托我们去改善当前的移动警务系统的建设状况。因此,我们以公安部金盾 工程“公网( g p r s c d m a ) 移动数据安全接入系统”为项目背景,针对改善当前的系统问 题进行了研究。 1 2 当前移动警务系统建设存在的主要问题 鉴于公安部门的实际情况,业务种类日渐增加呈多元化趋势发展,原有的以传统的软 件开发方法开发的移动警务系统已经不能满足公安部门的需要。当前的系统在面临业务扩 展的问题时,只有通过客户端程序的再次开发才能处理业务更新问题,这种落后的解决方 案已经不再适用于当前形势。因此,扩展性的提高已经成为当前系统迫在眉睫有待解决的 第1 页 信息t 程大学硕士学位论文 问题。 当前的移动警务系统主要存在以下几个问题: 1 ) 系统结构稳定性差 当前的移动警务系统一般是围绕实现处理功能的过程来构造的,然而功能一般随着用 户需求变化经常发生改变,这往往造成系统结构的调整。因此系统结构常常不稳定。 2 ) 系统扩展性不好 当前的移动警务系统是一种独立并且内部结构关联极强的系统,由于内部结构的紧密 关联,导致组成系统的各个部分往往不能单独地被升级或替代。因此,对系统进行修改和 功能扩展都比较困难。 3 ) 复用性差 采用传统方法开发移动警务系统时,不同的开发人员可能设计出不同的软件体系结 构,而且这种软件系统严重依赖操作系统或网络等应用环境提供的服务,所以开发出的系 统中一些相同的模块,也往往不能在其它应用环境中重复使用。 4 ) 难于进行系统集成 采用传统方法开发的移动警务系统如果与其它系统交互,一般的方法是通过应用程序 接口( a p p l i c a t i o np r o g r a mi n t e r f a c e ,a p i ) 实现其功能,但对于运行在异构软硬件平台的 系统,要建立他们之间的通讯是很困难的。 1 3 构件技术在移动警务系统建设中的作用 目前的移动警务系统在业务扩展、系统升级方面存在一些问题。当用户每次更新业务 都需要重新开发移动终端的客户端应用程序,并且,用户更新终端设备也可能面临再次开 发的情况。为了解决当前这种问题,我们针对不同终端设备,在j 2 m e 的开发环境下,采 用构件技术的思想,提出了一种基于构件的移动警务系统的设计方案。本方案实现了移动 警务系统的构件化仲系缔代码每田件根高# 日加强了系统的透明性、灵活性亮敬性 扩展性,使得移动警务终端用户更加便利。 在移动警务系统的应用中,不同地域的终端用户一般都有不同的业务定制要求,并且 时常面临添加业务的需求,构件技术为这种定制需求提供了可能。构件是流动的,而不是 集成在一起的整个系统。采用了构件技术后的系统,系统的各个功能模块就可以独立地实 现、升级、而不会影响系统整体。通过构件技术,我们把系统常用的功能做成可供选择的 构件,用户就有了更为灵活的选择。 构件是一种具有可复用价值的软件模块,识别可复用构件,并用构件技术实现它们的 需求,利用可复用的构件开发移动警务系统,能够大幅度提高系统的开发效纠”。构件只 是组装系统的一个元件,好的构件如果缺乏好的装配结构依然开发不出高质量的系统。在 进行应用系统开发时,构件技术应与软件体系结构相结合。软件体系结构作为软件工程研 究领域的一部分,受到大多数软件系统设计和开发人员的重视,它是软件系统的高级抽象, 第2 页 信息下程大学硕+ 学位论文 体现了根本性的系统设计思路,对系统起着深远的影响。对于应用系统开发而言,构件技 术和软件体系结构分别从整体和局部的角度来提高系统的开发效率【2 】。将它们应用到移动 警务系统中基本上克服了传统软件开发方法带来的缺点,并且对系统性能有了较大的改 进,比如: 动态加载业务:警务系统的业务类型就相当于系统的零件,零件可以随时装配。 改进后的系统实现了动态加载业务的功能,使得移动警务系统的终端用户可以根据本身实 际情况需要,随时从后台服务端获取新版本的客户端表达界面。 提高代码复用:代码复用是本金盾工程长期追求的目标,改进后的警务系统提供 了构件的标准,使各种业务真正能够成为“工业零件”,便于用户定制,并且避免系统重 复性开发,提高了警务系统的利用效率。 提高扩展性:易于系统扩展和升级。当前的移动警务系统的升级工作是一个令人 头疼的问题,常常是“牵一发而动全身”,单个功能的升级极可能导致整个系统需要重新 编译调试。而基于构件的新型警务系统,它可以比较恰当的解决系统升级问题,具有相当 的独立性,个别构件的更新并不会影响整个系统。 提高系统的可靠性:由于构件运行环境的控制,系统可以避免因为个别的构件崩 溃而波及到整个系统,提到了系统的可靠性。 1 4 论文的结构 本文首先对当前河南省公安部门的移动警务系统存在的一些问题以及需求进行了研 究和分析,在熟悉基于构件的软件开发技术的情况下,针对系统存在的主要问题提出了一 种基于构件的移动警务系统的新型的设计方案,并且介绍了系统的拓扑结构以及构件体系 结构。然后,分别详细介绍了客户端和服务端的构件化设计及实现。 文章主要由以下几部分组成: 第一章主要介绍了课题的研究背景,当前移动警务系统建设中存在的主要问题,并且 重点介绍了构件技术在移动警务系统建设中的作用。 第二章主要针对软件复用、构件技术的基本概念、以及基于构件的软件开发技术进行 了详细描述,最后讨论了一下当前主流的构件标准规范,突出说明了本系统采用的j a v a b e a n 构件标准规范的特点。 第三章主要针对当前移动警务系统的问题,提出一种基于构件的移动警务系统的构件 化设计方案。首先对系统中用作描述客户端界面构件配置文件的x m l 进行了简要的描述; 然后围绕系统的设计思想和开发原则两个方面,对系统的设计进行了详细的描述;最后分 析了系统的拓扑构架,并且对系统的构件体系结构进行了研究。 第四章主要描述了客户端的设计与实现。在j 2 m e 开发环境下,首先具体介绍了警务 业务分类,提出了客户端构件化设计方案,并且针对客户端的各个组成部分进行了简要的 功能描述,其中包括构件库和各个主要功能模块;然后突出地对客户端的界面构件库、事 第3 页 信息下程大学硕士学静论文 件处理构件、界面显示模块、数据格式加载解析模块的具体实现进行了详细地描述;最 后在本章的末尾介绍了客户端的具体业务实现流程。 第五章主要描述了服务端的设计与实现。首先给出了系统服务端的构件化总体设计方 案,针对服务端的主要组成部分进行简要功能描述;然后分别针对网络连接模块、业务调 度引擎、数据库引擎、相关数据库表的具体实现进行了详细描述;最后,在本章的末尾介 绍了服务端的具体业务实现流程。 第六章对论文的工作和创新点进行了总结,并且明确指出了今后的研究方向。 第4 页 信息工稃大学硕十学伊论文 第二章基于构件的软件开发 2 0 世纪9 0 年代,软件技术的一个重大发展就是产生了构件技术。构件技术是面向 对象技术进一步发展的产物。构件技术的产生使得软件开发者可以通过开发可复用的构件 并反复使用这些构件去开发新的软件系统,从而提高软件系统的开发效率,进一步缓解软 件危机。 2 1 软件复用与构件技术 传统的软件开发基本上都包含可行性研究、需求分析、总体设计、详细设计、编码( 开 发) 、系统测试、系统维护等几个阶段 3 1 。如果每个软件应用系统的开发都从头开始,在开 发过程中将存在大量的重复劳动。m c i l r o y 首先提出软件复用的概念,在1 9 8 3 年,f r e e m a n 进一步拓展了这一概念,指出可复用的构件不仅可以是源代码片段,而且可以是模块设计 结构、规格说明和文档等【4 j 。 所谓软件复用又称软件再用、软件重用,是指重复使用“为了重复使用目的而设计的 软件( 可复用软件) ”的过程【5 1 。在开发新的软件系统时,软件复用主要是指对已有软件的 重新使用,该软件可能是已经存在的软件,也可能是专门设计的可复用构件【6 】。基于构件 的软件复用的两个基本开发活动包括面向可复用构件的开发和基于可复用构件的开发【7 】。 由于软件开发模式多种多样,因此复用的方式也不尽相同,主要包括基于函数过程、 类对象、控制以及构件的复用。其中基于构件的复用是目前学术界与产业界公认的主流 复用技术嗍。通过软件复用,可以控制软件开发的复杂度,缩短开发周期,并提高软件产 品的质量。正是由于软件复用技术的使用,极大地提高了软件生产效率。 构件是可以被复用的软件实体,由构件规约和构件实现两部分组成【9 】。构件是一个独 立发白的功能部分,可以通过它的接口访问它的服务。通过构件的概念,可以发现构件有 以下特性: 1 、构件是一个可交付的单元,因此具有可执行软件包的特征。 2 、构件会提供一些有用的功能,这些功能集合到一起会满足一些需求,这些功能的 设计符合一些设计准则。 3 、构件通过接口提供服务。使用构件,要求通过这些接口提出请求,而不是通过访 问构件的内部实现细节。 根据构件的结构,可以分为原子构件和组合构件。原子构件是指最小的可复用单位, 不能再划分为更小的构件;组合构件即复合构件,它是若干个构件的组合。 构件通过封装实现、暴露接口和提供相应的使用标准,为软件开发人员提供了良好的 复用功能,使得软件开发更加高效。 构件库( c o m p o n e n tr e p o s i t o r y ) 是存储和管理构件的工具,它是按照一定的语义和组 第5 页 信息丁程大学硕士学位论文 织结构形成的一个构件集合。构件库也是软件构件开发重要的共享资源,为了给基于构件 的应用系统开发提供构件,构件库不仅要提供对构件的自动检索,还要提供对构件的查询、 浏览、扩充等功能【1 0 】【l l 】。 2 2 基于构件的软件开发技术 使用构件来开发系统,便产生了基于构件的软件开发技术。基于构件的软件开发 ( c o m p o n e n t b a s e ds o f t w a r ed e v e l o p m e n t ,简称c b s d ) 或者基于构件的软件工程 ( c o m p o n e m b a s e ds o f t w a r ee n g i n e e r i n g ,简称c b s e ) 是一种软件开发新范型,它是在一 定构件的支持下,复用构件库中的一个或多个软件构件,通过组合手段高频率、高质量地 构造应用软件系统的过程1 1 2 1 。 c b s d 是在吸取传统的软件开发方法的基础上,结合构件技术和软件复用技术产生的 一种高效的开发方法,它采用自顶向下和自底向上结合的方法,支持体系结构、构件等多 个层次的附庸,从根本上解决了应用软件开发中存在的开发质量和开发效率等问题。由于 以分布式对象为基础的构件实现技术日趋成熟,c b s d 已经成为现今软件复用实践的研究 热点,被看作是一种能够降低开发费用、提高生产率以及在快速的技术演化原则面前受控 的系统升级的开发方式【1 4 1 【1 5 1 ,被认为是最具有潜力的软件工程发展方向之一。 c b s d 是软件工程技术和面向对象技术发展到一定程度的产物。基于构件软件开发方 法的思路是借鉴传统工业生产模式,首先是分析用户需求,设计整体结构框架,根据需要 到构件库中选择能完成相应功能的构件,之后组装应用系统。如果所需构件不存在,就去 购买、定制或自行开发新构件。基于构件的软件开发思路如图2 1 所示。 图2 1 基于构件的软件开发思路 基于构件的软件开发方法是软件复用思想的最好体现,它不仅能够将软件开发周期将 大大缩短,而且会使得软件质量将更好,开发所需的费用会进一步降低,软件维护也更容 第6 页 信息t 稃大学硕士学位论文 易【3 3 1 。在本文中对移动警务系统采用基于构件的软件开发方法进行设计和开发,也主要是 考虑基于构件的软件开发具备以上的优点。 2 3 构件标准规范 在进行基于构件的设计和开发时,一般采用主流的构件标准规范。目前,基于构件的 软件开发技术领域已形成3 种大本营,分别是s u n 的j a v a 平台、m i c r o s o f t 的c o m ( c o m p o n e n to b j e c tm o d e l ) d c o m ( d i s t r i b u t e dc o m p o n e n to b j e c tm o d e l ,分布式构件 对象模型) 和o m g 的c o r b a ( c o m m o n o b j e c t r e q u e s t b r o k e r a r c h i t e c t u r e ) 1 6 1 0 构件标 准规范的宗旨都是一致的,都是要解决分布环境下软件构件的集成和互操作问题,只是实 现方案上的各有差异。 由于本论文的课题背景要求和实际需求,在构件实现上,本系统采用的是j a v a 接口规 范( j a v a b e a n ) 。 一个构件在j a v a 中可以是c l a s s 或p a c k a g e ( j a r ) ,就j a v a b e a n 的编写必须遵守s u n 的”j a v a b e a na p i s p e c i f i c a t i o n ”【l 刀。 关于平台依赖性问题是其它几种构件标准普遍存在的问题,而j a v a b e a n 恰恰是针对解 决平台依赖性和语言依赖性这两个问题提出来的软件构件技术标准。因为j a v a 本身在全球 软件界的影响,特别是j a v a 独立于平台、适宜于在i n t e r a c t 、易于构造b s ( b r o w s e r s e r v e r ) 应用等特点,s u n 公司利用j a v a 特殊的b y t e c o d e 机制,很好地解决了其它构件标准难以解 决的平台依赖性问题,推出了它们自己的构件接口标准j a v a b e a n 。正像s u n 所描述的 j a v a b e a n 是“一次性编写,在任意地方可运行,在任意地方可重用”。 文献 1 8 中指出j a v a b e a n 的构件主要包括构件和容器。模型的其它部分还包括事件处 理、持续性、布局以及应用程序建立器( 一种可视化工具) 等,这些都是通过j a v a b e a n 构 件的标准接口实现的。j a v a b e a n 构件有时也称为j a v a b e a n 或b e a n 。它是由接口构成的, 接口是由方法组成的。容器能够使组件组合在一起并相互作用。这种机制主要是为了界面 构件提出的,它本身也是一个构件,以便嵌套组合产生复杂的可视化g u i 。下面讨论b e a n 的主要特征【1 9 1 : j a v a b e a n 的属性管理。j a v a b e a n 根据属性的使用类型,可将其属性分为一般属性、 索引属性、依附属性和约束属性,通过一些标准的命名约定定义它们的相应的访问方法, 使j a v a b e a n a p i 能用统一的方式对属性进行管理。 内省功能是构件的内部结构( 属性、方法和事件) 展现给外部的机制。j a v a b e a n 只需要构件开发者对构件的属性、方法和事件的命名和类型符号遵守一个约定,通过标准 的j a v a b e a n a p i 就可了解到b e a n 的任何内部信息。 j a v a b e a n 的事件处理模型是基于现存的a l i b i - 事件处理模型的。它决定b e a n 如何对 它自身状态的变化做出反应,以及决定如何将变化传递给应用程序或者其它b e a n 。通过 j a v a b e a n a p i 将一个事件接收器注册到该事件上,完成外部对事件的控制。 第7 页 信息t 程大学硕士学待论文 第三章基于构件的系统总体设计 移动警务系统是公安部金盾工程里面的重要的部分。为了更加充分地体现移动警务系 统对公安工作的便利性,我们需要改善当前系统的问题,提高系统性能。而构件是当前备 受关注的热门方向,基于构件技术的软件开发方法是未来的主流技术,因此,我们采用构 件技术来重新构造当前的移动警务系统。 3 1 ) 强儿技术 x m l 是可扩展标记语言( e x t e n s i b l em a r k u pl a n g u a g e ,x m l ) 的简称,是由互联网 联合组织w o r dw i d ew e bc o n s o r t i u m ( w 3 c ) 创建的一组规范,定义了结构化表达数据的 标准格式。x 1 d l 是针对网络应用的一项新技术,它的先驱是s g m l 和h t m l ,这两个语言 都是非常成功的置标语言,但是它们都在某些方面存在着与生据来的缺陷,x m l 正是为了 解决它们的不足而诞生的【2 0 】。 x m l 实际上是一种定义语言,即使用者可以定义无穷无尽的标记来描述文档中的任何 数据元素,从而突破了h t m l 固定标记集合的约束,使文档的内容更丰富更复杂并组成一 个更加完整的信息体系。x m l 可以使文档声明和描述内容分离【2 l 】。 x m l 主要有三个要素:( d o c u m e n tt y p ed e c l a r a t i o n ,文档类型声明) 或x m l 大纲 ( s c h e m a ) 、x s l ( e x t e n s i b l es t y l e s h e e t l a n g u a g e ,可扩展样式语言) 和x l i n k ( e x t e n s i b l e l i n kl a n g u a g e ,可扩展链接语言) 。d t d 和x m l 大纲规定了x m l 文件的逻辑结构,定义 了x m l 文件中的元素、元素的属性以及元素和元素的属性之间的关系f 2 2 】。 x m l 文档由一个个存储单元组成,这些单元称为x m l 实体 1 2 】。每个x m l 文档都有 一个逻辑结构和物理结构。逻辑上讲,文档由声明、元素、属性、注释、字符引用和处理 指令等组成。这些组成部分在文档的标记中必须明确规定。物理结构从另一角度来规范 x m l 文档。从物理角度来看,文档由实体单元组成,一个实体也可以在其他文档的实体中 被引用。一个文档以一个根元素或文档实体开始。文档的起始标记和结束标记对数据进行 结构化组织,并确定了元素的范围和相互之间的关系【2 3 1 。 由于x m l 允许开发者针对特定的应用定制自己的标记语言,这一特征使得x m l 在系 统集成领域中一展身手。随着x m l 及其相关技术、应用的发展,x m l 已经成为了重要的 信息发布标准和表示技术之一,越来越多的应用之间通过x m l 来进行数据交换。随着x m l 技术影响的不断扩大,大量面向x m l 的应用层出不穷,大量的厂商和个人也纷纷投入到 x m l 的开发研究中来【1 8 1 。 由此本文提出了通过x m l 作为标准的格式,来对构件、构件库、构件之间的逻辑关 系直至整体的构件配置文件进行描述。 第8 页 信息工稃大学硕十学位论文 3 2 基于构件的系统设计思想及开发原则 3 2 1 系统设计思想 随着警务应用系统的多元化发展,并且移动警务系统的业务范围涵盖越来越广,系统 的用户量和业务的细分程度也在随之提高。因为系统涉及的业务种类比较多,并且各种业 务具有的紧迫程度不同,对业务要求完成时限严格程度也不同。还有一些业务目前还有没 有明确要求,只是一种发展趋势的预测。因此要求业务功能分阶段实现,要求系统具有良 好的可扩展性。 正是因为目前所面临的问题,如何能以最快的速度搭建一个好的系统平台实现最紧迫 的业务功能,如何能在业务和数据种类不断增加的情况下实现系统功能的平滑扩展,如何 能在处理数据庞大的情况下提高处理性能,如何能在数据高速增长的情况下保护现有的软 硬件实现系统处理能力的扩充是该系统涉及和建设时应考虑的重点。 随着基于构件的开发技术的出现,构件所具有的独立配置、封装性、可复用性等特点 为我们解决上述问题提供了最好的方案。利用构件技术搭建构件平台,将各业务功能划分 为不同的可配置的构件,解决业务和数据种类多、变化快的问题,在提高并行处理性能的 同时实现了将来硬件平台的平滑扩展。 本系统主要是为了解决原有警务系统的扩展性差的问题而设计的。系统软件结构应体 现构件化的设计思想,尽可能保证功能构件之间的独立性和功能接口的通用性,以便于系 统日后的动态扩展;提供良好的接口,方便和其他业务系统交互;考虑对现有投资的保护, 可以最大限度地利用现有资源。 3 2 2 系统开发原则 为使软件系统设计从整体上满足构件化程序设计的要求,在确定好系统框架和统一的 开发方针后,系统的开发必须遵从以下几条原则: 1 ) 利用现有的技术和软件构建一个可持续发展的构件化平台。 充分利用已有的移动警务系统现有的通信中间件和原有的业务构件模块,达到快速搭 建构件平台和提高系统效率的目的。 2 ) 采用多层体系结构,系统业务逻辑与数据分开 首先,系统按照客户端,服务端和数据库服务器分层。其次,以上几层分别提炼出客 户端上和服务端上的构件,即可视化界面构件与服务端上的应用逻辑业务构件,应该特别 注意将应用逻辑从数据中分离出来。 系统软件的逻辑结构应具备良好的层次结构,不同的层次结构间的耦合关系尽可能地 小。系统采用多层次,这样使系统易于升级。数据是系统的核心,一般比较稳定,而用户 需求变动比较频繁。为适用应用逻辑的不断变化,有必要将应用逻辑与数据相互分离,这 样易于系统升级【矧。 第9 页 信息1 = 程大学硕十学何论文 3 ) 以接口为核心 构件的输入接口代表环境为它提供的服务,输出接口代表它为环境提供的服务。构件 的输入、输出接口决定了构件之间的连接。用构件组合进行开发,接口很重要,它是构件 之间的契约。一个接口提供一种服务,完成某种逻辑行为。一个构件可以有一个或多个接 口,在系统开发中,各构件必须采用统一的标准来提供接口。 4 ) 分离应用流程和业务构件 业务处理应用流程是通过调用一系列的底层业务构件来运行的。底层业务构件是提供 较为固定的业务服务。而业务处理的实现流程,相对业务构件来说,有相对较大的可变性。 将业务处理应用流程和业务构件分离,可以大大提高系统的灵活性,而且便于系统部件之 间的横向联合和信息共享,从而更好地实现系统一体化。 5 ) 设计模式可以重用【2 5 】 基于构件的开发的主要优点就是可重用,它的目标是代码、设计和解决方案都能重用。 设计模式是设计经验的记录,利用它可以达到事半功倍的效果。 3 3 系统的总体结构 系统的总体结构从系统的拓扑结构和构件的体系结构两个方面来说明,下面分别对它 们进行简要描述。 3 3 1 系统拓扑结构 移动警务系统采用了具备清晰的逻辑、高效率的( c + s + d ) 三层结构,它们分别是客户 端( 移动终端) 、服务端和数据库服务器。系统的拓扑结构如3 1 图所示1 2 6 1 1 2 7 。 图3 1 移动警务系统的拓扑结构图 第1 0 页 蛄 矿 氇昏厂 信息工程大学硕十学伊论文 客户端:客户端程序驻留在手机、p d a 等具有编程功能的移动终端上,客户端负 责向后台服务端发送业务请求信息。 服务端:主要负责对客户端的请求进行相对的业务处理,系统中的各种业务逻辑都 封装在服务端。 数据库服务器:警务数据库以分散式的方式存储在数据库服务器上。 移动终端是公安干警进行信息查询的工具,移动警务系统的客户端程序就驻留在移动 终端上面,公安干警通过移动警务系统的客户端来进行信息查询、录入。移动终端的最终 服务是由移动警务系统的服务端提供的,所以,整个移动警务系统的内部业务都是由移动 警务服务端来实现的。 移动终端发起无线请求,来自移动终端的数据经过基站后分流,通过g p r s 业务支持 节点s g s n ( s e r v i n gg p r ss u p p o r tn o d e ) 进入g p r s 骨干网,经由g p r s 网关支持节点 g g s n ( g a t a w a yg p r ss u p p o r tn o d e ) 接入i n t e m e t 网络,再经过防火墙的过滤,到达公安 内网。移动终端发送的业务请求信息通过移动警务服务端调用数据库服务器进行业务处 理,并且得到它的相关返回警务信息,通过其原来的传输通道传递到移动终端。 3 3 2 系统的构件体系 本系统采用的客户端、服务端和数据库服务器( c + s + d ) 三层结构是按照界面、事务 和数据来划分系统。界面表示逻辑,用于覆盖与用户直接关联的前端应用;事务处理逻辑, 体现系统的核心处理功能;数据支撑逻辑,用于解决用户事务的数据交换服务问题。三层 体系结构划分思想有利于保证用户、应用程序和数据三者之间的相互独立性,以提高系统 的整体执行效率和构架重组性能【3 l j 。 系统的客户端主要负责界面显示功能,而后台服务端主要进行业务处理。那么,我们 把系统复用的构件抽象出来。系统的构件体系结构如图3 2 所示。 客户端主要包括界面构件库、事件处理构件和存储x m l 构件配置文件的数据库。界 面构件库的主要功能是支撑用户界面显示,主要是指接受用户录入数据和显示查询结果 等。客户端的界面构件库是由原子构件和复合构件组成,复合构件和原子构件之间存在逻 辑层次关系。 服务端是由w e b 服务器和应用服务器组成的,w e b 服务器负责建立网络连接,而应用 服务器负责调用业务构件库进行业务处理。业务构件库的主要功能是访问数据库、封装特 定业务逻辑、完成事务处理等。业务构件库中的每个警务业务构件都有一些对外部可见的 属性和操作,供需要的模块进行调用。所有的警务业务构件都是原子构件,不存在构件之 间的协作和交互。 按功能划分,数据库服务器上存放三种类型的数据库,分别是构件配置文件数据库、 添加业务数据库和基本业务数据库。 第1 1 页 信息工程大学硕十学位论文 客 户 蠕 履 务 蠕 i 隔¥掣疆碧 客户端界面的。构件i( 事荐蓉理f l 墼墨| = o 目_ = 二i i ! i i 亟 配量文件数据库 ,j ! ! i _ o 墨蔓塑堡! 、o+触发il 1 i * 界面显示、i 堕 h t t p 请求 逗回数据 w e b 服务器 库中 构件配置文件 数据库 添加业务 数据库 基本业务 数据库 图3 2 系统的构件体系结构 客户端方面的界面显示模块负责向服务端发送h t t p 请求信息,服务端的w e b 服务器 负责建立网络连接。客户端发送的消息为业务请求,则应用服务器调用相对应的业务构件 进行业务处理,通过数据库中间件对所需数据库进行操作。 我们在后面章节分别对客户端和服务端的构件化设计进行了详细描述。在客户端方 面,介绍了对界面构件库的抽象思想,以及对构件所提供的接口和特性的方法进行了详细 描述,同时还针对构件的属性、构件间的依赖关系做了详细的约定,并且也介绍了构件间 的相互作用机制和触发事件处理等内容。在配合客户端的构件化设计的情况下,分别对服 务端上的各个构件化的组成部分进行了详细描述。 第1 2 页 信息t 稃大学硕十学位论文 第四章客户端的设计与实现 移动警务系统的客户端是在j 2 m e 环境下开发的驻留在手机上的软件,它是本系统实 现构件化设计的核心组成部分。客户端的构件化设计主要体现在界面构件,它是有几种警 务系统的抽象的原子构件组成。界面构件使得客户端界面显示和具体业务定制实现分离, 并且界面构件为外界的调用提供标准接口,使客户端开发变成了构件的组合。 4 1j 2 m e 技术 在j a v a 2 平台下,s u n 为了明显区分各种j a v a 的应用,重新定义了j a v a 技术的架构, 将其分为:j 2 s e ( j a v a2 s t a n d a r d e d i t i o n ) 、j 2 e e ( j a v a2e n t e r p r i s ee d i t i o n ) 以及 j 2 m e 2 8 】【2 9 】( j a v a2m i c r oe d i t i o n ) 三种版本。j 2 s e ( 标准版) 为桌面开发和低端1 2 1 商务应用提 供了可行的解决方案;j 2 e e ( 企业版) 是面向以企业为环境而开发应用程序的专门开发人员 准备的;而j 2 m e ( 微型版) 是致力于消费产品和嵌入式设备的开发人员的最佳选择。 j 2 m e 于1 9 9 9 年6 月由s u nm i c r o s y s t e m s 第一次推向j a v a 团体,它能更好地满足j a v a 开发人员的不同需求。s u nm i e r o s y s t e m s 将j 2 m e 定义为“一种以广泛的消费性产品为目 标的高度优化的j a v a 运行时环境,包括寻呼机、移动电话、可视电话、数字机顶盒和汽车 导航系统”。j 2 m e 为小型设备带来了j a v a 语言的跨平台功能允许移动无线设备共享应用 程序。 j 2 m e 使用配置和简表定制j a v a 运行时环境( j r e ) 。配置将基本运行时的环境定义为一 组核心类和一个运行在特定类型设备上的特定j a v a 虚拟机j v m ( j a v av i r t u a lm a c h i n e ) 。 简表定义应用程序。向j 2 m e 配置中添加特定域的类,定义设备的某种作用。 下面的图表描述了不同的虚拟机、配置和简表之间的关系。它同时把j 2 s ea p i 和它 的m 进行了比较。虽然j 2 s e 虚拟机通常被称为一种m ,但是j 2 m e 虚拟机、k v m ( kv i r t u a lm a c h i n e ) 和c v m ( c o h e r e n tv i r t u a lm a c h i n e ) 都是j v m 的子集。k v m 和 c v m 均可被看作是一种j a v a 虚拟机它们是j 2 s e m 的压缩版。j 2 m e 结构如图 4 1 所示。 j 2 m em i d p1 0 规范提供一个小型的面向记录的数据库系统作为持久存储器,它就是 记录管理存储r m s ( r e c o r dm a n a g e m e n ts y s t e m ) 。p a t s 的数据是存储在非挥发性存储器上 的,从而为j 2 m e 平台提供了持久性存储。即使是在重新引导或电池电量低的情况下,它 们也能够确保记录完好无损。 第1 3 页 信息工稃大学硕十学位论文 l e 8 s t p o w e r l u | 【) e q c e s 0 5 t p f m 0 r “d d e 堪c e $ 图4 1j 2 m e 结构图 在r e e o r d s t o r e 中存储的数据是以字节的形式存在的。因为任何类型的数据都可以转 化成字节数组,所以m i d p 规范中并没有规定具体何种类型数据可以存储在r m s 中。由 于非挥发性内存的存取速度都比较慢,因此我们应该尽量减少对r m s 进行写操作的次数。 当然,设备的质量和数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年高级生命支持(ACLS)理论考核试题及答案
- 2025年药房培训试题及答案
- 药剂科2025年上半年三基培训考核试题及答案
- 2025年卫生管理知识考试试题带答案
- 2025年护理培训师招聘笔试题目及答案
- 煤矿安全培训策划课件
- 内科护理学笔记讲解
- 煤矿安全培训特色亮点课件
- 体育场馆管理员理论知识考核试卷及答案
- 消防设施监控操作员质量追溯知识考核试卷及答案
- 虾滑产品知识培训课件
- 2025-2030全球宠物电器行业发展趋势分析及投资前景预测研究报告
- 吸痰护理操作课件
- 2025年全国企业员工全面质量管理知识竞赛题库及答案(共90题)
- 2025年天津市专业人员继续教育试题及答案3
- 主要诊断及主要手术的选择原则
- 2024年急危重症患者鼻空肠营养管管理专家共识
- 医学教材 《中国高尿酸血症相关疾病诊疗多学科专家共识(2023年版)》解读课件
- 2024版债务处理咨询服务协议
- 《我们走在大路上》 课件 2024-2025学年湘教版初中美术七年级上册
- 2024年八年级物理上册必背考点113条背记手册
评论
0/150
提交评论