Cải tiến thực
Sau khi đăng bài “Cải tiến qui trình với CMMI”, tôi nhận được nhiều emails hỏi về “Cải tiến thực” và làm sao họ biết rằng công ti của họ thực sự được cải tiến? Cho nên sau đây là cách nhìn của tôi về “Cải tiến thực”.
Cải tiến thực có thể được đo bằng nhiều thứ như tăng năng suất và chất lượng, hài lòng của khách hàng tốt hơn, ít lỗi hay làm lại việc, và lợi nhuận và thị phần cao hơn. Nếu công ti của bạn có “Cải tiến thực”, bạn sẽ để ý năng suất tăng lên, chính là số lượng cái ra của sản phẩm làm việc tính theo kích cỡ đối với số công nhân đã cho và thời hạn dự án. Chẳng hạn trước bất kì cải tiến này, một tổ mười người có thể viết 10 000 dòng mã một tháng. Sau cải tiến, cùng tổ đó có thể viết 15 000 dòng mã một tháng vậy năng suất của bạn đã tăng lên 50%. Cải tiến thực không phải là cái gì đó trừu tượng mà có thể là điều đơn giản như ít lỗi hơn trong sản phẩm phần mềm. Bạn có thể giảm số lỗi bằng việc dành nhiều thời gian hơn cho pha yêu cầu bằng làm việc chặt chẽ với khách hàng để hiểu nhu cầu của họ; làm tài liệu yêu cầu bằng việc dùng kịch bản use case và thẩm tra lại với người dùng để có yêu cầu chính xác hơn; dựng bản mẫu để làm sáng tỏ thiết kế và KHÔNG vội vàng nhảy vào viết mã. Bạn càng có nhiều phiên kiểm điểm với tổ, bạn càng có ít lỗi hơn. Đến cuối, bạn đạt tới chất lượng sản phẩm tốt hơn.
Vì nhiều dự án thường bỏ lỡ các cột mốc và lịch biểu, bạn có thể cải tiến nó bằng việc có cấu trúc phân việc tốt hơn trong khi chia yêu cầu thành các nhiệm vụ chi tiết nhỏ hơn, đủ nhỏ để bạn có thể lập kế hoạch và theo dõi chúng trên cơ sở hàng tuần. Tôi bao giờ cũng khuyên sinh viên chia các yêu cầu lớn thành các nhiệm vụ nhỏ hơn để họ có thể hoàn thành trong quãng 32 giờ (một người-tuần). Nếu cái gì xảy ra gây ra chậm trễ, sẽ dễ sửa chữa một nhiệm vụ nhỏ hơn là nhiệm vụ lớn. Bạn cũng có thể cải tiến lịch biểu bằng việc có ước lượng tốt hơn (nỗ lực, thời gian, chi phí) và cân xứng tốt hơn giữa kĩ năng và công việc. Đừng chỉ phân công bất kì người phát triển nào cho bất kì nhiệm vụ nào một cách ngẫu nhiên. Lúc bắt đầu của mọi dự án, bạn phải biết kĩ năng và kinh nghiệm của từng người phát triển để cho bạn có thể phân công họ vào nhiệm vụ tương ứng. Điều cũng rất quan trọng là tiến tục cung cấp đào tạo để giữ cho kĩ năng của họ được cập nhật. Để duy trì phần mềm chất lượng cao (tính bảo trì được) bạn nên chia thiết kế thành các mô đun nhỏ hơn để dễ sửa và bảo trì. Bạn phải chắc những mô đun này có nhiều chú thích và tài liệu tốt, đặc biệt làm tài liệu cho bất kì thay đổi nào để sánh đúng với mã.
Có nhiều điều mà bạn có thể đạt tới “Cải tiến thực”. Điều tốt nhất là cải tiến kĩ năng của người phát triển để tuân theo qui trình được xác định tốt cho mọi dự án. Vấn đề số một với phát triển phần mềm hiện thời là người phát triển vội vàng lao vào mã và không dành đủ thời gian trong pha yêu cầu và thiết kế. Vấn đề khác là nhiều người quản lí dự án không được đào tạo tốt. Nhiều người được đề bạt tới chức vụ đó mà không có đào tạo chính thức. Theo ý kiến tôi, đầu tư tốt nhất một công ti có thể làm là đầu tư vào nhân viên riêng của họ bằng việc có đào tạo thêm trên cơ sở đều đặn. Ngày nay, phần lớn các công ti phần mềm đang cạnh tranh trong hai khu vực. Một khu vực về kinh doanh (phát triển sản phẩm và dịch vụ) và một khu vực về tài năng được cần để thực hiện những việc đó. Thành công của công ti trong kinh doanh được xác định bởi thành công của nó trong khu vực tài năng. Có nhân viên có kĩ năng nhất sẽ đem lại sản phẩm và dịch vụ chất lượng cao hơn. Thay vì hội tụ vào cái gì đó “trừu tượng” như trả tiền cho nhà tư vấn để cho bạn “chứng chỉ” nói rằng công ti của bạn là “rất tốt”, bạn có thể hội tụ vào cái gì đó “đơn giản” như nhân viên riêng của bạn. Bởi vì có thiếu hụt trầm trọng người có kĩ năng trên khắp thế giới đồng thời công nghệ đang thay đổi nhanh chóng, bạn phải hội tụ vào phát triển nhân viên riêng của bạn. Vì tri thức được cần để dựng sản phẩm và cung cấp dịch vụ tăng lên cùng công nghệ mới, việc thu nhận và giữ nhân viên có kinh nghiệm trở thành mấu chốt để cải tiến thị phần và lợi nhuận. Người chủ công ti giỏi phải biết rằng năng lực của họ để cạnh tranh trong công nghiệp có liên quan trực tiếp tới năng lực của họ để hấp dẫn, phát triển, thúc đẩy, tổ chức và duy trì người có kĩ năng cao.
Có nhân viên có kĩ năng là quan trọng hơn chỉ là thuê và giữ họ. Bạn phải phát triển họ bằng việc đảm bảo rằng họ có đào tạo tốt nhất để xây dựng kĩ năng mới mà thị trường cần. Ngày nay phần lớn các đại học đều có chương trình đào tạo tương tự cho nên phần lớn các sinh viên tốt nghiệp có kĩ năng tương tự. Điều tuỳ thuộc ở đào tạo của công ti là tạo ra khác biệt. Chương trình đào tạo tốt có thể phát triển sinh viên mới tốt nghiệp trung bình thành nhân viên có kĩ năng cao. Trong thị trường cạnh tranh cao này, nhiều công ti đang xô vào làm nhiều điều khác nhau, nhảy từ ý tưởng “trừu tượng” này sang ý tưởng “phức tạp” khác mà không biết rằng cải tiến thực là cái gì đó đơn giản và theo nghĩa thông thường.
Tác phẩm, tác giả, nguồn
- Tác phẩm: Mô hình tăng trưởng năng lực tổ chức
- Biên tập: Kipkis.com
- Nguồn: Blog của giáo sư John Vu, Carnegie Mellon University