日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软件架构概述

發布時間:2023/12/31 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软件架构概述 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

軟件架構概述

  • 什么是軟件架構
  • 軟件架構在軟件開發過程中的位置
    • 需求和架構的關系
      • 需求分類
        • 關于功能需求
        • 關于質量屬性需求
        • 小結 功能需求/質量屬性需求與架構關系
      • ==質量屬性需求可以引出架構決策==
    • 架構是設計的載體
  • 本文參考《Software Architecture in Practice 3rd》

最近在了解軟件架構,結合一些學習資料和自身的思考有了一些體會,現記錄如下以備今后查閱:

什么是軟件架構

軟件架構是一套用于推理系統的結構,這套結構由系統元素、元素之間的關系、元素和關系兩者本身的屬性構成。

  • 架構在需求(業務)分析與設計(概要設計/詳細設計)之間搭起了一座橋梁
  • 架構是需求的具體化,設計(概要設計/詳細設計)的抽象化
  • 架構是設計(概要設計/詳細設計)的載體

軟件架構在軟件開發過程中的位置

需求之后—>軟件架構—>設計(概要設計/詳細設計)之前, 如下圖

需求和架構的關系

要明確需求和架構的關系,需要先了解需求的分類:

需求分類

系統需求可來自各種形式:文字需求、原型、現存系統、用例、用戶描述等,不管來源是什么,所有的需求可分為如下幾類:

關于功能需求

  • 在所有的需求中,功能需求和架構的關系是最奇怪的。

  • 首先,功能需求并不決定架構:因為只給定一組功能需求,可以創建無數種架構來滿足這些功能點。

  • 如果功能是唯一的關注點,那根本就不需要將系統劃分成一些小的結構,一個沒有內部結構的單一整體就可以了。

  • 但是:
    盡管功能獨立于任何特定的結構,但功能是通過將職責分配給架構元素來實現的,從而產生最基本的架構結構之一。

關于質量屬性需求

我們將系統設計成協作的架構元素的結構化集合——模塊、邏輯層、類、服務、數據庫、應用程序、線程、對等體、物理層等等——使它們易于理解,以支持各種質量屬性需求

小結 功能需求/質量屬性需求與架構關系

盡管職責可以任意分配給任何模塊,但當其他質量屬性很重要時,軟件架構會限制這種分配。例如,系統經常被劃分,以便幾個人可以合作地構建它們。架構師對功能的興趣在于它如何與其他質量屬性進行交互和約束。

質量屬性需求可以引出架構決策


從一些業務目標可以引出一些質量屬性需求,而這些質量需求會引出架構決策,這些業務目標也可以直接引出架構決策或者引出非架構解決方案。

架構是設計的載體

設計(概要設計/詳細設計)會在架構設計/策略的基礎上進行細化設計。

本文參考《Software Architecture in Practice 3rd》

總結

以上是生活随笔為你收集整理的软件架构概述的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。