999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軟件自動化生產模式

2006-02-23 00:54:48朱偉斌
計算機教育 2006年2期

朱偉斌

摘要傳統的生產模式越來越難以滿足飛速增長的軟件需求,要提高軟件生產效率,必須研究軟件生產模式。本文對當前提出的新的軟件生產模式(MDA、軟件工廠)進行了剖析,提出了進行改進軟件生產模式實踐的要點。

關鍵詞軟件生產模式 MDA軟件工廠DSL 軟件模式軟件開發方法學

1 引言

在高需求、高投入、高競爭的環境下,軟件生產的規模和效率成為軟件企業最需要解決的問題之一。隨著軟件工程理論和CASE工具的發展,突破傳統軟件開發方式的方法論逐步被提了出來。OMG在UML的基礎上提出了模型驅動構架(簡稱MDA),為從軟件抽象模型到軟件代碼的自動生成指出了一個方向。這個概念很快就得到工具廠商的響應,目前大多數主流UML工具都支持MDA的部分功能。而在Microsoft即將發布的Visual Studio.Net 2005中更是加入支持軟件工廠的工具Team System。可以預見,以軟件自動化生成為特點的軟件生產方式的革命即將來臨。

事實上,各種新型CASE工具正在悄悄地改變我們的軟件開發模式。然而,自動化的軟件生產時代并不會馬上到來。軟件生產自動化并不僅僅是幾個軟件工具,它更是一種新的軟件開發的方法學。它需要我們的管理人員、開發人員轉變傳統的開發觀念,使我們的技術積累、過程管理等方面都適應新的開發模式。而且,從傳統開發模式到自動化開發模式必定是一個漸進的過程。我們正處在變革的初級階段,必須應用與此階段相適應的開發模式。

2 傳統軟件生產方式和MDA開發過程

到目前為止,大多數軟件代碼的生產仍然依靠程序員來人工完成。這種傳統的軟件生產方式為軟件產業帶來了許多問題。首先,軟件生產的效率低下,項目延期率極高;其次,軟件產品的質量沒有保證;再次,軟件開發團隊的規模受到局限;最后,軟件產品難于修改和維護。

這里,有一個問題困擾著軟件界:程序員所進行的大量工作都是集中在抽象層次較低的軟件編碼上,軟件應用的抽象層次和程序代碼的抽象層次相距較遠;程序代碼對應用需求的準確程度難于測量,程序員的個人能力成為制約軟件產品質量的關鍵。而且,隨著軟件規模的越來越大,軟件項目也變得難以控制。

針對傳統軟件開發模式存在的弊病,MDA被提出來了。盡管,MDA仍然不成熟,但是它確立了一種新的軟件開發架構。MDA的全稱是模型驅動架構,它不僅僅是一種標準,更是一種重要的開發方法學。2002年,國際權威的對象建模標準化組織OMG將MDA作為其戰略方向。短短三年過去,幾乎所有的主流UML建模工具都融入了MDA功能。

顧名思義,MDA是使用軟件建模語言作為軟件編程語言來直接產生軟件的一種體系結構,它定義了平臺無關模型(PIM)和平臺相關模型(PSM)這兩個概念。PIM是具有高抽象層次、獨立于任何實現技術的模型,它描述軟件系統如何支撐業務,并不關心軟件是在哪個平臺上實現的。PSM是使用特定平臺的術語描述如何實現業務的模型,例如關系數據庫模型使用表、視圖、外鍵約束等描述業務對象及其之間的關系。

MDA的最大特點就是這些變換是自動進行的。如果用MDA的概念套入傳統的開發生命周期,傳統的開發也可以看作是模型的變換。然而,傳統的變換是需要程序員手工進行的,唯一的自動變換是高級語言代碼到可執行目標代碼的變換。由于從PIM到代碼的變換可以自動進行,MDA過程迭代時,開發人員就可以從PIM模型開始,而非從代碼開始。這樣,分析設計文檔就不會和代碼相分離,整個軟件也就更容易理解了。

MDA的目標就是將程序開發工作的抽象層次提高。軟件技術發展史,也是開發抽象層次逐步提高的歷史。例如在語言方面,我們從機器語言開始,經歷了匯編語言、高級語言、4GL的發展歷程,高級語言也從結構化語言發展到面向對象的語言,現在又出現了基于模式的編程。每一次轉變都是一次抽象層次的提高。然而到目前為止,實現MDA仍然面臨一些現實問題,如怎樣根據自身需求構造變換,如何使得構造過程足夠簡單。

3軟件自動化生產模式的實踐策略

MDA的提出讓軟件界看到了軟件生產模式變革的新希望,許多新的方法論也被提了出來。微軟公司提出了軟件工廠的定義:一個使用基于軟件架構(Software Schema)的軟件模板來配置的可擴展的工具,它是可以為產品系列提供生產設備的軟件產品系列。微軟提出的軟件工廠,其創新之處就是在于生產流程的自動化。

軟件工廠的概念體現了先進的自動化編碼概念,提高了開發人員工作的抽象層次,同時也給開發人員的手工加工提供了空間。雖然MDA遠未成熟,但是改變生產模式,提高軟件生產的效率,是每個軟件項目管理人員和開發人員必須要做的努力。

在軟件生產自動化的初級階段,筆者認為超前要求軟件完全自動化生產幾乎是不可能的,但是完全可以運用現有的工具進行半自動化的軟件開發。圖1描述了一種切實可行的半自動化軟件生產模式。

