迷途書童

          敏感、勤學、多思
          隨筆 - 77, 文章 - 4, 評論 - 86, 引用 - 0
          數據加載中……

          軟件架構設計(四)——軟件架構設計過程

          3.10 確定系統需求

          確定系統需求即確定系統用例。方法以根據業務用例實現場景分析為輸入,分析每個系統Actor的系統用例。每個系統用例一定是一個完整的事件流,注意業務用例和系統用例的區別,業務用例是一個完整的業務目標,而系統用例是一個完整的事件流,是業務目標中的一個環節,如客戶代表申請開戶是一個完整的系統用例,但不是一個完整的業務目標,其包括多個頁面操作。

           

          3.11 用例實現分析

          對每個系統用例,識別其可能的實現路徑,每個實現路徑就是一個用例實現,然后針對每個用例實現,分析人機交互,使用活動圖繪制用例實現場景。

           

          3.12 分析模型

          使用分析對象,實現所有的用例實現場景,識別出三種分析對象。在這個過程中,也可以建立界面原型,和客戶進一步達成需求的一致理解。分析模型是需求到設計的橋梁,分析類的層次高于設計實現,需求通過分析類轉成計算機語言。后續做系統設計的時候,可直接將分析模型轉換成設計模型。

          在考慮分析模型的過程中,有可能識別出一些公共模塊,比如開戶、銷戶過程中都會有一些業務規則校驗,需要引入規則引擎的支持,那么類似規則引擎這樣的公共模塊需要添加到邏輯架構中去。

           

          3.13 非功能性需求設計

          以性能為例講一下對非功能性需求設計的過程。

          1、確定性能目標:要支持多少用戶、多少在線用戶、多少并發操作、操作響應時間要求等;

          2、以一個簡單的三層架構為起點,根據性能目標,識別瓶頸。比如,如果數據庫撐不住,那么需要考慮最佳的分庫設計,如果是邏輯層撐不住,則要考慮負荷分擔,狀態同步的邏輯層方案設計,如果操作響應時間要求很高,則可根據不同場景,分析其操作的數據的讀寫特點,采用合適的緩存方案。如要支撐高并發低時延的大數據量查詢,Twitter就采用了垂直緩存,raw緩存的設計方案。

          3、驗證性能設計。抽取典型場景,實現一個prototype來驗證性能設計是否滿足性能目標。

          在質量屬性設計中,如果需要新增模塊,則需要修改邏輯架構。

          有一些約束類需求也是非常重要的,不能遺漏分析。

          經過這一個階段,我們能夠得到一個比較完整的邏輯架構,運行架構、開發架構、物理架構、數據架構的輸入了。剩下的工作就是編檔的工作了。

           

          3.14 架構編檔

          有了上面的工作作為鋪墊,編檔就非常容易了,這個就不細講了。

          posted on 2012-07-08 16:46 迷途書童 閱讀(1022) 評論(0)  編輯  收藏 所屬分類: 隨感 、系統設計 、業務建模

          主站蜘蛛池模板: 茌平县| 桦南县| 三都| 玉门市| 山阳县| 晋江市| 南雄市| 天门市| 萍乡市| 信丰县| 武邑县| 广平县| 昭觉县| 邵阳县| 朝阳县| 哈密市| 进贤县| 屏边| 吴江市| 银川市| 苏州市| 青神县| 育儿| 当涂县| 潜江市| 临洮县| 张家口市| 奉新县| 沈丘县| 铅山县| 佛冈县| 重庆市| 梅河口市| 青岛市| 兰溪市| 克山县| 兴海县| 华阴市| 平度市| 承德县| 邵东县|