Feature List - ระบบแจ้งเตือนการนัดหมาย
หมายเหตุ: ชั่วโมงที่ระบุในเอกสารนี้ยังไม่ได้คำนวณรวม Complexity Factor และ Skill Factor เข้าไป
ภาพรวมโครงการ
- งบประมาณ: 250,000 บาท
- ระยะเวลา: 120 วัน
- Platform: Back Office Web + LINE OA Integration
1. Back Office Web Application
1.1 Module: User Management (ระบบบริหารการจัดการผู้ใช้งาน)
1.1.1 Feature: User Profile Management
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| สร้าง/แก้ไข/ลบข้อมูลผู้ใช้งาน (ชื่อผู้ใช้, รหัส, ชื่อ-สกุล, เบอร์, หน่วยงาน) | 2 | 2 | 4 | 8 | 8 | 6 | 2.8 | 3.2.1 | CRUD พื้นฐาน |
| ระบบจัดการสิทธิผู้ใช้งาน (ผู้ดูแลระบบ, หัวหน้างาน, ผู้ปฏิบัติงาน) | 2 | 3 | 5 | 10 | 10 | 7.5 | 3.55 | 3.2.2 | Role-based access control |
| ระบบอนุมัติและยกเลิกผู้ใช้งาน | 2 | 2 | 4 | 8 | 8 | 6 | 2.8 | 3.2.3 | Approval workflow |
| ระบบร้องขอรหัสผ่านใหม่ | 2 | 2 | 4 | 8 | 6 | 5.25 | 2.525 | 3.2.4 | Password reset flow |
| บันทึก Activity Log (บันทึกผล, ลบข้อมูล, พิมพ์รายงาน) | 2 | 2 | 3 | 8 | 6 | 5.25 | 2.425 | 3.2.5 | Audit trail |
รวม User Management: SA: 11h, UI: 20h, BE: 42h, FE: 38h, TE: 30h, PM: 14.1h
1.2 Module: Patient Registration Management (ระบบบริหารจัดการลงทะเบียนผู้ป่วย)
1.2.1 Feature: Patient LINE OA Registration
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| ระบบลงทะเบียนผ่าน LINE OA | 3 | 4 | 6 | 16 | 12 | 10.5 | 4.85 | 3.3.1 | LINE Messaging API integration |
| เชื่อมต่อข้อมูล HIS (HN, รหัสบัตร, วันเกิด, เบอร์, ชื่อ) | 3 | 5 | 0 | 20 | 0 | 7.5 | 3.25 | 3.3.3, 3.7.1 | Database integration |
| ระบบจับคู่ LINE User กับ HN | 2 | 3 | 4 | 12 | 8 | 7.5 | 3.45 | 3.3.2 | Linking mechanism |
1.2.2 Feature: Patient Data Management
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| แสดง/ค้นหาข้อมูลผู้ป่วยที่ลงทะเบียน | 1 | 2 | 4 | 8 | 8 | 6 | 2.8 | 3.3.4 | List/Search UI |
| จัดการการตั้งค่ารับ/ไม่รับการแจ้งเตือน | 2 | 2 | 4 | 8 | 8 | 6 | 2.8 | 3.3.5 | Notification preference |
| อัปเดตข้อมูลผู้ป่วย | 1 | 1 | 3 | 6 | 6 | 4.5 | 2.05 | 3.3.4 | Update operation |
รวม Patient Registration: SA: 17h, UI: 21h, BE: 70h, FE: 42h, TE: 42h, PM: 19.2h
1.3 Module: Appointment Management (ระบบบริหารจัดการนัดหมาย)
1.3.1 Feature: Notification Configuration
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| กำหนดระยะการแจ้งเตือน (เช่น 1 วันก่อน) | 2 | 2 | 4 | 8 | 8 | 6 | 2.8 | 3.4.1 | Config interface |
| กำหนดช่วงเวลาแจ้งเตือน (เช่น 09:00) | 2 | 2 | 4 | 8 | 8 | 6 | 2.8 | 3.4.2 | Time scheduling |
| กำหนดกลุ่มการแจ้งเตือน (US, MG, etc.) | 2 | 3 | 5 | 10 | 10 | 7.5 | 3.55 | 3.4.3 | Category management |
| กำหนดรูปแบบข้อความแต่ละกลุ่ม | 2 | 2 | 5 | 8 | 10 | 6.75 | 3.175 | 3.4.4 | Template editor |
| ตั้งเวลาดึงข้อมูลนัดหมายจาก HIS | 2 | 3 | 4 | 12 | 6 | 6.75 | 3.175 | 3.4.5 | Scheduler configuration |
1.3.2 Feature: Appointment Data Sync
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| ดึงข้อมูลนัดหมายจาก HIS/RIS/LIS | 3 | 6 | 0 | 24 | 0 | 9 | 3.9 | 3.7.2 | Database integration |
| แสดงรายการนัดหมายทั้งหมด | 1 | 2 | 4 | 8 | 8 | 6 | 2.8 | - | List view |
| ค้นหา/กรองนัดหมาย (วันที่, ประเภท, แพทย์) | 2 | 2 | 5 | 10 | 10 | 7.5 | 3.45 | - | Advanced filtering |
| จัดการนัดหมาย (เพิ่ม/แก้ไข/ยกเลิก) | 2 | 2 | 5 | 10 | 10 | 7.5 | 3.45 | - | Manual override |
รวม Appointment Management: SA: 24h, UI: 36h, BE: 98h, FE: 70h, TE: 63h, PM: 29.1h
1.4 Module: Notification System (ระบบการแจ้งเตือนและติดตาม)
1.4.1 Feature: Notification Sending
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| ส่งข้อความแจ้งเตือนอัตโนมัติตาม Schedule | 3 | 4 | 0 | 20 | 0 | 7.5 | 3.15 | 3.5.1 | Cron job + LINE API |
| ส่งข้อความแบบตอบกลับ (ยืนยัน/ยกเลิก) | 3 | 5 | 8 | 24 | 16 | 15 | 6.8 | 3.5.1 | Interactive message |
| ส่งข้อความแบบกลุ่มตามเงื่อนไข | 2 | 3 | 5 | 12 | 10 | 8.25 | 3.825 | 3.5.4 | Broadcast with filters |
| ส่งข้อความเร่งด่วนเฉพาะบุคคล | 1 | 2 | 4 | 8 | 8 | 6 | 2.8 | 3.5.4 | Manual send |
1.4.2 Feature: Notification Tracking
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| บันทึกสถานะการส่งข้อความ | 2 | 2 | 0 | 8 | 0 | 3 | 1.3 | 3.5.2 | Delivery log |
| บันทึกการตอบกลับของผู้ป่วย | 2 | 2 | 0 | 10 | 0 | 3.75 | 1.575 | 3.5.3 | Response log |
| แสดงประวัติการแจ้งเตือน | 2 | 2 | 5 | 10 | 10 | 7.5 | 3.45 | - | History view |
| Dashboard สถานะการส่ง (ส่งแล้ว/รอส่ง/ล้มเหลว) | 2 | 3 | 6 | 12 | 12 | 9 | 4.2 | - | Monitoring dashboard |
รวม Notification System: SA: 23h, UI: 28h, BE: 104h, FE: 56h, TE: 60h, PM: 27.1h
1.5 Module: Reporting System (ระบบรายงานผล)
1.5.1 Feature: Statistical Reports
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| รายงานจำนวนผู้เข้ารับบริการ (รายวัน/เดือน/ปี) | 2 | 3 | 6 | 12 | 12 | 9 | 4.2 | 3.6.1 | Time-based report |
| รายงานตามกลุ่ม (อายุ/เพศ/ประเภทบริการ) | 2 | 3 | 6 | 12 | 12 | 9 | 4.2 | 3.6.2 | Demographic report |
| รายงานผู้ป่วยนัด vs ไม่ได้นัด | 2 | 2 | 5 | 10 | 10 | 7.5 | 3.45 | 3.6.3 | Comparison report |
| Export ข้อมูลเป็น Excel | 2 | 1 | 2 | 8 | 4 | 4.5 | 1.95 | 3.6.4 | Export functionality |
รวม Reporting System: SA: 9h, UI: 19h, BE: 42h, FE: 38h, TE: 30h, PM: 13.8h
1.6 Module: System Configuration (ระบบตั้งค่า)
1.6.1 Feature: LINE OA Configuration
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| กำหนดค่า LINE Channel Access Token | 2 | 2 | 4 | 8 | 6 | 5.25 | 2.525 | - | LINE API setup |
| กำหนดค่า Webhook URL | 2 | 2 | 3 | 8 | 6 | 5.25 | 2.425 | - | Webhook configuration |
| ทดสอบการเชื่อมต่อ LINE OA | 1 | 1 | 3 | 6 | 6 | 4.5 | 2.05 | - | Connection test |
1.6.2 Feature: HIS Integration Configuration
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| กำหนดค่าการเชื่อมต่อ Database HIS | 3 | 4 | 4 | 16 | 8 | 9 | 4.1 | 3.1.6, 3.7 | DB connection config |
| Mapping ฟิลด์ข้อมูล HIS | 2 | 3 | 5 | 12 | 10 | 8.25 | 3.825 | 3.7.1, 3.7.2 | Field mapping |
| ทดสอบการดึงข้อมูล | 1 | 1 | 3 | 6 | 6 | 4.5 | 2.05 | - | Data sync test |
1.6.3 Feature: System Settings
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| กำหนดค่าทั่วไป (ชื่อโรงพยาบาล, โลโก้) | 1 | 1 | 3 | 4 | 4 | 3 | 1.5 | - | Basic settings |
| จัดการ Backup & Restore | 2 | 2 | 4 | 12 | 6 | 6.75 | 3.075 | - | Data backup |
รวม System Configuration: SA: 16h, UI: 29h, BE: 72h, FE: 52h, TE: 46.5h, PM: 21.55h
2. Front Office (LINE OA Bot)
2.1 Module: Patient LINE OA Interface
2.1.1 Feature: Registration Flow
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| Rich Menu สำหรับลงทะเบียน | 2 | 2 | 4 | 6 | 0 | 2.25 | 1.425 | 3.3.1 | LINE Rich Menu |
| Flex Message แบบฟอร์มลงทะเบียน | 2 | 2 | 6 | 10 | 0 | 3.75 | 2.175 | 3.3.2 | LINE Flex Message |
| ตรวจสอบข้อมูลกับ HIS | 2 | 1 | 0 | 8 | 0 | 3 | 1.2 | 3.3.3 | Verification |
| ยืนยันการลงทะเบียนสำเร็จ | 1 | 1 | 2 | 4 | 0 | 1.5 | 0.85 | - | Success message |
2.1.2 Feature: Appointment Notification
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| รับข้อความแจ้งเตือนนัดหมาย | 2 | 2 | 4 | 8 | 0 | 3 | 1.7 | 3.5.1 | Push message |
| แสดง Flex Message ข้อมูลนัด | 2 | 2 | 6 | 8 | 0 | 3 | 1.9 | - | Appointment card |
| Quick Reply ยืนยัน/เลื่อน/ยกเลิก | 3 | 3 | 6 | 16 | 0 | 6 | 3.1 | 3.5.1 | Interactive buttons |
| แสดงข้อความตอบกลับ | 1 | 1 | 3 | 6 | 0 | 2.25 | 1.225 | - | Confirmation message |
2.1.3 Feature: Appointment History
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| ดูประวัตินัดหมายของตัวเอง | 2 | 2 | 5 | 10 | 0 | 3.75 | 2.075 | - | History view |
| ดูรายละเอียดนัดหมาย | 1 | 1 | 3 | 6 | 0 | 2.25 | 1.225 | - | Detail view |
2.1.4 Feature: Settings & Help
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| เปิด/ปิดการแจ้งเตือน | 1 | 1 | 3 | 6 | 0 | 2.25 | 1.225 | 3.3.5 | Notification toggle |
| แสดงคู่มือการใช้งาน | 1 | 1 | 2 | 4 | 0 | 1.5 | 0.85 | - | Help content |
| ติดต่อเจ้าหน้าที่ | 1 | 1 | 2 | 4 | 0 | 1.5 | 0.85 | - | Contact info |
รวม LINE OA Interface: SA: 20h, UI: 46h, BE: 96h, FE: 0h, TE: 36h, PM: 19.8h
3. Infrastructure & Deployment
3.1 Module: Server Setup & Deployment
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| ติดตั้งระบบบน Windows Server | 2 | 4 | 0 | 16 | 0 | 6 | 2.6 | 3.1.7 | Server setup |
| กำหนดค่า Database (SQL Server) | 2 | 3 | 0 | 12 | 0 | 4.5 | 1.95 | - | DB installation |
| Setup SSL Certificate | 1 | 2 | 0 | 6 | 0 | 2.25 | 1.025 | - | Security |
| Deploy Web Application | 2 | 2 | 0 | 12 | 8 | 7.5 | 2.95 | - | Deployment |
| Setup Scheduler Service | 2 | 2 | 0 | 10 | 0 | 3.75 | 1.575 | - | Background jobs |
รวม Infrastructure: SA: 13h, UI: 0h, BE: 56h, FE: 8h, TE: 24h, PM: 10.1h
4. Training & Documentation
4.1 Module: User Training & Support
| Function/Detail | ความซับซ้อน | SA | UI | BE | FE | TE | PM | Reference | Note |
|---|---|---|---|---|---|---|---|---|---|
| จัดทำคู่มือการใช้งาน (ภาษาไทย) | 1 | 8 | 0 | 0 | 0 | 0 | 2 | 6.1 | User manual |
| อบรมการใช้งาน Back Office | 1 | 0 | 0 | 0 | 0 | 0 | 8 | 6.1 | Training session |
| อบรมการเชื่อมต่อ HIS/RIS/LIS | 1 | 0 | 0 | 0 | 0 | 0 | 4 | 6.2 | Technical training |
| Support หลังติดตั้ง (120 วัน) | 1 | 0 | 0 | 24 | 0 | 0 | 16 | 6.3 | Maintenance |
รวม Training: SA: 8h, UI: 0h, BE: 24h, FE: 0h, TE: 0h, PM: 30h
สรุปภาพรวมโครงการ
Summary by Role
| Module | SA | UI | BE | FE | TE | PM | Total |
|---|---|---|---|---|---|---|---|
| User Management | 11 | 20 | 42 | 38 | 30 | 14.1 | 155.1 |
| Patient Registration | 17 | 21 | 70 | 42 | 42 | 19.2 | 211.2 |
| Appointment Management | 24 | 36 | 98 | 70 | 63 | 29.1 | 320.1 |
| Notification System | 23 | 28 | 104 | 56 | 60 | 27.1 | 298.1 |
| Reporting System | 9 | 19 | 42 | 38 | 30 | 13.8 | 151.8 |
| System Configuration | 16 | 29 | 72 | 52 | 46.5 | 21.55 | 237.05 |
| LINE OA Interface | 20 | 46 | 96 | 0 | 36 | 19.8 | 217.8 |
| Infrastructure | 13 | 0 | 56 | 8 | 24 | 10.1 | 111.1 |
| Training & Documentation | 8 | 0 | 24 | 0 | 0 | 30 | 62 |
| รวมทั้งหมด (ชั่วโมง) | 141 | 199 | 604 | 304 | 331.5 | 184.65 | 1,764.15 |
| รวมทั้งหมด (วัน) | 17.6 | 24.9 | 75.5 | 38 | 41.4 | 23.1 | 220.5 |
ประมาณการอัตราค่าจ้าง (สมมุติฐาน)
| ตำแหน่ง | อัตราต่อวัน (บาท) | จำนวนวัน | รวม (บาท) |
|---|---|---|---|
| SA (System Analyst) | 1,000 | 17.6 | 17,600 |
| UI (UI/UX Designer) | 1,000 | 24.9 | 24,900 |
| BE (Backend Developer) | 1,750 | 75.5 | 132,125 |
| FE (Frontend Developer) | 1,750 | 38 | 66,500 |
| TE (Tester/QA) | 750 | 41.4 | 31,050 |
| PM (Project Manager) | 1,000 | 23.1 | 23,100 |
| รวมค่าแรง | 295,275 |
หมายเหตุ
- งบประมาณโครงการ: 250,000 บาท
- ประมาณการค่าใช้จ่าย: ~295,275 บาท (เกินงบ ~18%)
- ข้อเสนอแนะ:
- ควรเจรจาปรับขอบเขตงาน หรือลดความซับซ้อนบางส่วน
- พิจารณาใช้ Template/Framework สำเร็จรูปเพื่อลดเวลาพัฒนา
- ลดฟีเจอร์ที่ไม่จำเป็น (Nice to have) ออกจาก Phase 1
- หรือเพิ่มงบประมาณเป็น 300,000-350,000 บาท
แนะนำการปรับแผน
เพื่อให้อยู่ในงบประมาณ 250,000 บาท แนะนำให้: 1. ใช้ LINE OA Template ที่มีอยู่แล้วแทนการพัฒนาเอง (ลด BE ~30h) 2. ใช้ Dashboard Template สำเร็จรูป (ลด UI ~20h, FE ~30h) 3. ลดฟีเจอร์ที่ไม่จำเป็นเพิ่มเติม (เช่น Advanced Reporting) 4. ทำ Phase 1 เฉพาะฟีเจอร์หลัก, Phase 2 ทำ Advanced Features
ระยะเวลาดำเนินการ
- Timeline: ~2.7 เดือน (ตาม TOR: 120 วัน มีเวลาเหลือเผื่อ ~40 วัน)
- ความเป็นไปได้: เป็นไปได้หากมีทีมงานครบ 6 คน และทำงานแบบ Parallel
- Risk: Timeline มีความเป็นไปได้สูง แนะนำบัฟเฟอร์เวลา 10-15%