– 報價要么因為高風險溢價而過于昂貴,要么因為低估成本而導致虧損
在這種情況下,公司負責人往往難以判斷哪種結果更糟。這種困境促使他組建了一個由多領域專家組成的團隊,試圖找到有效的解決方案 ??。
—
## 二. 角色設定:從不同視角理解問題 ??
為了更好地分析問題,團隊設計了三個關鍵角色,并基于這些角色的背景和需求開發了相應的解決方案。
### 1. Will:機械工程公司的董事總經理 ??
– **背景**:66 歲,機械工程領域的資深人士,熟悉國內外市場
– **需求**:為了在競爭激烈的市場中生存,他需要擴展公司產品線,尤其是數字化產品
– **目標**:訂購數字孿生、維護預測以及耗材自動訂購等數字化服務
### 2. 瑪麗:IT 咨詢公司的創始人 ?????
– **背景**:39 歲,計算機科學專業畢業后曾在大型咨詢公司任職,后因家庭原因創辦了自己的企業
– **現狀**:目前經營著一家擁有近 50 名員工的 IT 咨詢公司
– **需求**:在兼顧家庭和事業的同時,提供高效的 IT 解決方案
### 3. George:IT 咨詢公司的開發人員 ?????
– **背景**:計算機科學專業畢業,現為瑪麗的公司效力
– **現狀**:熱衷于技術開發,但對報價估算感到不滿
– **挑戰**:報價要么過高導致客戶流失,要么過低導致成本超支。他因此立誓不再參與報價估算
—
## 三. 創意探索:從想法到解決方案 ??
基于上述角色,團隊開始頭腦風暴,提出了多個創意。然而,許多想法因以下原因被否決:
– 過于理想化,難以實際落地
– 已有類似解決方案存在
– 涉及法律或政策的重大調整
盡管如此,團隊最終發現了一個具有潛力的創意,并為其繪制了初步的草圖。這一創意有望解決當前的困境,并為用戶提供更高效的服務。
> ??? 寫完原型別忘了跑「[代碼優化](https://prompts.explinks.com/code_optimization_tools?from=explinks&sulg=design-thinking-domain-storytelling-api)」提示詞,一鍵診斷慢查詢與重復請求,讓創意驗證提速 30 %!
—
## 四. 領域故事:把角色痛點翻譯成 API 需求 ???
| 場景 | 領域故事(用戶-系統對話) | 隱含 API 需求 |
|——|————————-|————–|
| Will 想為老舊機床添加“數字孿生”服務 | Will 瀏覽服務目錄 → 系統推薦 IoT 套件 → Will 下單 → 系統返回預測性維護報告 | `GET /digital-services?category=iot`
`POST /orders`
`GET /reports/{orderId}/predictive` |
| Mary 需要快速估算 50 人月項目的報價 | Mary 輸入需求 → 系統調用歷史數據 → 返回區間報價 & 風險系數 | `POST /quotes/estimate`
`GET /analytics/risk?projectType=it-consulting` |
| George 拒絕再手動估算 | George 提交代碼庫 URL → 系統掃描功能點 → 自動生成估算 & 置信度 | `POST /estimates/from-repo`
`GET /estimates/{id}/confidence` |
—
## 五. 快速原型:用 Swagger 定義“報價估算 API” ??
“`yaml
openapi: 3.0.0
paths:
/quotes/estimate:
post:
summary: 基于角色與需求生成區間報價
requestBody:
content:
application/json:
schema:
type: object
properties:
role: {type: string, enum: [will, mary, george]}
requirements: {type: string}
historicalProjectsCount: {type: integer}
responses:
'200':
description: 區間報價與風險系數
content:
application/json:
schema:
type: object
properties:
minQuote: {type: number}
maxQuote: {type: number}
riskLevel: {type: string, enum: [low, medium, high]}
“`
> ?? 想給業務同事一份秒懂的接口文檔?「[代碼文檔生成器](https://prompts.explinks.com/standard_code_docs?from=explinks&sulg=design-thinking-domain-storytelling-api)」可自動生成標準化字段描述、請求/響應示例與錯誤碼,讓協作零阻力!
—
## 六. 實戰:用 Python 快速生成“角色驅動報價”API ??
“`python
from flask import Flask, request
import random
app = Flask(__name__)
@app.post("/quotes/estimate")
def estimate():
data = request.json
role, req, count = data["role"], data["requirements"], data["historicalProjectsCount"]
# 模擬角色系數
factor = {"will": 1.5, "mary": 1.2, "george": 1.0}[role]
base = len(req.split()) * 10
min_q = int(base * factor * (0.8 + count/100))
max_q = int(base * factor * (1.2 + count/100))
risk = ["low", "medium", "high"][count % 3]
return {"minQuote": min_q, "maxQuote": max_q, "riskLevel": risk}
if __name__ == "__main__":
app.run(debug=True)
“`
啟動服務后測試:
“`bash
curl -X POST http://localhost:5000/quotes/estimate \
-H "Content-Type: application/json" \
-d '{"role":"will","requirements":"digital twin predictive maintenance","historicalProjectsCount":12}'
“`
返回示例:
“`json
{"minQuote": 576, "maxQuote": 864, "riskLevel": "medium"}
“`
—
## 七. 常見疑問 ?
**Q1. 領域故事與 User Story 有何不同?**
→ 領域故事強調“用戶-系統”對話序列,更直觀暴露 API 調用鏈;User Story 側重價值與驗收條件。
**Q2. 故事寫多長合適?**
→ 每條故事 3–7 步即可,過長可拆分子故事;保持“對話式”語言,避免技術術語。
**Q3. 如何驗證故事完整性?**
→ 用“故事走查”工作坊,邀請真實角色扮演者朗讀對話,確認無缺口或歧義。
—
## 八. 結語 ??
用設計思維深挖痛點,再用領域故事把痛點翻譯成可執行的 API 需求,最后結合原型快速驗證——Will 的數字化訂單、Mary 的區間報價、George 的免手動估算,都能在同一套故事驅動流程中一次性落地 ??。
先用「[代碼生成](https://prompts.explinks.com/code_generator_function?from=explinks&sulg=design-thinking-domain-storytelling-api)」快速產出 MVP 接口,再用 KPI 面板持續監控故事覆蓋率與需求變更頻率,你的 API 將真正“講故事”,也更貼近用戶心聲 ??!
原文鏈接: https://t2informatik.de/en/blog/design-thinking-domain-storytelling-api/