(通信与信息系统专业论文)扫描探针电子显微镜软件系统智能模块的设计与实现.pdf_第1页
(通信与信息系统专业论文)扫描探针电子显微镜软件系统智能模块的设计与实现.pdf_第2页
(通信与信息系统专业论文)扫描探针电子显微镜软件系统智能模块的设计与实现.pdf_第3页
(通信与信息系统专业论文)扫描探针电子显微镜软件系统智能模块的设计与实现.pdf_第4页
(通信与信息系统专业论文)扫描探针电子显微镜软件系统智能模块的设计与实现.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(通信与信息系统专业论文)扫描探针电子显微镜软件系统智能模块的设计与实现.pdf.pdf 免费下载

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

文档简介

东北大学硕士学位论文摘要 扫描探针电子显微镜软件系统智能模块的设计与实现 摘要 近2 0 年来,计算机检测及软件设计开发等高新技术得到了迅猛发展,在这背景形 势下,产品的智能化和自动化已经成为目前检测分析仪器科技与产业的发展主流。扫描 探针电子显微镜( s c a n n i n gp r o b em i c r o s c o p e ,s p m ) 具有精度较高、对样品无特殊要求、 检测快捷和日常维护运行费用较低等优点,因此,s p m 一经发明在很短的时间内便得到 了广泛的应用。3 4 0 1s p m 缺陷分析装置是2 0 0 5 年日本电子株式会社( j e o ll t d ) 与 东软软件股份有限公司合作研发的新一代的扫描探针电子显微镜缺陷分析装置,它与历 史同类产品相比最大的优势是软件系统的智能化水平与数据自动处理能力有了极大的提 高。 本文的主要研究内容是为3 4 0 1s p m 缺陷分析装置的软件系统设计实现智能模块,以 提高其智能性和方便用户进行结果分析。本课题的工作集中在图像抓拍控制子系统、算 法子系统和探针控制子系统这三个模块的设计与实现上。首先采用了面向对象的分析方 法对软件系统的整体架构和已有实现的源代码进行了分析,然后遵循分层、开放性、一 致性、模块化、松散耦合等设计原则对这三个子系统使用面向对象的方法进行了设计与 实现。在设计与实现中采用了单件模式( s i n g l e t o n m o d e ) 、外观模式( f a c a d e m o d e ) 、工 厂方法( f a c t o r ym e t h o d ) 等经典的设计模式来提高整个软件系统的有效性与可扩展性。 文中的所有设计均已实现并通过了测试,对每个子系统本文都提供了详细设计描述和部 分实现代码。在本文的最后给出了这三个子系统的单体测试结果和系统测试结果。 软件系统智能模块的设计采用的是基于统一建模语言( u n i f i e dm o d e l i n gl a n g u a g e , u m l ) 的标准建模方法,所有设计文档均采用u m l 标准设计来表示。因此,文中的设计 不但全部使用了标准的u m l 子系统划分图、类图和时序图来描述,同时给出了关键程 序流程图,这使整个智能模块的描述更加清晰和简洁。 关键词:扫描探针电子显微镜检测仪器统一建模语言智能设备 i i 。 东北走学硕士学位论文 a b s t r a c t d e s i g na n di m p l e m e n t a t i o no fi n t e l l i g e n c em o d u l ei ns o f t w a r e s y s t e mf o rs c a n n i n gp r o b em i c r o s c o p e a b s t r a c t i nt h ep a s t2 0y e a r s c o m p u t e rd e t e c t i o nt e c h n o l o g i e sa n ds o f t w a r ed e s i g nt e c h n o l o g i e s h a db e e ng r e a t l yi m p r o v e d u n d e rs u c hc i r c u m s t a n c e s ,t h e p m d u c t s i n t e l l i g e n c e a n d a u t o m a t i z a t i o nr a t ea r et h em a i n s t r e a mo f t h ed e t c o d o na n da n a l y z ee q u i p m e n t s d e v e l o p m e n t s s c a n n i n gp r o b em i c r o s c o p e ( s p m ) h a st h ea d v a n t a g e so fh i 曲p r e c i s i o n ,n os p e c i a l r e q u i r e m e n t sf o rs a m p l e s ,l o wc o s t sf o ru s u a lm a i u t a n c e ,s os h o r t l ya f t e ri ti si n v e n t e d ,i ti s r a p i d l ya n dw i d l yu s e d 3 4 0 1s p m d e f e c ta n a l y z ee q u i p m e n ti san e wg e n e r a t i o ns c a ne l e c t r o n m i c r o s c o p ed e v e l o p e di n2 0 0 5b yj e o ll t da n dn e u s o f tl t d ,c o m p a r e dw i t ht h ep r e v i o u s c o n g e n e rp r o d u c t s ,t h em o s ti m p o r t a n ti m p r o v e m e n t sa r et h eg r e a t l ye n h a n c e m e n to ft h e i n t e l l i g e n c el e v e la n dt h ea u t o m a t i cd a t ap m c e s s i n ga b i l i t yo f t h es o f t w a r es y s t e m w h a tw er e s e a r c hi nt h i sp a p e ri st od e s i g na n di m p l e m e n tt h ei n t e l l i g e n c em o d u l eo f t h e s o f t w a r es y s t e mf o rt h e3 4 0 1s p md e f e c ta n a l y z e e q u i p m e n t ,t h ea i mo ft h ei n t e l l e n c em o d u l e i st oi m p r o v et h ei n t e l l i g e n c el e v e la n d h e l pu s e r s t op r o c e s st e s tr e s u l t s t h et a s ko f t h ep r o j e c t i st h ed e s i g na n di m p l e m e n t a t i o no ft h ei m a g ea c q u i s i t i o ns u b s y s t e m , a l g o r i t h ma n dp r o b e c o n t r o ls u b s y s t e m + f i r s t l yw ea n a l y z e dt h ea r c h i t e c t u r ea n dt h es o u r c ec o d e so ft h es o f t w a r e s y s t e m ,t h e n , t h et h r e es u b s y s t e m sa r ea n a l y z e da n dd e s i g n e du s i n go b j e c to r i e n t e dm e t h o d s a c c o r d i n gt ol a y e r s ,o p e n i n g ,c o n s i s t e n t ,m o d u l i z a t i o na n dl o o s ec o u p l i n gd e s i g np r i n c i p l e s c l a s s i c a ld e s i g np a t t e r n ss u c ha sf a e r a d em o d e ,s i n g l e t o nm o d ea n df a c t o r ym e t h o da r eu s e dt o e n h a n c et h eu n i f i c a t i o no ft h ea r c h i t e c t u r ea n dt h ee x p a n d i n ga b i l i t yo ft h es o f t w a r es y s t e m a l lt h ed e s i g n si nt h ep a p e ra r ei m p l e m e n t e d a n da l lt h ed e s i g nd e s c r i p t i o n sa n dp a r to f i m p l e m e n t a t i o ns o u r c ec o d e sf o re a c hs u b s y s t e ma r ep r o v i d e di n t h i sp a p e r t h eu n i tt e s t r e s u l t sa n ds y s t e mt e s tr e s u l t sa r ea l s og i v e no u ta tt h ee n do f t h ep a p e r t h ed e s i g no ft h es o f t w a r es y s t e mi n t e l l i g e n c em o d u l ef o r3 4 0 1s p md e f e c ta n a l y z e e q u i p m e n ti su s i n gu m l ( u n i f i e dm o d e l i n gl a n g u a g e ) m o d e l i n gm e t h o d s ,a l lt h ed e s i g n d o c u m e n t sa r ed e s c r i b e db yu m lc r i t e r i o nm e t h o d s a sar e s u l t ,i nt h ep a p e rt h ed e s i g n sa r e d e s c r i b e db yc r i t e r i o nu m l p a c k a g ed i a g r a m ,c l a s sd i a g r a ma n ds e q u e n c ed i a g r a m ,t h ep a p e r a l s op r o v i d e dc r i t i c a lp r o g r a mf l o wc h a r t st od e s c r i b ec r i t i c a la l g o r i t h m s ,a l lt h e s ee f f o r t sm a k e t h ed e s c r i p t i o no f t h ei n t e l l i g e n c es o f t w a r es u b s y s t e mc l e a r e ra n dc o n c i s i o n k e yw o r d s :p r o b e ;s c a n n i n gp r o b em i c r o s c o p e ;a u t o m a t i o nd e t e c t i o ne q u i p m e n t ;u m l ; i n t e l l i g e n c ee q u i p m e n t i i 独创性声明 本人声明,所呈交的学位论文是在导师的指导下完成的。论文中取得 的研究成果除加以标注和致谢的地方外,不包含其他人己经发表或撰写过 的研究成果,也不包括本人为获得其他学位而使用过的材料。与我一同工 作的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示谢 意。 学位论文作者签名:球易雩 日鼹j 训。 学位论文版权使用授权书 本学位论文作者和指导教师完全了解东北大学有关保留、使用学位论 文的规定:即学校有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅。本人同意东北大学可以将学位论文的全部 或部分内容编入有关数据库进行检索、交流。 ( 如作者和导师不同意网上交流,请在下方签名;否则视为同意。) 学位论文作者签名: 签字日期: 导师签名: 签字日期: 东北大学硕士学位论文 第一章绪论 1 1 电子显微镜概况 1 1 1 电子显微镜的发展 第一章绪论 电子束的波长比光波短,用电子束代替光波后的显微镜的分辨率远远超过光波,所 以使用电子显微镜可以看到比光学显微镜更细微的物体,电子显微镜的发展大致可以分 为两代【l 】= 第一代为普通电子显微镜。普通电子显微镜按成像原理不同分为透射电子显微镜 ( t r a n s m i s s i o ne l e c t r o nm i c r o s c o p e ,t e m ) 和扫描电子显微镜( s c a n n i n ge l e c t r o n m i c r o s c o p e ,s e m ) 两大类。透射电镜成像原理与透射式光学显微镜完全相同,只不过是 将可见光照明换成电子束照明。扫描电镜成像是利用细聚焦高能电子束在样品表面扫描 激发出各种物理信号,如二次电子、背反射电子等。通过相应的检测器来检测这些信号, 再将其转换为视频信号来调制显像管的亮度1 2 l 。 第二代为扫描探针电子显微镜。它也可简称为探针电子显微镜( s c a n n i n gp r o b e m i c r o s c o p e ,s p m ) 。扫描探针电子显微镜可以立体放大观察试样,而且试样可以是非导 体或者表面光滑平整,这样样品的制备就变的简单多了。此外,使用s p m 不仅能观察 原子和操纵原子,而且还可以用来进行试样的表面缺陷探查p 】。 我国在该领域的研究和开发工作起步很早,中国科学院化学研究所自1 9 8 7 年起先后 研制成功了我国的第一台扫描探针显微镜仪器,并且从1 9 8 9 年起,中科院化学所本原纳 米仪器公司批量生产相关仪器,其中c s t m c s p m 系列扫描探针显微镜( s p m ) 累计产 销百余台,装备了我国( 包括港、台地区) 和美国、日本、新加坡等一批高水准的实验 室并取得了大量高水平的应用成果1 4 j 。经过2 0 年的发展,迄今扫描探针显微镜家族已经 包括了2 0 多种仪器,图像采集控制系统也实现了基于d s p 的全数字反馈控制,在线控 制软件和数据分析软件也实现了可运行于w i n d o w $ 操作系统的版本【5 j 。 1 1 2 扫描探针电子显微镜工作原理 扫描探针电子显微镜( s p m ) 的原理是用聚焦电子束在试样表面逐点扫描成像。由 电子枪发射的能量为5 3 5 k e v 的电子在2 3 0 k v 之间的加速电压的作用下,经过三个 电磁透镜汇聚成一个细小到5 n m 的电子束,冲击到试样上,由于高能电子与物质的相互 作用,在试样上便产生各种信息,如二次电子、背反射电子等电予信号。因为从试样中 所得到各种电子信号的强度和分布同试样的表面形貌、成分、晶体取向等因素有关,因 此,通过接收和处理这些电子信号信息就可以获得表征试样形貌的扫描电子像州。为了 东北大学硕士学位论文第一章绪论 获得扫描电子像,通常是用探测器把来自试样表面的信息接收后再经过信号处理系统和 放大系统变成信号电压,最后输送到显像管来调制显像管的亮度,这样就可以得到一个 反映试样表面状况的扫描电子图像口 ,探针是用来分析试样缺陷的。图1 1 说明了扫描 探针电子显微镜的设备组成示意图1 8 1 。 s p m 作为新型的显微工具与以往的各种显微镜和分析仪器相比有着其明显的优势: ( 1 ) s p m 具有极高的分辨率,分辨率为原子级f 9 1 ( 0 i n t o ) ,这是一般显微镜甚至电子 显微镜所难以达到的。 ( 2 ) s p m 得到的是实时的、真实的样品表面的高分辨率图像i l o 。而不同于某些分析 仪器是通过间接的或计算的方法来推算样品的表面结构。 f 3 ) s p m 的使用环境宽松。s p m 既可以在真空中工作,又可以在大气中、低温、常 温、高温,甚至在溶液中使用f l l i 。因此s p m 适用于各种工作环境下的科学实验。 f 4 ) s p m 的价格相对于电子显微镜等大型仪器来讲是较低的1 1 埘。 s p m 主要的不足是由于其工作原理是控制具有一定质量的探针进行扫描成像,因此 扫描速度受到限制,测效率较其他显微技术要低【1 3 1 ,本项目所开发的s p m 的扫描效率 是9 0 s 一帧图像;另外,目前电子显微镜的智能化程度还不够高,用户往往要经过复杂 的操作才能得到结果,另外还要对结果进行手工计算得到所测的参数,3 4 0 1s p m 软件 系统智能模块的作用就是方便用户操作和帮助用户进行自动结果分析处理。 1 23 4 0 1s p m 缺陷分析装置 3 4 0 1s p m 缺陷分析装置是新一代的扫描探针显微镜缺陷分析装置,该设备是2 0 0 5 年研发的新型号探针电子显微镜( s p m ) ,它与历史同类产品的升级主要是软件控制系 统智能化模块的升级。s p m 的硬件设备已经基本定型,今后的改进方向主要是提高智能 化水平和数据自动处理能力这个方向。3 4 0 1s p m 的工作原理是用扫描电子显微镜( s e m ) 移动到观察对象( 缺陷) 的位置进行抓拍图像后,再用设备的探针( p r o b e ) 进行表面电 气特性评价的装置。图1 1 说明了扫描探针显微镜( s p m ) 的缺陷分析设备组成示意图, 图中上方是扫描电子显微镜抓拍系统,主要负责图像的抓拍,下方有四个探针,用来进 行缺陷分析的。可见3 4 0 1s p m 在追加了智能模块后智能化和自动数据处理能力方面均 会有很大的提高,不但具有图像抓拍的能力,而且还有缺陷分析能力。可以预见3 4 0 1s p m 缺陷分析装置将会是款非常具有市场竞争力的产品。 3 4 0 1s p m 软件系统的用户界面( u s e ri n t e r f a c e ,u i ) 如图1 。2 所示。用户界面( u d 左侧是用来现实观察到的图像的;右侧是设鼍抓拍参数如抓拍区域、倍率重叠率以及存 取路径等参数的,右侧还有控制抓拍的开始、暂停和停止等功能的控制按钮;下侧左边 是控制探针移动的控制按钮,下侧右边是整个s p m 系统的状态缩略显示图,它显示了 当前的s p m 系统是否为抓拍状态以及是否有试样等状态信息。 2 东北大学硕士学位论文第一章绪论 获得扫描电子像,通常是用探测器把柬自试样表面的信息接收后再经过信号处理系统和 放大系统变成信号电压,最后输送到显像管来调肯9 显像管的亮度,这样就可以得到卟 反映试样表面状况的扫描电子图像【7 j ,探针是用来分析试样缺陷的。图1 1 说明了扫描 探针电子鼹微镜的设备组成示意图删。 s p m 作为新型的显微工具与以往的各种显微镜和分析仪器相比有着其明显的优势: ( 1 ) s p m 具有极高的分辨率,分辨率为原子级唧( 0 i n t o ) ,这是一般显微镜甚至电子 显微镜所难以达到的。 ( 2 ) s p m 得到的是实时的、真实的样品表面的高分辨毫图像【l ”。而不同于某些分析 仪器是通过问接的或计算的方法来推算样品的表面结构。 ( 3 ) s p m 的使用环境宽松。s p m 既可以在真空中工作,又可以在大气中、低温、常 温、高温,甚至在溶液中使用”“。因此s p m 适用于各种工作环境下的科学实验。 ( 4 ) s p m 的价格相对于电子显微镜等大型仪器来讲是较低的1 1 2 1 。 s p m 主要的不足是由于其工作原理是控制具有一定质量的探针进行扫描成像,因此 扫描速度受到限制,测效率较其他显微技术要低 j 3 1 ,本项目所开发的s p m 的扫描效率 是9 0 s 一帧图像:另夕卜,目前电子显微镜的智能化程度还不够高,用户往往要经过复杂 的操作才能得到结果,另外还要对结果进行手工计算得到所测的参数,3 4 0 1s p m 软件 系统智能模块的作用就是方便用户操作和帮助用户进行自动结果分析处理。 1 23 4 0 1s p m 缺陷分析装置 3 4 0 1s p m 缺陷分析装置是新一代的扫描探针显微镜缺陷分析装置,该设备是2 0 0 5 年研投的新型号探针电子显微镜( s p m ) ,它与历史同类产品的升级主要是软件控制系 统智能化模块的升级。s p m 的硬件设备已经基本定型,今后的改进方向主要是提高智能 化水平和数据自动处理能力这个方向。3 4 0 1s p m 的工作原理是用扫描电子显微镜( s b m ) 移动到观察对象( 缺陷) 的位置进行抓拍图像后,再用设备的探针( p r o b e ) 进行表面电 气特性评价的装置。图1 1 说明了扫描探针显微镜( s p m ) 的缺陷分析设备组成示意图, 图中上方是扫描电子显微镜抓拍系统,主要负责图像的抓拍,下方有四个探针,用来进 行缺陷分析的。可见3 4 0 1s p m 在追加了智能模块后智能化和自动数据处理能力方面均 会有很大的提高,不但具有图像抓拍的能力,而且还有缺陷分析能力,可以预见3 4 0 1s p m 缺陷分析装置将会是一款非常具有市场竞争力的产:品。 3 4 0 ls p m 软件系统的用户界面( u s e r i n t e r f a c e ,u i ) 如图1 2 所示。用户界面( u 1 ) 左侧是用来现实观察到的图像的;右侧是设置抓拍参数如抓拍区域、倍率重叠率以及存 取路径等参数的,右侧还有控制抓拍的开始、暂停和停止等功能的控制按钮;下侧左边 是控制探针移动的控制按钮,下侧右边是整个s p m 系统的状态缩略显示图它显示了 当前的s p m 系统是否为抓拍状态以及是否有试样等状态信息。 当前的s p m 系统是否为抓拍状态以及是否有试样等状态信息。 2 东北大学硕士学位论文第一章绪论 图1 1 扫描探针显微镜( s 瑚) 的缺陷分析探针工作示意图 f i g 1 1 o p e r a t i o n p r i n c i p l e o f 3 4 0 1s e a l m i n g p r o b e m i c r o s c o p e 图1 2 3 4 0 1s p m 软件的用户界面 f i g 1 2 u s e r i n t e r f a c eo f 3 4 0 1s p ms o f t w a r e 3 东北大学硕士学位论文第一章绪论 1 3 研究内容及工作 整个扫描探针电子显微镜( s p m ) 系统涉及的内容比较广泛、复杂。当前国际上的 发展方向主要是实现综合自动化的测试系统,而其中软件智能化是升级最快的方向【i 4 1 。 本课题的主要研究内容是为新型3 4 0 1s p m 缺陷分析装置的软件系统追加智能模块, 以提高智能性和方便用户操作与结果分析。论文主要工作集中在软件系统智能模块的图 像抓拍控制子系统、算法子系统和探针控制子系统三个模块的设计与实现上。在研发过 程中,首先对系统的整体架构进行了分析,在既存系统上追加的软件模块应遵循原有的 软件系统架构,这样才能方便设计与升级。其次对这三个模块使用面向对象的分析与设 计的方法进行了分析设计,迸一步划分了子模块,并将子模块设计成各个实现类对象, 并按照各个对象所要实现的功能添加属性和方法。最后完成了这三个功能模块的所有实 现,并通过验收。 追加子系统的整个工程共分为三个模块,相应的项目分为三期,每期项目又分为四 个阶段,各个阶段工作量所占的比例分别为;需求分析1 5 ;系统设计3 5 ;编码实现 3 0 0 ;软件测试2 0 。图1 3 描述了各个阶段的比例。 图1 3 每期各个阶段的工作量划分图 f i g d 3w o r k q u a n t i t y d i s t r i b u t i o n f o r e a c h p h a s e 1 4 论文组织结构 本文内容的组织结构安排如下: 第一章绪论。介绍探针电子显微镜的发展和原理,3 4 0 1s p m 缺陷分析装置简介和研 究的主要工作。 第二章软件系统的系统设计。首先介绍了本软件系统追加模块应用的设计原则与设 计模式,然后介绍软件系统的整体架构与追加软件模块的模块划分。 正 东北大学硕士学位论文第一章绪论 第三章抓拍控制子系统的设计与实现。按照s e r v i c e 层和u i 层分别详细说明了子系 统的对象设计,同时提供了子系统的关键类图、时序图、程序流程图等详细设计实现。 第四章算法子系统的设计与实现。算法子系统主要分为分解坐标分解算法子系统和 合成坐标算法子系统两大子系统。本章详细说明了算法的原理步骤与对象设计,另外还 提供了子系统的关键类图、时序图和程序流程图的实现。 第五章探针控制子系统的设计与实现。本章详细说明了探针控制子系统的对象设计, 并提供了子系统的关键类图、时序图、程序流程图等详细设计实现。 第六章结束语。介绍了整个软件系统的测试过程中用到的测试方法和工具,并给出 了测试结果,最后对整篇论文的内容进行了全面总结。 5 东北大学硕士学位论文第二章软件系统的整体设计 第二章软件系统的整体设计 2 1 软件设计方法与原则 2 1 1 统一建模语言 软件工程领域在1 9 9 5 年至1 9 9 7 年取得了前所未有的进展,其成果超过软件工程领域 过去1 5 年来的成就总和,其中最重要的、具有划时代重大意义的成果之一就是统一建模 语言( u m l :u n i f i e dm o d e l i n gl 锄g u a g e ) 的出现i l 。u m l 已经成为面向对象技术领域内的 标准建模语言。它溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于 支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。 u m l 统一建模语言( u n i f i e dm o d e l i n gl a n g u a g e ,u m l ) 是第三代为面向对象开发 系统的产品进彳亍设计的可视化和编制文档的方法。它包括u m l 语义和u m l 表示法两个 部分【”1 ,u m l 语义是一种图( 通常是类图) ,描述基于u m l 的精确元模型定义;元模型 为u m l 的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能 在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。此外u m l 还为开发 者或开发工具使用这些图形符号和文本语法进行系统建模提供了标准,这些图形符号和 文字所表达的是应用级的模型,在语义上它是u m l 元模型的实例【l q 。 标准建模语言u m l 的重要内容可以由下列五类图来定义f l q 第一类是用例图,它从 用户角度描述系统的功能,并指出各功能的操作者;第二类是静态图( s t a t i cd i a g r a m ) ,包 括类图、对象图和包图。其中类图描述系统中类的静态结构,它不仅定义了系统中的类 即类的内部结构,而且描述了类之问的联系如关联、依赖、聚合等。类图描述的是一种 静态关系,在系统的整个生命周期都是有效的。包图由包或类组成,表示包与包之间的 关系。包图用于描述系统的分层结构:第三类是行为图( b e h a v i o r d i a g r a m ) ,描述系统的动 态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及事件发 生时状态的转移条件。通常,状态图是对类图的补充。而活动图是用于描述满足用例要 求所要进行的活动以及活动间的约束关系;第四类是交 ( i n t e r a c t i v ed i a g r a m ) ,它描述 对象间的交互关系。其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发 送的顺序,同时显示对象之间的交互;合作图描述对象间的协作关系,合作图与顺序图 相似,也表示对象间的动态合作关系。除显示信息交换外,合作图还显示对象以及它们 之间的关系。如果强调时间和顺序,则使用顺序图;如果强调上下级关系,则选择合作 图;第五类是实现图( i m p l e m e n t a t i o nd i a g r a m ) 。其中构件图描述代码部件的物理结构及 各部件之间的依赖关系。部件图有助于分析和理解部件之间的相互影响程度。 u m l 是一种定义良好、易于表达、功能强大且普遍适用的建模语言,正因如此,本 - 6 一 东北大学硕士学位论文 第二章软件系统的整体设计 文智能软件模块的分析设计一律采用的是u m l 建模语言进行的开发设计。 2 1 2 面向对象分析设计方法 在进行设计的过程当中采用了面向对象的分析和设计的方法,分析中定义的语义对 象在设计时被细化。在设计阶段会得到面向解的新对象,这些对象被添加到模型中。解 题域的对象包括代表语义对象实现的应用对象、界面对象和服务对象【1 2 】。设计阶段分为 两个部分:系统设计和对象设计。系统设计做出高层的系统决策,确定基本的软件结构, 并将应用系统结构划分成子系统和分配各种资源。对象设计的目标是确定对象的细节。 分析阶段的对象在对象设计阶段被细化,它们把问题( 业务) 域映射到解( 计算机) 域, 根据需要加入系统支持的服务类,再进一步根据用例图的分析结果,确定一组对象如何 进行交互,根据类之间的关系,添加与之相关的属性、方法并设计方法的算法。考虑到 可扩展性和可重用性,同时要设计子系统间的接口;再设计图形用户接口( g r a p h i cu s e r i m e f f a c e ,g u i ) ,为分析阶段产生的用户接口设计与图形相关的类及对象1 1 7 1 。 面向对象程序由对象组成,对象包括数据和对数据进行操作的过程,过程通常称为 方法或操作。对象在收到客户的请求( 或消息) 后,执行相应的操作。客户请求是使对象 执行操作的唯一方法,操作又是对象改变内部数据的唯一方法。由于这些限制,对象的 内部状态是被封装的,它不能被直接访问,它的表示对于对象外部是不可见的。面向对 象设计最困难的部分是将系统分解成对象集合。因为要考虑许多因素:封装、粒度、依 赖关系、灵活性、性能、演化、复用等等,它们都影响着系统的分解,并且这些因素通 常还是互相冲突的。面向对象设计方法学支持许多设计方法,例如,可以写出一个问题 描述,挑出名词和动词,进而创建相应的类和操作;或可以关注于系统的协作和职责关 系;也可以对现实世界建模,再将分析时发现的对象转化至设计中。设计的许多对象来 源于现实世界的分析模型,但是,设计结果所得到的类通常在现实世界中并不存在,有 些是像数组之类的低层类,而另一些则层次较高。严格反映当前现实世界的模型并不能 产生也能反映将来世界的系统。设计中的抽象对于产生灵活的设计是至关重要的。 对象在大小和数目上变化极大,它们能表示下自硬件或上自整个应用的任何事物。 所以设计对象的粒度也是一个重要的问题。可以依据设计模式怎样将一个对象分解成许 多小对象的特定方法。例如a b s l r a c tf a c t o r yb u i l d e r 产生那些专门负责生成其他对象的对 象。v i s i t o r 和c o m m a n d 生成的对象专门负责实现对其他对象或对象组的请求等等方法。 对象操作所定义的所有操作型构的集合被称为该对象的接v ( i n t e r f a c e ) 。对象接口描 述了该对象所能接受的全部请求的集合,任何匹配对象接口中型构的请求都可以发送给 该对象。类型( t y p e ) 是用来标识特定接口的一个名字。一个对象可以有许多类型,并且 不同的对象可以共享同一个类型。对象接口的某部分可以用某个类型来刻画,而其他部 分则可用其他类型刻画。两个类型相同的对象只需要共享它们的部分接口。在面向对象 系统中,接口是基本的组成部分。对象只有通过它们的接口才能与外部交流,如果不通 7 东北大学硕士学位论文 第二章软件系统的整体设计 过对象的接口就无法知道对象的任何事情,也无法请求对象做任何事情。对象接口与其 功能实现是分离的,不同对象可以对请求做不同的实现,也就是说,两个有相同接口的 对象可以有完全不同的实现。当给对象发送请求时,所引起的具体操作既与请求本身有 关又与接受对象有关,支持相同请求的不同对象可能对请求激发的操作有不同的实现。 对象的实现是由它的类决定的,类指定了对象的内部数据和表示,也定义了对象所 能完成的操作,对象通过实例化类来创建,此对象被称为该类的实例f 1 8 】。当实例化类时, 要给对象的内部数据( 由实例变量组成) 分配存储空间,并将操作与这些数据联系起来。 对象的许多类似实例是由实例化同一个类来创建的。 2 1 3 软件系统设计原则 面向对象设计最困难的部分是将系统分解成为对象集合,所以考虑到追加模块系统 是原软件系统的追加升级,在设计子模块系统时要充分考虑到与原软件系统的架构的统 一,其中包括系统模块的分层,以及各个模块之间接口风格都要与原系统保持一致【1 9 j 。 基于以上要求,在设计系统过程中,主要遵循了如下原则: ( 1 ) 分层原则:将系统分成构件组,并使构件组形成层叠结构;使上层只使用下层 ( 决不使用上层) 提供的服务;尽量不使用非紧邻下层提供的服务 ( 2 ) 模块化原则:目前流行的软件开发模式都支持把系统分解成模块的设计原理。 它是把数据结构和操作这些数据的方法紧密地结合在一起所构成的模块。这些 模块相互独立,但又相互关联,各自分担主系统的一部分功能。有了模块的划 分,从而使得整个系统的操作流程更加清晰、直观1 2 0 j 。 ( 3 ) 松散耦合原则:耦合指一个软件结构内不同模块之间互连的紧密程度。弱耦合 是优秀设计的个重要标准,因为这有助于系统中某一部分的变化对其他部分 的影响降到最低程度。在理想情况下,对某一部分的理解、测试或修改,无须 涉及系统的其它部分1 2 1 】。 ( 4 ) 封装原则:在面向对象方法中,信息隐藏通过对象的封装性实现,类结构分离 了接口与实现,从而支持了信息隐藏。 ( 5 ) 可重用原则:软件重用是提高软件开发效率和目标系统质量的重要途径。重用 基本上从设计阶段开始,它有两方面的含义:一是尽量使用已有的类;二是如果 确实需要创建新类,则在设计这些新类的协议时,应该考虑将来的可重用性田】。 ( 6 ) 开放性原则:即具有可扩充性和可更改性,一个系统是否开发成功、是否具有 生命力很大程度上要看系统是否具有开放性原则,是否易于维护和完善u ”。 ( 7 ) 一致性原则:新追加的模块定要添加到相应的分层中去,模块分解与实现要 尽量与原系统一致i 功。 8 东北大学硕士学位论文 第二章软件系统的整体设计 2 1 4 应用的设计模式 设计面向对象软件比较困难,而设计可复用的面向对象软件就更加困难。首先必须找 到相关的对象,以适当的粒度将它们归类,再定义类的接口和继承层次,建立对象之间 的基本关系瞄l 。设计模式使人们可以更加简单方便地复用成功的设计和体系结构,而且, 将已证实的技术表述成设计模式也会使新系统开发者更加容易理解。设计模式帮助设计 者做出有利于系统复用的选择,避免设计损害系统复用性,它通过提供一个显式类和对 象作用关系或者它们之间潜在联系的说明规范,来提高已有系统的管理和维护的有效性, 或者帮助设计者更快更好地完成新的系统设计。以下是智能模块设计中应用到的设计模 式。 2 1 4 1 外观模式 外观模式( f a c a d em o d e ) 为子系统中的一组接口提供一个一致的界面,f a c a d e 模 式定义了一个高层接口,这个接口使得这一子系统更加容易使用1 2 4 1 。在一个面向对象设 计的系统中,将一个系统划分成为若干个子系统有利于降低系统的复杂性。一个常见的 设计目标是使子系统间的通信和相互依赖关系达到最小,达到该目标的途径之一是就是 引入一个外观( f a c a d e ) 对象,它为予系统中较一般的设施提供了个单一而简单的界 面【2 4 】。 f a c a d e 模式有下面一些优点瞄j :它对客户屏蔽子系统组件,因而减少了客户处理的 对象的数目并使得子系统使用起来更加方便;它实现了子系统与客户之间的松耦合关系, 而子系统内部的功能组件往往是紧耦合的。松耦合关系使得子系统的组件变化不会影响 到它的客户,f a c a d e 模式有助于建立层次结构系统,也有助于消除复杂的循环依赖关系; 用f a c a d e 可以降低编译依赖性,限制重要系统中较小的变化所需的重编译工作,f a c a d e 模式同样也有利于简化系统在不同平台之间的移植过程,因为编译一个子系统一般不需 要编译所有其他的子系统 如果应用需要,f a c a d e 并不限制它们使用子系统类,因此可 以在系统易用性和通用性之间加以选择。 2 1 4 2 单件对象创建模式 单件对象创建模式( s i n g l e t o nm o d e ) 保证一个类仅有一个实例,并提供一个访问它 的全局访问点。让c l a s s 自身负责保存它的唯一实例。这个类可以保证没有其他实例可 以被创建( 通过截取创建新对象的请求) ,并且它可以提供一个访问该实例的方法。这 就是s i n g l e t o n 模式 2 4 1 。在设计追加子系统时,为保证子系统的稳定性和一致性,多处采 用了s i n g l e t o n 的设计模式。 s i n g l e t o n 模式有很多优点:对唯一实例的受控访问,因为s h a g l e t o n 类封装它的唯一 实例,所以它可以严格的控制客户怎样以及何时访问它:允许对操作和表示的精化, s i n g l e t o n 类可以有子类,而且用这个扩展类的实例来配置一个应用是很容易的;此外, 还可以用相同的方法来控制应用所使用的实例的数目。 9 东北大学硕士学位论文 第二章软件系统的整体设计 2 14 3 工厂方法 工厂方法( f a c t o r ym e t h o d ) 定义了一个用于创建对象的接口,让子类决定实例化哪一 个类f 2 4 】,f a c t o r ym e t h o d 使一个类的实例化延迟到其子类。s e r v i c el a y e r 包含探针控制、 试样台控制和图像抓拍控制等多种服务,当想要使用某一服务时,可以采用工厂方法来 对其进行创建。 2 2 软件系统总体架构设计 2 2 1 软件系统框架 整个软件系统的架构共分为4 层,自底向上依次为d r i v e rl a y e r 、v ml a y e r 、s e r v i c e l a y e r 和u il a y e r 。d r i v e rl a y e r 、v ml a y e r 和2 0 0 3p c s e mc o n t r o l 与3 4 0 1o l d g u i 这些 模块主要是原系统的既存模块,d r i v e r l a y e r 和v ml a y e r 图中所列出来的模块代表智能模 块需要调用和修改的模块,2 0 0 3p c s e mc o n t r o l 与3 4 0 1o l dg u i 这两个模块代表不修 改的模块,3 4 0 1p l u sg u i 和m o n t a g ec o n t r o l 这两个的模块表示本次新追加的智能模块。 图2 1 软件系统框架图 f i g 2 1s y s t e ma r c h i t e c t u r em a p 下面介绍各层的主要功能:d r i v e rl a y e r 的功能:提供对硬件的底层操作调用服务, 分为图像抓掐功能的驱动和探针( p r o b e ) 与试样台( s t a g e ) 的控制操作两个子功能模 块;v m l a y e r 的功能:对d r i v e r l a y e r 迸行封装,为了方便上层应用开发所封装的一层, 它将d r i v e r 层的功能细分为i m a g e t r a n s f e r v m 、s e m v m 和m o n i t o r v m 三个模块。i m a g e 1 0 东北大学硕士学位论文 第二章软件系统的整体设计 t r a n s f e rv m 主要提供图像抓拍的功能服务;s e mv m 提供电子显微镜的控制功能,主 要是探针( p r o b e ) 和试样台( s t a g e ) 的控制:m o n i t o rv m 主要提供电子显微镜的各种 参数检测功能;s e r v i c el a y e r 的功能:对u il a y e r 所调用的各个功能进行功能分解和任务 调度,本层调用v m 层的服务进行实现,是整个系统的核心控制层,也是追加智能化模 块的主要实现层,本追加模块的主要任务是集中在s e r v i c el a y e r 的图像抓拍控制子系统、 算法子系统和探针控制子系统三个子系统的设计与实现;u il a y e r 的功能:主要提供友 好、简单易用的用户使用界面( u s e r i n t e r f a c e ) ,把用户的请求转化为s e r v i c e l a y e r 的调 用,方便用户操作。 2 2 2 子系统划分 系统的子系统划分图如图2 2 所示,图中将各层划分为一个个功能独立的子系统, 每个子系统也成为包( p a c k e t ) 。从软件系统的子系统划分图中我们可以看到,除了系统 的四层划分外,还有s y s t e m ,c o m m o nd a t at y p e ,c o m

温馨提示

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

评论

0/150

提交评论