手把手教你寫設計方案

ITPUB社群發表於2023-12-08

來源:撿田螺的小男孩

前言

那今天田螺哥跟大家講講設計方案如何寫哈。我將基於一個送禮物的介面,為其實現冪等,來寫一份模板方案設計。

  • 背景
  • 目的
  • 用例圖
  • 時序圖
  • 流程圖
  • 狀態圖
  • 資料庫設計
  • 介面文件
  • 總結

背景

假設你負責一個禮物系統的開發,領導給你分配一個技術需求,給系統的送禮介面,實現冪等。於是你開始寫技術方案...

目的

本文件旨在概述如何設計冪等,以確保禮物系統中的送禮介面具有冪等性。

用例圖

用例圖(Use Case Diagram):是軟體工程中的一種行為模型,用於描述系統的功能需求和使用者與系統的互動。它展示了系統中的不同使用者(或角色)和系統功能之間的關係,以及各種用例(功能需求)的互動關係。

用例圖一般包含這三要素:

  • 參與者:表示與系統互動的外部實體,可以是使用者、另一個系統或外部裝置等。它們以符號形式表示,通常是一個人的輪廓圖示。
  • 用例:表示系統提供的各種功能或服務需求。每個用例都描述了一個系統的功能,它以橢圓形圖示表示,並與參與者之間透過連線連線。
  • 關係:用例圖透過連線(箭頭)表示參與者和用例之間的關係,通常表示參與者和用例之間的互動行為。

回到冪等方案處理,我們這麼寫用例圖

手把手教你寫設計方案

時序圖

時序圖(Sequence Diagram)是軟體工程中的一種行為模型,用於描述物件之間的互動和訊息傳遞順序。它展示了物件之間互動方式。我們一般方案設計的實現細節,都體現在時序圖。

要素解釋:

  • 物件(Object):在時序圖中表示系統中的各個物件或參與者,可以是類、例項、角色或系統元件等。它們用矩形框表示,並在頂部寫有物件名稱。
  • 生命線(Lifeline):每個物件下方有一條垂直的虛線,稱為生命線,表示物件存在的時間段。生命線上方的箭頭表示物件的生命週期。
  • 訊息(Message):表示物件之間的通訊或互動,以箭頭的形式從一個物件向另一個物件傳遞,指示訊息的傳遞方向。訊息可以是同步訊息、非同步訊息、返回訊息等,箭頭上方標註了訊息的型別和內容。
  • 啟用(Activation):在生命線上方,表示物件正在執行操作時的時間段,通常用豎直的方塊或者壓扁的橢圓形表示。

比如送禮的冪等處理邏輯,就可以體現在以下的時序圖:

手把手教你寫設計方案

流程圖

流程圖,通常被用來描述一個過程、系統或活動中的步驟和流程。它一般用於把一些分支體現出來,以方便更好體現設計方案。比如送禮介面的冪等方案,用流程表現如下:

手把手教你寫設計方案

狀態圖

狀態圖是一種圖形化的建模工具,用於描述系統中一個特定物件的各種狀態以及它們之間的轉換和事件觸發。比如回到我們冪等處理這個方案設計,這個冪等表的狀態,就可以用一個狀態圖來表示。

手把手教你寫設計方案
  • INIT: 冪等表插入的時候,就是初始化狀態
  • SUCCESS: 如果送禮的業務邏輯處理成功,就更新為成功狀態
  • FAIL: 如果送禮的業務邏輯處理失敗,冪等表就更新為失敗狀態

資料庫設計

對於寫方案設計,資料庫這塊是比較重要的,尤其我們是後端開發。一般來說,你的表是如何設計的,就把ER圖放出來。如果你的方案只是修改原有的一些資料庫表,比如加欄位、加索引等等,只需要突出就行。

比如我的送禮冪等方案,我的ER圖就是這樣的:

手把手教你寫設計方案

因為沒有其他表跟它關聯,所以這個ER圖只有一個單表。

介面文件

請求方式: POST

介面名稱: 送禮介面

請求引數:

手把手教你寫設計方案

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024420/viewspace-2999237/,如需轉載,請註明出處,否則將追究法律責任。

相關文章