หลักการง่ายๆในการทำ use case ของระบบคือ
1. user ของระบบคือใครบ้าง (Actor)
2. แต่ละ user จะใช้ระบบในกรณีใดบ้าง (Use Case)
3. แต่ละ use case ที่ user ใช้มีความสัมพันธ์กันอย่างไรบ้าง (include)
4. แต่ละ use case สามารถแตกเป็น use case ย่อยๆได้หรือไม่? (extend)

Use Case ไม่ใช่ Flow ของระบบ แต่เป็นภาพรวมของระบบว่าระบบทำอะไรได้บ้าง และใครบ้างเป็นผู้ใช้ระบบ
คำว่าใครไม่ได้แปลว่าเป็นคนเท่านั้นนะครับ อาจจะเป็นระบบอื่นๆก็ได้

โดยทั่วไปแล้ว ก่อนทำ use case เราต้องไปเก็บ requirement หรือความต้องการของผู้ใช้หรือเจ้าของระบบก่อน แล้วเอา requirement นั้นมาวิเคราะห์ โดยการวิเคราะห์เรามักจะใช้ Use Case Diagram เป็นเครื่องมือครับ

และเมื่อได้ use case แล้วเราควรจะกำหนด domain (จัดกลุ่ม) ของแต่ละ use case โดยดูลักษณะความเกี่ยวข้องของข้อมูล และลักษณะการทำงานเป็นหลัก ซึ่งผลที่ได้คือ Domain ของ Business Logic ต่างๆนั่นเอง

ที่มา: http://www.narisa.com/forums/index.php?showtopic=10894