傳統上,複雜的軟體專案,除了程式設計師之外,還會搭配系統設計師,甚至系統分析師,確保領域知識及商業邏輯都有朝對的方向前進。
生成式 AI 既然會寫程式,下一個問題就是:它也會做系統分析嗎?
理論上來說,應該是的。畢竟我們在前一篇文章都親眼看過,AI 既然能理解規格、潤飾需求、撰寫程式碼,甚至生成測試案例,那麼系統分析 (SA) 和系統設計 (SD) 這類「中間產物」,確實也難不倒它。畢竟,系統分析本質上就是資訊的整理、建模與推理,而這些都是 AI 擅長的領域。
我認為,SA/SD 也應該納入 AI 協作。尤其是從 SA/SD 擅長的建模角度,能夠協助我們及早確認領域知識及商業邏輯,檢查需求規格是否有矛盾、遺漏或模稜兩可的地方,甚至提出改善建議,幫助系統分析師更快定位問題,減少後期開發的返工成本。譬如說,透過 AI 生成的狀態轉移圖,也有助於規劃黑箱測試,提高測試覆蓋率,進而提升系統的穩定性與可靠性。
接下來就是現實問題了:讓 AI 產生的狀態圖,真的比人工畫得更好嗎?能省多少時間?
這就要實測了!現在,就讓我們拿前一篇文章的規格作為引子,看看 AI 生成的狀態圖表現如何吧!