"Quy tắc 90-90" trong phát triển phần mềm
Published on: June 18, 2026
Last updated: August 10, 2026 Xem trên toàn màn hình
Last updated: August 10, 2026 Xem trên toàn màn hình
- 06 Feb 2024
Bài toán Trolley Problem: Hi sinh thiểu số để cứu đa số? 390/704 - 18 Jul 2020
Lợi ích cận biên (Marginal Utility) là gì? Qui luật lợi ích cận biên giảm dần 299/1246 - 22 May 2022
Tư duy ngoài hộp (Thinking out of box) là gì? Tại sao quan trọng với sự phát triển của doanh nghiệp? 217/805 - 10 May 2021
Phát triển Phần mềm Tinh gọn (Lean Software Development) 216/462 - 08 Feb 2021
Quy trình nâng cấp phần mềm quản trị doanh nghiệp ERP 207/469 - 03 May 2022
Mô hình Hybrid Agile là gì? 203/783 - 01 Aug 2023
Phân tích yêu cầu phần mềm sẽ nhìn vào thực trạng (AS-IS) hay tương lai (TO-BE)? 199/825 - 03 Mar 2020
Giả định (Assumption ) là gì? Tại sao giả định rất quan trọng với dự án? 190/840 - 17 Oct 2025
Hồ sơ quyết toán và hồ sơ kiểm toán là gì? 185/237 - 20 Jul 2021
Quản lý và đánh giá công việc theo quy trình TIGO SmartWork 184/642 - 18 Mar 2021
Kỹ thuật ước lượng dự án phần mềm linh hoạt dựa vào Story Point - phương pháp T-Shirt Sizing 182/845 - 30 Jan 2026
Vượt qua cơn bão sa thải nhân viên công nghệ: Những đêm thức trắng, phần mềm bị lỗi và hội chứng kẻ giả mạo (Impostor Syndrome) 178/217 - 07 Feb 2024
Vì sao Scrum Team thường bị Spillover / Carry Over? 175/205 - 15 Mar 2024
SDLC là gì? So sánh với Full-Cycle Software Development 175/234 - 22 Jul 2020
Quản lý dự án phần mềm trong thực tế và câu chuyện thành công của InfoSys 174/368 - 20 Feb 2024
Hệ thống ticket (Ticketing System) là gì? 173/266 - 14 Dec 2022
Phương pháp kiểm tra Fagan Inspection là gì? 170/381 - 07 Feb 2024
Thất bại của nhóm Scrum - Phân loại các mô hình phản tác dụng trong Scrum (Scrum Anti-Patterns) 165/215 - 04 Feb 2024
“Nợ kỹ thuật” (technical debt) là gì? 164/233 - 14 Apr 2019
Product Backlog là gì? Các đặc điểm cơ bản của một Product Backlog 163/640 - 21 Apr 2020
Bảo trì phần mềm là gì? Phân biệt các loại bảo trì 160/538 - 16 Apr 2025
Lãnh đạo linh hoạt: Hành động (Bias for Action) hay không hành động (Non-Action)? 159/244 - 10 Aug 2020
Bạn có biết quy tắc thất bại nhanh: Fail early, fail often, fail cheap, but always fail forward 158/333 - 11 Dec 2025
Phần mềm cho SMEs: Vì sao “Best-Fit” lên ngôi và “Best-of-Breed” dần lỗi thời 158/218 - 24 Mar 2019
Scrum giống như bà mẹ chồng, giúp bạn nhìn ra các lỗi sai 158/514 - 02 Aug 2023
Tổng hợp một số project tham khảo khi xây dựng các ứng dụng theo mô hình Microservices 155/685 - 04 May 2025
Bí quyết nói tiếng Anh lưu loát không cần giỏi 4 kỹ năng văn vở 154/216 - 11 Dec 2025
Vì Sao Hệ Thống Báo Cáo Trong Phần Mềm Kế Toán Luôn Được Đánh Giá Là Khó Nhất? 153/173 - 17 Feb 2026
Giá trị con người nằm ở đâu trong thời đại AI và Robot? 151/181 - 10 Sep 2025
Học Tài Thi Phận Là Gì? Cần Làm Gì Để Vượt Qua May Rủi? 150/191 - 28 Jun 2024
Tại sao các kỹ sư IT giỏi nhất lại là những người theo thuyết bất khả tri về công nghệ (technology agnostics)? 149/595 - 02 Oct 2023
Ngôi Chùa Trăm Năm và Viên Gạch Vỡ: Bài Học Thấm Thía Về Lỗi Nhỏ Trong Bức Tranh Lớn 147/503 - 25 Mar 2026
Trí tuệ nhân tạo (AI) đang khiến phần mềm trở nên rẻ và ít giá trị hơn. Sự thật là gì? 146/171 - 19 Feb 2026
Trí tuệ nhân tạo (AI) không tạo ra tương lai… mà đang tái thiết thời Trung cổ 145/168 - 09 May 2023
Hiện tượng "Tang Ping" (thảng bình) – Nằm Phẳng hay "Vô Vi" thời hiện đại? 142/317 - 04 Jan 2023
Phát triển phần mềm linh hoạt theo mô hình Big Bang 141/966 - 12 May 2024
Groan Zone là gì? Khi mọi quan điểm va chạm, đâu là cách biến Groan Zone thành động lực đổi mới? 141/197 - 16 Aug 2025
Hoài nghi khoa học với 20 thuật ngữ bi quan về hiệu quả của Scrum 141/201 - 15 Mar 2024
Tê liệt vì suy nghĩ quá nhiều (Analysis Paralysis) là gì? 140/478 - 16 May 2024
Nghịch lý Allais: Khi con người không “lý trí” như kinh tế học tưởng 137/311 - 10 Sep 2024
Tại sao những thứ chúng ta muốn lại ít khi có được? 135/390 - 15 Apr 2023
Nghịch lý từ câu chuyện “một chén gạo dưỡng ơn, một đấu gạo gây thù” 134/1010 - 02 Aug 2021
Product Owner làm gì trước khi bắt đầu sprint đầu tiên của dự án (Sprint Zero)? 134/529 - 01 Sep 2023
Định luật Goodhart và định luật Campbell - Nghịch lý về thành tích 131/344 - 25 Nov 2025
Vì sao "parasocial" được từ điển Cambridge bình chọn là từ nổi bật năm 2025? 131/248 - 05 Sep 2025
“Lời Khuyên”: Thuận lý thì ít, nghịch lý thì nhiều. Suy nghĩ không giống nhau thì không nên khuyên nhau. 128/232 - 01 May 2025
Vì Sao Các Cửa Hàng Trung Quốc Không Vội Vã Phục Vụ Khách Hàng? 126/222 - 02 May 2025
Vì sao học giỏi mà vẫn nghèo, học dốt lại thành đạt trong cuộc sống? 126/213 - 25 Jun 2023
Sự trỗi dậy của "bai lan": Tại sao giới trẻ Trung Quốc chán nản lại chọn cách “mặc kệ, cho thối rữa luôn” 126/278 - 02 May 2024
"Viên đạn bọc đường" là gì? Làm sao để nhận diện "viên đạn bọc đường"? 124/630 - 09 May 2025
Funemployment (Thất Nghiệp Vui Vẻ): Lựa Chọn Sống Chậm Giữa Áp Lực 119/255 - 14 Dec 2024
ERP có thực sự “thông minh” nếu COA chưa được chuẩn hóa? 114/204 - 11 Sep 2020
Nghịch lý kinh doanh tại Mỹ: Chăm sóc khách hàng không tốt, nhưng công ty lại lãi lớn 111/330 - 16 Feb 2024
Nghịch lý của sự hoàn hảo: AI có thể quá tốt để sử dụng? 109/347 - 06 Dec 2025
Sức mạnh của phương pháp 30-for-30: Bạn đã bao giờ cam kết 30 ngày liên tục cho một mục tiêu? 109/164 - 18 Sep 2025
Bị sa thải sau 25 năm làm việc trong lĩnh vực công nghệ: Nỗi lo lắng, sự hy sinh và thực tế mà không ai dám nhắc đến 108/167 - 15 Aug 2025
Dự án phần mềm bị trì hoãn và vấn đề "akrasia" 102/196 - 09 Feb 2025
Làm gì nếu người quản lý luôn thúc ép: "Đừng làm forwarder, hãy là solver"? 96/113 - 11 Mar 2024
30 câu hỏi về triết lý sống sách vở không dạy 95/251 - 09 Jan 2025
10 Nghịch Lý Cuộc Sống Từ Phim Upstream (nghịch hành nhân sinh): Đối Mặt Rủi Ro Trong Thời Đại VUCA 95/330 - 30 Aug 2024
Suy ngẫm: 30 nguyên tắc xử thế trong quan hệ xã hội 91/237 - 03 Jul 2025
“Đo ni đóng giày” trong xã hội hiện đại: Xu hướng hay ngược hướng? 89/164 - 09 Dec 2024
10 nghịch lý quản trị khiến tổ chức mãi loay hoay 82/235 - 07 May 2025
"Tháp ngà" là gì? 81/97 - 22 Apr 2026
Thời Đại Của Tiêu Dùng Bản Sắc (Identity Consumerism) Đang Lên Ngôi Như Thế Nào? 77/94 - 28 Feb 2025
“Học giỏi” hay “giỏi học”? 76/308 - 19 Jul 2023
3 cấp độ của thất bại và bí quyết "cái khó ló cái khôn" 75/198 - 08 Jan 2022
Yêu cầu thay đổi (Change Request) là gì? Làm thế nào để kiểm soát Change Request? 74/704 - 30 Jun 2026
Bẫy Quản Lý Cấp Trung (Middle Management Trap) - Tại sao làm tốt công việc của bạn lại có thể là rào cản lớn nhất? 71/84 - 16 Jun 2026
Chuyện hài hước về con rể của Bill Gates và nghệ thuật "bơm thổi" giá trị bản thân 62/66 - 23 Jul 2026
Phân Loại Project Manager (Quản Lý Dự Án): Phần lớn chúng ta thường hiểu sai? 60/67 - 21 Jul 2026
Nghịch Lý Jevons: Vì Sao AI Giúp Bạn Làm Việc Nhanh Hơn Nhưng Lại Khiến Bạn Bận Hơn? 59/75 - 25 Jul 2026
"Snake swallows its tail" nghĩa là gì? 50/56 - 09 Apr 2026
6 Nghịch Lý Đạo Đức Phổ Biến Nhất Thế Kỷ 21 42/164 - 09 Dec 2025
Hiệu Ứng Tàu Điện Ngầm - The Subway Effect 41/194 - 11 Mar 2025
Thiên hướng Hành động (Bias for Action) và Thiên hướng Quy trình (Bias for Process) tác động tiêu cực tới "đổi mới và sáng tạo" như thế nào? 29/202 - 09 Aug 2022
Hiệu ứng “rắn hổ mang” (Cobra effect): Khi giải pháp trở thành vấn đề, tưởng vui lại hóa xui 27/835 - 13 Mar 2024
Vì sao Man-Month vẫn còn được sử dụng trong ngành công nghệ phần mềm? 19/224 - 14 Aug 2023
Hiệu Ứng Người Quan Sát (Observer Effect) là gì? 16/377 - 03 Sep 2020
Hiệu ứng rắn hổ mang, Luật Goodhart, Campbell & Chuyện thi cử 16/378 - 18 May 2021
Cây cầu hiện đại vô dụng nhất thế giới và câu chuyện cái kết của thay đổi yêu cầu 9/945 - 06 Aug 2026
AI và Lời Nguyền "The Mythical Man-Month": Năng Suất hay Nghịch Lý? 6/9 - 11 Mar 2023
Quick review các nghịch lý kinh điển của sách “The Mythical Man-Month” của Frederick P. Brooks 1/466 - 10 Aug 2026
Đừng dựng phim quá "xịn xò" nếu bạn muốn kênh YouTube thoát "flop" / - 10 Aug 2026
Nợ tích hợp (Integration Debt): Chi phí ẩn làm chậm quá trình chuyển đổi số như thế nào? / - 10 Aug 2026
Tại sao việc "hứa ít, làm nhiều" lại là một chiến lược tồi đối với bạn và doanh nghiệp? / - 11 Aug 2026
Nghịch lý đổi mới (Innovation Paradox) là gì? /1
Trong thế giới phát triển phần mềm, có một định luật hài hước nhưng phản ánh một thực tế vô cùng cay đắng được xướng lên bởi Tom Cargill (Bell Labs):
"90% đầu tiên của một dự án chiếm 90% thời gian, và 10% còn lại chiếm... 90% thời gian tiếp theo."
Tổng cộng là 180% thời gian - một minh chứng kinh điển cho thấy tại sao các dự án phần mềm rất hiếm khi đúng tiến độ. Dưới đây là góc nhìn sâu sắc (insights) về nghịch lý này, tại sao nó lại xảy ra và cách các đội ngũ kỹ thuật có thể đối phó.
1. Bản Chất Của Nghịch Lý: Ảo Tưởng Về Sự Tuyến Tính
Giai đoạn 90% đầu tiên: Sự hưng phấn và những chiến thắng nhanh (Quick Wins)
- Bản chất: Đây là lúc các lập trình viên xây dựng các tính năng cốt lõi (core features), viết mã nguồn nền tảng và dựng nên bộ khung của ứng dụng.
- Tâm lý: Mọi thứ tiến triển cực kỳ suôn sẻ. Các quản lý dự án (Project Managers) và khách hàng thường cảm thấy phấn khích vì "sản phẩm sắp hoàn thành đến nơi rồi".
- Sai lầm cốt lõi: Con người có xu hướng tư duy tuyến tính. Nhìn thấy 90 khối công việc đã xong trên tổng số 100, chúng ta lầm tưởng rằng chỉ còn 10% khối lượng công việc nữa là về đích.
Giai đoạn 10% còn lại: "Hố đen" của sự phức tạp
- Bản chất: Đây là lúc hiện thực tát thẳng vào mặt đội ngũ phát triển. 10% công việc còn lại bao gồm: sửa các lỗi hóc búa (tricky bugs), xử lý các trường hợp ngoại lệ (edge cases), tối ưu hóa hiệu suất, viết kiểm thử (testing), và tích hợp hệ thống cuối cùng (final integration).
- Tâm lý: Sự nản lòng bắt đầu xuất hiện (vạn sự khởi đầu nan, gian nan "bắt đầu nản"). Chương trình phần mềm trông có vẻ hoàn hảo bỗng nhiên sụp đổ khi kết nối với các hệ thống khác hoặc khi người dùng thực tế thao tác theo những cách kỳ lạ nhất.
2. Những Insights Sâu Sắc Về Nguyên Nhân Gây Ra Nghịch Lý
- Hiệu ứng "Tảng băng trôi" trong mã nguồn: Phần mềm không giống như xây nhà. Xây xong 9 tầng trên tổng số 10 tầng nghĩa là bạn đã hoàn thành 90% cấu trúc vật lý. Nhưng trong code, một tính năng đơn giản hiển thị trên giao diện (UI) chỉ là phần nổi của tảng băng. 90% phần chìm phía dưới là logic nghiệp vụ ngầm, bảo mật, xử lý bất đồng bộ, quản lý trạng thái (state management) và khả năng mở rộng. Khi bạn chạm đến 10% cuối cùng, bạn đang thực sự đối mặt với toàn bộ trọng lượng của phần chìm đó.
- Chi phí ẩn của việc tích hợp (Integration Debt): Các module được viết riêng lẻ có thể chạy hoàn hảo khi đứng một mình. Tuy nhiên, khi ghép chúng lại với nhau trong giai đoạn cuối, entropy (sự hỗn loạn) tăng vọt. Lỗi phát sinh không nằm ở từng module, mà nằm ở điểm giao thoa giữa chúng - nơi mà không ai kiểm soát chặt chẽ từ đầu.
- Sự cạn kiệt năng lượng và tâm lý chủ quan: Khi đội ngũ đã tiêu tốn phần lớn thời gian và năng lượng cho 90% đầu tiên, họ rơi vào trạng thái mệt mỏi đúng lúc dự án đòi hỏi sự tập trung cao độ nhất cho các chi tiết nhỏ. Sự chủ quan rằng "việc khó đã qua" khiến các bước kiểm tra chất lượng (QA) bị xem nhẹ, dẫn đến việc lỗi dồn ứ lại ở phút chót.
3. Bài Học và Giải Pháp Cho Các Đội Ngũ Phát Triển
Để phá vỡ hoặc giảm thiểu tác động của quy tắc 90-90, các nhà phát triển và quản lý dự án cần thay đổi cách tiếp cận:
- Đảo ngược tư duy lập kế hoạch: Hãy giả định rằng 10% công việc cuối cùng sẽ ngốn nhiều thời gian gấp đôi so với dự tính ban đầu và phân bổ nguồn lực tương ứng.
- Áp dụng kiểm thử liên tục (Continuous Testing): Đừng đợi đến khi hoàn thành tính năng mới bắt đầu viết test hay sửa lỗi. Việc phát hiện bug ngay từ những giai đoạn đầu của 90% sẽ ngăn chặn "hố đen" ở giai đoạn cuối.
- Định nghĩa "Hoàn thành" (Definition of Done - DoD) rõ ràng: Một tính năng không được tính là "xong" chỉ vì nó chạy được trên máy của lập trình viên. Nó phải vượt qua các bài kiểm thử biên, được tích hợp và sẵn sàng triển khai (deployable).
[{"displaySettingInfo":"[{\"isFullLayout\":false,\"layoutWidthRatio\":\"\",\"showBlogMetadata\":true,\"showAds\":true,\"showQuickNoticeBar\":true,\"includeSuggestedAndRelatedBlogs\":true,\"enableLazyLoad\":true,\"quoteStyle\":\"1\",\"bigHeadingFontStyle\":\"1\",\"postPictureFrameStyle\":\"1\",\"isFaqLayout\":false,\"isIncludedCaption\":false,\"faqLayoutTheme\":\"1\",\"isSliderLayout\":false}]"},{"articleSourceInfo":"[{\"sourceName\":\"\",\"sourceValue\":\"\"}]"},{"privacyInfo":"[{\"isOutsideVietnam\":false}]"},{"tocInfo":"[{\"isEnabledTOC\":true,\"isAutoNumbering\":false,\"isShowKeyHeadingWithIcon\":false}]"},{"termSettingInfo":"[{\"showTermsOnPage\":true,\"displaySequentialTermNumber\":true}]"}]
Nguồn
{content}
Bài trước









Link copied!
Mới cập nhật
thực chiến - Kiến tạo tương lai cho các nhà sáng tạo nội dung.