Section 6: การออกแบบ API Contract
- องค์ประกอบของ Contract ที่ดี: Endpoint, Method, Request, Response, Error และ Business Rules
- Field Specification: ชนิดข้อมูล ความยาว รูปแบบวันที่ ค่าที่อนุญาต และฟิลด์บังคับ
- ตั้งชื่อฟิลด์และ Endpoint ให้สอดคล้องกันทั้งองค์กร
- API Versioning และผลกระทบเมื่อคู่ค้าเปลี่ยนเวอร์ชัน
- Contract First เพื่อให้ทีมทั้งสองฝั่งพัฒนาไปพร้อมกันได้
- Lab: เขียน Request และ Response Schema พร้อมฟิลด์บังคับ ชนิดข้อมูล และรูปแบบวันที่
Section 7: อธิบายลำดับการทำงานด้วยแผนภาพ
- Sequence Diagram สำหรับกระบวนการที่มีหลายระบบเกี่ยวข้อง
- Data Flow Diagram เพื่อแสดงเส้นทางและการแปลงข้อมูล
- เขียนแผนภาพด้วย Mermaid ที่ฝังลงในเอกสารและควบคุมเวอร์ชันได้
- ใช้แผนภาพประกอบการประชุมกับคู่ค้าเพื่อลดการตีความคลาดเคลื่อน
- Lab: เขียน Sequence Diagram อธิบายลำดับการทำงานระหว่างสามระบบ
Section 8: ออกแบบ Error Handling, Timeout และ Retry
- Error Matrix: รหัสข้อผิดพลาด ความหมายทางธุรกิจ ข้อความที่แสดงผู้ใช้ และการดำเนินการของระบบ
- Timeout และ Retry Policy: จำนวนครั้ง ระยะห่าง และ Exponential Backoff
- Lab: ออกแบบ Error Matrix ของการเชื่อมต่อระบบชำระเงินจำลอง พร้อมการดำเนินการที่ต้องทำในแต่ละกรณี
Section 9: Idempotency, Reconciliation และ Monitoring
- Idempotency: ทำไมการส่งซ้ำจึงสร้างรายการซ้ำ และการออกแบบ Idempotency Key
- การจัดการรายการค้าง (Pending) และสถานะที่ไม่แน่นอน
- Reconciliation รายวันระหว่างระบบต้นทางและปลายทาง
- Alert และ Monitoring เพื่อให้ทีมงานทราบปัญหาก่อนลูกค้า
- Lab: กำหนด Retry, Timeout และ Idempotency Key เพื่อป้องกันรายการซ้ำ และออกแบบกระบวนการ Reconciliation
Section 10: ความปลอดภัยของ API ในระดับที่ BA/SA ต้องเข้าใจ
- Authentication: API Key, Basic Auth, OAuth 2.0 และ JWT ความต่างและกรณีใช้งาน
- Authorization และการกำหนดสิทธิ์ตามบทบาทผู้ใช้
- Rate Limit และ Throttling กับผลต่อการออกแบบ Batch Job
- การเข้ารหัสระหว่างทางและการลงนามข้อมูล (Signature) สำหรับธุรกรรมการเงิน
- ข้อควรระวังตาม PDPA: ข้อมูลใดห้ามส่งผ่าน API และห้ามบันทึกลง Log
Section 11: ข้อกำหนดที่ไม่ใช่ฟังก์ชัน (Non-functional Requirements)
- ปริมาณธุรกรรมสูงสุด เวลาตอบสนองที่ยอมรับได้ และช่วงเวลาให้บริการ
- SLA กับผู้ให้บริการภายนอกและสิ่งที่ต้องระบุในสัญญา
- ความต้องการด้าน Logging และ Audit Trail สำหรับการตรวจสอบย้อนหลัง
Section 12: การวางแผนทดสอบและส่งมอบ
- จำลองระบบปลายทางด้วย Mockoon เพื่อทดสอบก่อนระบบจริงพร้อม
- ออกแบบ Integration Test Case ครอบคลุม Happy Path, Error Path และ Edge Case
- กำหนด Acceptance Criteria ที่วัดผลได้
- Checklist ก่อนขึ้นระบบจริง: Environment, Credential, Firewall และแผนสำรอง
- Lab: สร้าง Mock API ด้วย Mockoon จำลองทั้งกรณีสำเร็จและกรณีล้มเหลว
Section 13: Master Workshop: Integration Requirement ของ NovaRetail
- เขียน API Contract ครบทั้งสามระบบ: ระบบชำระเงิน ระบบบัญชี และระบบแจ้งเตือนลูกค้า
- ประกอบ Sequence Diagram, Error Matrix, Retry และ Idempotency Policy
- ออกแบบกระบวนการ Reconciliation และ Integration Test Case พร้อมเกณฑ์การยอมรับ
- นำเสนอ Integration Requirement Document ต่อกลุ่มเพื่อรับข้อเสนอแนะ
- วิเคราะห์เอกสาร API จากงานจริงของผู้เรียนร่วมกัน (ถ้ามี)