(计算机科学与技术专业论文)基于软件体系结构的构件模型和语言研究.pdf_第1页
(计算机科学与技术专业论文)基于软件体系结构的构件模型和语言研究.pdf_第2页
(计算机科学与技术专业论文)基于软件体系结构的构件模型和语言研究.pdf_第3页
(计算机科学与技术专业论文)基于软件体系结构的构件模型和语言研究.pdf_第4页
(计算机科学与技术专业论文)基于软件体系结构的构件模型和语言研究.pdf_第5页
已阅读5页,还剩152页未读 继续免费阅读

(计算机科学与技术专业论文)基于软件体系结构的构件模型和语言研究.pdf.pdf 免费下载

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

文档简介

国防科学技术大学研究生院博士学位论文 摘要 构件技术和软件体系结构技术是提高软件生产率和软件质量、解决软件危机 的关键技术,但目前这两种技术面临着许多挑战性问题,比如由于构件复用程度 低、复用粒度小而导致构件技术难以为软件开发提供高质、高效的支持,由于软 件体系结构设计与系统实现之间存在鸿沟而导致软件体系结构无法有效地指导软 件开发等。这些挑战性问题使得构件技术和软件体系结构技术难以在软件开发中 发挥应有的作用,如何解决这些问题得到了普遍关注。 本文认为,构件模型和面向构件语言是解决目前构件技术和软件体系结构技 术所面临挑战性问题的突破口,因此,本文将构件模型和面向构件语言作为研究 的主要内容。在全面分析现有构件模型、面向构件语言及相关技术研究现状的基 础上,本文以解决构件技术和软件体系结构技术所面临的挑战性问题为目标,以 概念完整性和关注点分离原则为指导原则,重点在新型构件模型的研究、新型面 向构件语言的设计与实现、实现从体系结构设计到系统底层代码映射的方法、构 件接口信息的丰富等几个方面进行了系统深入的研究,主要工作包括: 1 新型构件模型的研究。构件模型定义构件的本质特征及构件之间的关系, 构件之间的关系与构件是两个不同的概念和关注点,在构件模型中都应该得到充 分的支持。但现有构件模型对构件之间的关系,特别是对交互协作关系支持不足。 针对这个问题,提出了一个基于软件体系结构的构件模型s a c m 。s a c m 引入了 连接子概念,与构件具有同等地位的连接子用于显式地描述构件之间交互协作等 关系。连接子的引入使得构件之间的交互协作在构件模型中真正成为独立于构件 之外的一阶建模实体,从而为交互协作的描述、分析和验证提供了较好的支持。 进一步,s a c m 将连接子分为被动连接子和主动连接子,被动连接子的引入使得 计算与通信相分离,主动连接子的引入使得计算与控制、通信相分离,解决了现 有构件模型中计算与控制、通信相混杂的问题。在对被动连接子和主动连接子进 行比较的基础上,提出了基于被动连接子的构件组合方法和基于主动连接子的构 件组合方法。 2 新型面向构件语言的设计与实现。为更好地支持面向构件的软件开发,程 序设计语言必须有相应的语言机制支持构件的封装、复用和组合,必须具备安全 的类型系统,但现有的程序设计语言在不同程度上缺乏支持构件复用和组合的机 制。针对这个问题,设计和实现了- - f 新的面向构件语言s a j ,s a j 的特色在于在 程序设计语言中支持了软件体系结构的核心概念。与现有的程序设计语言相比, s a j 使用端口概念进一步增强了对构件封装性的支持,使用独立于构件以外的一阶 实体一连接子来支持构件的复用和组合,强调在程序设计语言层次上为面向构件 第i 页 国防科学技术大学研究生院博士学位论文 设计原则提供支持,从而更好地支持了面向构件的软件开发。 给出了s a j 语言的语法、语义和类型系统。在类型系统中,给出了验证构件 连接的正确性、构件之间交互协作的正确性等性质的类型推导规则。证明了s a j 语言的类型安全性,类型安全性使得基于s a j 的软件开发更加安全和实用。 3 实现从体系结构设计到系统底层代码映射的方法。为使软件体系结构有效 地指导软件开发,必须实现从体系结构设计到底层代码的映射,但目前缺乏成熟 的解决方案。针对这个问题,在s a c m 和s a j 基础上,提出了一个两阶段映射的 方法。两阶段映射包括从体系结构设计模型到详细设计模型( 基于s a c m 的构件模 型) 的映射和从详细设计模型到底层实现( s a j 代码) 的映射。构件模型s a c m 和面 向构件语言s a j 都支持软件体系结构的核心概念,所以与其它解决方案相比,两 阶段映射方法更加自然和实用,映射的正确性更容易得到保证,从而有助于保证 系统实现与体系结构设计的一致性。给出了从详细设计模型到底层s a j 代码映射 的实现方法。 4 构件接口信息的丰富。从简单和实用的原则出发,研究了如何丰富构件接 口信息。提出了构件请求服务与提供服务之间存在贡献关系和依赖关系的观点, 进而提出在构件端口上显式描述贡献关系和依赖关系的方法,贡献关系和依赖关 系的显式描述使构件能够更灵活地适应环境,能提高构件的复用程度。提出了服 务参数值对构件行为协议有影响的观点,提出了在构件行为协议中显式描述服务 参数值的方法。 综上所述,本文的工作针对目前构件模型和面向构件语言中亟待解决的几个 重要问题提出了有效的解决方案,对于推进构件模型和面向构件语言的研究,对 于解决构件技术和软件体系结构技术所面临的挑战性问题,具有一定的理论意义 和应用价值。 主题词:软件体系结构构件连接子概念完整性关注点分离类型系统 第i i 页 国防科学技术大学研究生院博士学位论文 a b s tr a c t c o m p o n e n ta n ds o f t w a r ea r c h i t e c t u r et e c h n o l o g i e s ,t h ek e yt e c h n o l o g i e s i n i m p r o v i n gs o f t w a r ep r o d u c t i v i t ya n dq u a l i t ya sw e l la ss o l v i n gs o f t w a r ec r i s i s ,a r e f a c i n gc h a l l e n g e sf o r t h ep u r p o s ea th a n d f o ri n s t a n c e ,i ti sd i f f i c u l tf o rt h ec o m p o n e n t t e c h n o l o g yt op r o v i d eh i g h - q u a l i t ya n de f f i c i e n ts u p p o r tf o rs o f t w a r ed e v e l o p m e n td u e t ol o wr e u s ed e g r e ea n ds m a l lr e u s eg m n u l a r i t yo ft h ec o m p o n e n t b e c a u s eo ft h ev a s t g a pb e t w e e ns o f t w a r ea r c h i t e c t u r ed e s i g na n di m p l e m e n t a t i o n ,s o f t w a r ea r c h i t e c t u r ec a n n o tp r o v i d ee f f e c t i v eg u i d e n c et os o f t w a r ed e v e l o p m e n t ,a n de t c s u c hp r o b l e m sd i s a b l e c o m p o n e n ta n ds o f t w a r e a r c h i t e c t u r et e c h n o l o g i e sf r o mp e r f o r m i n ga p p r o p r i a t e f u n c t i o n st os u c ha ne x t e n ta st oh a v ea r o u s e dp r e v a i l i n ga t t e n t i o n s o nt h ea s s u m p t i o nt h a tc o m p o n e n tm o d e la n dc o m p o n e n t - o r i e n t e dl a n g u a g ea r e t h eb r e a c h e st om e e tt h ec h a l l e n g e sw h i c hc u r r e n tc o m p o n e n ta n ds o f t w a r ea r c h i t e c t u r e t e c h n o l o g i e s a r e f a c i n g ,t h i s d i s s e r t a t i o n t a r g e t s c o m p o n e n t m o d e la n d c o m p o n e n t - o r i e n t e dl a n g u a g e 嬲t h ep r i m a r yc o v e r a g e b a s e du p o nt h o r o u g hr e s e a r c h a n da n a l y s i so nt h es t a t u sq u oo fs t u d i e so nc o m p o n e n tm o d e la n dc o m p o n e n t o r i e n t e d l a n g u a g ea n do t h e rr e l a t e dt e c h n o l o g i e s ,a i m e d a ts o l v i n gp r o b l e m su pa g a i n s t c o m p o n e n ta n ds o f t w a r e a r c h i t e c t u r et e c h n o l o g i e s ,g u i d e db yt h ep r i n c i p l e so f c o n c e p t u a li n t e g r i t ya n ds e p a r a t i o no fc o n c e r n s ,t h i sd i s s e r t a t i o nm a k e sas y s t e m a t i c e x p l o r a t i o ni n t os e v e r a la s p e c t si n c l u d i n gt h es t u d yo fn o v e lc o m p o n e n tm o d e l ,t h e d e s i g na n di m p l e m e n t a t i o no fn o v e lc o m p o n e n t o r i e n t e dp r o g r a m m i n gl a n g u a g e ,t h e a p p r o a c h o f m a p p i n g s o f t w a r ea r c h i t e c t u r e d e s i g n t o i m p l e m e n t a t i o n a n dt h e e n r i c h m e n to ft h ec o m p o n e n ti n t e r f a c e t h ec o n t r i b u t i o n so ft h ed i s s e r t a t i o na r el i s t e d 勰f o l l o w s : 1 t h es t u d yo fn o v e lc o m p o n e n tm o d e l c o m p o n e n tm o d e ld e f i n e st h en a t u r a l c h a r a c t e r i s t i co ft h ec o m p o n e n ta n di n t e r - c o m p o n e n tr e l a t i o n s h i p ,w h i c hs h o u l db e g i v e ne q u a l l ys u b s t a n t i a ls u p p o r ta st w ov a r i e dc o n c e p t sa n dc o n c e m si nc o m p o n e n t m o d e l n e v e r t h e l e s s ,t h ee x i s t i n gc o m p o n e n tm o d e l so f f e ri n s u f f i c i e n ts u p p o r tt 0 i n t e r - c o m p o n e n tr e l a t i o n s h i p ,e s p e c i a l l y ,t h a to f i n t e r a c t i o na n d c o l l a b o r a t i o n a i m i n ga t t h ep r o b l e m ,an o v e ls o f t w a r ea r c h i t e c t u r e b a s e dc o m p o n e n tm o d e ls a c mi sp r o p o s e d s a c mb r i n g si nt h ec o n c e p to fc o n n e c t o r , e n d o w si t 、i t l lt h ee q u i v a l e n tp o s i t i o n 勰 c o m p o n e n ta n du t i l i z e s t h i sc o n c e p tt oe x p l i c i t l y d e s c r i b es u c hi n t e r c o m p o n e n t r e l a t i o n s h i p a si n t e r a c t i o na n d c o l l a b o r a t i o n c o n s e q u e n t l y ,t h ei n t r o d u c t i o no f c o n n e c t o rm a k e saf i r s t - c l a s s m o d e l i n ge n t i t yi n d e p e n d e n to fc o m p o n e n to u t o f i n t e r c o m p o n e n ti n t e r a c t i o na n dc o l l a b o r a t i o ns o 嬲t oa f f o r db e t t e rs u p p o r tt o t h e d e s c r i p t i o n ,a n a l y s i sa n dv e r i f i c a t i o no fi n t e r a c t i o na n dc o l l a b o r a t i o n m o r e o v e r , p a s s i v e a n da c t i v ec o n n e c t o r sa r ef u r t h e rd i v i d e di n t o ,o fw h i c ht h ef o r m e rs e p a r a t e s c o m p u t a t i o nf r o mc o m m u n i c a t i o n sw h i l et h el a t t e rs e g r e g a t e sc o m p u t a t i o nf r o mc o n t r o l 第i i i 页 国防科学技术大学研究生院博士学位论文 a n dc o m m u n i c a t i o n s t h e r e f o r e ,t h ep r o b l e mo fm i x i n gc o n t r o la n dc o m p u t a t i o ni nt h e c o m p o n e n tw h i c ho c c u r si ne x i s t i n gc o m p o n e n tm o d e l s i s s o l v e d f u r t h e r m o r e , c o m p o n e n tc o m p o s i t i o nm e t h o d sb a s e do nt h ep a s s i v ea n dt h ea c t i v ec o n n e c t o ra r ep u t f o r w a r da f t e rt h ec o m p a r i s o nb e t w e e nt h et w o p r e c e d i n gc o n n e c t o r s 2 n ed e s i g na n di m p l e m e n t a t i o no fn o v e lc o m p o n e n t - o r i e n t e dp r o g r a m m i n g l a n g u a g e t op r o v i d eab e n e rs u p p o r tf o r t h ec o m p o n e n t - o r i e n t e ds o f t w a r ed e v e l o p m e n t , t h ep r o g r a m m i n gl a n g u a g es h o u l dh a v ec o r r e s p o n d i n gl a n g u a g em e c h a n i s m st os u p p o r t t h ee n c a p s u l a t i o n ,r e u s ea n dc o m p o s i t i o no ft h ec o m p o n e n ta sw e l la sas o u n dt y p e s y s t e m h o w e v e r ,t os o m ee x t e n t ,t h ep r e s e n tp r o g r a m m i n gl a n g u a g e sl a c ko f m e c h a n i s m st os u p p o r tt h er e u s ea n dc o m p o s i t i o no ft h ec o m p o n e n t a i m i n ga ts o l v i n g t h ea b o v e m e n t i o n e dp r o b l e m ,an e w c o m p o n e n t - o r i e n t e dp r o g r a m m i n gl a n g u a g es a j i sb r o u g h ti n t ob e i n g o n eo ft h ef e a t u r e so fs a ji st h a ti t s u p p o r t st h ec o r ec o n c e p t so f s o f t w a r ea r c h i t e c t u r ei np r o g r a m m i n gl a n g u a g e c o m p a r e dw i t hp r e s e n tp r o g r a m m i n g l a n g u a g e s ,s a jf u r t h e re n f o r c e st h ee n c a p s u l a t i o no fc o m p o n e n t sw i t ht h ec o n c e p to f p o r t ,s u p p o r t s t h e c o m p o s i t i o n a n dt h er e u s eo ft h e c o m p o n e n t 、i t h c o m p o n e n t i n d e p e n d e n tf i r s t c l a s se n t i t y - - t h ec o n n e c t o r ,a n dl a y sg r e a t e re m p h a s i so n t h es u p p o r tf o rc o m p o n e n t o r i e n t e dd e s i g np r i n c i p l e si nt h ep e r s p e c t i v eo f p r o g r a m m i n g l a n g u a g e ,t h e r e b yg i v e sas t r o n g e rs u p p o r tf o rt h ec o m p o n e n t - o r i e n t e ds o f t w a r e d e v e l o p m e n t t h es y n t a x ,s e m a n t i c sa n dt y p es y s t e mo fs a ja r ep r e s e n t e d m o r e o v e r i nt h et y p e s y s t e mo fs a j ,t h et y p i n gr u l e st oe n s u r es u c hp r o p e r t i e sa st h ev a l i d i t yo fc o m p o n e n t s c o n n e c t i n ga n dt h a to ft h ei n t e r a c t i o na n dc o l l a b o r a t i o na m o n gc o m p o n e n t sa r eg i v e n b e s i d e s ,t h et y p es a f e t yo fs a ji sp r o v e d ,w h i c hm a k e st h es a j b a s e ds o f t w a r e d e v e l o p m e n ts a f e ra n dm o r ep r a c t i c a l 3 t h ea p p r o a c ho fm a p p i n gs o f t w a r ea r c h i t e c t u r ed e s i g nt oi m p l e m e n t a t i o n t h e m a p p i n gf r o ms o f t w a r ea r c h i t e c t u r et oi m p l e m e n t a t i o nm u s tb er e a l i z e dt ob e t t e rt h e g u i d a n c eo fs o f t w a r ea r c h i t e c t u r ei ns o f t w a r ed e v e l o p m e n t h o w e v e r 。n om a t u r e s o l u t i o n sc o u l db ef o u n d a i m i n ga tt h i sp r o b l e m ,am e t h o do fu s i n gt w o p h a s e m a p p i n gt or e a l i z et h em a p p i n gf r o ms o f t w a r ea r c h i t e c t u r et oi m p l e m e n t a t i o ni s p r o p o s e di nt h i sd i s s e r t a t i o n t w o - p h a s em a p p i n gc o n s i s t so fm a p p i n gf r o ms o f t w a r e a r c h i t e c t u r ed e s i g nm o d e lt od e t a i ld e s i g nm o d e l ( s a c m b a s e dc o m p o n e n tm o d e l ) a n d m a p p i n gf r o md e t a i ld e s i g nm o d e lt oi m p l e m e n t a t i o n ( s a jc o d e ) s a c ma n ds a jb o t h s u p p o r tt h ec o r ec o n c e p t so fs o f t w a r ea r c h i t e c t u r e t h e r e f o r e ,c o m p a r e dw i t ho t h e r s o l u t i o n s ,t h em e t h o do ft w o p h a s em a p p i n gi sm o r en a t u r a la n dp r a c t i c a la n dt h e v a l i d i t yo fm a p p i n gc a nb eg u a r a n t e e dm o r ee a s i l y t h er e a l i z a t i o nm e t h o do ft h e m a p p i n gf r o md e t a i ld e s i g nm o d e lt os a jc o d ei sg i v e ni nt h i sd i s s e r t a t i o n 4 t h ee n r i c h m e n to ft h ec o m p o n e n ti n t e r f a c e f o l l o w i n gt h ep r i n c i p l eo fb e i n g s i m p l ea n dp r a c t i c a l ,t h ed i s s e r t a t i o ns t u d i e so nh o wt oe n r i c ht h ec o m p o n e n ti n t e r f a c e a ni d e at h a tt h e r ea r e c o n t r i b u t i n g r e l a t i o n sa n d d e p e n d e n tr e l a t i o n sa m o n g 第i v 页 国防科学技术大学研究生院博士学位论文 c o m p o n e n t s r e q u i r e ds e r v i c e sa n dp r o v i d e ds e r v i c e si sp u tf o r w a r d ,a n df o l l o w sa n a p p r o a c ho fd e s c r i b i n gc o n t r i b u t i n gr e l a t i o n sa n dd e p e n d e n tr e l a t i o n se x p l i c i t l yi nt h e c o m p o n e n tp o r t ,w h i c hc a nn o to n l ym a k et h ec o m p o n e n tm o r ea d a p t a b l et oi t s e n v i r o n m e n t ,b u ta l s oi n c r e a s ei t sr e u s ed e g r e e b a s e do nt h ei d e at h a tt h es e r v i c e p a r a m e t e rv a l u e sc a na f f e c tt h ec o m p o n e n tb e h a v i o rp r o t o c o l ,t h em e t h o do fe x p l i c i t l y d e s c r i b i n gp a r a m e t e rv a l u e si nb e h a v i o rp r o t o c o li sa l s od i s c u s s e di nt h el a t e rp a r to ft h e d i s s e r t a t i o n t os u mu p ,t h i sd i s s e r t a t i o np r o p o s e se f f e c t i v es o l u t i o n st os o m ek e yp r o b l e m s e o n c e m i n gt h ep r e s e n tc o m p o n e n tm o d e la n dc o m p o n e n t o r i e n t e dp r o g r a m m i n g l a n g u a g e t oag r e a te x t e n t ,i th a sat h e o r e t i c a ls i g n i f i c a n c ea n dp r a c t i c a lv a l u ei n p r o m o t i n gf u r t h e rt h e o r e t i c a ls t u d i e so i lc o m p o n e n tm o d e la n dc o m p o n e n t o r i e n t e d p r o g r a m m i n gl a n g u a g e ,a sw e l la si ns o l v i n gt h ec h a l l e n g e si nc o m p o n e n ta n ds o f t w a r e a r c h i t e c t u r et e c h n o l o g i e s k e yw o r d s :s o f t w a r ea r c h i t e c t u r e ,c o m p o n e n t ,c o n n e c t o r ,c o n c e p t u a l i n t e g r i t y ,s e p a r a t i o no fc o n c e r n s ,t y p es y s t e m 第v 页 国防科学技术大学研究生院博士学位论文 第v i 页 国防科学技术大学研究生院博士学位论文 表目录 表2 1 构件模型分类表2 3 表3 1 主动连接子与被动连接子的区别4 7 第1 v 页 国防科学技术大学研究生院博士学位论文 图目录 图2 1c o m 构件接口18 图2 2c o r b a ( 3 o ) 构件接口18 图2 3 数据库管理构件d b 的行为描述2 0 图2 4c o m 构件组合2 1 图2 5c o r b a 构件组合2 2 图2 6s o f a 构件组合2 2 图3 1 构件模型s a c m 。4 1 图3 2 构件之间关系4 3 图3 3 被动连接子的角色。4 7 图3 4 主动连接子的角色4 8 图3 5 主动连接子的协议描述模式。4 9 图3 6 基于被动连接子的a t m 系统51 图3 7 连接子c o n m a n 的描述51 图3 8复合构件a t m 的描述5 2 图3 9 基于主动连接子的a t m 系统5 4 图3 1 0 主动连接子c o n a t m 的描述5 4 图4 1 构件的组成6 3 图4 2 连接子的组成。6 4 图4 3复合管道连接子。6 6 图4 4 主动连接子的复用6 7 图4 5 两阶段映射过程。6 8 图4 6 接口声明示例。7 0 图4 7 主动构件类a t m c o r e 7 2 图4 8 被动连接子类c o n m a n 和c o n a t m 7 3 图4 9 主动连接子类c o n a t m 7 4 图4 1 0 复合构件类a t m 7 4 图5 1s a j 语言的语法8 2 图5 2 接口表、构件类表和连接子类表中的映射关系。8 3 图5 3与s a j 语义有关的元变量8 4 图5 4 求值上下文8 4 图5 5 构件实例和连接子实例创建及其方法调用的语义8 5 图5 6 子类型规则。8 9 第v 页 国防科学技术大学研究生院博士学位论文 图5 7 连接子实例创建表达式的类型推导规则。9 1 图5 8 构件和连接子服务调用表达式的类型推导规则。9 2 图5 9 字段、方法、接口及构件端口良构规则。9 3 图5 1 0 构件类、连接子类及程序良构规则9 4 图5 1 1 实例良构规则9 6 图5 1 2 存储区良构规则9 7 图6 1 构件可替换性的判断条件1 2 3 第v i 页 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已 经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它教育机构的学 位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文 中作了明确的说明并表示谢意。 学位论文题目:基土筮往鲑丕箜堑鲍掬住搓型塑适宣盈究 学位论文作者签名:匿:量堕 日期:知砷年弓月巧日 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权国 防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子文档,允 许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据库进行检索, 可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密学位论文在解密后适用本授权书。) 学位论文题目:基王拯佳签丕缱掏鲍拉佳搓型垄亟直盈塞 学位论文作者签名: 作者指导教师签名: 日期: 日期: 孙下 月 月 多、 年 年 哆胡i 巧谚 国防科学技术大学研究生院博士学位论文 第一章绪论 随着软件系统规模的不断扩大和复杂程度的不断增加,软件危机愈加明显地 暴露出来。如何克服软件危机,为软件开发提供高质、高效的技术支持,受到人 们的高度关注。构件技术和软件体系结构技术是目前软件工程界研究的重点,被 认为是提高软件生产率和软件质量、解决软件危机的关键技术。 但目前的构件技术和软件体系结构技术面临着许多挑战性问题,这些挑战性 问题使得这两种技术难以在软件开发中发挥它们应有的作用,如何解决这些挑战 性问题得到了广泛的重视。本文认为,构件模型和面向构件语言是解决目前构件 技术和软件体系结构技术所面临问题的突破口,是促进构件技术和软件体系结构 技术进一步发展的关键,对构件模型和面向构件语言进行深入的研究,具有重大 的理论意义和应用价值。 本文在全面分析构件模型和面向构件语言及相关技术研究现状的基础上,针 对现有研究工作的不足,重点在新型构件模型的研究、新型面向构件语言的设计 与实现、从体系结构设计到系统底层代码映射的实现、构件接口信息的丰富等几 个方面进行了系统深入的研究。 本章内容安排如下:1 1 节介绍课题的研究背景,包括构件技术、软件体系结 构技术的基本概念,指出构件模型和面向构件语言是解决目前构件技术和软件体 系结构技术面临问题的突破口;1 2 节介绍本文关注的问题;1 3 节介绍本文的主 要工作和创新点;1 4 节概述论文的组织结构。 1 1 研究背景 软件产业作为信息产业的核心和灵魂,在推动国民经济发展、社会进步以及 保障国家安全等方面发挥着日益重要的作用,已经成为国际竞争的焦点和世界各 国竞相发展的战略性先导产业。但目前软件产业仍然笼罩在软件危机的阴影下, 软件危机主要表现为: ( 1 ) 软件需求定义不准确,软件系统容易偏离用户需求; ( 2 ) 软件生产成本高,价格昂贵; ( 3 ) 软件生产进度无法控制; ( 4 ) 软件质量不能让用户满意,可靠性差; ( 5 ) 软件可维护性差。 软件系统规模的不断扩大和复杂度的不断增加固然是造成软件危机的主要原 因,但更本质的原因在于软件的特性。软件是人类思维的产物,其开发过程是复 第1 页 国防科学技术大学研究生院博士学位论文 杂的逻辑思维过程,其产品不可避免打上了软件开发人员思维的烙印,其质量也 很大程度上依赖于开发人员的思维习惯和在开发过程中表现出来的技巧和创造 性。 为了解决软件危机,在1 9 6 8 年的n a t o 会议上首次提出了“软件工程”的概 念【l 】,使软件开发开始了从“艺术、“技巧”和“个体行为”向“工程”和“群 体协同工作 转化的历程【2 】。三十多年来,软件工程的研究和实践取得了长足的发 展,虽然距离彻底解决软件危机尚有较大差距,但对软件开发的工程化以及软件 产业的发展起到了积极的推动作用,提供了良好的技术支持。近年来,构件技术 和软件体系结构技术成为软件工程界关注的重点,被认为是提高软件生产率和软 件质量、解决软件危机的关键技术。 1 1 1 构件技术及其面临的问题 构件的思想由来已久。早在1 9 6 8 年的n a t o 软件工程会议上,m c l l r o y 在提 交会议的论文“大量生产的软件构件”中,就提出了软件复用和构件工业的概念p 】。 此后,人们从建筑业、机械制造业等传统行业成功的发展模式中得到启发,认为 软件产业要实现产业工程化、工业化,其发展模式必然是符合标准和规范的可复 用构件的开发以及基于标准构件的集成和组装,其中,标准构件的开发是核心和 基础,复用和组装是实现工业化大生产必需的手段,这也是构件技术和基于构件 的软件复用受到高度重视的根本原因【4 1 。 随着对构件和软件复用认识的不断深入,构件的概念已经不再局限于源代码 构件,而是延伸到需求规约、设计模型、测试用例以及其他对软件开发活动有用 的信息,这些信息都可以称之为构件。在本文中,如无特殊说明,构件是指具有 规范接口、能提供相对独立服务的服务提供单元,可复用构件是指具有可复用价 值的构件,基于构件的软件复用是指为提高软件开发的质量与效率,通过使用已 有的可复用构件实现和改进软件系统的过程。基于构件的软件复用是软件复用最 主要的形式,复用使软件开发人员在软件开发中不必“重新发明轮子 或“一切 从零开始”,提高了软件生产率,缩短了开发周期,降低了开发成本和维护成本, 同时可复用构件通过多次复用后其质量、可靠性和可复用性通常会越来越高。据 统计,软件系统的开发中若复用程度达到5 0 ,则其生产率提高4 0 ,开发成本 降低约4 0 ,软件出错率降低近5 0 0 o 。由此可见,基于构件的软件复用有助于解 决软件危机表现中( 2 ) ( 3 ) ( 4 ) ( 5 ) 暴露出来的问题,被认为是提高软件生产率和软件质 量、解决软件危机最有效、最具潜力的手段【5 1 。构件技术是支持软件复用的核心技 术,其主要研究内容和支撑技术包括1 4 j : ( 1 ) 构件模型:研究构件的本质特征及构件之间关系; 第2 页 国防科学技术大学研究生院博士学位论文 ( 2 ) 构件描述语言;以构件模型为基础,解决构件的精确描述问题; ( 3 ) 面向构件语言:开发构件的工具; ( 4 ) 构件的挖掘、获取和包装:从遗留系统中挖掘、提取有复用价值的构件并 进行相应的包装; ( 5 ) 构件的分类与检索:研究构件的分类策略、组织模式和检索策略; ( 6 ) 构件组合语言以及构件的组装:在构件模型的基础上研究构件组合语言以 及构件组装机制,包括源代码级的组装和基于构件实例互操作的运行级组装。 目前构件技术的研究成果集中体现在基于构件的软件开发( c o m p o n e n t b a s e d s o f t w a r ed e v e l o p m e n t

温馨提示

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

评论

0/150

提交评论