(計算機(jī)應(yīng)用技術(shù)專業(yè)論文)基于特征的軟件產(chǎn)品線開發(fā)關(guān)鍵技術(shù)研究.pdf_第1頁
(計算機(jī)應(yīng)用技術(shù)專業(yè)論文)基于特征的軟件產(chǎn)品線開發(fā)關(guān)鍵技術(shù)研究.pdf_第2頁
(計算機(jī)應(yīng)用技術(shù)專業(yè)論文)基于特征的軟件產(chǎn)品線開發(fā)關(guān)鍵技術(shù)研究.pdf_第3頁
(計算機(jī)應(yīng)用技術(shù)專業(yè)論文)基于特征的軟件產(chǎn)品線開發(fā)關(guān)鍵技術(shù)研究.pdf_第4頁
(計算機(jī)應(yīng)用技術(shù)專業(yè)論文)基于特征的軟件產(chǎn)品線開發(fā)關(guān)鍵技術(shù)研究.pdf_第5頁
已閱讀5頁,還剩133頁未讀, 繼續(xù)免費閱讀

(計算機(jī)應(yīng)用技術(shù)專業(yè)論文)基于特征的軟件產(chǎn)品線開發(fā)關(guān)鍵技術(shù)研究.pdf.pdf 免費下載

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

