哈工大软件构造第一章总结
????????軟件構造第一章名為軟件構造的多維視圖和質量目標,作為整個課程的開篇,闡釋了軟件構造的對象是什么,以及軟件系統構成的維度和指標。
1.軟件構造的多維視圖
第一章的第一部分內容可以由下面這幅圖來概括:
????????那么按找該表頭的信息,軟件構造的多維視圖可以分為8個部分:
????????在build-time過程中的moment情況下,軟件的邏輯結構代表源代碼、抽象語法樹、方法和類等,而物理結構則指包、文件、庫等軟件在物理層面的組織;而來period情況下邏輯結構和物理結構則又分別指代碼的變化以及版本的變化。(一般來說,代碼變化指代碼行的修改、增加與刪除,而版本變化則是用major-minor-patch的結構組織起來的版本號來表示同一軟件的不同狀態)
而在run-time過程中的moment情況下,軟件的邏輯結構可用代碼快照(程序運行時某時刻內存中變量層面的狀態)和內存信息轉儲來表示,period視角下則為執行追蹤(以日志方式記錄程序調用次序)和并行多線程;最后period下的物理結構則主要指事件日志,提供對于系統進行診斷與檢查又幫助的事件記錄。
? ? ? ? 2.視圖的轉換
? ? ? ? 在關鍵構造過程中,對于軟件的視圖將會從一個角度向另一個角度轉換,如下圖:
????????????????
其中主要經過了從無到代碼(編程與分析)、從代碼到組件(依靠包、鏈接、編譯等)、從構建階段到運行階段,以及從時刻到時間段的轉變。
? ? ? ? 3.軟件系統的質量指標
? ? ? ? 包括外部與內部兩部分,外部影響用戶,內部影響軟件本身與開發者,外部質量取決于內部質量。
? ? ? ? (1)外部質量指標
? ? ? ? 1)正確性:嚴格按照規約進行,最重要的指標。
? ? ? ? ?2)健壯性:出現規約外的異常情況時要有相應的處理,是正確性的補充。
? ? ? ? 3)可擴展性:應對變化
? ? ? ? 4)可復用性:一次開發多次使用。
? ? ? ? 5)兼容性:不同系統相互集成。
? ? ? ? 6)性能:在保證其他指標的情況下提高性能。
? ? ? ? 7)可移植性:軟件可在不同技術環境之間移植。
? ? ? ? 8)易用性:容易學習、安裝、操作、監控。
? ? ? ? 9)功能性:每增加一點功能都要確保其他屬性不受損失
? ? ? ? 10)及時性:開發進度需要達到需求。
? ? ? ? 此外還有其他指標,比如可驗證性、完整性、可修復性和經濟性等,而所有外部指標中正確性是最重要的指標,不可讓步。
? ? ? ? (2)內部質量指標
? ? ? ? 如可讀,易懂,清晰和大小等。
? ? ? ? (3)指標折中
? ? ? ? 在開發過程中,程序不同的質量因素之間存在沖突,這就需要程序員將不同因素的折中設計決策和標準明確下來,但是需要注意,程序的正確性是不能與其他因素折中的。
????????
? ? ? ? 4.軟件構造的五個關鍵指標
? ? ? ? 易懂,易改,廉價開發,避免漏洞,運行高效。
? ? ? ?
總結
以上是生活随笔為你收集整理的哈工大软件构造第一章总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一篇文章看懂Facebook和新浪微博的
- 下一篇: 13.大容量存储结构(磁盘管理)