1. 程式人生 > 其它 >什麼是軟體開發業務建模分析和結構化建模分析

什麼是軟體開發業務建模分析和結構化建模分析

軟體開發業務建模分析

業務建模

三級需求:業務需求、使用者需求、系統需求(也叫功能需求)

簡單理解:
  • 業務需求:怎麼實現盈利,怎麼吸引使用者。

    • “三尖刀”原則:即” OKR(Objectives and Key Results)“目標與關鍵成功法,因為業務需求的目標是吸引使用者,獲得盈利,所以在描述業務需求的時候,需要方法技巧。

      OKR的主要目標是明確公司和團隊的“目標”以及明確每個目標達成的可衡量的“關鍵結果”。

    • SMART原則:

      • Specific(具體的):我們的產品具體要做什麼,要怎麼做。
      • Measurable(可衡量的):我們的產品會給使用者帶來什麼好處,這個好處用什麼方式度量。
      • Attainable(可實現的):產品的可實現性,砍掉不切實際。
      • Relevant(相關的):抓住關鍵目標,砍掉產品的無關目標。
      • Time-Based(有時間限制的):有時間限制的就是砍掉無限拖延。前面確立的專案都很好,但是需要實現的時間太長則沒有意義。
  • 使用者需求:怎麼讓使用者選擇你的產品。

  • 系統需求:你的產品怎麼能更好用一點。

    其中系統需求基於使用者需求、業務需求基於你的功能如何讓使用者離不開你的產品。


詳細解釋:
  • 業務需求:業務需求來自公司、來自老闆。業務需求描述的是願景級的需求,主要描述巨集觀上產品解決了市場上的哪類人群的痛點和需求,這裡會通過描述使用者畫像等完成產品故事的表達,主要站在整個系統(產品)和公司的角度進行分析,表示組織或客戶高層次的目標
  • 使用者需求:使用者需求來自使用者。對使用者群體進行分類,從某一類使用者的視角分析這一類使用者對軟體的需求。描述的是使用者的目標,或使用者要求系統必須能完成的任務
  • 系統需求:系統需求站在了產品的角度,把具體的使用者需求,變成軟體的功能要求。功能需求是基於業務需求和使用者需求進行需求分析的結果。規定開發人員必須在產品中實現的軟體功能,使用者利用這些功能來完成任務,滿足業務需求

  • 第一步:構建系統上下範圍圖(頂層資料流圖、0層資料流圖),確定系統邊界,確定與系統直接互動的外部實體。

  • 第二步:構建第1層資料流圖,確定與系統直接互動的外部的相鄰系統實體,確定業務事件的發生並引起的進出資料流

    • 業務事件存在系統外部,業務事件是可以引起系統內部一系列活動的外部事件(可以是人、物、時間等等)
    • 業務用例存在系統內部,業務用例可以響應一個業務事件的工作。
    • 外部業務事件觸發內部業務用例進行資料互動(進出的資料流),輸入的資料由業務事件提供,輸出的資料由業務用例提供。
  • 第三步:研究每個業務用例,編寫業務用例場景。這裡對應使用者需求。

  • 第四步:利益相關者決定要構建的最佳產品。

  • 第五步:基於第三步和第四步的結論,通過產品用例分析、站在系統角度編寫用例場景。

  • 第六步:分析師為產品編寫故事或需求。


系統功能架構圖示例:

  • 對應資料流圖,通常以3層結構為宜。
  • 其中第1層資料流圖(中央監控、病症監控 ...),對應一個個業務用例(功能模組),這裡以3 ~ 7個模組為宜。

軟體開發結構化建模分析

  • 軟體模型:對軟體系統在各個開發階段本質特性的描述,它要反映軟體系統的形成過程。
    • 領域模型:也叫業務模型,描述軟體所要服務的業務領域的業務狀況和業務關係
    • 需求模型:描述軟體可向使用者提供的外在特性,包括軟體的目標、功能、效能等。
    • 設計模型:軟體中具體模組的設計方案(GoF23種設計模式),詳細設計、介面和資料庫等。
    • 實現模型:軟體的具體編碼實現,軟體的實現結構。
    • 測試模型:測試軟體的模型描述。
  • 軟體建模方法:
    • 面向功能
    • 面向資料
    • 面向物件
  • 結構化分析的模型
    • 資料模型(ERD圖 Entity Relationship Diagram)
    • 功能模型(DFD資料流圖 Data Flow Diagram)
    • 行為模型:包括互動模型和狀態模型。側重物件之間的互動、狀態和活動。(順序圖、狀態圖、活動圖)

資料流圖

圖片來自:https://www.jianshu.com/p/2bf96cb928b3

業務流程圖