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

Hieu LE hieulq19 at gmail.com
Tue Dec 13 10:08:15 ICT 2016


Dear các anh/chị phát triển OpenCPS,

Thời gian qua em vẫn follow tình hình phát triển của cộng đồng OpenCPS
mình, mừng là ngày càng có nhiều đơn vị tham gia cộng đồng, mừng hơn nữa là
đã có nhiều nơi tiến hành nghiên cứu, kiểm thử và thậm chí triển khai. Với
những gì OpenCPS đang có được, đồng hành cùng NukeViet, em tin là PMNM Việt
Nam sẽ dần có những bước tiến vững chắc.

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.
2. Yêu cầu đội infra dựng một hệ thống CI online, vì code-base của mình nằm
trên github nên có thể sử dụng Travis-CI (free), code climate hoặc code
coverage, nếu muốn dễ dàng customize hơn nữa thì có thể dùng OpenShift. Cá
nhân em nghĩ team infra bên mình chỉ có bạn TuHV thì hơi quá tải nên em
recommend sử dụng các service online. Phần này em có thể hỗ trợ thiết lập
nếu điều kiện 1 thỏa mãn. Bản thân cộng đồng liferay hiện tại cũng đang sử
dụng Travis-CI để build/test.
3. Với các dịch vụ, giải pháp bên ngoài được tích hợp vào OpenCPS, cần yêu
cầu thiết lập thêm các CI ngoài (nếu dịch vụ, giải pháp đó không/chưa mở)
hoặc hợp chung với CI của OpenCPS.
4. Thiết lập github của OpenCPS để mỗi khi đẩy pull-request cần pass qua
hết các CI và có approve của OpenCPS core team mới được merge code. Phần
này để đảm bảo có ít nhất một người trong core team review code từ cộng
đồng đẩy lên.

Các đề xuất của em đều từ kinh nghiệm cá nhân khi tham gia phát triển một
sản phẩm nguồn mở, rất mong các anh/chị OpenCPS xem xét và trao đổi.

Hieu LE.
Vietnam OpenStack Community.

-- 
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS/CM/IT/M/MU d-@? s+(++):+(++) !a C++++(++++)$ ULC++++(++)$ P L++(+++)$ E
!W N* o+ K w O- M V- PS+ PE++ Y+ PGP+ t 5 X R tv+ b+(++)>+++ DI- D+ G
e++(+++) h-- r(++)>+++ y-
------END GEEK CODE BLOCK------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opencps.vn/pipermail/opencps/attachments/20161213/f8b843e2/attachment.html>


More information about the OpenCPS mailing list