1. Định nghĩa:
2. Mục đích sử dụng:
Xây dựng sản phẩm phần mềm bền vững, đáng tin cậy.
Phát triển kỹ năng chuyên môn và văn hóa trách nhiệm trong team.
Giảm technical debt và tăng tính maintainability.
3. Các bước áp dụng và ví dụ thực tiễn:
Bối cảnh: Một công ty SaaS mở rộng nhanh, technical debt tăng mạnh.
Bước 1: Áp dụng nguyên tắc clean code và SOLID.
Bước 2: Thực hiện code reviews, pair programming.
Bước 3: Duy trì refactoring liên tục trong backlog.
Bước 4: Áp dụng TDD và automation tests.
Bước 5: Xây dựng văn hóa tự hào về sản phẩm và codebase.
4. Lưu ý thực tiễn:
Craftsmanship không chỉ là kỹ thuật mà còn là mindset.
Cần PO và Scrum Master hỗ trợ để allocate time cho refactoring.
Không nên hy sinh craftsmanship chỉ để chạy theo velocity.
5. Ví dụ minh họa:
Cơ bản: Code sạch, có comments rõ ràng, unit tests đầy đủ.
Nâng cao: Áp dụng domain-driven design (DDD) và continuous refactoring.
6. Case Study Mini:
Tình huống: Một công ty fintech có sản phẩm ổn định nhưng khó mở rộng do codebase messy.
Giải pháp: Thúc đẩy Agile software craftsmanship (clean code + refactoring).
Kết quả: Technical debt giảm 40% trong 6 tháng, velocity cải thiện.
7. Câu hỏi kiểm tra nhanh (Quick Quiz):
Agile software craftsmanship nhấn mạnh điều gì?
a. Viết code chất lượng cao, có trách nhiệm ←
b. Chỉ tập trung vào tốc độ release
c. QA chịu trách nhiệm toàn bộ về chất lượng
d. Không cần refactoring nếu code chạy được
8. Câu hỏi tình huống (Scenario-Based Question):
Bạn là Developer. Khi thấy một module code phức tạp, khó maintain, bạn sẽ áp dụng thực hành craftsmanship nào (ví dụ: refactoring, viết thêm unit tests, áp dụng design pattern)?
9. Vì sao bạn nên quan tâm đến khái niệm này:
Phần mềm không chỉ cần chạy được, mà còn phải dễ bảo trì và mở rộng.
Craftsmanship giúp tạo lợi thế cạnh tranh lâu dài.
Là yếu tố cốt lõi trong Agile Manifesto extension (“Craftsmanship over Crap”).
10. Ứng dụng thực tế trong công việc:
Developer: áp dụng clean code, TDD, refactoring.
QA: kết hợp automation để đảm bảo maintainability.
Scrum Master: bảo vệ thời gian cho technical excellence.
PO: cân bằng giữa features và quality improvements.
11. Sai lầm phổ biến khi triển khai:
Nghĩ craftsmanship chỉ là “đẹp code”.
Hy sinh craftsmanship để chạy theo deadline.
Không đo lường technical debt và maintainability.
12. Đối tượng áp dụng:
Developer, QA, Scrum Master, Product Owner, Security Champion.
13. Giới thiệu đơn giản dễ hiểu:
Agile software craftsmanship giống như “người thợ thủ công lành nghề” – không chỉ làm ra sản phẩm chạy được, mà còn đẹp, bền và đáng tự hào.
14. Câu hỏi thường gặp (FAQ):
Q1 → Craftsmanship khác gì Agile coding thông thường?
Agile coding tập trung vào speed, craftsmanship nhấn mạnh vào quality & responsibility.
Q2 → Có framework nào phổ biến?
Clean Code (Robert C. Martin), Software Craftsmanship Manifesto.
Q3 → Có cần training cho team không?
Có, để đồng bộ mindset.
Q4 → Startup nhỏ có cần không?
Có, để tránh technical debt khi scale.
Q5 → Có đo lường được không?
Có, qua metrics: technical debt ratio, maintainability index.
15. Gợi ý hỗ trợ:
Gửi email: nexus@fmit.vn
Hỏi AI FMIT - Trợ lý AI chuyên gia về quản trị và ra quyết định
© Bản quyền thuộc về Viện FMIT – Từ điển quản trị chuẩn mực quốc tế