關(guān)于基于軟件歷史信息的軟件工程的研究
軟件工程是一門研究用工程化方法構(gòu)建和維護有效的、實用的和高質(zhì)量的軟件的學(xué)科。它涉及程序設(shè)計語言、數(shù)據(jù)庫、軟件開發(fā)工具、系統(tǒng)平臺、標(biāo)準(zhǔn)、設(shè)計模式等方面。以下是一篇關(guān)于基于軟件歷史信息的軟件工程的研究的論文范文,供大家參考!
論文摘要:降低開發(fā)成本 盡量減少軟件演化過程中的問題一直是軟件工程實踐者在軟件工程實踐中的追求,提高軟件質(zhì)量和自動化的軟件維護過程也是當(dāng)前軟件工程研究的熱點問題。即使是通過各種方式,但是軟件缺陷修復(fù)和軟件維護的成本無法明顯降低,軟件的可靠性仍然無法保障。仍然無法達到客戶萋求,這樣的惡性循環(huán)會使生產(chǎn)者和使用者喪失信心。本文以軟件演化歷史為背景,關(guān)于軟件質(zhì)量度量和預(yù)測以及改善軟件維護的框架做出了探討
論文關(guān)鍵詞:軟件歷史;軟件演化;軟件維護
軟件的開發(fā)和維護是一個時間、勞動力和資源密集的過程。同時,軟件缺陷的修復(fù)成本也非常高 對于軟件的修復(fù)和維護。這也是一項艱巨的任務(wù)。不僅占據(jù)了軟件項目的大量資源。而且,對于研究人員來說。仍需要在軟件維護方面做大量的研究,這些研究主要包括:(1)設(shè)計良好的編程語言和可適應(yīng)的集成開發(fā)環(huán)境以提高編程的效率。構(gòu)建自動編譯工具。(3)實施更加嚴格的軟件安全策略。但是在這些研究丁作中沒有涉及到。當(dāng)然。在研究開發(fā)領(lǐng)域目前已經(jīng)有了很大的進步。但是成本問題仍然無法解決 基于目前的狀況。以下內(nèi)容應(yīng)該得到重點研究:1)編程語言對軟件開發(fā)效率以及軟件質(zhì)量的影響。2)軟件缺陷修復(fù)的分派機制 3)設(shè)計基于網(wǎng)的模型來預(yù)測軟件維護的成本。
設(shè)計一個自動化的框架來集成各種各樣的軟件產(chǎn)品資源庫以幫助軟件開發(fā)人員和研究人員進行相關(guān)的數(shù)據(jù)挖掘活動。
1.編程語言對開發(fā)和維護的影響
編程語言對軟件開發(fā)和維護影響的定量評估一直都是一個難以解決的問題。當(dāng)前。新應(yīng)用不斷涌現(xiàn)。同時編輯的語言也隨著具有較大的變化。而且選擇具有多樣性。在Web2.0 現(xiàn)的背景下。數(shù)據(jù)表明編程人員越來越喜歡用動態(tài)的高級語言。這些語言具有高抽象的特點。
這能促進軟件質(zhì)量的進步 但是當(dāng)前不足的是沒有靜態(tài)檢驗T具。缺乏成熟的分析和驗證丁具。所以程序員在編寫程序時極易m錯。這會導(dǎo)致后期軟件維護的難度加大 關(guān)于編程語言對軟件開發(fā)和維護的影響。有程序員專門研究過。但是沒有考慮到編程語言和具體的應(yīng)用,也沒有將研究是否合適納入考慮范圍 有的研究者將開發(fā)人員分成幾個小組針對某些項目進行研究。但是開發(fā)者的水平因素并沒有被考慮到。而這些項目具有比較小、不被經(jīng)常使用而且生命周期比較短的特點。并且。這些方法得到的結(jié)果無法推及到較大的應(yīng)用項目。
2.軟件缺陷的分派機制
一般流行的開源軟件項目通常每天都會收到上百份缺陷報告。在理想的狀況下。開發(fā)人員將會在最短時間內(nèi)收到這些缺陷報告。對于程序員收到缺陷的過程會受到幾個因素的同時影響 如果通過手動方式處理缺陷。大量的時間和勞動力將會被消耗。準(zhǔn)確性也無法保障。而且。對于每一個項目。跟蹤每個活動的開發(fā)者和他們的經(jīng)驗也是一件非常網(wǎng)難的事情。即使是用機器代替手工.其效率和準(zhǔn)確性也無法得到保障。
3.基于圖的方法
在軟件維護的研究中使用基于同的度量最早應(yīng)用在軟件缺陷預(yù)測領(lǐng)域 Zimmermann等人通過雨數(shù)調(diào)用關(guān)系圖來達到一個文件發(fā)生故障的概率的預(yù)測目標(biāo) 而Pinzger等人。則通過構(gòu)建了一個開發(fā)者網(wǎng)絡(luò)來達到預(yù)測軟件故障的目標(biāo) 但是。這些均沒有考慮到軟件成本問題。以及基于圖的度量的識別軟件代碼中的關(guān)鍵點的問題 分析軟件的結(jié)構(gòu)。以基于罔的軟件模型為基礎(chǔ)。計算軟件中各種元素之間的關(guān)系來實現(xiàn)提高質(zhì)量降低成本的目的。
4.集成軟件產(chǎn)品的框架
開源軟件項目在開發(fā)過程中使用不同的資源庫來存儲項目和演化的信息。像源代碼,缺陷和補丁這樣,通過整合不同的資源庫,采用先進的查詢技術(shù)來達到不同的資源庫之間進行查詢和瀏覽的目的。會大大的幫助解決開發(fā)和研究過程中 現(xiàn)的問題 例如。為什么代碼要按照這種方式來實施?這是編員必須面對的普遍問題,開發(fā)者進行了很多的探索。但是開發(fā)者探索是需要用到軟件缺陷資源庫和代碼資源 庫中的信息,由于兩個資源庫是獨立的。所以無法高效的完成任務(wù) 刈于手工集成的這些信息。有繁瑣、耗時、也比較容易出錯的缺點,朋到大型項目上更是如此 而在過去主要是通過限制用戶查詢和瀏覽的方式來解決問題 如。查詢只能按照規(guī)定的查詢模版來進行。另外,通過建立一個框架來支持各種查詢語育。允許軟件的開發(fā)人員和研究人員在更加廣泛和深層的空間中去尋找問題的答案或線索。這樣的方法才能有效的幫助開發(fā)人員和研究人員完成相關(guān)的開發(fā)和經(jīng)驗分析任務(wù)。
5.軟件工程方法和技術(shù)
正確的編寫滿足需求的軟件是軟件開發(fā)范型關(guān)注的方向 軟件設(shè)計方法關(guān)注軟件T程的“途徑”.即研究怎樣完成從高層概念模型到低層概念模型的映射 軟件T程理論在實踐中應(yīng)用時重點應(yīng)該放在軟件復(fù)用上 以目前成熟的T業(yè)產(chǎn)品的開發(fā)模式為參考。軟件復(fù)用可以在軟件開發(fā)中避免重復(fù)勞動。在已有的成果之上,充分考慮開發(fā)應(yīng)用系統(tǒng)中積累的知識和經(jīng)驗。集中進行新應(yīng)用的特有構(gòu)成成分上的開發(fā) 采用軟件復(fù)用技術(shù)有下面好處。第一,可以充分利用已有的開發(fā)成果。第二,消除軟件生命周期中的許多重復(fù)勞動,第i,提高軟件開發(fā)的效率。同時。復(fù)用高質(zhì)量的已有成果?梢员苊庵匦麻_發(fā)時引入的錯誤。從而提高軟件質(zhì)量。
軟件構(gòu)件是指應(yīng)用系統(tǒng)中可以明確辨識的構(gòu)成成分,可復(fù)用構(gòu)件是指具有相對獨立功能和可復(fù)用價值的構(gòu)件。當(dāng)前。一般構(gòu)件包括:源代碼。
需求、需求規(guī)約、系統(tǒng)和軟件的體系結(jié)構(gòu)、文檔、測試計劃、測試用例和數(shù)據(jù)以及其他對開發(fā)活動有用的信息。這些信息都可以稱為可復(fù)用軟件構(gòu)件。軟件復(fù)用的核心技術(shù)主要有:(1)如何有目的的進行構(gòu)件生產(chǎn)和從已有系統(tǒng)中挖掘提取構(gòu)件;(2)構(gòu)件的本質(zhì)特征及構(gòu)件間的關(guān)系是什么樣的;(3)如何描述構(gòu)件;(4)如何對構(gòu)件進行分類、組織及檢索等。有研究表明。南于某個特定領(lǐng)域需要的軟件具有相似的需求,因此軟件復(fù)用在特定領(lǐng)域內(nèi)更容易獲得成功。領(lǐng)域lT程也在這種背景下產(chǎn)生。領(lǐng)域一程是為一組相似或相近系統(tǒng)的應(yīng)用工程建立基本能力和必備基礎(chǔ)的過程,它包括建立可復(fù)用軟件構(gòu)件的所有活動。一些領(lǐng)域分析方法被美圈卡內(nèi)基。梅隆大學(xué)軟件1.程研究所(CMU/SEI)~EIAI的許多研究機構(gòu)提在建筑領(lǐng)域。通常人們采用體系結(jié)構(gòu)表達建筑的整體結(jié)構(gòu)。將其應(yīng)用到軟件之中。則是軟件系統(tǒng)的結(jié)構(gòu) 主要有:構(gòu)件、構(gòu)件之間的交互莢系、限制、構(gòu)件和連接件構(gòu)成的拓撲結(jié)構(gòu)、設(shè)計原則與指導(dǎo)方針。
6.結(jié)語
提高軟件維護質(zhì)量是本文討論的重點。相信一個軟件資源庫的集成框架將會促進軟件產(chǎn)品的開發(fā)和分析活動。
參考文獻
『1]丁沂。基于軟件歷史信息的軟件]二程實踐『J】。數(shù)字技術(shù)與應(yīng)用,2012,(4):
『2]鐘林輝,鄭鑫,鄭賴等。演化信息驅(qū)動的軟件體系結(jié)構(gòu)蕈=構(gòu)技術(shù)研究[J】l計算機程與應(yīng)用。2009.45(14):
『3]汪巧紅。c kiR.f軟件在撰寫歷史專業(yè)本科畢業(yè)論文中的應(yīng)用『JI_電腦知識與技術(shù)。201 1,07(26):
【基于軟件歷史信息的軟件工程的研究】相關(guān)文章:
試析基于軟件歷史信息的軟件工程12-06
軟件工程管理的現(xiàn)狀和創(chuàng)新研究02-25
基于模擬軟件企業(yè)的導(dǎo)學(xué)制在軟件工程實驗教學(xué)中的實施應(yīng)用11-22
基于軟件工程的計算機專業(yè)學(xué)生的畢業(yè)設(shè)計11-19
基于信息技術(shù)的研究性學(xué)習(xí)11-20
軟件工程問題的可行性研究探析論文12-21
軟件工程 開題報告11-14
- 相關(guān)推薦