星期日, 11月 14, 2010

系統分析設計與實作 Week 2 - Modeling By UML 三劍客

Modeling By UML 三劍客
  • Use Case Diagram
    由SA畫出使用者需求
  • Class Diagram
    由SD畫出結構圖
  • 物件合作圖
    方便Programmer實作
各代表不同view, 三大構面:需求、結構、實作

問題:已經足夠?
視專業,原則上已經符合大部份需求,最好還有table schema

系統是提供服務(API), 畫面(介面)及DB都不是系統

過去常用畫面捕抓需求
直覺,但不易找出user使用的目的,因為太多操縱細節,最常抓「欄位」、「企業規則」,但一開始其實不需要(先過濾細節),且使用者常不知自己所需,因此SA要能抓出「目的」(使用者使用系統的目的)
ex,付款時,要填「地址」(欄位,易變),目的在付款時,提供滿足需求的服務,但跟end user溝通,仍是一個溝通工具

前導工作
-訪談、會議記錄、畫面、錄音 以導出use case

use case model
  • Use Case Diagram => 聚焦在what, 而非how-to
    買咖啡及點餐各為一個use case,但結帳不是,因結帳非目的,而是點餐後的一項
  • Use Case Description 細節、互動

4.1 Web ATM
晶片金融卡視為一外部系統
因為密碼及交易計錄(約10筆)會存在金融卡,而金融卡會提供存取的API,因此算系統

寫好Use Case的好處
  • 好維護
  • 保持開發節奏順暢
*重覆的use case如何處理?
先當獨立,事後再依refactoring評估是否相關,再進行合併

2.3.1 系統範圍
抓價值高的=>交易
而非價值低的維護欄位

沒有留言: