Vẽ sơ đồ kiến trúc mà cả công ty - từ sếp tới dev - đều hiểu, bằng C4 Model (Simon Brown): bốn mức zoom Context - Container - Component - Code, ký pháp (notation) để sơ đồ tự đứng vững, và diagrams as code với Structurizr/PlantUML/Mermaid. Vẽ một lần, mọi người cùng hiểu.
13 bài ~280 phút Đã xuất bản
Học xong mèo con làm được gì?
- Vẽ được sơ đồ kiến trúc mà cả công ty, từ sếp tới dev, đều hiểu như nhau.
- Truyền đạt hệ thống ở nhiều mức zoom: Context → Container → Component.
- Viết sơ đồ bằng code (Mermaid/Structurizr) để bản vẽ luôn khớp với hệ thống.
- Tạo tài liệu kỹ thuật chuyên nghiệp cho dự án và cho buổi phỏng vấn.
Lộ trình học
- 1 Vì sao sơ đồ kiến trúc gây rối Thực trạng bản vẽ kiến trúc: hộp & mũi tên tuỳ hứng, thiếu chú giải, trộn nhiều mức trừu tượng. C4 Model là gì: bản đồ hệ thống ở nhiều mức zoom (Simon Brown). Cơ bản · 16′
- 2 Mô hình vs sơ đồ: 4 khái niệm Bốn khái niệm nền của C4: Person, Software System, Container, Component (và Code); phân biệt MÔ HÌNH (model) với SƠ ĐỒ (diagram) - một mô hình, nhiều view. Cơ bản · 18′
- 3 Level 1: System Context Sơ đồ ngữ cảnh hệ thống (System Context): hệ thống ở trung tâm, người dùng (persona) & hệ thống ngoài bao quanh - bức tranh lớn cho khán giả non-technical. Cơ bản · 18′
- 4 Level 2: Container Sơ đồ container: web app, mobile app, API, database, message bus - mỗi container là một đơn vị chạy/triển khai riêng (KHÔNG phải Docker container). Vận dụng · 22′
- 5 Level 3: Component Zoom vào MỘT container thành các component (controller, service, repository) - nhóm chức năng liên quan; khi nào nên vẽ và khi nào bỏ qua để sơ đồ khỏi lạc hậu. Vận dụng · 20′
- 6 Level 4 & sơ đồ bổ trợ Level 4 (Code) bằng sơ đồ lớp UML - thường tự sinh hoặc bỏ qua; và ba sơ đồ bổ trợ: System Landscape, Dynamic (luồng chạy), Deployment (ánh xạ hạ tầng). Vận dụng · 20′
- 7 Ký pháp & sơ đồ tự đứng vững Ký pháp (notation) đề xuất của C4: mỗi hộp ghi tên/loại/công nghệ/mô tả; quan hệ có nhãn & hướng rõ; tiêu đề + chú giải (legend) để sơ đồ tự đứng vững. Vận dụng · 20′
- 8 Diagrams as code Viết mô hình bằng code thay vì kéo-thả: Structurizr DSL (một model sinh nhiều view), C4-PlantUML và Mermaid C4 - để sơ đồ luôn khớp hệ thống, version cùng Git. Vận dụng · 22′
- 9 Giao tiếp đúng khán giả Chọn mức zoom theo người nghe: business đọc Context, tech lead đọc Container, dev đọc Component, ops đọc Deployment - kể chuyện kiến trúc cho từng phòng ban. Vận dụng · 18′
- 10 Dự án: mô hình hoá 3 hệ thống Dự án tổng hợp: dựng mô hình C4 cho ba hệ thống - ví điện tử, app đặt đồ ăn, nền tảng học trực tuyến - vẽ đủ Context → Container → Component. Nâng cao · 30′
- 11 Tài liệu sống cùng repo Mở rộng - docs-as-code: lưu tài liệu C4 + BA cạnh mã nguồn (docs/, Markdown + Mermaid, ADR), version & review qua Git/PR - một nguồn sự thật cho cả team. Vận dụng · 22′
- 12 Dùng AI dựng tài liệu C4 & BA Mở rộng - dùng AI (Claude/Claude Code) sinh nháp sơ đồ C4 (Mermaid) từ mô tả/codebase, soạn tài liệu BA (user story, acceptance criteria) kèm KIỂM CHỨNG. Vận dụng · 24′
- 13 Dự án: quy trình tài liệu CEO → DEV Mở rộng - dự án: dựng quy trình tài liệu trong repo, từ ý tưởng (CEO/Sales) → BA (user story + C4 Context) → PO/PM (backlog) → DEV, docs-as-code + AI. Nâng cao · 30′
Sắp bắt tay vào dự án thật?
Tên miền, VPS, hosting để đưa sản phẩm lên mạng - chọn ở trang Ưu đãi. Mua qua link là góp thêm “cá” nuôi Mèo, bạn không tốn thêm.