面向对象的软件工程
面向對象
-
基于對象的方法:僅使用對象和消息的方法。
-
面向對象的方法:同時使用對象、類、繼承和消息的方法。
-
面向對象如何實現(xiàn)模塊獨立性,其耦合和內(nèi)聚的含義是什么?
因為對象是由數(shù)據(jù)及可以對這些數(shù)據(jù)施加的操作所組成的統(tǒng)一體,而且對象是以數(shù)據(jù)為中心的,操作圍繞對其數(shù)據(jù)所需做的處理來設置,沒有無關的操作。因此,對象內(nèi)部各種元素彼此結合得很緊密。內(nèi)聚性相當強,由于完成對象所需要的元素(數(shù)據(jù)和方法)基本上都被封裝在對象內(nèi)部,它與外界的聯(lián)系自然就比較少。因此,對象之間的耦合通常比較松??傊?#xff0c;面向對象使用對象、類、繼承和消息的方法,既使用類和繼承等機制,而且對象之間僅能通過傳遞消息實現(xiàn)彼此通信來實現(xiàn)模塊的獨立性。 -
面向對象分析設計的三個模型:
1.對象模型:描述系統(tǒng)的靜態(tài)結構,包括類和對象,它們的屬性和操作,以及它們之間的關系。
2.動態(tài)模型:著重于系統(tǒng)的控制邏輯,考察在任何時候對象及其關系的改變,描述這些涉及時序和改變的狀態(tài)。包括狀態(tài)圖和事件跟蹤圖。
3.功能模型:著重于系統(tǒng)內(nèi)部數(shù)據(jù)的傳送和處理。 -
面向對象方法的優(yōu)點和不足:
優(yōu)點:1.與人類的思維方式一致;2.軟件穩(wěn)定性好;3.可重用性好;教易開發(fā)大型軟件產(chǎn)品;可維護性好易于測試。
缺點:1.占用空間比較多,程序效率比較低;2.較麻煩,需要寫更多代碼;加大了測試的難度。 -
類與類之間的關系:
繼承、多態(tài)性、關聯(lián)、依賴、實現(xiàn)、聚集、組合。
由強到弱:組合→聚集→關聯(lián)→依賴。 -
統(tǒng)一建模語言UML的模型視圖:1.靜態(tài)圖2.動態(tài)圖
-
統(tǒng)一軟件開發(fā)過程RUP:面向對象軟件工程的通用業(yè)務流程。
-
面向對象的分析:
1.用例(功能)模型:用例圖、數(shù)據(jù)流圖
2.對象(靜態(tài))模型(最核心、最重要):類圖、對象圖
3.動態(tài)模型:順序圖、通信圖、狀態(tài)圖、活動圖
4.物理模型:構件圖、部署圖
1、需求
采用用例圖描述需求。
2、 分析
采用類圖描述靜態(tài)結構
采用順序圖、合作圖、活動圖、狀態(tài)圖描述動態(tài)行為
3、設計
采用類圖、包,對類的接口進行設計
4、 實現(xiàn)
將類用某現(xiàn)象對象語言實現(xiàn)
5、繼承與交付
構件圖、包、部署圖
6、 測試
單元測試——類圖和類的說明書 -
軟件系統(tǒng)的三個測試階段:
1.開發(fā)測試:在開發(fā)過程中對系統(tǒng)進行測試以發(fā)現(xiàn)bug和缺陷。
2.發(fā)布測試: 在系統(tǒng)發(fā)布給用戶之前,單獨的測試團隊測試系統(tǒng)的完整版本。
3.用戶測試 : 其中系統(tǒng)的用戶或潛在用戶在自己的環(huán)境中測試系統(tǒng)。 -
面向對象和面向過程軟件工程的區(qū)別:
1.面向過程就是分析出解決問題所需要的步驟,然后用函數(shù)把這些步驟一步一步實現(xiàn),使用的時候一個一個依次調(diào)用就可以了,以算法(功能)為核心;面向對象是把構成問題事務分解成各個對象,建立對象的目的不是為了完成一個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為,以對象為核心。
2.面向過程是把一件事一項工程分解成為一個個小的功能,用一個個函數(shù)來實現(xiàn);面向對象是把事情看成是一個個小的對象組成的,或者說一個個小部分組成的,這些對象之間的相互關系,構成了整個項目.在面向對象的思想中,萬物皆對象。而"類",就是對象的抽象或者說是概括。 -
提高軟件質量的主要措施:
1.復審:是在軟件生命周期每個階段結束之前,都采用一定的標準對該段產(chǎn)生的軟件配置成分進行嚴格的正式或非正式的檢測。
2.復查:是檢查已有的材料,以斷定在軟件生命周期某個階段的工作是否能夠開始或繼續(xù)。
3.管理復審:是向開發(fā)組織或使用部門的管理人員提供有關項目的總體狀況、成本和進度等方面的情況,以便他們從管理角度對開發(fā)工作進行審查。
4.測試:包括測試計劃、測試過程和測試結果3個階段。 -
文檔在軟件工程中的作用:
(1)提高軟件開發(fā)過程的能見度
(2)提高開發(fā)效率
(3)作為開發(fā)人員階段工作成果和結束標志
(4)記錄開發(fā)過程的有關信息便于使用與維護;
(5)提供軟件運行、維護和培訓有關資料;
(6)便于用戶了解軟件功能、性能。 -
軟件工程三要素之間的關系?
軟件質量是軟件工程的生命線,軟件工程以質量保證為基礎。
質量管理促進了過程的改進,創(chuàng)造了許多行之有效的軟件開發(fā)方法和工具。
軟件工程釆用層次化的方法,每個層次都包括過程、方法、工具三要素。
總結
- 上一篇: 计算机科学与工程第四轮学科评估,超级重磅
- 下一篇: SpringBoot easypoi 自