浙江大學(xué)博士學(xué)位論文 摘要 軟件產(chǎn)品線通過管理領(lǐng)域共性和可變性開發(fā)領(lǐng)域特定的可復(fù)用資產(chǎn),以生產(chǎn) 和維護(hù)功能類似的軟件產(chǎn)品家族,是實現(xiàn)軟件大規(guī)模定制生產(chǎn)的有效途徑。如何 在領(lǐng)域特征分析的基礎(chǔ)上,實現(xiàn)產(chǎn)品線領(lǐng)域核心資產(chǎn)開發(fā)和軟件產(chǎn)品的定制生 產(chǎn),是軟件產(chǎn)品線工程研究的關(guān)鍵性問題之一。為此,論文從形式化建模、領(lǐng)域 體系結(jié)構(gòu)和構(gòu)件設(shè)計、軟件產(chǎn)品配簧建模及問題求解、資產(chǎn)管理等方面對基于特 征的產(chǎn)品線開發(fā)方法及其關(guān)鍵技術(shù)進(jìn)行了研究。 論文第一章論述了軟件產(chǎn)品線產(chǎn)生的背景,介紹了軟件產(chǎn)品線相關(guān)理論基 礎(chǔ),并對軟件產(chǎn)品線及基于產(chǎn)品線的軟傳產(chǎn)品開發(fā)特點進(jìn)行了分析基于對軟件 產(chǎn)品線相關(guān)研究項目和系統(tǒng)以及研究熱點的介紹,提出了基于特征進(jìn)行產(chǎn)品線及 其軟件產(chǎn)品開發(fā)的主體思路 論文第二章在簡要介紹特征模型基本概念的基礎(chǔ)上,針對現(xiàn)有特征模型在非 功能性特征描述、可交性建模等方面存在的不足,提出特征地圖概念,對特征模 型進(jìn)行擴(kuò)展,完善了特征配置依賴描述及約束表達(dá),支持對產(chǎn)品線開發(fā)全生命周 期階段的軟件制品進(jìn)行導(dǎo)航和定位,并引入本體描述語言建立元模型。在此基礎(chǔ) 上,引入超圖從不同語義層次對產(chǎn)品線進(jìn)行建模,通過將不同語義層次的語義信 息抽象為本體概念及其關(guān)系并建立語義跳轉(zhuǎn)機(jī)制,關(guān)聯(lián)不同語義層次中的語義信 息,構(gòu)成縱橫交錯的語義結(jié)構(gòu),建立統(tǒng)一的知識表達(dá)框架和形式化模型 論文第三章在分析產(chǎn)品線領(lǐng)域工程過程的基礎(chǔ)上,針對領(lǐng)域體系結(jié)構(gòu)設(shè)計問 題,論述了特征驅(qū)動的領(lǐng)域體系結(jié)構(gòu)設(shè)計原則,并以產(chǎn)品線特征模型為輸入,從 子系統(tǒng)、進(jìn)程和模塊構(gòu)件等不同抽象層次對領(lǐng)域體系結(jié)構(gòu)進(jìn)行建模和設(shè)計,并通 過特征分析確定可復(fù)用對象。著重探討了隱藏特征模型可變性信息的構(gòu)件設(shè)計方 案在此基礎(chǔ)上給出了領(lǐng)域體系結(jié)構(gòu)生成算法,算法以特征模型為基礎(chǔ),通過自 底而上依次設(shè)計模塊構(gòu)件、進(jìn)程、子系統(tǒng)生成領(lǐng)域體系結(jié)構(gòu),并綜合考慮了產(chǎn)品 線運行環(huán)境和性能等方面的要求 論文第四章在分析產(chǎn)品線應(yīng)用工程過程的基礎(chǔ)上,針對軟件產(chǎn)品定制生產(chǎn)問 題,提出面向軟件產(chǎn)品線的產(chǎn)品配置概念。通過針對特征可變性和特征配置依賴 建立配置規(guī)則及其約減規(guī)則。面向軟件生產(chǎn)過程中的特征選取和軟件制品選取階 段分別建立特征配置模型和軟件制品配置模型,并給出了相應(yīng)的配置求解算法, 配置求解結(jié)果即為滿足領(lǐng)域應(yīng)用需求的特征和軟件制品集合。為復(fù)用部分配置規(guī) 浙江大學(xué)博士學(xué)位論文 摘要 則和求解結(jié)果以提高求解效率,對配置建模及求解過程進(jìn)行了改進(jìn)和優(yōu)化。 論文第五章在對資產(chǎn)庫和軟件資產(chǎn)進(jìn)行形式化定義的基礎(chǔ)上,針對產(chǎn)品線開 發(fā)不同階段對軟件資產(chǎn)的不同管控要求,提出三庫概念,詳細(xì)描述了基于工作流 的庫遷移和軟件資產(chǎn)全生命周期管控模型,并就產(chǎn)品線及其軟件產(chǎn)品家族的全分 布資產(chǎn)存儲方案等問題進(jìn)行了探討。 論文第六章提出了一個基于特征的產(chǎn)品線開發(fā)系統(tǒng)框架,對其主要功能、組 件模塊和關(guān)鍵過程進(jìn)行了說明,并介紹了基于該框架設(shè)計和實現(xiàn)的一個產(chǎn)品線殲 發(fā)原型系統(tǒng),對其中的產(chǎn)品線和軟件產(chǎn)品開發(fā)主要流程,以及部分支持工具和平 臺進(jìn)行了闡述和說明。 論文最后總結(jié)論文的主要工作和貢獻(xiàn),并指出下一步的研究工作方向。 關(guān)鍵詞軟件產(chǎn)品線、領(lǐng)域工程、特征建模、本體、領(lǐng)域體系結(jié)構(gòu)、構(gòu)件、配置 建模、問題求解、資產(chǎn)庫 浙江大學(xué)博:t 學(xué)位論文 a b s t r a c t s o f w a r ep r o d l l c tl i n ed e v e l o l 話d o m a i n - s p e c i f i cr e u s a b l ea s s e t st op r o c l u e ca n d m a i n t a i ns o t t w a r ep r o c t u c tt i n n i l yw i l hs i m i l a rf u n c t i o n sb ya n a l y z i n ga n dm a n a g i n g c o m m o n a l i t ya n dv a r i a b i l i t yi nd o m a i n i ti sa ne f f e c t i v ew a yt oi m p l e m e n ts o t t w a t o p r o d u c t i o nf o rm a s sc u s t o m i z a t i o n h o wt or e a l i z et h ed e v e l o p m e n to fc o l ea s s e t si n d o m a i na n dt h ec u s t o m i z e dt n l x l u e t i o no fs o t t w a r ep r o a u c t sa p p l y i n gs p l p r i n c i p l e s o n t h c b a s e o f f e a t u r ea n a l y s i s i s a k e y p r o b l e m i n t h er e s e a r c h o f $ p l e n g i n e e r i n g t o a d d r e s st h i sp r o b l e m , t h ed i s s e r t a t i o n m a i n l yi n t r o d u c e s t h ek e yt e c h n o l o g yo i l f e a t u r e - b a s e ds o f t w a r ep r o d u c tl i n ed e v e l o p m e n ti nt e r m so ff o r m a lm o d e l i n g , d o m a i n a r c h i t e c t u r ea n dc o m p o n e n td e s i g n i n g , s o t t w a r ep r o d u c te o n t i g u r a t i o nm o d e l i n ga n d p r o b l e ms o l v i n g , a n da s s c tm a n a g i n g i nt h e1 。c h a p t e r , w ef i r s t l yd i mt h eo r i g i no fs o t t w a r cp r o d u c tl i n ea n d i n t r o d u c es o m ed e f i n i t i o n sa n dc o n c e p t i o n so fs p la n d $ p le n g i n e e r i n g , t h e nd i s c u s s t h ec h a r a c t e r i s t i c so fs p ld e v e l o p m e n ta n ds o t t w a r ep r o d u c td e v e l o p m e n ta p p l y i n g s p lp r i n c i p l e s a t t e ri n t r o d u c i n gt h er e l a t e de n g i n e e r i n gp r o j e c t sa n da c a d e m i c r e s e a r c hp r o g r e s s e so fs p lw ep r o p o s eo u rm a i ni d e a s f e a t u r e - b a s e ds p la n d s o t t w a 口r ep r o d u c td e v e l o p m e n t i nt h e2 耐c h a p t e r , a t t e ri n t r o d u c i n gt h ec o n c e p t i o n so ff e a t u r em o d e la n d a n a l y z i n gi t sd e f i c i e n c yi nt e r m so fn o n - f u n c t i o n a lf e a t u r ed e s c r i p t i o na n dv a r i a b i l i t y m o d e l i n g , w ep r o p o s et h ec o n c e p to ff e a t u r em a pt oe x t e n dt h ef e a t u r em o d e l i t s u p p o r t sc u s t o m i z e df e a t u r ed e p e n d e n c i e sa n dc o n s t r a i n te x p r 髑c s , p r o v i d e st h e c a p a b i l i t yt on a v i g a t ea n dl o c a t et h es o t t w a r ea r t i f a c t so ff e a t u r e 8 t h e no n t o l o g yi s u s e dt od e f i n et h em e t a - m o d do ff e a t u r em a p o nt h eb a s eo fa b o v ed e f i n i t i o n , h y i e r 雩陽p hi si n t r o d u c e dt of o r m a i l i z e ds o t t w a r ep r o d u c ti i n ef r o md i f f e r e n ts e m a n t i c l a y e r s t h es e m a n t i ci n f o r m a t i o mi ne a c hl a y e r 黜a b s t r a c t e d 勰o n t o l o g yc o n c e p t s a n dr e l a t i o n s h i l 皓a n da l ec o n n e c t e db ys e m a n t i cl i t tm e c h a n i s mt oc o n s i t u c tf i l l i n t e r w e a v i n gs e m a n t i cs h u c h 她t h u sau n i f o r mk n o w l e d g er e p r e s e n t a t i o nf r a m e w o r k a n df o r m a lm o d e lf o rs p li se o n s l r u e t c d i nt h e3 “c h a p t e r , w ef i r s t l yi n t r o d u c et h ep r o c e s so f d o m a i ne n g i n e e r i n ga n dt h d i s c u s st h ee n g i n e e r i n gp r i n c i p l e su s e dt od e s i g nd o m a i na r e l a i t e e t u r eo i lt h eb a s eo f f e a t u r e f e a t u r em o d e li st a k e na s 柚i n p u tt od e s i g nt h ed o m a i na r c h i t e c t u r ef r o m d i s t i n c ta b s t r a c tl a y e r ss u c ha ss u b s y s t e m , p r o c e s sa n dm o d u l e b ya n a l y z i n gt h e f e a t u r e st o 唰f yt h er e u s a b l eo b j e c t s , w ce s p e c i a l l yd i s c u s st h od e s i g ns c h e m eo f d o m a i nc o m p o n e n t st oh i d et h ev a r i a b i l i t yo ff e a t u r em o d e l o nt h eb a s eo fa b o v e 浙江大學(xué)博士學(xué)位論文 w o r k , w ep r o p o s ea 矗a l g o r i t h mt o1 , r o , t u c es o t h a r ea r c h i t e c t u r ea u t o m a t i c a l l y 硼艟 a l g o r i t h mt a k e sf e a t u r em o d c i 勰t h eb a s i st op r o c l u e ed o m a i na r c h i t e c t u r eb yt h e b o t t o m - u pd e s i g no fm o d u l ec o m p o n e n t , p r o c e s sa n ds u b s y s t e m i ta l s oc o n s i d e r st h e o p e r a t i n gm v i r o n m e n ta n dp e r f o r m a n c er e q u i r e m e n t sa d e q u a t e l y ht l l e4 “c h a p t e r , a f t e ra n a l y z i n gt h ep r o c e s so fa p p l i c a t i o ne n g i n e e r i n g , w e p r o p o s et h ec o n c e p to fs p lo r i e n t e dp r o d u c tc o n f i g u r a t i o nt oc u s t o m i z es o f t w a r e p r o d s c o n f i g u r a t i o nr u l e sa n dd e d u c tr u l e sa md e f i n e di nt e r m so ft h ev a r i a b i l i t y a n dc o n f i g u r a t i o nd e p e n d e n c yo ff e a t u r e s c o r r e s p o n d i n gt ot h ep h a s 簋o ff e a t u 糟 s e l e c t i o na n ds o f t w a r ea r t i f a c ts e l e c t i o ni nt h ep r o c e s so fs o f t w a r ep r o d u c t i o n , t h e f e a t u r ec o n f i g u r a t i o nm o d e la n ds o f t w a r e 眥 i f a e tc o n f i g u r a t i o nm o d e la c o n s t r u c t e d t op r o v i d eau n i f o r mf r - , a n e w o r ko fc o n s t r a i n td e s c r i p t i o nf o rf e a t u r em o d e la n d d o m a i na p p l i c a t i o nr e q u i r e m e n t n 嵋r e l a t e da l g o r i t h m so fc o n f i g u r a t i o ns o l v i n g 粥 a l s op r c s c n t e c l t h er e s u l to fw h i c h 勰t h es e t so ff e a t u r e sa n ds o t t w a r oa r t i f a c t s m e e t i n g f e a t u r ec o n s t r a i n t sa n d a p p l i c a t i o nr e q u i r e m e n t s t o r e u s e p a r t i a l c o n f i g u r a t i o nr u l e sa n ds o l v i n gr e s u l t st oi m p r o v es o l v i n ge f f i c i e n c y , w ei m p r o v ea n d o p t i m i z et h ep r o c e s so f e o n f i g t m i t i o nm o d e l i n ga n dp r o b l e ms o l v i n g i nt h e5 i nc h a p t e r , w ef i r s t l yf o r m a l i z et h ec o n c e p to fa s s e tl i b a r a r ya n ds o f t w a r e a s s e t c o n f i o n t e dw i t ht h ef a c tt h a td i f f e r e n ts t a g e si nt h ep r o c e s so fs p l d e v e l o p m e n t t a k ed i s t i n c tm a n a g e m e n td e m a n d so nt h es o t t w a r ea s s e t s ,w ep r o p o s et h a tt h es p l a s s e t sa r eh e l di nt h r e ed i s p a r a t er e p o s i t o r i e s a u t o m a t i ca s s e tt r a n s f e rb e t w e e na s s e t r e p o s i t o r i e si si m p l e m e n t e di nt h ec h a r g eo f w o r k f l o wt or e a l i z et h ew h o l e1 i f e e y e l e m a n a g e m e n to fs p la s s e t s t h ed i s t r i b u t e ds t o r a g es c h e m eo fs p la s s e t sb a s e d0 1 1t h e c o n c e p to f r e p o s i t o r yi sa l s od i s c u s s e d hm c6 “c h a p t e r , w ef i r s t l y p r o p o s e as y s t e mf i a m e w o r ks u p p o r t i n g f e a t u r e - b a s e ds p ld e v e l o p m e n ta n dd i s c u s si t sm a i nf u n e t i o m m o d u l e s 柚dk e y p r o c e s s e s t h e nap r o t o t y p ed e s i g n e da n dr e a l i z e d t h eb a s i so ft h ef r a m e w o r ki s p r e s e n t e d 1 1 他m a i np r o c e s s e so ft h ep r o t o t y p et od e v e l o pp r o d u c tl i n ea n dr o o t r l c r c t e s o t t w a r ep r o d u c t s 。a n ds o l r n ca s s i s t a n tt o o l sa n dp l a t f o r ma 塢i l l u s t r a t e d i nt h ee n d , a l lo ft h ew o r k si n t h i sd i s s e r t a t i o n 毗s u m m e du p a n dt h e i rf u t u r e s 研p r o s p e c t e d k e y w o r d s s o f t w a r ep r o d u c tl i n e , d o m a i ne n g i n e e r i n g , f e a t u r em o d e l i n g , o n t o l o g y , d o m a i n - s p e c i f i cs o f t w a r ea r t h i t e e t u r e , c o m p o n e n t , c o n f i g u r a t i o n m o d e l i n g , p r o b l e ms o l v i n g , a s s e tr e p o s i t o r y 浙江大學(xué)博士學(xué)位論文翻目錄 圖目錄 圖1 1 基于標(biāo)準(zhǔn)零件配置的機(jī)械產(chǎn)品大規(guī)模定制生產(chǎn)2 圖1 - 2 軟件產(chǎn)品線工程5 圖1 - 3 軟件產(chǎn)品線工程特點7 圖i 4 軟件產(chǎn)品線基本活動之問的關(guān)系7 圖1 5 支持軟件開發(fā)的領(lǐng)域分析n 圖1 6 面向特征的復(fù)用方法f o r m 1 2 圖l - 7 基于本體、特征驅(qū)動的產(chǎn)品線開發(fā)過程。1 5 圖1 - 8 青鳥構(gòu)件庫體系結(jié)構(gòu)。1 7 圖1 - 9 領(lǐng)域工程再工程2 0 圖1 i o 產(chǎn)品線評估過程2 2 圖1 1 1 論文組織結(jié)構(gòu)2 6 圖2 - 1h o m ei n t e g r a t i o ns y s t e m 軟件產(chǎn)品線特征模型示例。3 0 圖2 - 2 本體描述語言棧3 5 圖2 3 基于本體的特征地圖元模型。3 6 圖2 4 移動電話軟件產(chǎn)品線語義超圖形式化模型4 4 圖3 - 1 面向特征的體系結(jié)構(gòu)建模框架4 9 圖3 - 2 特征模型和參考體系結(jié)構(gòu)之間的映射。5 l 圖3 3 特征類型和可復(fù)用對象之間的映射。5 3 圖3 - 4 基于門面模式的模塊實現(xiàn)框架構(gòu)件設(shè)計5 5 圖3 5 隱藏a l t e r n a t i v e 特征變化性的模塊實現(xiàn)構(gòu)件設(shè)計。5 6 圖3 - 6 隱藏o r 特征變化性的模塊實現(xiàn)構(gòu)件設(shè)計5 7 圖3 7 隱藏o p t i o n a l 特征變化性的模塊實現(xiàn)構(gòu)件設(shè)計。5 7 圖3 8 隱藏r e q u i r e 特征配置依賴關(guān)系變化性的模塊實現(xiàn)構(gòu)件設(shè)計5 8 圖3 - 9 隱藏m u t e x 特征配置依賴關(guān)系變化性的模塊實現(xiàn)構(gòu)件設(shè)計5 8 圖3 1 0 移動電話軟件產(chǎn)品線特征模型6 3 圖3 1 1 移動電話軟件系統(tǒng)呼叫處理特征綁定單元的對象模型建立過程6 4 圖3 1 2 移動電話軟件系統(tǒng)呼叫處理的模塊模型建立過程6 5 圖3 1 3 移動電話軟件系統(tǒng)呼叫處理子系統(tǒng)的進(jìn)程模型建立過程6 5 圖3 1 4 移動電話軟件系統(tǒng)的子系統(tǒng)模型建立過程6 6 圖4 - t 基于特征的軟件產(chǎn)品開發(fā)生命周期實體關(guān)系模型6 9 圖4 2 移動電話軟件產(chǎn)品線特征地圖8 3 圖5 1 構(gòu)件評估流程定義示例9 2 圖5 - 2 庫遷移模型9 3 圖5 3 基于三庫的多視圖模型9 5 圖5 4 資產(chǎn)存儲方案 9 6 圖5 - 5 資產(chǎn)檢索過程9 7 i v 浙江大學(xué)博士學(xué)位論文 圖目錄 圖5 6 基于三庫的產(chǎn)品線軟件資產(chǎn)管理方案示例 圖6 1 基于特征的產(chǎn)品線開發(fā)系統(tǒng)框架f s d f 圖6 - 2 基于p r o t 魄6 的特征建模工具 圖6 - 3 基于e c l i p s e 的領(lǐng)域體系結(jié)構(gòu)和構(gòu)件集成開發(fā)工具 圖6 4 基于e c l i p s e 的軟件產(chǎn)品配置開發(fā)工具。 圖6 - 5 基于攔截器的資產(chǎn)庫系統(tǒng)實現(xiàn)框架 v 1 0 0 1 0 4 1 0 5 1 0 r 7 浙江大學(xué)博士學(xué)位論文 表h 錄 表目錄 表i - io o p 、c b s d 、s p l 的軟件產(chǎn)品開發(fā)特點對比6 表1 2 典型體系結(jié)構(gòu)設(shè)計方法1 4 表3 1 特征變化性及其構(gòu)件設(shè)計方案5 9 表3 2 運行環(huán)境及其構(gòu)件連接器設(shè)計方案。5 9 v l 浙江大學(xué)博士學(xué)位論文 第1 章緒論 第1 章緒論 1 1 軟件產(chǎn)品線產(chǎn)生的背景 1 1 1 當(dāng)前軟件產(chǎn)業(yè)面臨的問題 軟件產(chǎn)業(yè)作為各國極其重要的戰(zhàn)略性、支柱性和先導(dǎo)性產(chǎn)業(yè),是智力密集型 的高技術(shù)產(chǎn)業(yè),是信息產(chǎn)業(yè)的核心與靈魂,已經(jīng)成為國際競爭焦點和戰(zhàn)略制高點, 是2 l 世紀(jì)擁有最大產(chǎn)業(yè)規(guī)模和最具前景的新興產(chǎn)業(yè)之一 當(dāng)前,一方面,應(yīng)用軟件,特別是企監(jiān)級應(yīng)用軟件,在越來越多的領(lǐng)域得到 推廣和應(yīng)用;另一方面,高速增長的全球經(jīng)濟(jì),使得關(guān)鍵行業(yè)的企業(yè)級應(yīng)用需求 在不斷變遷。大到新政策的發(fā)布、組織問的兼并和收購、新業(yè)務(wù)模型的涌現(xiàn),小 到企業(yè)內(nèi)部的業(yè)務(wù)流程重組、組織結(jié)構(gòu)的調(diào)整,新創(chuàng)意的產(chǎn)生,這些來自市場、 管理、技術(shù)等環(huán)境的不斷變化,以及組織對變化環(huán)境的不斷適應(yīng)成為當(dāng)前企業(yè)應(yīng) 用不得不面對的鮮明現(xiàn)實 快速多變的市場特點、普遍缺乏的基礎(chǔ)管理體系、大規(guī)模的企業(yè)應(yīng)用、信息 技術(shù)及其應(yīng)用在深度和廣度上的飛速發(fā)展,以及異構(gòu)的r r 實施環(huán)境,造就了當(dāng)前 的軟件產(chǎn)業(yè)環(huán)境格局,同時也導(dǎo)致企業(yè)對軟件功能和性能要求不斷變更,軟件系 統(tǒng)的規(guī)模和復(fù)雜度空前擴(kuò)張,開發(fā)和維護(hù)成本呈指數(shù)趨勢上漲。由此在軟件質(zhì)量、 開發(fā)周期、生產(chǎn)成本等方面對企業(yè)應(yīng)用軟件產(chǎn)品的開發(fā)提出了新的要求,軟件開 發(fā)應(yīng)能對企業(yè)業(yè)務(wù)流程和應(yīng)用需求的頻繁變更,以及應(yīng)用環(huán)境的變遷和異構(gòu)化等 做出快速響應(yīng),實現(xiàn)軟件產(chǎn)品的定制化生產(chǎn)。 傳統(tǒng)的面向?qū)ο筌浖_發(fā)技術(shù)及一切從零開始基于代碼的手工作坊式軟件 開發(fā)方式單獨為每一個用戶開發(fā)和維護(hù)獨立的軟件產(chǎn)品,需進(jìn)行大量重復(fù)性的需 求分析、設(shè)計、編碼、測試及維護(hù)工作,生產(chǎn)周期長,結(jié)構(gòu)僵化,成本高,效率 低下,無法適應(yīng)新形勢下的快速發(fā)展的業(yè)務(wù)環(huán)境和企業(yè)級應(yīng)用需求,往往軟件系 統(tǒng)剛剛開發(fā)完成還未上線運行,企業(yè)的組織結(jié)構(gòu)、業(yè)務(wù)流程及人員就已經(jīng)發(fā)生了 變化,出現(xiàn)“建成即成閑置”的局面,形成軟件工程的災(zāi)難。企業(yè)級應(yīng)用軟件產(chǎn) 業(yè)在舊的軟件危機(jī)尚未徹底解決的情況下,面臨著新一輪的軟件危機(jī)。 如何在一個急劇變化的市場、管理、組織環(huán)境中,在以互聯(lián)網(wǎng)為代表的新興、 浙江大學(xué)博士學(xué)位論文 第1 章緒論 廉價的技術(shù)條件下,通過合理模式的部署,適應(yīng)人們較低的應(yīng)用水平,并滿足市 場迅速變化的企業(yè)級大規(guī)模應(yīng)用需求成為當(dāng)前軟件產(chǎn)業(yè)急待解決的一個問題,是 提高軟件企業(yè)競爭力,實現(xiàn)可持續(xù)發(fā)展的關(guān)鍵所在。 軟件產(chǎn)品行業(yè)遇到的這些問題與傳統(tǒng)的機(jī)械制造行業(yè)的發(fā)展歷程類似。最 初,傳統(tǒng)制造行業(yè)的產(chǎn)品生產(chǎn)企業(yè)需要設(shè)計和生產(chǎn)構(gòu)成產(chǎn)品的每一個零件,生產(chǎn) 周期長,且不同企業(yè)之間的產(chǎn)品零件無法通用,導(dǎo)致生產(chǎn)成本昂貴,可維護(hù)性差。 之后,通過零件的標(biāo)準(zhǔn)化生產(chǎn)和對標(biāo)準(zhǔn)零件進(jìn)行配置及流水線組裝( 圖1 1 ) ,開 創(chuàng)了工業(yè)化規(guī)范大生產(chǎn)的新紀(jì)元,將產(chǎn)品制造的重點從制造單個零件轉(zhuǎn)移到了標(biāo) 準(zhǔn)零件的裝配上來,極大提高了產(chǎn)品開發(fā)和生產(chǎn)的效率,降低了成本。企業(yè)之問 也由傳統(tǒng)的價格、質(zhì)量的競爭越來越多地轉(zhuǎn)向滿足客戶多樣化、個性化需求能力 的競爭,至此一種新型的產(chǎn)品生產(chǎn)模式一大規(guī)模定制應(yīng)運而生,其核心就是通過 靈活性和快速響應(yīng)來獲得低成本、高質(zhì)量、定制化的產(chǎn)品和服務(wù)。 圖1 - 1 基于標(biāo)準(zhǔn)零件配置的機(jī)械產(chǎn)品大規(guī)模定制生產(chǎn) 而根據(jù)s t a n d i s hg r o u p 咨詢公司對全球7 0 0 0 家軟件企業(yè)以及上萬個軟件項目 進(jìn)行分析的統(tǒng)計結(jié)果,企業(yè)應(yīng)用軟件雖然在功能上千差萬別,但從源程序?qū)崿F(xiàn)角 度分析,導(dǎo)致功能不同的業(yè)務(wù)邏輯程序僅占不到3 0 。, 4 ,而大同小異的基礎(chǔ)程序則 占7 0 0 4 以上軟件生產(chǎn)完全可以像傳統(tǒng)制造行業(yè)一樣,通過細(xì)分產(chǎn)業(yè),形成健康 的產(chǎn)業(yè)鏈。 2 浙江大學(xué)博i :學(xué)位論文第1 章緒論 由此不難得出,通過軟件工廠,提高行業(yè)的成熟度,實現(xiàn)軟件的大規(guī)模定制 生產(chǎn),降低軟件業(yè)成本,以提高軟件質(zhì)量,加快新產(chǎn)品的開發(fā)速度,是軟件生產(chǎn) 行業(yè)發(fā)展的必由之路。 1 1 2 相關(guān)解決方案 針對當(dāng)前軟件產(chǎn)業(yè)面臨的問題,學(xué)術(shù)界和工業(yè)界的研究和技術(shù)人員在技術(shù)創(chuàng) 新、軟件過程和系統(tǒng)復(fù)用等方面進(jìn)行了大量的探索和實踐 面向?qū)ο蟮某绦蛟O(shè)計語言( c + + ,j a v a ,c 柳,數(shù)據(jù)庫管理系統(tǒng)( r d b m s , o o d b m s ) 、快速應(yīng)用程序開發(fā)工具( d e l p h i ,p o w e r b u i l d e r ,e c l i p s e ,v i s u a ls t u d i o ) 、 c a s e 工具等極大提高了軟件開發(fā)效率。c o r b a 、j 2 e e 等中間件技術(shù)平臺和s o a 、 w e bs e r v i c e 等框架和技術(shù)屏蔽了分稚式環(huán)境下操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)和網(wǎng)絡(luò)協(xié)議 等底層軟硬件平臺的差異,為上層應(yīng)用軟件提供運行和開發(fā)環(huán)境,使軟件設(shè)計和 開發(fā)人員可以將更多的精力投入到商層的業(yè)務(wù)邏輯處理和計算閥題上u m l 和 m d a 等建模語言和框架基于分離業(yè)務(wù)功能分析和設(shè)計與實現(xiàn)技術(shù)和平臺之間的 耦合關(guān)系的思想,進(jìn)一步降低了技術(shù)和平臺對系統(tǒng)的影響,以快速響應(yīng)軟件系統(tǒng) 面向的用戶定制需求 技術(shù)上的進(jìn)步使得軟件系統(tǒng)的復(fù)雜度和要求進(jìn)一步提高,軟件工程方法研究 也開始從“生存周期”向“過程”轉(zhuǎn)移【i l ,其中軟件能力成熟度模型c m m ( c a p a b i l i t y m a t u r i t ym o d e l ) 【2 】的提出和實踐極大提高了軟件開發(fā)效率和軟件的質(zhì)量。 在系統(tǒng)復(fù)用方面,從上個世紀(jì)7 0 年代的模塊復(fù)用,到8 0 年代的對象復(fù)用, 再到9 0 年代的構(gòu)件復(fù)用,均對軟件生產(chǎn)的發(fā)展起到了巨大的推動作用。其中基 于構(gòu)件復(fù)用的軟件開發(fā)通過標(biāo)準(zhǔn)化運行級構(gòu)件的規(guī)約,依靠構(gòu)件運行平臺提供的 基礎(chǔ)設(shè)拖,自底而上地使用標(biāo)準(zhǔn)構(gòu)件構(gòu)造軟件系統(tǒng),使得軟件系統(tǒng)開發(fā)的重點從 程序設(shè)計變成構(gòu)件組裝,通過選取和復(fù)用構(gòu)件并經(jīng)過組裝和部署形成目標(biāo)系統(tǒng)。 構(gòu)件復(fù)用可以避免重復(fù)勞動,使得應(yīng)用系統(tǒng)的開發(fā)不再采用一切。從零開始”的 模式,而是以已有的工作為基礎(chǔ),充分利用過去應(yīng)用系統(tǒng)開發(fā)中積累的知識和經(jīng) 驗f 3 1 。 由于缺乏一個系統(tǒng)性的復(fù)用方法作為指導(dǎo),大規(guī)模的復(fù)用并沒有由于上述幾 方面的進(jìn)步而發(fā)生系統(tǒng)性復(fù)用思想本身并不復(fù)雜,m c l l r o y 早在1 9 6 9 年就提出 開發(fā)一個規(guī)模合理的構(gòu)件系統(tǒng)以復(fù)用這些構(gòu)件,并將復(fù)用的思想推廣到需求分 析、設(shè)計、實現(xiàn)和測試等過程中【4 】c o x 則在上個世紀(jì)9 0 年代初期,類比硬件提 出了“s o f t w a r ei c s ”方法,通過軟件總線來實現(xiàn)大規(guī)模的復(fù)用四但由于軟件產(chǎn) 3 浙江大學(xué)博士學(xué)位論文第1 章緒論 品面向的應(yīng)用領(lǐng)域多種多樣,且各領(lǐng)域軟件開發(fā)的組織結(jié)構(gòu)、管理方法、技術(shù)手 段、軟件過程、經(jīng)營策略等方面存在著差異,故特定應(yīng)用領(lǐng)域軟件產(chǎn)品開發(fā)系統(tǒng) 性復(fù)用的成功經(jīng)驗并不容易被其他領(lǐng)域和組織所采用。 1 1 3 軟件產(chǎn)品線的提出 軟件產(chǎn)品線是軟件工程領(lǐng)域中軟件體系結(jié)構(gòu)和軟件復(fù)用技術(shù)發(fā)展的結(jié)果研 究表明。特定領(lǐng)域的軟件復(fù)用活動相對容易取得成功嘲。領(lǐng)域的內(nèi)聚性和穩(wěn)定性 要求在復(fù)用構(gòu)件的基礎(chǔ)上進(jìn)一步復(fù)用系統(tǒng)框架在此背景下,w i l lt r a c e 率先提 出領(lǐng)域特定軟件體系結(jié)構(gòu)方法d s s a ( d 伽a i l 卜s p c c i f i cs o f t w a r ea r c h i t e c t u r e ) 川, 它突出強(qiáng)調(diào)體系結(jié)構(gòu)的作用,奠定了產(chǎn)品線方法的基礎(chǔ)面向特征的領(lǐng)域分析方 法f o d a ( f e a t u r e - o r i e n t e dd o m a i na n a l y s i s ) 射的提出使得特征分析逐漸成為領(lǐng)域 建模的主流貝爾實驗室于1 9 9 4 年提出面向家族的抽象,規(guī)約和轉(zhuǎn)化的領(lǐng)域工 程方法f a s t ( f a m i l y - o r i e n t e da b s t r a c t i o n , s p e c i f i c a t i o na n dt r a n s l a t i o n ) 9 1 ,確定了 軟件產(chǎn)品家族的開發(fā)流程1 9 9 9 年,德國f r a u n h o f e r 實驗軟件工程學(xué)院基于d s s a 提出產(chǎn)品線軟件工程方法p u l s e ( p r o d u c tl i n es o f t w a r ee n g i n e e r i n g ) i o l 。在此基礎(chǔ) 上,卡內(nèi)基梅隆大學(xué)( c m u ) 的軟件工程研究所( s e i ) 借鑒瑞典c e l s i u s t e c h s y s t e m 公司在輪船系統(tǒng)上的成功經(jīng)驗提出了“軟件產(chǎn)品線”( s o f t w a r ep r o d u c t l i n e ) 【】概念,其特點在于維護(hù)公共軟件資產(chǎn)庫,并在軟件產(chǎn)品開發(fā)過程中復(fù)用這 些資產(chǎn)。屬于同一領(lǐng)域的一系列應(yīng)用系統(tǒng)構(gòu)成了軟件產(chǎn)品家族( s o m v a r ep r o d u c t f a m i l y ) 1 2 軟件產(chǎn)品線的定義 軟件產(chǎn)品線被定義為“共享一組公共受控特征,滿足特定市場需要,并且按 照預(yù)定方式在相關(guān)核心資產(chǎn)( 如需求、設(shè)計、構(gòu)件等) 基礎(chǔ)上開發(fā)而成的一系列軟 件系統(tǒng)”i i l l 它是一組具有公共可控特征集的軟件系統(tǒng),其核心在于開發(fā)領(lǐng)域特 定的可復(fù)用框架以支持軟件產(chǎn)品家族的開發(fā)【1 2 1 一個產(chǎn)品線是共享一組共同設(shè)計 及標(biāo)準(zhǔn)的產(chǎn)品族,從市場角度看是在某市場片斷中的一組相似的產(chǎn)品【3 1 ,這些產(chǎn) 品屬于同一領(lǐng)域,具有公共需求集,可以根據(jù)特定的用戶需求對產(chǎn)品線體系結(jié)構(gòu) 進(jìn)行定制;從技術(shù)實現(xiàn)角度而言,軟件產(chǎn)品線通常由產(chǎn)品線體系結(jié)構(gòu),一組構(gòu)件 和軟件產(chǎn)品組成【1 3 】?;诋a(chǎn)品線的軟件產(chǎn)品開發(fā)的特點是維護(hù)公共軟件資產(chǎn)庫, 并在開發(fā)過程中復(fù)用這些資產(chǎn),如領(lǐng)域模型、軟件體系結(jié)構(gòu)模型、過程模型和構(gòu) 件等,而在傳統(tǒng)的單個產(chǎn)品的開發(fā)過程中主要是代碼復(fù)用。軟件產(chǎn)品從產(chǎn)品線體 4 浙江大學(xué)博士學(xué)位論文第l 章緒論 系結(jié)構(gòu)獲取自己的體系結(jié)構(gòu),實例化并配置產(chǎn)品線構(gòu)件集的一個子集,并開發(fā)產(chǎn) 品特定的代碼實例化的軟件產(chǎn)品構(gòu)成了領(lǐng)域軟件產(chǎn)品家族由此可見,軟件產(chǎn) 品線是一種有效的、系統(tǒng)的軟件復(fù)用形式 圖l - 2 軟件產(chǎn)品線工程 軟件產(chǎn)品線工程是產(chǎn)品線理論和方法的實踐和應(yīng)用,通常由兩個相對獨立的 開發(fā)周期構(gòu)成:產(chǎn)品線開發(fā)( 領(lǐng)域工程) 和產(chǎn)品實例化( 應(yīng)用工程) 如圖i 2 所示, 領(lǐng)域工程活動包括領(lǐng)域分析和定義、領(lǐng)域參考體系結(jié)構(gòu)開發(fā)、領(lǐng)域核心構(gòu)件開發(fā) 等,主要是在領(lǐng)域特征分析的基礎(chǔ)上設(shè)計、開發(fā)和完善可復(fù)用資產(chǎn),如產(chǎn)品線體 系結(jié)構(gòu)和可復(fù)用構(gòu)件等;應(yīng)用工程階段的活動則包括應(yīng)用需求分析、參考體系結(jié) 構(gòu)的實例化、領(lǐng)域構(gòu)件的實例化和定制以及基于構(gòu)件的開發(fā)等,主要基于需求分 析,進(jìn)行特征選取,確定產(chǎn)品體系結(jié)構(gòu),獲取公用構(gòu)件進(jìn)行復(fù)用和調(diào)整,生成產(chǎn) 品特定代碼【1 4 】整個過程包含了可復(fù)用資產(chǎn)的生產(chǎn)和消費兩個方面:在開發(fā)過程 的兩個階段中,領(lǐng)域工程是產(chǎn)品線核心資產(chǎn)的生產(chǎn)階段,而應(yīng)用工程則使用這些 資產(chǎn)進(jìn)行產(chǎn)品開發(fā) 領(lǐng)域工程活動產(chǎn)生的輸出包括產(chǎn)品線范圍、核心資產(chǎn)和生產(chǎn)計劃i l l 】領(lǐng)域分 析通過上下文分析識別領(lǐng)域的邊界和上下文關(guān)系,領(lǐng)域的范圍和邊界決定了領(lǐng)域 共性的大小以及資產(chǎn)的適用范圍在此基礎(chǔ)上可以進(jìn)行核心資產(chǎn)的設(shè)計和實現(xiàn), 涵蓋整個產(chǎn)品系列共同特性的需求,特別是與體系結(jié)構(gòu)設(shè)計直接相關(guān)的高層需 求,即首要的核心資產(chǎn)基于核心資產(chǎn)即可快速構(gòu)造出產(chǎn)品線體系結(jié)構(gòu)并評估產(chǎn) 品線的可行性【l l 】領(lǐng)域體系結(jié)構(gòu)中的構(gòu)件資產(chǎn)將分配給相應(yīng)的構(gòu)件開發(fā)組進(jìn)行實 現(xiàn),至此領(lǐng)域工程階段結(jié)束 產(chǎn)品線的最終價值體現(xiàn)在應(yīng)用工程具體軟件產(chǎn)品的開發(fā)過程中單個軟件產(chǎn) 5 浙江大學(xué)博士學(xué)位論文第l 章緒論 品將根據(jù)其面向的特定需求對領(lǐng)域需求模型進(jìn)行定制,從而得到同時滿足領(lǐng)域約 束和特定需求的產(chǎn)品需求若領(lǐng)域模型無法支持當(dāng)前的產(chǎn)品需求,則需要返回領(lǐng) 域工程階段對領(lǐng)域模型進(jìn)行更新以容納新的變化最終,應(yīng)用工程師將在產(chǎn)品需 求的指導(dǎo)下,通過對領(lǐng)域資產(chǎn)的復(fù)用以及對特定應(yīng)用制品的實現(xiàn)得到目標(biāo)產(chǎn)品 1 3 軟件產(chǎn)品線工程的特點 軟件產(chǎn)品線是一個系統(tǒng)性的大規(guī)模的復(fù)用方法,貫穿軟件開發(fā)的所有階段, 其本質(zhì)特點在于強(qiáng)調(diào)領(lǐng)域體系結(jié)構(gòu)的重要性以及面向特定領(lǐng)域的市場導(dǎo)向。這是 與以構(gòu)件為核心的初始領(lǐng)域工程方法的最大差別。從軟件產(chǎn)品線的定義中可以看 出軟件產(chǎn)品線的幾個主要特點:市場目標(biāo)驅(qū)動、面向特定領(lǐng)域、以體系結(jié)構(gòu)為核 心、復(fù)用導(dǎo)向貫穿始終使用面向?qū)ο缶幊?、基于?gòu)件的軟件開發(fā)和軟件產(chǎn)品線 進(jìn)行軟件產(chǎn)品開發(fā)的特點描述如表1 - 1 所示 表1 - 1o o p 、c b s d ,s p l 的軟件產(chǎn)品開發(fā)特點對比 面向?qū)ο缶幊袒跇?gòu)件的軟件 軟件產(chǎn)品線( s p l ) ( o o p )開發(fā)( c b s d ) 需求、領(lǐng)域體系結(jié)構(gòu)、 復(fù)用對象類構(gòu)件 構(gòu)件等軟件資產(chǎn) 開發(fā)周期劃分無無領(lǐng)域工程和應(yīng)用工程 面向具體應(yīng)用開面向具體應(yīng)用殲頑向應(yīng)用領(lǐng)域開發(fā)軟件 軟件產(chǎn)品開發(fā) 發(fā)獨立軟件產(chǎn)品發(fā)獨立軟件產(chǎn)品產(chǎn)品家族 復(fù)用僅發(fā)生在實復(fù)用僅發(fā)生在實貫穿需求分析、設(shè)計、 復(fù)用的系統(tǒng)性 現(xiàn)階段現(xiàn)階段實現(xiàn)和測試等所有階段 通過對領(lǐng)域模型進(jìn)行裁 市場響應(yīng)速度較幔 一般 剪迅速響應(yīng)市場變化 通過對領(lǐng)域體系結(jié)構(gòu)進(jìn) 個性化需求 較弱一般行裁剪快速生產(chǎn)滿足應(yīng) 定制能力 用需求的軟件產(chǎn)品 急劇變化的市場、管理和組織環(huán)境是軟件產(chǎn)品線產(chǎn)生的重要背景,快速滿足 市場迅速變化的企業(yè)級大規(guī)模應(yīng)用需求是軟件產(chǎn)品線方法提出的根本目標(biāo)。如圖 1 - 3 所示f ,市場需求的快速變更和個性化的需求定制決定了軟件產(chǎn)品線的可變 6 浙江大學(xué)博士學(xué)位論文第l 章綣論 性,軟件市場面向的應(yīng)用領(lǐng)域的多樣性和差異性決定了軟件產(chǎn)品線唯有面向特定 領(lǐng)域才能實現(xiàn)可復(fù)用資產(chǎn)的抽取和共享這些資產(chǎn)是軟件產(chǎn)品線的基礎(chǔ),包括軟 件產(chǎn)品線開發(fā)過程中產(chǎn)生和相關(guān)的一切軟件制品,例如領(lǐng)域模型、領(lǐng)域知識、產(chǎn) 品線體系結(jié)構(gòu)、過程模型和構(gòu)件等產(chǎn)品線軟件開發(fā)不僅復(fù)用構(gòu)件,更是一個復(fù) 用領(lǐng)域體系結(jié)構(gòu)的過程根據(jù)領(lǐng)域應(yīng)用需求確定特征選取并對產(chǎn)品線領(lǐng)域體系結(jié) 構(gòu)進(jìn)行裁剪即可實現(xiàn)特定軟件產(chǎn)品的生產(chǎn) 圖1 - 3 軟件產(chǎn)品線工程特點 圖l - 4 軟件產(chǎn)品線基本活動之間的關(guān)系 7 浙江大學(xué)博士學(xué)位論文 第1 章緒論 軟件產(chǎn)品線作為一個系統(tǒng)的復(fù)用方法,還涉及到管理這一基本活動,主要包 括技術(shù)和組織的管理領(lǐng)域工程、應(yīng)用工程和管理三個基本活動之問的關(guān)系如圖 l - 4 所示l ,三個基本活動緊密聯(lián)系,各自不斷更新,同時引發(fā)其他活動的更新, 更新可以以任何次序出現(xiàn)且反復(fù)循環(huán)。正向的開發(fā)活動通過核心資產(chǎn)開發(fā)用于應(yīng) 用開發(fā),逆向的開發(fā)活動則從現(xiàn)有產(chǎn)品中挖掘公共資產(chǎn)放入產(chǎn)品線資產(chǎn)庫l l l l 核 心資產(chǎn)和產(chǎn)品開發(fā)之間存在很強(qiáng)的反饋循環(huán),即使采用正向開發(fā),核心資產(chǎn)也可 能隨著新的產(chǎn)品開發(fā)而更新。由于領(lǐng)域總是處于不斷的發(fā)展變化之中,而開發(fā)者 對領(lǐng)域預(yù)見性的把握并不總是準(zhǔn)確的,因此需要引入持久的、強(qiáng)有力的、有遠(yuǎn)見 的管理【m 。 1 4 軟件產(chǎn)品線研究項目與實踐 軟件產(chǎn)品線以及基于特征的方法近十年以來一直是軟件工程界的研究熱點 2 0 0 0 年,s e i 發(fā)起召開了第一屆國際軟件產(chǎn)品線會議s p l c ( s o f t w a r ep r o d u c tl i n e c o n f e r e n c e ) ,并提出一個完整的、經(jīng)實踐確認(rèn)的軟件產(chǎn)品線開發(fā)方法除此之外, i c s e ( i n t e r n a t i o n a lc o n f e r e n c eo nt h

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論