這種軟件生產模式分成兩條主線。一條主線是軟件體系結構方面的研發工作。這是軟件自動化生產的一個前提,可以將這一步工序認為是生產線的建造。通過軟件體系結構方面的開發,我們可以得到兩個對于自動化生產至關重要的部件,一個是軟件支持庫,另一個是軟件自動編碼工具。另一條主線是真正應用軟件產品的研發。軟件產品研發的第一步是自動化進行的,是通過已經配置好的軟件自動化編碼工具將業務需求模型自動轉換為待加工的半成品代碼,我們可以將這個過程看成是生成毛坯的過程。第二步是通過手工進行的,是對自動生成的代碼進行修改、微調的過程,我們可以將這一過程稱為精加工過程。經過程序員的精加工,一個符合用戶功能和性能需求的高質量軟件產品就產生了。

這種模式可以加快開發進程,使軟件符合企業所研發的技術架構,代碼更一致,可維護性更強,穩定性也更有保證;同時,它也避免了自動化生成代碼刻板,細節難以自動生成的問題。這樣的方案比理想化的MDA模型更容易實現,同時它也符合軟件工廠的一些基本特點。

4 結束語

運用圖1所示的生產模式,筆者所在的公司已經進行了一些成功的實踐。在進行軟件自動化實踐的時候,我們得到了以下幾點寶貴的經驗。

(1)在先進的理論指導下,運用各種行之有效的模式,探索適合自身發展的生產模式。

(2)重視軟件開發團體自身的技術積累,以更好運用軟件自動化生產工具。否則,就會陷入巧婦難為無米之炊的窘境。

(3)轉換開發人員的心態和習慣,及時培訓開發人員、解除開發人員的疑慮。在剛開始實施根據數據庫模式生成代碼時,筆者所在的公司曾出現過這樣一些情況:開發人員對生成工具不熟悉,認為不如手工編碼方便,還認為使用生成工具不靈活,限制了他們的創造力,不愿意修改由軟件工具生成的代碼。在這樣的情況下,項目管理人員不得不反復講解軟件生成工具的原理,強調在當前條件下生成工具只是生成毛坯,還需要精加工過程。

軟件自動化生產模式需要逐步完善,其成功實踐也不是一朝一夕能夠取得的。隨著軟件工程技術的發展,軟件自動化生產模式的探索已不僅僅是停留在理論上。軟件生產模式的革新將為我們帶來更高的軟件生產力。無論我們在觀念上更傾向于MDA、微軟軟件工廠、面向語言編程,進行軟件生產模式創新都是勢在必行的。這不僅僅是軟件企業競爭發展的需要,也是中國軟件產業走向強大的必由之路。

參考文獻

1 Anneke Kleppe, Jos Warmer, Wim Bast. 鮑志云譯.解析MDA.北京:人民郵電出版社,2004

2 David S. Frankel. 鮑志云譯.應用MDA. 北京:人民郵電出版社,2004

3 張亞勤.全球軟件行業現狀、趨勢與挑戰.http://research.microsoft.com/asia/news/displayArticle.aspxid=1004

4 Umlchina.袁峰摘譯.Forrester發布MDA和基于模式開發報告.http://www.umlchina.com/News/Content/190.htm,2005

5 Jack Greenfield.軟件工廠簡介.http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/aj3softfac.mspx,2004

6 Jack Greenfield.通過模式、模型、框架和工具裝配應用程序.http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/SoftFactAssApp.mspx,2004

主站蜘蛛池模板: 日本精品视频一区二区| 91亚瑟视频| 99久久精品国产精品亚洲| 欧美日韩理论| 亚洲第一成年人网站| 在线色综合| 2021精品国产自在现线看| 国产综合色在线视频播放线视| 91精品国产丝袜| 国产精品无码一区二区桃花视频| 色综合中文| 亚洲国产日韩一区| 国产精品播放| 亚洲小视频网站| 亚洲乱码视频| 91啪在线| 精品精品国产高清A毛片| 国产精品亚洲αv天堂无码| 欧美一区二区福利视频| 91免费国产在线观看尤物| 国产午夜看片| 72种姿势欧美久久久大黄蕉| 一级毛片基地| av天堂最新版在线| 欧美日韩在线亚洲国产人| 免费看黄片一区二区三区| 亚洲性日韩精品一区二区| 亚洲天堂.com| 国产99视频精品免费视频7| 999福利激情视频| 亚洲欧美精品一中文字幕| 亚洲成aⅴ人片在线影院八| 亚洲av片在线免费观看| 四虎国产在线观看| 国产成人免费高清AⅤ| 欧美在线一二区| 操国产美女| 又粗又大又爽又紧免费视频| 婷婷综合色| 成人在线不卡| 青青极品在线| 国产chinese男男gay视频网| 中文字幕亚洲精品2页| 欧美亚洲国产一区| 青青草a国产免费观看| 久久黄色一级视频| AV色爱天堂网| 日韩无码视频专区| 国产精品极品美女自在线网站| 国产91线观看| 呦视频在线一区二区三区| 97青青青国产在线播放| 综合亚洲色图| 免费国产好深啊好涨好硬视频| 2024av在线无码中文最新| 亚洲黄色网站视频| 久久99国产精品成人欧美| 18禁黄无遮挡网站| 亚洲精品黄| 这里只有精品免费视频| 亚洲成人黄色在线观看| 51国产偷自视频区视频手机观看| 国产呦精品一区二区三区下载| 亚洲欧美激情另类| 国产丝袜91| 国产成人免费观看在线视频| 日韩麻豆小视频| 亚洲天堂网站在线| 九九九九热精品视频| 国产午夜福利在线小视频| 毛片一级在线| 日韩精品无码免费专网站| 日韩一二三区视频精品| 丰满少妇αⅴ无码区| 久久天天躁狠狠躁夜夜躁| 精品99在线观看| 人人妻人人澡人人爽欧美一区| 久久精品嫩草研究院| 国产免费高清无需播放器| 58av国产精品| 成年免费在线观看| 欧美三级不卡在线观看视频|