系列首篇,記錄從零開始建立企業級專案的完整思維歷程:需求訪談、架構決策、技術選型,拒絕「為模式而模式」,以自然演進方式落地分層架構、設計模式與 OO 原則。
角色:Sue (HR 首席執行官)、Mary (HR 代表)、我 (IT 專案負責人)
現狀痛點:Word 表單 + Excel 追蹤 → 單據遺漏、流程不透明、簽核延遲、資料不同步。
核心需求萃取:
| 層面 | 技術選擇 | 理由 |
|---|---|---|
| Web 框架 | ASP.NET 3.5 Web Forms | 團隊熟悉、控件生態豐富、母版頁/使用者控件支援良好 |
| 語言特性 | C# 3.0 (LINQ, Lambda, 擴充方法, 匿名類型) | 大幅提升資料查詢與集合操作表達力 |
| 資料庫 | SQL Server 2005 | 企業標準、LINQ to SQL 原生支援最佳 |
| 工作流 | WF 3.5 | 長流程、持久化、視覺化設計器、與 ASP.NET 整合 |
| 前端增強 | AJAX (UpdatePanel, Control Toolkit) | 局部更新提升體驗,無需重構為 SPA |
HRSolution.sln
├── HR.Common // 共用介面、列舉、擴充、常數
├── HR.DAL // Repository 實作、LINQ to SQL DataContext
├── HR.BLL // 業務服務、工作流定義、驗證規則
└── HR.WebUI // ASP.NET Web Forms、母版頁、使用者控件
每章採用 「提出問題 → 設計方案 → 解決方案」** 三段式,每章分兩篇發表,確保深度與可讀性並重。
企業級專案不在於技術花俏,而在於精準理解業務痛點、以最適架構回應變化。下一篇進入 DAL 設計與資料庫建模實作。