軟體構造學習部落格第一章

2021-09-24 15:25:25 字數 1678 閱讀 2252

軟體構造學習部落格第一章

從三個方面認識軟體構造,軟體的構造就是在不同方面之間的變換

**(code)-------------------------元件(component)

構建時(build)----------------------執行時(run)

時刻(moment)-------------------------時間段(period)

1.專案(programs (ui, algorithms, utilities, apis, test cases, etc))

2.資料:(data(files, databases, etc))

3.文件:(documents (需求規格說明srs, 設計規格說明sdd, user manuals, etc))

1.**層:源**如何通過基本程式塊(如函式,類,方法,介面等)以及它們之間的依賴關係進行邏輯組織

2.元件層(體系結構):源**如何按檔案,目錄,包,庫以及它們之間的依賴關係進行物理組織

3.時刻層:原始碼與元件在某一特定時間的樣子

時間段層:他們在一段時間的改變與發展

構建、**、時刻層級

a)在邏輯上**是如何通過基本程式塊(函式,方法,類,介面,等)組織的

b)三種形式:面向詞法(面向詞法的原始碼),面向語法(如:抽象語法樹),面向語義(如:類圖)

i.抽象語法樹:將半結構化源**表示為結構化樹。是源**語法結構的一種抽象表示。它以樹狀的形式表現程式語言的語法結構,樹上的每個節點都表示源**中的一種結構。

ii.面向語義的結構:通常在設計階段建模,並轉換為源**。 它是物件導向分析和設計的使用者需求的結果。比如類、方法的呼叫關係。

構建、時間段、**:

code churn:定義為從乙個版本到另乙個版本,新增、修改或刪除**行,並儲存到檔案。

構建、元件、時刻層級

源**物理地組織成檔案,其進一步按目錄組織

a)檔案被封裝成包、元件和子系統

b)可復用模組形成類庫

c)uml:元件圖描述了元件如何連線在一起以形成更大的元件或軟體系統。

d)類庫:

構建、元件、時間段層級:

所有檔案/包/元件/庫如何隨著時間的推移在軟體系統中發生變化?

版本控制系統:

1、可執行程式:cpu執行的機器可讀指令序列以及相關資料值。

2、庫:大多數作業系統都包含一組開發人員可以重用的標準庫,無法在目標機器上直接載入和執行庫; 它必須首先與可執行程式鏈結。

3、可執行程式

event logging

execution tracing

系統管理人員使用

開發人員使用

錄「高階」資訊(例如程式安裝失敗)

記錄「低級別」資訊(例如,thrownexception)

不能包含太多重複的事件與無用資訊

可以常常基於標準輸出格式

格式限制少

訊息通常是本地化的

很少關心本地化

加新型別的事件以及新事件訊息不一定非常敏捷。

新增新的跟蹤訊息必須敏捷

軟體構造第一章

軟體構造第一章 1 構建時,時刻和 級檢視 源 如何通過基本程式塊 如函式,類,方法,介面等 以及它們之間的依賴關係進行邏輯組織。三種相互關聯的形式 面向詞彙的源 面向語法的程式結構 例如,抽象語法樹 ast 面向語義的程式結構 例如,類圖 1.1軟體構建的多維檢視 源 軟體開發中最重要的資產 基於...

軟體構造第一章總結

軟體構造的實質 影響軟體質量的因素 從階段層面看 構造vs執行 build vs run 從動態層面看 時刻vs週期 moment vs period 從級別層面看 vs模組化 code vs component build time,moment and code level view 關注詞彙層...

軟體測試(第一章)

軟體測試的基本概念 是對軟體需求分析設計編碼的最終複查的一系列過程,是軟體質量驗證的關鍵步驟。軟體測試的目的 1.發現缺陷,提高質量。2.驗證是否滿足需求。3.建立軟體質量的信心。1 開發者 確認軟體已經實現使用者的需求,不存在錯誤。2 使用者 發現軟體中的錯誤,考慮是否可接受該產品。軟體測試原則 ...