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

?

軟件工程理論及其在軟件開發(fā)中的應(yīng)用研究

2013-08-15 00:54:11趙學(xué)燕
科技視界 2013年35期
關(guān)鍵詞:數(shù)據(jù)庫系統(tǒng)工具階段

趙學(xué)燕

(天津師范大學(xué),中國 天津300387)

1 軟件工程的再理解

B.W.Boehm認(rèn)為軟件工程就是運(yùn)用現(xiàn)代科學(xué)技術(shù)知識來設(shè)計并構(gòu)造計算機(jī)程序及為開發(fā)、運(yùn)行和維護(hù)這些程序所必須的相關(guān)文件資料。這里對“設(shè)計”一詞應(yīng)有廣義的理解,它包括軟件的需求分析和對軟件進(jìn)行修改時所進(jìn)行的再設(shè)計活動。

IEEE說∶“軟件工程是開發(fā)、運(yùn)行、維護(hù)和修復(fù)軟件的系統(tǒng)方法”,其中,“軟件”是計算機(jī)程序、方法、規(guī)則、相關(guān)的文檔資料以及在計算機(jī)上運(yùn)行時所必需的數(shù)據(jù)。

Fairley給出的軟件工程的定義為∶軟件工程學(xué)為在成本限額以內(nèi)按時完成開發(fā)和修改軟件產(chǎn)品所需的系統(tǒng)生產(chǎn)和維護(hù)的技術(shù)與管理的科學(xué)。

由此可見,軟件工程包括3個基本要素∶方法、工具和過程。

首先,軟件工程方法為軟件開發(fā)提供了“如何做”的技術(shù)。它包括多方面的任務(wù),如項目計劃與估算、軟件系統(tǒng)需求分析、數(shù)據(jù)結(jié)構(gòu)、系統(tǒng)總體結(jié)構(gòu)的設(shè)計、算法的設(shè)計、編碼、測試以及維護(hù)等。軟件工程常采用某種特殊的語言或圖形的表達(dá)方法以及一套質(zhì)量保證的標(biāo)準(zhǔn)。

其次,軟件工具為軟件工程方法提供了自動的或半自動的軟件支撐環(huán)境。有人把諸多工具集成起來,使得一種工具產(chǎn)生的信息可以為其他的工具所使用,這樣建立起一種稱之為計算機(jī)輔助軟件工程(CASE)的軟件開發(fā)支撐系統(tǒng)。CASE將各種軟件工具、開發(fā)機(jī)器和存放開發(fā)過程信息的工程數(shù)據(jù)庫組合起來形成一個軟件工程環(huán)境。

另外,軟件工程的過程則是將軟件工程的方法和工具綜合起來以達(dá)到合理、及時地進(jìn)行計算機(jī)軟件開發(fā)的目的。過程定義了方法使用的順序,要求交付的文檔資料,為保證質(zhì)量和協(xié)調(diào)變更所需要的管理及軟件開發(fā)各個階段完成的里程碑。

2 軟件工程項目的目標(biāo)

組織實施軟件工程項目,從技術(shù)上和管理上采取了多項措施以后,最終希望得到項目的成功。所謂成功指的是達(dá)到以下幾個主要目標(biāo)∶較低的開發(fā)成本,達(dá)到要求的軟件功能,取得較好的軟件性能,開發(fā)的軟件易于移植,需要較低的維護(hù)費(fèi)用,能按時完成開發(fā)工作,及時交付使用等。

在實際開發(fā)中,要使上述目標(biāo)都達(dá)到理想的程度往往非常困難,而且上述目標(biāo)很可能相互沖突。如追求降低開發(fā)成本,很可能同時也降低了軟件的可靠性;若過于追求軟件的性能,則可能造成軟件對硬件有較大的依賴性,從而直接影響軟件的可移植性等。

3 軟件工程項目的實施

3.1 制定軟件計劃

在軟件項目開發(fā)之前,針對不同的工作目標(biāo)制定不同類型的工作計劃,對項目實施計劃進(jìn)行可行性研究。主要包括下述任務(wù):

第一,經(jīng)濟(jì)可行性。分析能否做到以最小投入成本得到最佳經(jīng)濟(jì)收益,做出立即投入、推遲開發(fā)或不值得開發(fā)的選擇。如果可行,做出開發(fā)進(jìn)度安排。

第二,技術(shù)可行性。分析使用現(xiàn)有的技術(shù)能否實現(xiàn)系統(tǒng),能否解決系統(tǒng)技術(shù)難點(diǎn),系統(tǒng)對技術(shù)人員有什么要求,硬件能否配套等其它技術(shù)冒險的各種因素。

第三,社會(法律)可行性。分析開發(fā)系統(tǒng)是否符合當(dāng)前社會生產(chǎn)經(jīng)營體制及法律法規(guī)的要求。

3.2 需求分析和定義

對開發(fā)軟件提出的需求進(jìn)行分析并給出詳細(xì)的定義。軟件開發(fā)人員和用戶共同討論決定哪些需求是可以滿足的,并對其加以確切的描述,然后編寫出軟件需求說明書或系統(tǒng)功能說明書及初步的系統(tǒng)用戶手冊,提交管理機(jī)構(gòu)評審。

3.3 軟件設(shè)計

設(shè)計是軟件工程的核心,就是把需求變換成為軟件的具體方案,軟件設(shè)計一般分為總體設(shè)計和詳細(xì)設(shè)計兩個階段,總體設(shè)計是根據(jù)需求所得到的數(shù)據(jù)流、數(shù)據(jù)結(jié)構(gòu),使用結(jié)構(gòu)設(shè)計技術(shù),導(dǎo)出軟件模塊結(jié)構(gòu);詳細(xì)設(shè)計是使用表格、圖形或自然語言等詳細(xì)設(shè)計工具,按照模塊設(shè)計準(zhǔn)則進(jìn)行軟件各個模塊的具體過程的描述,如模塊的分解與合并、低耦合性、高內(nèi)聚性的特點(diǎn),以及模塊的作用、控制范圍、復(fù)雜性和接口,按步驟進(jìn)行設(shè)計。

