国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

軟件工廠研究現(xiàn)狀綜述

2006-12-27 05:00馬春黎
計算機(jī)教育 2006年12期
關(guān)鍵詞:產(chǎn)品線供應(yīng)鏈

馬春黎 盧 葦

摘要:軟件工廠是軟件開發(fā)工程化最可行的形式,實(shí)際上,它只是軟件開發(fā)方法和實(shí)踐在持續(xù)發(fā)展過程中的下一個合乎邏輯的步驟,但它們承諾通過引入工業(yè)化模式來改變軟件行業(yè)的性質(zhì)。本文首先闡述什么是軟件工廠,然后說明它的實(shí)現(xiàn)基礎(chǔ),即概念和主要的技術(shù),最后闡述它的工作過程。

關(guān)鍵詞:軟件工廠;產(chǎn)品線;供應(yīng)鏈

1 引言

軟件工廠是指為了支持某種特定應(yīng)用程序的快速開發(fā)而配置的開發(fā)環(huán)境。是模式、模型、框架和工具的綜合應(yīng)用。

目前,軟件開發(fā)一般采用人工手動的方法,速度緩慢、代價高昂而又極易出錯,常常會生產(chǎn)出存在大量缺陷的產(chǎn)品,在可用性、可靠性、性能、安全以及其他服務(wù)質(zhì)量方面造成嚴(yán)重的問題。同時,軟件開發(fā)人員面臨著快速發(fā)展的平臺技術(shù)、不斷增長的用戶需求、永無止境地學(xué)習(xí)新技術(shù)、在舊的應(yīng)用軟件中提取可用價值等壓力,這就需要一種既為軟件開發(fā)創(chuàng)造便利,又為用戶帶來效益的方法。

軟件工廠恰恰可以解決上述問題。它使得軟件生產(chǎn)條理化、系統(tǒng)化,工廠式的管理體系確保軟件產(chǎn)品和產(chǎn)品加工過程規(guī)范、標(biāo)準(zhǔn);使項(xiàng)目實(shí)施人員可以對零件(中間件、模塊)進(jìn)行自由組合;軟件工廠適應(yīng)用戶變化,解決了用戶需求不確定性問題;軟件工廠最大可能地利用已有資源,使得軟件構(gòu)件的復(fù)用性得到提高,軟件開發(fā)工作量明顯減少,軟件成本大幅度降低;軟件工廠采取流水作業(yè)方式,為多個項(xiàng)目并行實(shí)施創(chuàng)造了條件,軟件可以實(shí)現(xiàn)批量生產(chǎn),軟件工廠插件式、組裝式的軟件生產(chǎn)方式開拓了系統(tǒng)的擴(kuò)展空間;利用軟件工廠進(jìn)行軟件開發(fā),用戶可以控制項(xiàng)目周期、成本、質(zhì)量,開發(fā)速度得到提高,項(xiàng)目效益和成功性得到保障;軟件工廠使得維護(hù)工作只需針對需要維護(hù)的對象(中間件、模塊)展開,工作量大大減少,軟件產(chǎn)品全壽命周期成本降低。

2 軟件工廠涉及的基本概念和技術(shù)

2.1 軟件產(chǎn)品系列

軟件產(chǎn)品系列是有相同特征的一組產(chǎn)品的集合。軟件產(chǎn)品系列成員具有很多共同特征,成員可以是組件也可是整個產(chǎn)品。

系列成員可以根據(jù)個性問題特征指定,根據(jù)個性解決方案來實(shí)現(xiàn),從而可以忽略共性,減小了解決問題的范圍和需要提供解決方案的范圍。

2.2 軟件產(chǎn)品線

由一個產(chǎn)品線體系結(jié)構(gòu)、一個可重用構(gòu)件集合(核心資源)和一個源自共享資源的產(chǎn)品集合組成,是組織一組相關(guān)軟件產(chǎn)品開發(fā)的方式。

軟件產(chǎn)品線系統(tǒng)獲取生產(chǎn)系列產(chǎn)品成員的知識,以可重用資產(chǎn)的形式使用,例如組件、過程、工具,然后用這些資產(chǎn)生產(chǎn)系列成員。產(chǎn)品就像是家族成員一樣重復(fù)使用需求、體系結(jié)構(gòu)、框架、組件、測試和其他資產(chǎn)。軟件產(chǎn)品線主要有以下建立方式:

(1)將現(xiàn)有產(chǎn)品演化為產(chǎn)品線。

(2)用軟件產(chǎn)品線替代為現(xiàn)有產(chǎn)品集。

(3)全新軟件產(chǎn)品線的演化。

(4)全新軟件產(chǎn)品線的開發(fā)。

