軟件工程新技術(shù)論文
軟件工程新技術(shù)論文
軟件工程是自二十世紀(jì)以來的一個(gè)新興的學(xué)科,也是一門新興的產(chǎn)業(yè)。下面小編給大家分享軟件工程新技術(shù)論文,大家快來跟小編一起欣賞吧。
軟件工程新技術(shù)論文篇一
面向?qū)ο蠹夹g(shù)與軟件工程
摘要:傳統(tǒng)的軟件工程方法曾經(jīng)給軟件產(chǎn)業(yè)帶來巨大進(jìn)步,部分的緩解了軟件危機(jī),使用這種方法開發(fā)的許多中、小規(guī)模軟件項(xiàng)目都獲得了成功。但是隨著大型軟件產(chǎn)品的不斷開發(fā),傳統(tǒng)軟件工程方法已經(jīng)不能夠滿足大型軟件產(chǎn)品的開發(fā)需求。而目前面向?qū)ο蠓椒ㄒ呀?jīng)成為人們?cè)陂_發(fā)軟件時(shí)首選的范型。面向?qū)ο蠹夹g(shù)已經(jīng)成為當(dāng)前最好的軟件開發(fā)工具。
關(guān)鍵詞:軟件工程;面向?qū)ο蠹夹g(shù)
1、軟件工程概念
為了解決軟件危機(jī),既要有技術(shù)措施(方法和工具),又要有必要的組織管理措施。軟件工程正是從管理和技術(shù)兩方面研究如何更好的開發(fā)和維護(hù)計(jì)算機(jī)軟件的一門新興學(xué)科。概括地說,軟件工程是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的一門工程學(xué)科。采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,以經(jīng)濟(jì)地開發(fā)出高質(zhì)量的軟件并有效地維護(hù)它,這就是軟件工程。
2、面向?qū)ο蠹夹g(shù)
2.1面向?qū)ο蟮母拍?/p>
所謂面向?qū)ο?OO,Object�Oriented )就是基于對(duì)象概念,以對(duì)象為中心,以類和繼承為構(gòu)造機(jī)制,來認(rèn)識(shí)、理解、刻畫客觀世界和設(shè)計(jì)、構(gòu)建相應(yīng)的軟件系統(tǒng)。
(1)對(duì)象
對(duì)象是由數(shù)據(jù)和容許的操作組成的封裝體,與客觀實(shí)體有直接對(duì)應(yīng)關(guān)系,一個(gè)對(duì)象類定義了具有相似性質(zhì)的一組對(duì)象。對(duì)象是要研究的任何事物。對(duì)象不僅能表示有形的實(shí)體,也能表示無形的(抽象的)規(guī)則、計(jì)劃或事件。對(duì)象由數(shù)據(jù)(描述事物的屬性)和作用于數(shù)據(jù)的操作(體現(xiàn)事物的行為)構(gòu)成一獨(dú)立整體。從程序設(shè)計(jì)者來看,對(duì)象是一個(gè)程序模塊,從用戶來看,對(duì)象為他們提供所希望的行為。在對(duì)內(nèi)的操作通常稱為方法。
使用對(duì)象時(shí)只需知道它向外界提供的接口形式而無須知道它的內(nèi)部實(shí)現(xiàn)算法,不僅使得對(duì)象的使用變得非常簡(jiǎn)單、方便,而且具有很高的安全性和可靠性。對(duì)象內(nèi)部的數(shù)據(jù)只能通過對(duì)象的公有方法(如C++的公有成員函數(shù))來訪問或處理,這就保證了對(duì)這些數(shù)據(jù)的訪問或處理,在任何時(shí)候都是使用統(tǒng)一的方法進(jìn)行的,不會(huì)像使用傳統(tǒng)的面向過程的程序設(shè)計(jì)語言那樣,由于每個(gè)使用者各自編寫自己的處理某個(gè)全局?jǐn)?shù)據(jù)的過程而發(fā)生錯(cuò)誤。
對(duì)象是封裝了數(shù)據(jù)結(jié)構(gòu)及可以施加在這些數(shù)據(jù)結(jié)構(gòu)上的操作的封裝體,這個(gè)封裝體有可以唯一地標(biāo)識(shí)它的名字,而且向外界提供一組服務(wù)。
(2)類
在面向?qū)ο蟮能浖夹g(shù)中,類就是一組具有相同屬性和相同操作的對(duì)象的集合。一個(gè)類中的每個(gè)對(duì)象都是這個(gè)類的一個(gè)實(shí)例。類是創(chuàng)建對(duì)象的模板,從同一個(gè)類實(shí)例化的每個(gè)對(duì)象都具有相同的結(jié)構(gòu)和行為。類和對(duì)象的關(guān)系非常密切,可以這么說,類是支持繼承的抽象數(shù)據(jù)類型,而對(duì)象則是類的實(shí)例。
(3)消息
消息是傳遞時(shí)對(duì)象間通信的手段,一個(gè)對(duì)象通過向另一個(gè)對(duì)象發(fā)送消息來請(qǐng)求其服務(wù)。一個(gè)消息通常包括接收對(duì)象名、調(diào)用的操作名和適當(dāng)?shù)膮?shù)。消息只告訴接收對(duì)象需要完成什么操作,但并不指示接受者怎樣完成操作。消息完全由接收者解釋執(zhí)行。
(4)封裝
封裝是一種信息隱蔽技術(shù),用戶只能看見對(duì)象封裝界面上的信息,對(duì)象的內(nèi)部實(shí)現(xiàn)對(duì)用戶是隱蔽的,不能從外面直接訪問或修改這些數(shù)據(jù)和代碼。封裝的目的是使對(duì)象的使用者和生產(chǎn)分離,使對(duì)象的定義和實(shí)現(xiàn)分開。
對(duì)象具有封裝性的條件如下:第一,有一個(gè)清晰的邊界;第二,有確定的接口;第三,受保護(hù)的內(nèi)部實(shí)現(xiàn)。
(5)繼承
繼承是類間的基本關(guān)系,它是基于層次關(guān)系的不同類共享數(shù)據(jù)和操作的一種機(jī)制。父類中定義了其所有子類的公共屬性和操作,在子類中除了定義自己特有的屬性和操作外,可以繼承其父類的屬性和操作,還可以對(duì)父類中的操作重新定義其實(shí)現(xiàn)方法。
2.2面向?qū)ο蟮姆治雠c設(shè)計(jì)
面向?qū)ο蟮姆治鍪且环N研究問題域的過程,該過程產(chǎn)生對(duì)外部可見行為的描述。面向?qū)ο蟮脑O(shè)計(jì)是指在分析的描述基礎(chǔ)上,加入實(shí)際計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)所需細(xì)節(jié)的過程。從面向?qū)ο蠓治龅矫嫦驅(qū)ο笤O(shè)計(jì),是一個(gè)逐漸擴(kuò)充模型的過程,或者說,面向?qū)ο笤O(shè)計(jì)就是面向?qū)ο笥^點(diǎn)建立求解域模型的過程。圖1為面向?qū)ο蠓治瞿P偷矫嫦蛟O(shè)計(jì)模型的轉(zhuǎn)換。
圖1 面向?qū)ο蠓治瞿P偷矫嫦蛟O(shè)計(jì)模型的轉(zhuǎn)換
3、面向?qū)ο蠓治?/p>
面向?qū)ο蠓治龅年P(guān)鍵是識(shí)別出問題域內(nèi)的類與對(duì)象,并分析它們相互間的關(guān)系,最終建立起問題域的簡(jiǎn)潔、精確、可理解的正確模型。面向?qū)ο蠓治龅哪康氖菍?duì)客觀世界的系統(tǒng)進(jìn)行建模。面向?qū)ο蠓治鰰r(shí)抽取和整理用戶需求并建立問題域精確模型的過程。
在面向?qū)ο蠼5倪^程中,系統(tǒng)分析員必須認(rèn)真向領(lǐng)域?qū)<覍W(xué)習(xí)。尤其是建模過程中的分類工作往往有很大難度。繼承關(guān)系的建立實(shí)質(zhì)上是知識(shí)抽取過程,它必須反映出一定深度的領(lǐng)域知識(shí),這不是系統(tǒng)分析員單方面努力所能做到的,必須有領(lǐng)域?qū)<业拿芮信浜喜拍芡瓿伞?/p>
4、面向?qū)ο笤O(shè)計(jì)
面向?qū)ο蠓治鍪菍?duì)用戶需求進(jìn)行提取和整理,并建立問題域精確模型的過程。而面向?qū)ο笤O(shè)計(jì)則是把分析階段得到的需求轉(zhuǎn)變成符合成本和質(zhì)量要求的、抽象的系統(tǒng)實(shí)現(xiàn)方案的過程。
面向?qū)ο笤O(shè)計(jì)通??梢苑譃橐韵聝蓚€(gè)階段:
高層設(shè)計(jì)。高層設(shè)計(jì)也可稱為系統(tǒng)級(jí)設(shè)計(jì),它是開發(fā)軟件的體系結(jié)構(gòu)以及構(gòu)造軟件的總體模型。高層設(shè)計(jì)包括:將系統(tǒng)劃分為子系統(tǒng)的決策;子系統(tǒng)的軟、硬件分配;設(shè)計(jì)框架的主要概念和策略性決策。在高層設(shè)計(jì)中,根據(jù)應(yīng)用領(lǐng)域系統(tǒng)的特有結(jié)構(gòu)劃分子系統(tǒng)(模板、主題、抽象類的集合)。然后設(shè)計(jì)細(xì)化每個(gè)子系統(tǒng)的對(duì)象模型、動(dòng)態(tài)模型和功能模型。如圖2專家系統(tǒng)的典型結(jié)構(gòu):
圖2專家系統(tǒng)
低層設(shè)計(jì)。低級(jí)設(shè)計(jì)是集中于類的詳細(xì)設(shè)計(jì)。
通常在面向?qū)ο笤O(shè)計(jì)之前,對(duì)系統(tǒng)的各項(xiàng)質(zhì)量指標(biāo)的相對(duì)重要性做認(rèn)真分析和仔細(xì)權(quán)衡,制定出恰當(dāng)?shù)南到y(tǒng)目標(biāo);在設(shè)計(jì)過程中根據(jù)既定的系統(tǒng)目標(biāo),做必要的優(yōu)化工作。
5、總結(jié)
軟件工程是駕馭在面向?qū)ο蠹夹g(shù)之上的一項(xiàng)項(xiàng)目工程,面向?qū)ο蠹夹g(shù)能夠很好的對(duì)大型項(xiàng)目進(jìn)行計(jì)算機(jī)軟件業(yè)務(wù)建模,而軟件工程能夠很好的控制面向?qū)ο蠹夹g(shù)的實(shí)施。
參考文獻(xiàn):
[1] 張小�. 面向?qū)ο蠓治龇椒ǖ木C述[J]. 甘肅科技, 2010, (02).
[2] 段小君,高金環(huán).軟件復(fù)用與面向?qū)ο蠹夹g(shù)[J].西安郵電學(xué)院學(xué)報(bào),2004,(02).
[3]張海蕃.軟件工程導(dǎo)論(第四版)[M].清華大學(xué)出版社,2003,(12).
作者簡(jiǎn)介:
王娜(1985-),女,漢,陜西三原人,武警工程學(xué)院基礎(chǔ)部信息技術(shù)教研室助教,文職8級(jí)。
點(diǎn)擊下頁(yè)還有更多>>>軟件工程新技術(shù)論文