完成了「方向箭頭」的小點心,
也掌握了「避障邏輯」這道家常料理。
師父卻告訴我:
「廚師若只會煮飯,那只是廚工。
真正的特級廚師,要能設計菜單,讓整桌料理相互呼應。」
我明白了,身為 Program Manager,光是會寫程式還不夠。
我必須學會 設計一份完整的 PRD 與 Spec,
並且利用 AI 協作,把想法轉化成工程師能理解的邏輯。
這就是我的第三道挑戰。
我決定請 AI 當我的「副主廚」。
我給它一個需求:
「我要一台小車,能夠巡航:
- 一開始往前走
- 如果遇到障礙,先停下來
- 然後轉彎,繞過障礙,繼續前進」
AI 幫我草擬了一份 PRD:
PRD 項目 | 說明 |
---|---|
使用者故事 | 「我希望小車能自動巡航,即使遇到障礙也能繼續行進。」 |
需求編號 | PRD-003 |
驅動因素 | 使用者需要無人值守的小車 |
驗收條件 | 小車能自動前進,遇到障礙停下 → 轉彎 → 繼續前進 |
當我看到這份草稿時,心裡竊喜。
過去要花我好幾天才能整理好的文件,
AI 幾分鐘就能幫我搭好框架。
但作為 Program Manager,我必須檢查:
是否缺少「轉彎角度」、「反應時間」這類的細節?
AI 是副廚,但最後要端上桌的,是我。
我把 PRD 轉換成更精確的 Spec:
Spec 編號 | 條件 | 行為 |
---|---|---|
SPEC-301 | 小車前方無障礙 | 小車持續前進 |
SPEC-302 | 小車前方有障礙 | 小車停止 |
SPEC-303 | 停止後 | 小車向左轉 1 秒 |
SPEC-304 | 轉彎後 | 小車繼續前進 |
這份 Spec 就像完整的食譜:
它清楚定義了 每個情境下的反應,
讓工程師知道該如何下鍋。
我先用積木模擬這個邏輯:
在 MakeCode 裡,積木的組合看起來就像一個「分岔的料理流程圖」。
這就像「預製菜」:簡單快速,但味道單一。
真正的考驗還在後面 —— 寫出真實 Python。
設定變數:狀態 = "無障礙"
當按鈕 A 被按下
├── 設定 狀態 為 "有障礙"
當按鈕 B 被按下
├── 設定 狀態 為 "無障礙"
重複無限次
├── 如果 狀態 = "無障礙" 則
│ └── 顯示圖示 ↑ (前進箭頭)
│
├── 否則如果 狀態 = "有障礙" 則
│ ├── 顯示字串 "STOP"
│ ├── 暫停 1000 毫秒
│ └── 顯示圖示 ← (左轉箭頭)
│
└── 暫停 100 毫秒
主食材:狀態變數
調味步驟:
分岔處理:
North Arrow
或 Triangle
West Arrow
或 < 符號
X
或 Square
我打開 Python 編輯器,開始自己下鍋。
這一次,不再依靠自動生成,而是自己寫:
from microbit import *
import time
while True:
# 模擬障礙物:A = 有障礙, B = 無障礙
if button_a.is_pressed():
# 有障礙物 → 停止
display.scroll("STOP")
sleep(1000)
# 左轉
display.show(Image.ARROW_W)
sleep(1000)
elif button_b.is_pressed():
# 無障礙物 → 前進
display.show(Image.ARROW_N)
else:
# 預設狀態 = 前進
display.show(Image.ARROW_N)
這段程式,雖然還是簡單的顯示箭頭,
但背後已經蘊含了「遇到問題 → 中斷 → 解決 → 繼續」的完整邏輯。
這就是 Spec 真正的落地。
微軟官方提供的 Micro:bit Editor,雖然方便,但主要是積木型態程式語言(或積木轉出的 Python),
和真實 Python 仍有落差,無法完整體驗「自己下鍋」的感覺。
所以我們這裡改用另一個網站來練習 —— 可以直接寫 真實 Python。
打開這個網站 👉 https://python.microbit.org/v/3
進入後你會看到一個線上編輯器,可以直接輸入 Python 程式。
預設會有一段簡單的程式碼,例如顯示一個愛心:
from microbit import *
while True:
display.show(Image.HEART)
你可以直接在右側模擬器測試,或下載程式碼燒錄到實體 micro:bit。
這樣,我們就不需要依賴積木,也能體驗「真實 Python 的寫作流程」。
我先在模擬器上測試:
接著,把程式下載到實體 micro:bit:
這一刻,我終於看到自己設計的 PRD 與 Spec,透過 Python 真正運作起來。
這次挑戰最大的體悟是:
Program Manager 的價值,不在於我比工程師會寫更多程式,
而是在於我能用 PRD → Spec → 程式驗證 的流程,
確保整個計畫的方向正確。
當我回頭看三篇的旅程:
我已經不再是只能點頭的 PM,
而是一個能夠理解程式邏輯、設計 PRD 與 Spec,
並帶領團隊往前走的 Program Manager。
程式不只是冰冷的指令,
它像風一樣,需要理解它的方向、節奏與力量。
AI 就是我身邊的風向標,
幫我少走冤枉路,提醒我注意缺漏。
而我自己,就是那個願意追風的人。
因為只有追著風跑,
才能有一天,與風並肩同行。
from microbit import *
開始顯示文字滾動與錯誤處理。