2.3 供應(yīng)鏈

供應(yīng)鏈?zhǔn)且粋€網(wǎng)絡(luò),以原始材料為起點(diǎn),將其轉(zhuǎn)換為中間產(chǎn)品,然后轉(zhuǎn)換為最終的產(chǎn)品,以便通過配送系統(tǒng)提供給客戶。

供應(yīng)商互相連接在一起,以便使來自上游供應(yīng)商的輸出變成下游供應(yīng)商的輸入。上游供應(yīng)商可以向下游供應(yīng)商提供實(shí)現(xiàn)資產(chǎn)(例如,組件)或過程資產(chǎn)(例如工具和過程文檔)。由于下游供應(yīng)商生產(chǎn)的產(chǎn)品要結(jié)合上游供應(yīng)商提供的實(shí)現(xiàn)資產(chǎn),因此下游供應(yīng)商具有較窄的活動范圍,并且生產(chǎn)的產(chǎn)品比上游產(chǎn)品更大。

軟件工廠通過劃分軟件架構(gòu)(縱向或橫向)以便將職責(zé)轉(zhuǎn)移給外部供應(yīng)商來促進(jìn)供應(yīng)鏈的形成:

(1)縱向劃分使軟件工廠可以裝配由上游供應(yīng)商提供的組件。例如,實(shí)體框架來自獨(dú)立軟件供應(yīng)商。

(2)橫向劃分可以分隔產(chǎn)品系列和產(chǎn)品開發(fā)人員,使得產(chǎn)品開發(fā)人員可以使用由處于供應(yīng)鏈同一級別的外部產(chǎn)品系列開發(fā)人員提供的生產(chǎn)資產(chǎn)。這可以采取下列兩種形式之一:

①產(chǎn)品系列開發(fā)被外包。例如,開發(fā)軟件工廠的產(chǎn)品系列開發(fā)人員為外部的系統(tǒng)集成商工作,而不是為獨(dú)立軟件供應(yīng)商工作。他們?yōu)榭蛻艚M織中的開發(fā)人員生成軟件工廠,而不是為內(nèi)部開發(fā)人員生成它們。

②產(chǎn)品開發(fā)被外包。例如,產(chǎn)品開發(fā)人員為系統(tǒng)集成商工作,并使用為獨(dú)立軟件供應(yīng)商工作的產(chǎn)品系列開發(fā)人員所開發(fā)的軟件工廠。產(chǎn)品開發(fā)人員可能位于境外成本較低的勞務(wù)市場中。

3 軟件工廠的工作過程

3.1 軟件產(chǎn)品線開發(fā)

產(chǎn)品線開發(fā)的目標(biāo)是為一個產(chǎn)品系列提供生產(chǎn)資產(chǎn)。我們可以把產(chǎn)品線開發(fā)認(rèn)為是產(chǎn)品線的分析、設(shè)計和實(shí)現(xiàn)。

產(chǎn)品線分析是決定產(chǎn)品線開發(fā)什么產(chǎn)品。包括產(chǎn)品線定義、問題和解決方案的領(lǐng)域范圍、商業(yè)案例分析和范圍鑒定。其分析強(qiáng)調(diào):

①通過捕獲風(fēng)險承擔(dān)者的觀點(diǎn)來揭示產(chǎn)品線需求;

②通過系統(tǒng)的推理和分析、集成功能需求和分功能需求來完成產(chǎn)品線需求;

③產(chǎn)品線設(shè)計師對產(chǎn)品線需求的可用性。

產(chǎn)品線設(shè)計決定產(chǎn)品線怎樣開發(fā)產(chǎn)品,其中包括產(chǎn)品線體系結(jié)構(gòu)開發(fā)和映射、產(chǎn)品開發(fā)過程的定義和自動化。

產(chǎn)品線實(shí)現(xiàn)的目的是提供產(chǎn)品線體系結(jié)構(gòu)和需要的實(shí)現(xiàn)資產(chǎn)和過程自動化需要的過程資產(chǎn)。

3.2 產(chǎn)品開發(fā)

3.2.1 產(chǎn)品開發(fā)活動要素

產(chǎn)品開發(fā)活動取決于產(chǎn)品線范圍、核心資源庫、產(chǎn)品計劃和需求的輸出。

產(chǎn)品開發(fā)的輸入有:

(1)特定產(chǎn)品的需求,通常由包含在產(chǎn)品線范圍內(nèi)的一些產(chǎn)品描述來表達(dá);

(2)產(chǎn)品線范圍,指明正在考慮的產(chǎn)品是否適合包含在產(chǎn)品線中;

(3)構(gòu)建產(chǎn)品所需的核心資源庫;

