《軟件產(chǎn)品線(xiàn)工程》從一個(gè)軟件產(chǎn)品線(xiàn)工程框架出發(fā),闡述了與特定領(lǐng)域軟件產(chǎn)品開(kāi)發(fā)有關(guān)的領(lǐng)域工程和應(yīng)用工程過(guò)程。介紹了過(guò)程申產(chǎn)生的各種工件、產(chǎn)品線(xiàn)可變性及其管理,以及兩個(gè)工程過(guò)程之間通過(guò)不變與可變性所建立的聯(lián)系。書(shū)申還包括與軟件產(chǎn)品線(xiàn)有關(guān)的組織、管理及如何向軟件產(chǎn)品線(xiàn)轉(zhuǎn)變等內(nèi)容。書(shū)中強(qiáng)調(diào)了軟件產(chǎn)品線(xiàn)工程的基本原理、實(shí)踐特點(diǎn)以及與單一系統(tǒng)開(kāi)發(fā)的區(qū)別。尤其難得的是,為方便讀者理解,書(shū)中在各章中使用了同一個(gè)產(chǎn)品來(lái)講述具體的實(shí)例。
《軟件產(chǎn)品線(xiàn)工程》的作者為業(yè)內(nèi)資深專(zhuān)家。全書(shū)結(jié)構(gòu)嚴(yán)謹(jǐn)、條理清晰、圖文并茂,是介紹軟件產(chǎn)品線(xiàn)的優(yōu)秀著作!盾浖a(chǎn)品線(xiàn)工程》的讀者為軟件開(kāi)發(fā)人員、測(cè)試人員、軟件產(chǎn)品線(xiàn)研究者與大專(zhuān)院校師生。
1.軟件產(chǎn)品線(xiàn)工程
你對(duì)以低成本、快速生產(chǎn)出高質(zhì)量的軟件產(chǎn)品或軟件密集型的系統(tǒng)感興趣嗎?如果是,那你手里拿的正是這樣的一本書(shū)。
軟件產(chǎn)品線(xiàn)工程已經(jīng)被證明是以低成本,短時(shí)間,生產(chǎn)高質(zhì)量、多樣性的軟件產(chǎn)品或軟件密集型系統(tǒng)的一種方法。大量的報(bào)告顯示了軟件業(yè)在引入軟件產(chǎn)品線(xiàn)后所取得的巨大的成就和寶貴經(jīng)驗(yàn)。本書(shū)第21章總結(jié)了某些案例。
關(guān)于術(shù)語(yǔ),“軟件產(chǎn)品家族”和“軟件產(chǎn)品線(xiàn)”的意義相同。然而在歐洲,前者使用得更多;在北美,后者用得較多。關(guān)于這一點(diǎn),在兩個(gè)會(huì)議的名稱(chēng)上也得到反映:其一是2000年始于美國(guó)的軟件產(chǎn)品線(xiàn)年會(huì),另一個(gè)是1996年始于歐洲的軟件產(chǎn)品家族系列年會(huì)(PFE);后來(lái),于2004年合并為著名的軟件產(chǎn)品線(xiàn)(SPLC)年會(huì)。
在本書(shū)中,我們使用軟件產(chǎn)品線(xiàn)這一術(shù)語(yǔ)。
2.本書(shū)的讀者
本書(shū)是為對(duì)軟件產(chǎn)品線(xiàn)工程原則感興趣的人準(zhǔn)備的,它詳細(xì)闡述了軟件產(chǎn)品線(xiàn)工程的基礎(chǔ),提供了基于經(jīng)驗(yàn)的關(guān)于兩個(gè)主要過(guò)程(領(lǐng)域工程、應(yīng)用工程)的知識(shí),定義了可變性與可變性的管理。
Klaus Pohl教授是杜依斯堡一埃森大學(xué)的全職教授,領(lǐng)導(dǎo)著一個(gè)軟件系統(tǒng)工程研究團(tuán)隊(duì)。他從德國(guó)亞琛工業(yè)大學(xué)獲得博士學(xué)位。他參與了各種各樣的技術(shù)轉(zhuǎn)讓項(xiàng)目和一些關(guān)注軟件產(chǎn)品線(xiàn)工程各個(gè)方面的重要項(xiàng)目。
博士是西門(mén)子公司的一位項(xiàng)目經(jīng)理。他在1976年從斯圖加特大 學(xué)獲得數(shù)學(xué)博士學(xué)位。從1999年開(kāi)始,他領(lǐng)導(dǎo)了多個(gè)軟件產(chǎn)品線(xiàn)項(xiàng)目。在此之前,他的 工作經(jīng)歷包括仿真、建模、系統(tǒng)評(píng)估、處理器架構(gòu)與設(shè)計(jì)、并行、軟件工程和系統(tǒng)工程。
Frank van der Linden博士從1999年開(kāi)始在飛利浦醫(yī)療系統(tǒng)公司工作。
Gunter Bockle博士是西門(mén)子公司的一位項(xiàng)目經(jīng)理。他在1976年從斯圖加特大學(xué)獲得數(shù)學(xué)博士學(xué)位。從1999年開(kāi)始,他領(lǐng)導(dǎo)了多個(gè)軟件產(chǎn)品線(xiàn)項(xiàng)目。在此之前,他的工作經(jīng)歷包括仿真、建模、系統(tǒng)評(píng)估、處理器架構(gòu)與設(shè)計(jì)、并行、軟件工程和系統(tǒng)工程。
第一部分 引言
第1章 軟件產(chǎn)品線(xiàn)工程介紹
1.1 產(chǎn)品線(xiàn)工程的原則
1.1.1 大規(guī)模定制
1.1.2 平臺(tái)
1.1.3 將基于平臺(tái)的開(kāi)發(fā)和大規(guī)模定制相結(jié)合
1.2 定制產(chǎn)品的工程化
1.2.1 創(chuàng)建平臺(tái)
1.2.2 引入靈活性
1.2.3 公司的重新組織
1.3 產(chǎn)品線(xiàn)工程的動(dòng)機(jī)
1.3.1 降低開(kāi)發(fā)成本
1.3.2 提高質(zhì)量
1.3.3 縮短上市時(shí)間
1.3.4 其他動(dòng)機(jī)
1.4 軟件產(chǎn)品線(xiàn)工程
1.4.1 定義
1.4.2 軟件平臺(tái)
1.4.3 前提條件
第2章 軟件產(chǎn)品線(xiàn)工程框架
2.1 引言
2.2 兩個(gè)開(kāi)發(fā)過(guò)程
2.3 過(guò)程框架概述
2.4 領(lǐng)域工程
2.4.1 產(chǎn)品管理
2.4.2 領(lǐng)域需求工程
2.4.3 領(lǐng)域設(shè)計(jì)
2.4.4 領(lǐng)域?qū)崿F(xiàn)
2.4.5 領(lǐng)域測(cè)試
2.4.6 其他軟件質(zhì)量保證技術(shù)
2.5 領(lǐng)域工件
2.5.1 產(chǎn)品路線(xiàn)圖
2.5.2 領(lǐng)域變化模型
2.5.3 領(lǐng)域需求
2.5.4 領(lǐng)域架構(gòu)
2.5.5 領(lǐng)域?qū)崿F(xiàn)工件
2.5.6 領(lǐng)域測(cè)試工件
2.6 應(yīng)用工程
2.6.1 應(yīng)用需求工程
2.6.2 宜用設(shè)計(jì)
2.6 ‘3宜用實(shí)現(xiàn)
2.6.4 應(yīng)用測(cè)試
2.7 應(yīng)用工件
2.7.1 應(yīng)用變化模型
2.7.2 應(yīng)用需求
2.7.3 應(yīng)用架構(gòu)
2.7.4 應(yīng)用實(shí)現(xiàn)工件
2.7.5 應(yīng)用測(cè)試工件
2.8 在本書(shū)中框架的角色
第3章 住宅自動(dòng)化領(lǐng)域的例子
3.1 智能住宅基礎(chǔ)設(shè)施
3.1.1 目標(biāo)
3.1.2 利益相關(guān)者
3.1.3 智能住宅和傳統(tǒng)住宅的區(qū)別
3.2 住宅自動(dòng)化系統(tǒng)的構(gòu)建模塊
3.2.1 傳感器和激勵(lì)源
3.2.2 智能控制設(shè)備
3.2.3 住宅網(wǎng)關(guān)
3.2.4 網(wǎng)絡(luò)
3.2.5 住宅自動(dòng)化領(lǐng)域的標(biāo)準(zhǔn)
3.3 例子
3.3.1 系統(tǒng)功能
3.3.2 一個(gè)簡(jiǎn)單的系統(tǒng)配置
3.3.3 系統(tǒng)構(gòu)件交互
3.4 智能住宅應(yīng)用的軟件可變性
3.4.1.變性的例子
3.4.2 可變性的原因
3.5 本書(shū)中住宅自動(dòng)化領(lǐng)域的角色
第二部分 產(chǎn)品線(xiàn)可變性
第4章 可變性原則
4.1 引言
4.2 變化主題和變化對(duì)象
4.3 軟件產(chǎn)品線(xiàn)工程中的可變性
4.3.1 變化點(diǎn)
4.3.2 變量
4.3.3 定義變化點(diǎn)和變量
4.3.4 軟件產(chǎn)品線(xiàn)的可變性
4.4 時(shí)間可變性和空間可變性的對(duì)比
4.5 內(nèi)部可變性和外部可變性
4.5.1 存在外部可變性的原因
4.5.2 存在內(nèi)部可變性的原因
4.5.3 內(nèi)部可變性和外部可變性的判定
4.5.4 可變性金字塔
4.6 正交變化模型
4.6.1 可變性的清晰描述
4.6.2 正交可變性定義
4.6.3 變化點(diǎn)、變量和可變性依賴(lài)
4.6.4 可替代選擇
4.6.5 可變性約束
4.6.6 變化模型和其他開(kāi)發(fā)工件之間的追蹤關(guān)系
4.6.7 圖形標(biāo)記
4.6.8 例子
4.6.9 術(shù)語(yǔ)的使用
4.7 處理變化模型中的復(fù)雜性
4.8 與單一系統(tǒng)工程的差別
4.9 總結(jié)
第5章 需求工件的可變性描述
5.1 引言
5.2 描述需求
5.2.1 基于模型的和文本格式的需求描述
5.2.2 需求工件
5.2.3 目標(biāo)和特征
5.2.4 用例和場(chǎng)景
5.2.5 傳統(tǒng)的需求模型、
5.3 文本格式的需求中的可變性
5.3.1 在文本格式的需求中定義可變性
5.3.2 用XML描述可變性
5.4 需求模型中的可變性
5.4.1 特征模型中的可變性
5.4.2 用例模型中的可變性
5.4.3 傳統(tǒng)需求模型中的可變性
5.5 變化模型和需求工件之間的追蹤
5.6 與單一系統(tǒng)工程的區(qū)別
5.7 總結(jié)
第6章 設(shè)計(jì)工件的可變性描述
6.1 引言
6.2 架構(gòu)工件
6.3 參考架構(gòu)
6.4 開(kāi)發(fā)視圖中的可變性
6.4.1 子系統(tǒng)和層
6.4.2 構(gòu)件
6.4.3 接口的作用
6.4.4 配置
6.5 處理視圖中的可變性
6.6 代碼視圖中的可變性
6.7 與單一系統(tǒng)工程的差別
6.8 總結(jié)
第7章 實(shí)現(xiàn)工件可變性描述
7.1 引言
7.2 詳細(xì)設(shè)計(jì)工件
7.3 構(gòu)件接口可變性
7.3.1 算法和協(xié)議的可變性
7.3.2 資源的可變性
7.3.3 應(yīng)用配置的可變性
7.3.4 多個(gè)構(gòu)件提供接口
7.4 內(nèi)在的構(gòu)件可變性,
7.5 與單一系統(tǒng)工程的區(qū)別
……
第8章 測(cè)試工作的可變性描述
第三部分 領(lǐng)域工程
第9章 產(chǎn)品管理
第10章 領(lǐng)域需求工程
第11章 領(lǐng)域設(shè)計(jì)
第12章 領(lǐng)域?qū)崿F(xiàn)
第13章 領(lǐng)域測(cè)試
第14章 高層COTS構(gòu)件選擇
第四部分 應(yīng)用工程
第15章 應(yīng)用需求工程
第16章 應(yīng)用設(shè)計(jì)
第17章 應(yīng)用實(shí)現(xiàn)
第18章 應(yīng)用測(cè)試
……
產(chǎn)品管理的目標(biāo)是將產(chǎn)品的開(kāi)發(fā)、生產(chǎn)和銷(xiāo)售相結(jié)合,生產(chǎn)滿(mǎn)足客戶(hù)需求的產(chǎn)品,進(jìn)而為企業(yè)的成功做出重要貢獻(xiàn)。產(chǎn)品管理在軟件工程全過(guò)程中貫徹企業(yè)的目標(biāo)。因此,它對(duì)需求工程、設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試都會(huì)產(chǎn)生影響。與產(chǎn)品管理緊密相關(guān)的子過(guò)程和工件如圖9-1所示中高亮部分所示。
對(duì)于軟件產(chǎn)品線(xiàn)工程框架來(lái)說(shuō),產(chǎn)品管理過(guò)程產(chǎn)生的主要結(jié)果是產(chǎn)品路線(xiàn)圖。請(qǐng)注意,在前面出現(xiàn)的框架圖中并未標(biāo)出路線(xiàn)圖,這是因?yàn)楫a(chǎn)品管理沒(méi)有與之對(duì)應(yīng)的常規(guī)意義上的開(kāi)發(fā)工件(2.5.1節(jié))。產(chǎn)品路線(xiàn)圖是在給定的時(shí)間點(diǎn)上,對(duì)產(chǎn)品線(xiàn)的未來(lái)情況做出盡可能長(zhǎng)遠(yuǎn)的預(yù)計(jì)。它定義了產(chǎn)品線(xiàn)中所有產(chǎn)品線(xiàn)應(yīng)用的主要通用和可變特征,以及向客戶(hù)提供某特定類(lèi)型應(yīng)用的進(jìn)度表和上市時(shí)間。產(chǎn)品路線(xiàn)圖里定義的特征直接影響著領(lǐng)域需求工程和應(yīng)用需求工程。
領(lǐng)域需求工程和應(yīng)用需求工程必須與產(chǎn)品路線(xiàn)圖中描述的特征相一致。領(lǐng)域需求工程提供可重用需求工件,應(yīng)用需求工程為特定應(yīng)用創(chuàng)建需求工件,而這些應(yīng)用正是由產(chǎn)品路線(xiàn)圖所規(guī)劃的。下面各節(jié)主要描述產(chǎn)品管理和其他相關(guān)子過(guò)程之間的信息流,如圖9-2所示。