亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

面向?qū)ο蠹夹g(shù)與軟件工程探討

時(shí)間:2024-08-20 05:07:25 碩士論文

關(guān)于面向?qū)ο蠹夹g(shù)與軟件工程探討

  [摘要]隨著計(jì)算機(jī)技術(shù)的發(fā)展和人們對(duì)軟件本質(zhì)和內(nèi)在規(guī)律認(rèn)識(shí)的提高,傳統(tǒng)的軟件工程方法已經(jīng)不適應(yīng)現(xiàn)代軟件系統(tǒng)的要求了。面向?qū)ο蠓椒ㄊ且环N新的軟件工程方法。本文介紹了現(xiàn)代軟件工程的特點(diǎn)以及面向?qū)ο筌浖_(kāi)發(fā)方法的基本思想和原理。

  [關(guān)鍵詞]面向?qū)ο筌浖こ?/strong>

  1.軟件工程概念及傳統(tǒng)軟件工程模式

  由于軟件危機(jī)的產(chǎn)生,使人們認(rèn)識(shí)到用傳統(tǒng)方法再也無(wú)法駕馭如此復(fù)雜的軟件生產(chǎn),是到了必須徹底解決軟件危機(jī),才能拯救這一最有希望的新興產(chǎn)業(yè)的時(shí)候了。1986 年北大西洋公約組織的計(jì)算機(jī)科學(xué)家在聯(lián)邦德國(guó)召開(kāi)國(guó)際會(huì)議,討論軟件危機(jī)問(wèn)題。在這次會(huì)議上正是隨著計(jì)算機(jī)技術(shù)的發(fā)展及人們對(duì)軟件本質(zhì)和內(nèi)在規(guī)律認(rèn)識(shí)的提高,對(duì)軟件工程的定論也在變化。著名的軟件工程專家B.W.Boehm 對(duì)軟件工程的定義是:“運(yùn)用現(xiàn)代科學(xué)技術(shù)知識(shí)來(lái)設(shè)計(jì)并構(gòu)造計(jì)算機(jī)程序及為開(kāi)發(fā)、運(yùn)行和維護(hù)這些程序所必須的相關(guān)文件資料”。

  軟件工程采用的方法是把軟件生存周期劃分成若干個(gè)階段,每個(gè)階段的任務(wù)相對(duì)獨(dú)立,而且比較簡(jiǎn)單,便于不同人員分工協(xié)作,從而降低整個(gè)軟件開(kāi)發(fā)工程的困難程度。在實(shí)現(xiàn)每個(gè)階段的任務(wù)時(shí),采用的是系統(tǒng)化的技術(shù)方法———結(jié)構(gòu)化分析和結(jié)構(gòu)化設(shè)計(jì)技術(shù)。這是傳統(tǒng)的軟件工程模式。它的缺點(diǎn)是強(qiáng)調(diào)了分階段實(shí)施模塊化、結(jié)構(gòu)化程序設(shè)計(jì)技術(shù)和方法,而忽視了人在軟件開(kāi)發(fā)過(guò)程中的地位和作用。

  2.面向?qū)ο蠹夹g(shù)

  在計(jì)算機(jī)領(lǐng)域,很多新方法和新技術(shù)都從編程階段首先開(kāi)始,進(jìn)而發(fā)展到軟件生命期階段,早在60 年代未E.W.Dijkstra 就提出了結(jié)構(gòu)化程序設(shè)計(jì)的概念,為程序設(shè)計(jì)方法學(xué)奠定了基礎(chǔ)。70 年代美國(guó)的E.

  Youdon 教授提出了結(jié)構(gòu)化分析方法,指出了分析和設(shè)計(jì)比編碼更為重要,這一技術(shù)當(dāng)時(shí)曾被軟件界看成是治愈“軟件危機(jī)”的靈丹妙藥,其實(shí)由不然。面對(duì)大型軟件系統(tǒng),用結(jié)構(gòu)化方法,系統(tǒng)的重要性、穩(wěn)定性、擴(kuò)充性都無(wú)法實(shí)現(xiàn)。80 年代面向?qū)ο蠓椒☉?yīng)運(yùn)而生,為軟件工程增添了活力。面向?qū)ο蠓治龊兔嫦驅(qū)ο笤O(shè)計(jì)是當(dāng)今面向?qū)ο蟮年P(guān)鍵技術(shù)。

  2.1 面向?qū)ο蟮母拍蠲嫦驅(qū)ο蠛?jiǎn)稱為“00”。這是目前計(jì)算機(jī)業(yè)界使用的高頻詞。“00”代表著一種新的思維方式,代表著一種新的程序設(shè)計(jì)方法的潮流。

  傳統(tǒng)的程序設(shè)計(jì)方法,不論是需求分析,還是系統(tǒng)設(shè)計(jì),都是針對(duì)數(shù)學(xué)模型的,出發(fā)點(diǎn)是“怎樣做”,即用計(jì)算機(jī)求解這個(gè)實(shí)際問(wèn)題應(yīng)該“怎樣做”。面向?qū)ο蠓椒ǖ某霭l(fā)點(diǎn)是:“是什么”,即要求解的實(shí)際問(wèn)題,它到底“是什么”。Youtdon 給出了面向?qū)ο蟮囊粋(gè)定義:“面向?qū)ο? 對(duì)象+ 類+ 繼承+ 通信”。

  2.1.1 對(duì)象對(duì)象是面向?qū)ο箝_(kāi)發(fā)模式的基本成分。每個(gè)對(duì)象可用其一組屬性和它可以執(zhí)行的一組操作來(lái)定義。屬性一般只能通過(guò)執(zhí)行對(duì)象的操作來(lái)改變。操作又成為方法或服務(wù),在C++ 中稱為成員函數(shù),它描述了對(duì)象執(zhí)行的功能。若通過(guò)消息傳遞,還可以為其他對(duì)象使用。而消息是一個(gè)對(duì)象與另一個(gè)對(duì)象之間通信的手段,是要求另一個(gè)對(duì)象執(zhí)行類中定義的某個(gè)操作的規(guī)格說(shuō)明。發(fā)送給一個(gè)對(duì)象的消息定義了一個(gè)操作名和一個(gè)參數(shù)表(可能是空的),并制定某一個(gè)對(duì)象。當(dāng)一個(gè)對(duì)象接收到發(fā)給自己的消息時(shí),則調(diào)用消息中制定的操作,并將形式參數(shù)與參數(shù)表中的相應(yīng)的值結(jié)合起來(lái)。接收對(duì)象對(duì)消息處理可能會(huì)改變對(duì)象的狀態(tài),即改變接收對(duì)象的屬性,并發(fā)送一個(gè)消息給自己或另一個(gè)對(duì)象?梢哉J(rèn)為,這種消息的傳遞大致等價(jià)于傳統(tǒng)過(guò)程性方法中的函數(shù)調(diào)用。

  為了把說(shuō)明與實(shí)現(xiàn)分離,需對(duì)對(duì)象的數(shù)據(jù)結(jié)構(gòu)和相關(guān)操作的實(shí)現(xiàn)進(jìn)行封裝,因此,“對(duì)象”有兩個(gè)視圖,分別表現(xiàn)在設(shè)計(jì)和實(shí)現(xiàn)方面。從設(shè)計(jì)方面來(lái)看,對(duì)象是一些概念的實(shí)例。它們把有關(guān)的實(shí)體模型化。從實(shí)現(xiàn)方面來(lái)看,一個(gè)對(duì)象是表達(dá)在應(yīng)用的可執(zhí)行代碼中的實(shí)體而使用的實(shí)際數(shù)據(jù)結(jié)構(gòu)。這些對(duì)象是數(shù)據(jù)結(jié)構(gòu)與操作的單一混合體,它們是數(shù)據(jù)抽象的實(shí)例化。

  2.1.2 類類是一組具有相同數(shù)據(jù)結(jié)構(gòu)和相同操作的對(duì)象的集合。類的定義包括一組數(shù)據(jù)屬性和在數(shù)據(jù)上的一組合法操作。類定義可視為一個(gè)具有類似特性與共同行為的對(duì)象的模板,可用來(lái)產(chǎn)生對(duì)象。在一個(gè)類中,每個(gè)對(duì)象都是類的實(shí)例,它們都可使用類中提供的函數(shù)。一個(gè)對(duì)象的狀態(tài)則包含在它的實(shí)例變量中。

  類,就其是一個(gè)數(shù)據(jù)值的聚合的意義上來(lái)看,與Pascal 中記錄或C中的結(jié)構(gòu)類似,但又有差別。類擴(kuò)展了通常的記錄語(yǔ)義,可提供各種級(jí)別的可訪問(wèn)性。出就是說(shuō),記錄的某些成分可能是不可訪問(wèn)的,而這些成分對(duì)于該記錄型來(lái)說(shuō)具有可訪問(wèn)性。類不同于記錄,因?yàn)樗鼈儼瞬僮鞯亩x,這些操作與類中聲明的數(shù)據(jù)值有相同的地位。

  2.1.3 繼承繼承是使用已存在的(現(xiàn)存)定義作為基礎(chǔ)建立新定義的技術(shù)。新類的定義可以在現(xiàn)存類所聲明的數(shù)據(jù)、定義與新類所增加的聲明的組合。新類復(fù)用現(xiàn)存類的定義,而不要求修改現(xiàn)存類。因?yàn)檫@種類的一部分已經(jīng)實(shí)現(xiàn)和測(cè)試,故開(kāi)發(fā)費(fèi)用較少,F(xiàn)存類可當(dāng)作父類(范化類、基類或超類)來(lái)引用,則新類相應(yīng)地可當(dāng)作子類(特化類、子女類或派生類)來(lái)引用。

  使用繼承設(shè)計(jì)一個(gè)新類,可以視為描述一個(gè)新的對(duì)象集合,它是現(xiàn)存類所描述對(duì)象集合的子集合。這個(gè)新子集合可以認(rèn)為是現(xiàn)存類的一個(gè)特化。新類的界面還可以看作是現(xiàn)存類界面的擴(kuò)充界面。

  2.1.4 消息消息是對(duì)象之間相互請(qǐng)求或相互協(xié)作的途徑,是要求某個(gè)對(duì)象執(zhí)行其中某個(gè)功能操作的規(guī)格的說(shuō)明。發(fā)送消息的對(duì)象成為發(fā)送者,接收消息的對(duì)象稱為接收者。對(duì)象間的聯(lián)系,只能通過(guò)傳遞來(lái)進(jìn)行。對(duì)象也只能在收到消息時(shí),才被激活。被激活后的對(duì)象代碼將按消息中的命令去操作它的私有數(shù)據(jù),完成要求的功能。

  (1)消息的定義將操作送到目標(biāo)對(duì)象的一種機(jī)制稱為消息。它包括操作名的選擇和傳遞、操作信息變量有三個(gè)部分:接收消息的對(duì)象、消息選擇符、變?cè)?/p>

  (2)消息的性質(zhì)同一個(gè)對(duì)象可接受不同形式的多少消息,產(chǎn)生不同的響應(yīng),即:

  1 個(gè)對(duì)象M個(gè)消息M個(gè)動(dòng)作相同形式的消息可以送給不同的對(duì)象,所做出的響應(yīng)可以是截然不同的:即:

  M個(gè)對(duì)象1 個(gè)消息M個(gè)動(dòng)作消息的發(fā)送可以不考慮具體的接收者,對(duì)象可以響應(yīng)消息,也可以對(duì)消息不予理會(huì),對(duì)消息的響應(yīng)并不是必須的。

  在某個(gè)對(duì)象的一批消息中,由外界對(duì)象直接向它發(fā)送的消息,稱為公有消息。在某個(gè)對(duì)象的一批消息中,不對(duì)外發(fā)放,由對(duì)象自己向本身發(fā)送的消息,稱為私有消息。

  2.2 面向?qū)ο筌浖_(kāi)發(fā)方法面向?qū)ο蟮能浖_(kāi)發(fā)方法是以數(shù)據(jù)為中心而不是以過(guò)程為中心。

  面向?qū)ο筌浖旧淼膬?nèi)部結(jié)構(gòu)已發(fā)生了質(zhì)的轉(zhuǎn)變。由此帶來(lái)良好的可構(gòu)造性、可擴(kuò)充性和可復(fù)用性。對(duì)象作為唯一標(biāo)識(shí)的實(shí)體,封裝了一組屬性及其相關(guān)操作,提供了一種結(jié)構(gòu)化系統(tǒng)設(shè)計(jì)的抽象手段;趯(duì)象構(gòu)造的系統(tǒng),其開(kāi)發(fā)的各個(gè)階段(分析、設(shè)計(jì)和實(shí)現(xiàn))都是統(tǒng)一按照相互作用的對(duì)象來(lái)組織的,因此各個(gè)階段的過(guò)程比較平滑,不會(huì)象“瀑布型”的結(jié)構(gòu)化方法,從分析到設(shè)計(jì)(數(shù)據(jù)流圖到結(jié)構(gòu)流程圖)有很大的跳躍。

  2.3 面向?qū)ο蟮姆治雠c設(shè)計(jì)

  完整的面向?qū)ο蠓椒ò嗣嫦驅(qū)ο蠓治、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試和維護(hù)等多個(gè)方面,其中面向?qū)ο蟮姆治龊驮O(shè)計(jì)用于描述一個(gè)系統(tǒng),使整個(gè)面向?qū)ο蠓椒ㄖ凶钪匾慕M成部分———最能體現(xiàn)面向?qū)ο蠓椒ê锰幍牟糠。面向(qū)ο蟮姆治雠c面向?qū)ο蟮脑O(shè)計(jì)是在面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言基礎(chǔ)上發(fā)展起來(lái)的,試圖用面向?qū)ο筌浖_(kāi)發(fā)方法取代傳統(tǒng)的結(jié)構(gòu)化軟件開(kāi)發(fā)方法。

  2.3.1 面向?qū)ο蟮幕舅枷敕椒?/p>

  面向?qū)ο蠓椒ńo出兩個(gè)問(wèn)題和兩個(gè)空間的概念:客觀世界中的自然領(lǐng)域問(wèn)題和計(jì)算機(jī)世界中的軟件產(chǎn)品問(wèn)題;客觀世界中的自然領(lǐng)域問(wèn)題空間對(duì)應(yīng)于計(jì)算機(jī)世界中的解空間。從分析設(shè)計(jì)到編程,每一階段都是按問(wèn)題域本身的樣子組織的。這種范型不僅帶來(lái)穩(wěn)定性,而且還具有擴(kuò)充性。面向?qū)ο蠓椒ǖ幕咎攸c(diǎn):模塊性、抽象性、繼承性、動(dòng)態(tài)聯(lián)接的靈活性、易維護(hù)性和易擴(kuò)充性。

  2.3.2 面向?qū)ο蟮脑O(shè)計(jì)在設(shè)計(jì)階段中繼續(xù)采用五個(gè)層次,用于建立系統(tǒng)的四個(gè)組成部分。

  這四個(gè)組成部分是問(wèn)題論域、用戶界面、任務(wù)管理和數(shù)據(jù)管理。圖2 給出了這四個(gè)部分及其相互間的關(guān)系。

  問(wèn)題論域部分包括與所面對(duì)的應(yīng)用問(wèn)題直接有關(guān)的所有類和對(duì)象。由于識(shí)別和定義這些類和對(duì)象的工作在00A 中已經(jīng)開(kāi)始,設(shè)計(jì)部分只是對(duì)它們做進(jìn)一步的細(xì)化。在其他的三個(gè)部分中,識(shí)別和定義新的類和對(duì)象。這些類和對(duì)象形成問(wèn)題論域部分與用戶、與外部系統(tǒng)和專用設(shè)備以及與磁盤文件和數(shù)據(jù)庫(kù)系統(tǒng)的界面。這三部分的作用主要是保證系統(tǒng)基本功能的相對(duì)獨(dú)立,以加強(qiáng)軟件的可復(fù)用性。

  3.小結(jié)

  用面向?qū)ο笏枷敕椒ㄟM(jìn)行軟件構(gòu)造、軟件過(guò)程研究和建立軟件體系結(jié)構(gòu)都標(biāo)志著面向?qū)ο罄碚撢呌诔墒。隨著計(jì)算機(jī)的廣泛應(yīng)用,大型和超大型軟件系統(tǒng)的開(kāi)發(fā)是必不可少的。從面向?qū)ο蟮乃枷氤霭l(fā),用面向?qū)ο蟮姆治龊驮O(shè)計(jì)方法去實(shí)現(xiàn)它,必將事半功倍。

  參考文獻(xiàn)

  [1]鄭人杰.殷人昆,陶永雷.實(shí)用軟件工程.北京:清華大學(xué)出版社

  [2]周之英.現(xiàn)代軟件工程.北京:科學(xué)出版社

  [3]朱海濱.面向?qū)ο蠹夹g(shù)———原理與設(shè)計(jì).長(zhǎng)沙:國(guó)防科技大學(xué)出版社

  [4]魏遠(yuǎn)旺.基于面向?qū)ο蟮能浖䦶?fù)用技術(shù)的研究和應(yīng)用[D].南昌大學(xué),2005 年

  [5]段小君,高金環(huán).軟件復(fù)用與面向?qū)ο蠹夹g(shù)[J].西安郵電學(xué)院學(xué)報(bào),2004 年02 期

【面向?qū)ο蠹夹g(shù)與軟件工程探討】相關(guān)文章:

數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)中面向?qū)ο蠹夹g(shù)的應(yīng)用03-30

軟件工程課程改革探討的論文03-19

面向?qū)嵺`的“運(yùn)營(yíng)管理課程”教學(xué)模式探討12-12

面向能力培養(yǎng)的高等教育教學(xué)模式探討11-24

簡(jiǎn)談?wù)軐W(xué)與面向?qū)ο蟮年P(guān)系及軟件開(kāi)發(fā)的發(fā)展方向03-29

面向大批量定制的客戶需求分析技術(shù)論文12-05

通信技術(shù)的發(fā)展應(yīng)用探討論文03-16

對(duì)建筑電氣施工技術(shù)的探討與研究11-22

多媒體技術(shù)在籃球教學(xué)中的應(yīng)用探討11-24