[Buổi 31][Củng cố OOP nâng cao][Lab] Bài 2: Final Feature Gate
Final Feature Gate
Bối cảnh
Final Design Review cần phân loại backlog thành CORE/OPTIONAL/LATER.
Core phải hoàn tất trước Demo Day; bài này mô phỏng feature gate.
Yêu cầu
- Đọc n feature với
name priority status. - Chỉ feature
CORE DONEđược tính hoàn thành core. - In
READYnếu mọi CORE đều DONE; ngược lạiNOT_READY missingCount. - OPTIONAL/LATER không ảnh hưởng readiness.
Input
Dòng 1 n; n dòng name priority status.
Output
Một dòng.
Ràng buộc
1≤n≤1000; priority CORE/OPTIONAL/LATER; status DONE/TODO.
Ví dụ 1
Input
4
Login CORE DONE
Report CORE TODO
Theme OPTIONAL TODO
Export LATER TODO
Output
NOT_READY 1
Giải thích
Có bốn feature nhưng chỉ CORE ảnh hưởng readiness. Login CORE DONE đạt, Report CORE TODO chưa đạt nên còn đúng1 core blocker. Theme OPTIONAL và Export LATER không làm fail gate. Vì vậy output NOT_READY 1.
Mẫu này kiểm tra pipeline ở mức tích hợp: input đi qua validation, chọn runtime behavior, cập nhật aggregate rồi mới sinh output. Nếu một bước thất bại, fallback/ERROR phải đúng contract và các summary phía sau không được tính nhầm dữ liệu lỗi. Vì vậy trace mẫu chính là kiểm tra invariant xuyên suốt workflow.
Ví dụ 2
Input
2
A CORE DONE
B CORE DONE
Output
READY
Giải thích
Hai feature A,B đều CORE và đều DONE. Không còn blocker nào nên gate chuyển sang READY. Ví dụ kiểm tra rule chỉ phụ thuộc trạng thái của nhóm CORE.
Mẫu này kiểm tra pipeline ở mức tích hợp: input đi qua validation, chọn runtime behavior, cập nhật aggregate rồi mới sinh output. Nếu một bước thất bại, fallback/ERROR phải đúng contract và các summary phía sau không được tính nhầm dữ liệu lỗi. Vì vậy trace mẫu chính là kiểm tra invariant xuyên suốt workflow.
Thông tin học tập
- Module: M08
- Buổi: B31
- Loại bài: LAB
- Độ khó: Medium
- Concepts: final design review, core optional backlog, feature freeze, prioritization
- Giới hạn kiến thức: B01-B31
- Time limit: 1 second(s)
- Memory limit: 256 MB
- Point: 100
Comments