(4)產(chǎn)品計劃,指明核心資源如何應(yīng)用到產(chǎn)品的構(gòu)建中。

本質(zhì)上說,產(chǎn)品線是一組相關(guān)產(chǎn)品的集合,但是,怎樣實(shí)現(xiàn)卻有很大的不同,這取決于資源、產(chǎn)品計劃和組織環(huán)境。

3.2.2 生成產(chǎn)品涉及到的活動

(1)問題分析:確定問題是否位于軟件工廠的范圍內(nèi);

(2)產(chǎn)品規(guī)范:根據(jù)與產(chǎn)品要求之間的差異來定義產(chǎn)品要求;

(3)產(chǎn)品設(shè)計:將要求方面的差異映射到產(chǎn)品系列體系結(jié)構(gòu)和產(chǎn)品開發(fā)過程方面的差異,從而生成產(chǎn)品體系結(jié)構(gòu)和自定義的產(chǎn)品開發(fā)過程;

(4)產(chǎn)品實(shí)現(xiàn):可以使用一系列機(jī)制來開發(fā)實(shí)現(xiàn),具體取決于差異的范圍,例如,屬性表、配置組件的向?qū)Ш凸δ苣P?、裝配組件并生成其他人工制品(例如,模型、代碼和配置文件)的可視模型,以及完成框架擴(kuò)展點(diǎn)或者創(chuàng)建、修改、擴(kuò)展或改裝組件的源代碼;

(5)產(chǎn)品部署:通過供應(yīng)設(shè)備、驗(yàn)證主機(jī)配置來創(chuàng)建或重用默認(rèn)的部署約束、邏輯主機(jī)配置以及可執(zhí)行文件到邏輯主機(jī)的映射,通過安裝和配置必需的資源來重新配置主機(jī),以及安裝和配置所部署的可執(zhí)行文件;

(6)產(chǎn)品測試:創(chuàng)建或重用測試資產(chǎn)(包括測試用例、測試裝置、測試數(shù)據(jù)集和測試腳本)以及應(yīng)用儀表化和度量工具。

4 結(jié)論

軟件工廠的出現(xiàn)使得軟件開發(fā)商可以通過可重復(fù)的開發(fā)過程快速生產(chǎn)出效率高、成本低、質(zhì)量好的企業(yè)級軟件。軟件工廠所提供的軟件基礎(chǔ)架構(gòu)可以實(shí)現(xiàn)快捷的、生產(chǎn)線級的軟件生產(chǎn)能力。具體包括:建立標(biāo)準(zhǔn)結(jié)構(gòu)、軟件中間件、開發(fā)過程、實(shí)踐、擴(kuò)展的集成開發(fā)環(huán)境、組件庫和知識庫以及重用策略等。

軟件工廠是唯一一種在建立工廠的同時生產(chǎn)產(chǎn)品的特殊“工廠”。這種方式可以大大降低現(xiàn)代軟件開發(fā)的成本和復(fù)雜性。

參考文獻(xiàn)

[1] www.ccident.com. 廖錚,組件技術(shù)造就軟件工廠.2001年06月28日.

[2] Kishore Channabasavaiah,Kerrie Holley,Edward M. Tuggle, Jr.遷移到面向服務(wù)的體系結(jié)構(gòu) 第二部分. 2003年12月.

猜你喜歡
產(chǎn)品線供應(yīng)鏈
海外并購績效及供應(yīng)鏈整合案例研究
編輯在圖書出版中的作用
基于Triz理論的戴森產(chǎn)品線系列創(chuàng)新機(jī)制研究
基于供應(yīng)鏈環(huán)境下樂山某超市供應(yīng)商的選擇
基于供應(yīng)鏈環(huán)境下樂山某超市供應(yīng)商的選擇
改變集裝箱供應(yīng)鏈商業(yè)模式
大投入 大制作 大產(chǎn)出
微軟和聯(lián)想宣布合作
供應(yīng)鏈平臺更受重視
產(chǎn)品可靠性與供應(yīng)鏈集成優(yōu)化設(shè)計研究
买车| 阿合奇县| 芜湖县| 广宁县| 菏泽市| 科尔| 讷河市| 大理市| 庆安县| 湘乡市| 潼关县| 阿城市| 石城县| 崇仁县| 龙州县| 吴忠市| 故城县| 沁源县| 柳林县| 嘉定区| 逊克县| 吕梁市| 隆尧县| 嘉义县| 通海县| 都匀市| 临桂县| 阜新市| 吴堡县| 微山县| 深州市| 博白县| 丹东市| 来凤县| 科技| 惠来县| 延吉市| 阿坝县| 北碚区| 龙南县| 土默特左旗|