[OpenCPS] Quy trình kiểm soát chất lượng nguồn mở trong OpenCPS

Truong Anh Tuan tuanta at iwayvietnam.com
Thu Dec 15 17:13:38 ICT 2016


On 12/13/2016 10:08 AM, Hieu LE wrote:
> 
> Nhưng tạm để lại những thành công bước đầu về mặt cộng đồng cũng
> như ý nghĩa của OpenCPS, mail này em muốn nhắc tới chất lượng của
> OpenCPS, đặc biệt là quy trình kiểm soát chất lượng.
> 
> Như đã có lần em gửi mail và tới seminar cho cộng đồng mình về việc
> cần thiết của unit test, functional test trong code-base của một
> PMNM cũng như hệ thống CI/CD, em có nói tới kết quả của việc không
> có quy trình kiểm soát chất lượng PM thì các lỗi sẽ xảy ra cấp số
> nhân. Thời gian vừa rồi, đã có một số đơn vị tiến hành kiểm thử
> OpenCPS và report một số lỗi, theo cá nhân em đánh giá là lỗi cơ
> bản, không đáng có và có thể kiểm soát được ngay từ đầu.
> 
> Vậy nên, được sự động viên của một số thành viên OpenCPS, em mạo
> muội tiếp tục viết mail đề xuất cộng đồng OpenCPS một số việc như
> sau: 1. Yêu cầu đội dev phải implement các unit test và functional
> test cho các tính năng đã hoàn thiện tới phiên bản bây giờ của
> OpenCPS để đảm bảo sau này có mở rộng, tích hợp thêm các dịch vụ sẽ
> không ảnh hưởng đến các chức năng đã ổn định.

Cảm ơn Hiếu đã đưa ra đề xuất đúng lúc.

Theo cá nhân anh nhìn nhận, quá trình phát triển OpenCPS đã trải qua
một giai đoạn "phát triển nóng", nhằm chạy kịp deadlines ra mắt, chiếm
lĩnh thị trường. Vì vậy, không tránh khỏi nhiều bất cập.
Đề xuất đưa CI/CD vào áp dụng, anh nghĩ là rất cần thiết & anh đề xuất
là Hiếu tham gia (& lead) luôn việc này, tùy theo thời lượng Hiếu có
thể cam kết đóng góp cho OpenCPS.

Ngoài ra, còn 2 vấn đề "nóng" trong chất lượng của OpenCPS:
1. Vấn đề về logic/quality code.
2. Vấn đề về security.

Đối với vấn đề #1, cần sớm áp dụng phương pháp TDD - Test Driven
Development. Theo thống kê [1], chi phí sửa 1 bug khi đã production sẽ
tiêu tốn hơn 100 lần so với khi design và hơn 15 lần so với khi
implement. Ngoài TDD, cũng cần áp dụng sớm việc code review kỹ đến
từng dòng code (thế giới FOSS thường dùng côn cụ Review Board).

Vấn đề #2 cũng không kém phần "nóng". Hiện tại OpenCPS đã qua 1 vài
vòng được Security Test (do Velatek đóng góp), nhưng quả thật, nếu
Review code không được làm cẩn trọng thì tiềm ẩn nhiều lỗi security là
chuyện đương nhiên (đến những dự án lớn như Linux hay chính Liferay,
được phát triển kỹ thế, mà còn tìm ra vô khối lỗi sau một thời gian
dài đưa vào sử dụng).
Khi OpenCPS được ứng dụng rộng rãi, nếu những lỗi này bị khai thác,
hậu quả sẽ khó có thể đo đếm được và chi phí để xử lý cũng cao hơn rất
rất nhiều.

Thời điểm hiện tại cũng không gọi là quá muộn. Ta hoàn toàn có thể
điều chỉnh qui trình, kế hoạch phát triển để đảm bảo những việc trên.

-- 
Rgds,
Tuan

[1]
https://medium.com/javascript-scene/the-outrageous-cost-of-skipping-tdd-code-reviews-57887064c412#.cruae23be

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: OpenPGP digital signature
URL: <http://lists.opencps.vn/pipermail/opencps/attachments/20161215/5269cfeb/attachment.sig>


More information about the OpenCPS mailing list