# 05 — Core Workflows Source: proposal §4.2–4.8 (original diagrams in `assets/workflows/`). The proposal gives only the **happy-path main steps**. Detailed states, rejections, loops and SLAs are **[unknown]** and belong to Phase 1. **Detailed review 2026-10-31:** these proposal diagrams remain high-level happy paths. Use [the 162-case review](16-use-case-review-2026-10-31.md) and canonical `wf` decisions for proposed exceptions, optional guardian steps, finance states and R1 clearing scope; the review still needs human confirmation. ## 1. Admission and learner registration (การรับสมัครและขึ้นทะเบียนผู้เรียน) ```mermaid flowchart LR A[สมัคร
Apply] --> B[คัดเลือก
Select] --> C[ยืนยันสิทธิ์
Confirm] --> D[ขึ้นทะเบียน
Register as learner] ``` - Covers both university and sports-school applicants. Selection criteria differ per unit. - Results are announced, then the applicant confirms the offer. - **Admission data flows into the registry without re-entry.** - Sports schools add **มอบตัว** (enrolment with parent) and parent registration (TNSU-02). - Executive mockup tracks applicants against target per level (e.g. campus target 25,000 vs. 28,430 applicants) [mockup]. ## 2. Teaching and learning (การจัดการเรียนการสอน) ```mermaid flowchart LR A[จัดหลักสูตร
Set curriculum & courses] --> B[ลงทะเบียน
Course registration] --> C[เรียน
Teach / attend] --> D[ประเมินผล
Assess & grade] ``` - Links learners, lecturers/teachers and staff, and supports progress tracking. - Registration includes add/drop (ลงทะเบียน / เพิ่ม-ถอน) [mockup]. ## 3. Athlete management (การบริหารจัดการนักกีฬา) ```mermaid flowchart LR A[ลงทะเบียนนักกีฬา
Register athlete] --> B[ฝึกซ้อม
Training] --> C[แข่งขัน
Competition] --> D[ติดตามผล
Track results] ``` - Athlete data is **linked to the learner record**, and applies to both university and school learners. - Coaches plan and track training. Competition participation and results are recorded. ## 4. Dormitory (การบริหารหอพัก) ```mermaid flowchart LR A[จัดสรรห้องพัก
Allocate room] --> B[เข้าพัก
Check in] --> C[ติดตามการเข้า–ออก
Track entry/exit] ``` - The proposal frames this mainly for **sports-school boarding students**. Mockups also show university dorm booking announcements ("เปิดจองหอพักนักศึกษา"). - Parents can see dorm info per permission. ## 5. Finance and scholarships (การเงินและทุนการศึกษา) ```mermaid flowchart LR A[ประเมินค่าใช้จ่าย
Assess fees] --> B[จัดการทุน
Apply scholarship / กยศ.] --> C[ชำระเงิน
Pay] --> D[ตรวจสอบยอด
Verify & reconcile] ``` - Amount payable = fees − scholarship (full or partial) − กยศ. coverage [inferred from "คำนวณยอดชำระคงเหลือ"]. - Payment through PromptPay or credit card via payment gateway. Issue receipt and reconcile. - Learners see their outstanding balance and due date. Parents see fee status (ชำระแล้ว / ยังไม่ได้ชำระ) [mockup]. ## 6. Request and approval (การยื่นคำร้องและอนุมัติ) ```mermaid flowchart LR A[ยื่นคำร้อง
Submit] --> B[ตรวจสอบ
Review docs] --> C[อนุมัติ
Approve by authority chain] --> D[แจ้งผล
Notify result] ``` - Paperless. Status is trackable. Approval follows the university's chain of authority. e-Signature (internal or DGA, by document type). - Statuses seen [mockup]: `รอพิจารณา` (pending), `รอเอกสารเพิ่มเติม` (needs more documents, which loops back to the applicant), `อนุมัติแล้ว` (approved), `ไม่อนุมัติ` (rejected). - Example request types [mockup]: - University: ขอเพิ่มรายวิชา, ขอใบรับรองการเป็นนักศึกษา, ขอลงทะเบียนล่าช้า, ขอเปลี่ยนกลุ่มเรียน, ขอพักการศึกษา - Sports school: ขอหนังสือรับรองนักเรียน, ขออนุญาตแข่งขันกีฬา, ขอเปลี่ยนกลุ่มเรียน, ขอพักอาศัยหอพัก, ขอเข้าร่วมการแข่งขัน - KPIs measure processing time per request type and the on-time rate, so **each request type needs a target duration (SLA)** [inferred]. ## 7. Executive reporting (การรายงานสำหรับผู้บริหาร) ```mermaid flowchart LR A[รวบรวมข้อมูล
Collect from all modules] --> B[ประมวลผล
Process / aggregate] --> C[Dashboard] ``` - Sources: education, athletes, dorms, finance and unit operations. - Compare across units. Drill down by campus, school and period. ## Additional workflows implied by the BA module structure [inferred] These come from function names in the BA chart. Step order and actors are our reading and need BA confirmation. ### 8. Leave and off-campus permission (SS-07, SS-14.3) ```mermaid flowchart LR A[ยื่นคำร้องขอลา/ออกนอกโรงเรียน
Student or parent submits] --> B[ผู้ปกครองยืนยัน
Parent confirms] B --> C[พิจารณาและอนุมัติ
School approves] C --> D[บันทึกการออก
Exit logged] --> E[บันทึกการกลับเข้าโรงเรียน
Return logged] E --> F[ประวัติการลา
History] D -. overdue return .-> G[แจ้งเตือน / ติดตาม
Alert] ``` Ties into SS-06: an approved leave should mark roll call as `ลา` rather than `ขาด`. ### 9. Roll call and missing-student tracking (SS-06) ```mermaid flowchart LR A[ตั้งค่ารอบเช็กชื่อ
Define rounds & types] --> B[เช็กชื่อ
Record per round] B --> C{สถานะ} C -->|มา| OK[Present] C -->|ลา| L[Matched to approved leave] C -->|มาสาย / ขาด| T[Follow-up, maybe notify parent] C -->|ไม่พบตัว| M[Missing-student escalation] ``` ### 10. Dormitory (detailed, SS-05) Buildings → rooms → beds · allocate or move a student to a bed · duty-teacher roster and inspections · occupancy status · maintenance requests (แจ้งซ่อม). ### 11. University course registration (UNI-04 → UNI-05) ```mermaid flowchart LR A[หลักสูตร/โครงสร้าง/แผนการเรียน] --> B[เปิดรายวิชา + กลุ่มเรียน] --> C[ตารางเรียน/สอบ] --> D[รอบลงทะเบียน] D --> E[ลงทะเบียน
check prerequisites] --> F[เพิ่ม/ถอน/เปลี่ยนกลุ่ม] --> G[อนุมัติการลงทะเบียน
e.g. advisor] --> H[Fees billed via UNI-01.1 rates] ``` ### 12. University grading (UNI-06) Configure assessment types and grading schemes → per-course criteria and cut-offs → score entry → review and approve → publish and compute GPA/GPAX → grade-correction requests → graduation audit against the curriculum structure (UNI-04.3). ### 13. Instructor evaluation (UNI-07) Create the form → define the round → choose courses to evaluate → students evaluate → process results. ### 14. Athlete cycle in sports schools (SS-10/11/12, SS-09) Sports, teams and coaches → training plans → training results → fitness and skill tests → development plan; competitions: entry → travel and documents → results and awards → track record. Injuries (SS-09.3) affect training and competition eligibility [inferred]. ## BA flows (confirmed, from the BA draw.io file) These two come from the BA's draw.io source ([ba-drawio.md](ba-drawio.md)), so they are not inferred. They detail UNI-04 (academics and curriculum) and supersede the curriculum part of §11 above. ### 15. Creating a curriculum (Flow โครงสร้างหลักสูตร, swimlane "การสร้างหลักสูตร") ```mermaid flowchart TD A[1. สร้างรายวิชา
Create courses
จัดการรายวิชา UNI-04.4] --> B[2. สร้างหลักสูตร
Create curriculum
จัดการโครงสร้างหลักสูตร UNI-04.3] B --> C[3. กำหนดโครงสร้างหลักสูตร
Define curriculum structure] C --> D[4. เพิ่มรายวิชาเข้าหลักสูตร และจัดการวิชาบังคับก่อน
Add courses, set prerequisites] D --> E[5. แผนการเรียน
Study plan] E --> F[6. เงื่อนไขการสำเร็จการศึกษา
Graduation conditions] ``` - Step 2 note: **ชั้นปี, ภาคเรียน** (the curriculum is laid out by year of study and semester). - Step 5 note: which course should be taken in which term, so the system can tell whether a student is **studying according to the plan** (เรียนตามแผน). - Step 6 note, the conditions **checked at graduation**: credits per course category, compulsory courses that must be passed, GPA/GPAX, internship, thesis, and special conditions such as passing an English test. - Steps 2–6 all belong to the sub-module จัดการโครงสร้างหลักสูตร (UNI-04.3); step 1 to จัดการรายวิชา (UNI-04.4). - Data-model implication [inferred]: course catalogue separate from curriculum; curriculum → structure (categories with credit requirements) → course membership with prerequisites → study plan per year/semester → graduation rule set used by the graduation audit (UNI-06.8, W-06). ### 16. Opening courses for a term (Flow จัดการการเปิดสอน) ```mermaid flowchart TD A[1. เลือกปีการศึกษา ภาคเรียน หลักสูตร
Pick academic year, semester, curriculum] --> B[2. ระบบแสดงรายวิชาจากแผนการเรียนตามชั้นปี ภาคเรียน
System lists courses from the study plan] B --> C[3. เลือกรายวิชาที่ต้องการเปิด
Choose courses to open] C --> D[4. สร้าง Section และระบุรายละเอียด
Create sections] D --> E[5. เปิดรับลงทะเบียนตามช่วงเวลาในปฏิทินการศึกษา
Open registration per the academic calendar] ``` - Section details (step 4): **room, day and time, lecturer, capacity**. - **Cross-listed sections (เรียนรวม):** when one course belongs to several curricula, the section can be shared, ticking which curricula or departments study together. - Step 2 means the study plan from flow 15 drives which courses are proposed for each term. - Maps to UNI-04.8 (จัดการเปิดรายวิชา), UNI-05.1–5.3, and use cases W-100 (offering plan, timetable, sections) and W-49 (registration). ## Lifecycle view (admission → alumni) [inferred] ```mermaid flowchart LR Apply --> Admit --> Register --> Study --> Graduate --> Alumni Register -.-> Athlete Register -.-> Boarding Register -.-> Fees ``` ## Detailed workflows: see the use cases The flows above are summaries. The team's use cases ([12-use-cases.md](12-use-cases.md), catalog in [use-cases/](use-cases/README.md)) give the step-by-step version for 162 workflows, including approvals, SoD rules and edge cases. Good starting points: | Topic | Use cases | |---|---| | Admission (university) | W-69 → W-41 → W-77 → W-42/W-75/W-76 → W-43 → W-74 (clearing) → W-78; appeals W-18 | | Admission (sports school) | W-83 → W-86; internal quota to university W-144 | | Registration and fees | W-100 → W-49 → W-51; add/drop W-50; late W-102; non-payment W-105 | | Grades | W-01; corrections W-02; incomplete W-103; appeals W-16 | | Status changes | W-10, W-11, W-24, W-26 → cascade W-133 | | Graduation | W-06 → W-64; documents W-58; verification W-67 | | Dorm and leave (sports school) | W-86, W-13 (LeavePass), W-90 (roll call) | | Athletes | W-04 / W-114 (competition leave), W-30, W-31, W-39, W-152 | | Safeguarding | W-22, W-149, W-155, W-23 |