3.4 程序編寫(軟件編碼)把用戶的要求變?yōu)橛嬎銠C(jī)能夠接受的形式,為每個模塊編寫程序,即寫成以某一種特定程序設(shè)計語言表示的源程序清單。自然,寫出的程序應(yīng)當(dāng)是結(jié)構(gòu)良好、清晰易讀又與設(shè)計一致。

3.5 軟件測試

測試是保證軟件質(zhì)量的重要手段,其主要方式是在設(shè)計測試用例的基礎(chǔ)上檢驗軟件的各個組成部分,一般采用黑盒法和白盒法。所謂黑盒法是根據(jù)程序的物理特性,測試每一個功能是否達(dá)到預(yù)期的要求,白盒法則是根據(jù)程序的邏輯結(jié)構(gòu),進(jìn)行目標(biāo)測試。無論黑盒法還是白盒法都要設(shè)計測試用例,按照單元測試、組裝測試、確認(rèn)測試、系統(tǒng)測試、人工測試的步驟,對模塊功能、接口、數(shù)據(jù)結(jié)構(gòu)組成進(jìn)行測試。最后按規(guī)定的各項需求,逐漸進(jìn)行有效性測試,決定已開發(fā)的軟件是否合格,能否交付用戶使用。

3.6 軟件運(yùn)行/維護(hù)

已交付的軟件投入正式使用便進(jìn)入運(yùn)行階段。這一階段可能持續(xù)若干甚至幾十年。軟件在運(yùn)行過程中需要不斷診斷、進(jìn)行修改,包括改正性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù)。維護(hù)的重要性在逐年提高。這一階段是軟件工程的最后一個階段,也是最重要階段,應(yīng)給予足夠的重視。

4 數(shù)據(jù)庫系統(tǒng)軟件的開發(fā)與設(shè)計探討

數(shù)據(jù)庫系統(tǒng)是應(yīng)用較為廣泛的多用戶共享資源,具有通用、獨(dú)立、冗余少、安全、完整的特性,因此,在進(jìn)行數(shù)據(jù)庫系統(tǒng)設(shè)計時應(yīng)采用軟件工程的方法。主要是對數(shù)據(jù)管理、庫結(jié)構(gòu)設(shè)計與建立、系統(tǒng)設(shè)計、語言的選擇與設(shè)計、實用程序的編寫、功能模塊的設(shè)計等方面應(yīng)用軟件工程的理論和方法。在進(jìn)行這些設(shè)計的需求階段,應(yīng)確定對軟件的設(shè)計方法、所使用的描述工具、目標(biāo)實現(xiàn)、推廣使用等方面進(jìn)行論證,然后根據(jù)用戶和系統(tǒng)要求,進(jìn)行包括上述功能的軟件設(shè)計、輸入輸出設(shè)計、用戶設(shè)計和模塊功能、接口設(shè)計,然后編寫用于數(shù)據(jù)庫實現(xiàn)的編譯、連接、測試等語言程序,使所設(shè)計的數(shù)據(jù)庫系統(tǒng)具有易開發(fā)、易推廣、易理解的高質(zhì)量、高效率的軟件。

因此,應(yīng)用軟件工程的理論和方法,可以設(shè)計較復(fù)雜的系統(tǒng)軟件,使設(shè)計工程化、系統(tǒng)化,提高軟件研制質(zhì)量和水準(zhǔn)。

[1]鄭人杰.軟件工程[M].北京:清華大學(xué)出版社,1999.

[2]張海藩.軟件工程導(dǎo)論[M].北京:清華大學(xué)出版社,1996.

[3]劉潤彬.軟件工程簡明教程[M].大連:大連理工大學(xué)出版社,1995.

猜你喜歡
數(shù)據(jù)庫系統(tǒng)工具階段
關(guān)于基礎(chǔ)教育階段實驗教學(xué)的幾點(diǎn)看法
波比的工具
波比的工具
在學(xué)前教育階段,提前搶跑,只能跑得快一時,卻跑不快一生。
莫愁(2019年36期)2019-11-13 20:26:16
數(shù)據(jù)庫系統(tǒng)shell腳本應(yīng)用
電子測試(2018年14期)2018-09-26 06:04:24
“巧用”工具
讀者(2017年18期)2017-08-29 21:22:03
微細(xì)銑削工藝數(shù)據(jù)庫系統(tǒng)設(shè)計與開發(fā)
實時數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)安全采集方案
核反應(yīng)堆材料數(shù)據(jù)庫系統(tǒng)及其應(yīng)用
大熱的O2O三個階段,你在哪?
營銷界(2015年22期)2015-02-28 22:05:18
通渭县| 夏河县| 盖州市| 新沂市| 西乌珠穆沁旗| 绥化市| 淳安县| 九寨沟县| 五常市| 德昌县| 交口县| 辉县市| 怀集县| 富平县| 高唐县| 崇左市| 洱源县| 乌苏市| 大同市| 孝义市| 台中市| 德昌县| 安丘市| 那坡县| 海安县| 疏勒县| 鲁甸县| 仙游县| 蒲城县| 锦州市| 惠州市| 颍上县| 东方市| 南通市| 涟源市| 镇巴县| 林西县| 新巴尔虎右旗| 九寨沟县| 罗江县| 云阳县|