BỘ THÔNG TIN VÀ TRUYỀN THÔNG<br />
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG<br />
VIỆN KHOA HỌC KỸ THUẬT BƯU ĐIỆN<br />
---------<br />
<br />
BÁO CÁO TÓM TẮT<br />
ĐỀ TÀI KHOA HỌC VÀ CÔNG NGHỆ<br />
<br />
NGHIÊN CỨU XÂY DỰNG TIÊU CHUẨN QUỐC GIA<br />
“KIỂM THỬ PHẦN MỀM –<br />
PHẦN 3: TÀI LIỆU KIỂM THỬ”<br />
Mã số: 28-15-KHKT-TC<br />
<br />
(Tài liệu sau Nghiệm thu cấp Bộ)<br />
<br />
Chủ trì đề tài:<br />
<br />
ThS. Trần Thị Tố Nga<br />
<br />
Cộng tác viên:<br />
<br />
ThS. Vũ Hồng Sơn<br />
ThS. Đặng Quang Dũng<br />
KS. Đào Đức Dương<br />
KS. Hoàng Minh Ánh<br />
KS. Nguyễn Thị Phương Nam<br />
<br />
Hà Nội, năm 2015<br />
<br />
MỤC LỤC<br />
<br />
1. Giới thiệu ............................................................................................................. 1<br />
2. Nghiên cứu, khảo sát hiện trạng và đánh giá nhu cầu đối với việc kiểm thử<br />
phần mềm………….. .............................................................................................. 1<br />
2.1 Trong nước: ....................................................................................................... 1<br />
2.2 Ngoài nước: ........................................................................................................ 1<br />
3. Nghiên cứu tình hình và xu thế chuẩn hoá đối với tài liệu kiểm thử trong<br />
lĩnh vực kiểm thử phần mềm.................................................................................. 2<br />
3.1 Các tổ chức tiêu chuẩn hóa nghiên cứu về lĩnh vực công nghệ thông tin ............. 2<br />
3.2 Động lực thúc đẩy xây dựng bộ tiêu chuẩn ISO 29119 ....................................... 3<br />
3.3 Các tiêu chuẩn về tài liệu liên quan đến kỹ thuật hệ thống và phần mềm ............. 4<br />
4 Nghiên cứu, phân tích và lựa chọn tiêu chuẩn tham chiếu. ............................... 5<br />
4.1 Mục tiêu của tiêu chuẩn ...................................................................................... 5<br />
4.2 Lý do xây dựng tiêu chuẩn ................................................................................. 5<br />
4.3 Nhu cầu thực tế và khả năng áp dụng ................................................................. 5<br />
4.4 Mục đích xây dựng tiêu chuẩn ........................................................................... 5<br />
4.5 Sở cứ xây dựng tiêu chuẩn ................................................................................. 5<br />
4.6 Phương pháp xây dựng tiêu chuẩn...................................................................... 5<br />
5. Nội dung của bản dự thảo tiêu chuẩn ................................................................ 6<br />
6. Kết luận ............................................................................................................... 6<br />
<br />
ii<br />
<br />
1. Giới thiệu<br />
Giới thiệu tên đề tài, mục tiêu, nội dung cũng như kết quả của đề tài.<br />
2. Nghiên cứu, khảo sát hiện trạng và đánh giá nhu cầu đối với việc kiểm thử<br />
phần mềm<br />
2.1 Trong nước:<br />
Tại Việt Nam, kiểm thử phần mềm đã và đang phát triển khá mạnh trong khoảng<br />
chục năm trở lại đây nhưng chúng ta đang phải cạnh tranh gay gắt với các nước trên<br />
thế giới như Ấn Độ, Mỹ và Trung Quốc do gặp một thách thức về nguồn cung ứng<br />
nhân lực cho dự án của các công ty còn hạn chế.<br />
Trước tình hình phải đảm bảo chất lượng sản phầm phần mềm, Việt Nam đã chú<br />
trọng xây dựng và ban hành hệ thống tiêu chuẩn liên quan đến sản phẩm phần mềm.<br />
Nhằm hỗ trợ cho các doanh nghiệp, tổ chức, người tiêu dùng và người sử dụng,<br />
cũng như trong công tác thực hiện và quản lý chất lượng sản phẩm phần mềm, Bộ<br />
Khoa học và Công nghệ đã ban hành một số tiêu chuẩn Việt Nam trong lĩnh vực đánh<br />
giá chất lượng sản phẩm phần mềm. Một số tiêu chuẩn đã được ban hành: TCVN<br />
8702:2011, TCVN 8703:2011, TCVN 8704:2011, TCVN 8705:2011, TCVN<br />
8706:2011, TCVN 8707:2011, TCVN 8708:2011, TCVN 10539:2014<br />
(ISO/IEC 12207:2008), TCVN 10540:2014 (ISO/IEC 25051:2006).<br />
2.2 Ngoài nước:<br />
Sản phẩm phần mềm ngày nay đang trở thành một lĩnh vực được quan tâm và<br />
được kiểm soát chặt chẽ, theo những tiêu chuẩn nhất định. Các tiêu chuẩn có thể là các<br />
kinh nghiệm hoặc các phương pháp hiệu quả nhất, được đề xuất từ các hiệp hội nghề<br />
nghiệp như IEEE, ISO, IEC… hoặc các quy tắc chuẩn hóa để giao tiếp giữa sản phẩm<br />
với nhau,... hoặc đơn giản do chính tổ chức phát triển phần mềm đề ra để áp dụng cho<br />
chính họ.<br />
Từ “những năm cuối thế kỷ 20, tổ chức ISO đã tập trung rất nhiều vào các tiêu<br />
chuẩn chất lượng cho phần mềm. Cách tiếp cận về chất lượng của ISO đã thực sự tiến<br />
thêm một bậc, toàn diện hơn, phù hợp hơn. Kết quả của sự tập trung này là một loạt<br />
các bộ tiêu chuẩn đã ra đời, nhằm hướng tới đánh giá chất lượng toàn diện trong suốt<br />
vòng đời của sản phẩm phần mềm, từ khi phôi thai cho tới lúc lạc hậu cần thay thế”.<br />
Nhận xét:<br />
Theo mô hình vòng đời của Boehm và Hệ thống các tiêu chuẩn ISO về kỹ thuật<br />
hệ thống và phần mềm thì kiểm thử phần mềm thuộc nhóm các tiêu chuẩn đánh giá và<br />
triển khai quá trình, đây là một phần không thể thiếu trong mỗi vòng đời của sản phẩm<br />
phần mềm. Kiểm thử phần mềm chính là triển khai một quá trình trong các quá trình<br />
vòng đời phần mềm đã nêu trong TCVN 10539:2014 (ISO/IEC 12207:2008): “Kỹ<br />
thuật hệ thống và phần mềm - Các quá trình vòng đời phần mềm”.<br />
<br />
1<br />
<br />
Với việc Việt Nam gia nhập WTO, cạnh tranh trong ngành phần mềm ngày càng<br />
gay gắt, nhu cầu kiểm thử chắc chắn sẽ tăng nhanh hơn khi chất lượng sản phẩm được<br />
đề cao. Hầu hết doanh nghiệp làm phần mềm hiện nay có đơn vị kiểm thử phần mềm<br />
riêng. Có công ty bộ phận kiểm thử nằm cùng nhóm đảm bảo chất lượng (quality<br />
assurance - QA), có công ty bộ phận kiểm thử đứng tách riêng hoặc là bộ phận độc lập<br />
nằm trong nhóm phát triển phần mềm.<br />
Hiện nay ở Việt Nam vẫn chưa có một văn bản quy chuẩn về việc kiểm thử phần<br />
mềm bằng tiếng Việt. dẫn tới sự lộn xộn trong việc xây dựng bài thuyết minh cho từng<br />
dự án công nghiệp phần mềm và sự nhìn nhận chưa được hoàn chình về ngành kiểm<br />
tra chất lượng sản phẩm phần mềm, gây ra những thiệt thòi cho các tổ chức và cá nhân<br />
hoạt động trong ngành đồng thời tăng chi phí cho việc sản xuất kinh doanh các sản<br />
phẩm phần mềm tin học.Chính vì vậy, việc xây dựng bô tiêu chuẩn về kiểm thử phần<br />
mềm là cần tiết. Bộ tiêu chuẩn này sẽ giúp cho cơ quan quản lý có công cụ hữu hiệu<br />
trong việc quản lý và đảm bảo chất lượng sản phẩm phần mềm của các tổ chức, doanh<br />
nghiệp phát triển, sản xuất và cung cấp phần mềm hoạt động tại Việt Nam.<br />
3. Nghiên cứu tình hình và xu thế chuẩn hoá đối với tài liệu kiểm thử trong lĩnh<br />
vực kiểm thử phần mềm.<br />
Kiểm thử phần mềm là một cuộc kiểm tra được tiến hành để cung cấp cho các bên<br />
liên quan thông tin về chất lượng của sản phẩm hoặc dịch vụ được kiểm thử. Kiểm thử<br />
có thể cung cấp cho doanh nghiệp một quan điểm, một cách nhìn độc lập về phần<br />
mềm để từ đó cho phép đánh giá và thấu hiểu được những rủi ro trong quá trình triển<br />
khai phần mềm.<br />
Trong kỹ thuật kiểm thử không chỉ giới hạn ở việc thực hiện một chương trình<br />
hoặc ứng dụng với mục đích đi tìm các lỗi phần mềm (bao gồm các lỗi và các thiếu<br />
sót) mà còn là một quá trình phê chuẩn và xác minh một chương trình máy tính/ứng<br />
dụng/sản phẩm nhằm:<br />
<br />
<br />
Đáp ứng được mọi yêu cầu hướng dẫn khi thiết kế và phát triển phần mềm.<br />
<br />
<br />
<br />
Thực hiện công việc đúng như kỳ vọng.<br />
<br />
<br />
<br />
Có thể triển khai được với những đặc tính tương tự.<br />
<br />
<br />
<br />
Và đáp ứng được mọi nhu cầu của các bên liên quan.<br />
<br />
Mỗi sản phẩm phần mềm có một đối tượng phục vụ riêng. Vì vậy, khi một tổ chức<br />
phát triển hoặc đầu tư vào một sản phẩm phần mềm, họ có thể đánh giá liệu các sản<br />
phẩm phần mềm có được chấp nhận bởi người dùng cuối, đối tượng phục vụ, người<br />
mua, hay những người giữ vai trò quan trọng khác hay không. Và việc kiểm thử phần<br />
mềm là một quá trình nỗ lực để đưa ra những đánh giá này.<br />
3.1 Các tổ chức tiêu chuẩn hóa nghiên cứu về lĩnh vực công nghệ thông tin<br />
Việc tạo ra các tiêu chuẩn được quản lý bởi một số lượng lớn các tổ chức tiêu<br />
chuẩn hóa. Có một số tổ chức tiêu chuẩn quốc tế (ví dụ như ISO, IEC, ITU, CEN) và<br />
các tổ chức tiêu chuẩn quốc gia (ví dụ như ANSI, BSI, DIN) được đại diện trong các<br />
<br />
2<br />
<br />
tổ chức quốc tế. Ngoài ra còn có một số tiêu chuẩn có phạm vi cụ thể (domain-specific<br />
standards) (ví dụ: NASA, ESA, FAA trong lĩnh vực hàng không vũ trụ), các tiêu chuẩn<br />
này thường bao gồm các lĩnh vực liên quan đến an toàn.<br />
Do phụ thuộc vào CNTT, các tổ chức quốc phòng cũng đã phát triển các tiêu<br />
chuẩn riêng của họ (ví dụ như DoD, NATO), mặc dù DoD có một chính sách sử dụng<br />
các tiêu chuẩn quốc tế bất cứ nơi nào thích hợp. Điều này có nghĩa rằng việc công bố<br />
các tiêu chuẩn kiểm thử phần mềm quốc tế sẽ có một tác động lớn đối với mọi nhà<br />
thầu quốc phòng cung cấp DoD, do đó họ rất quan tâm đến những tiêu chuẩn này.<br />
Có một nhóm các tổ chức tiêu chuẩn là những tổ chức CNTT vẫn duy trì các tiêu<br />
chuẩn (ví dụ như IEEE, INCOSE, W3C). Trong một động thái tương tự như DoD,<br />
IEEE có chính sách tặng các tiêu chuẩn của họ cho ISO, do đó làm giảm chi phí duy trì<br />
của họ và làm tăng sự gắn kết trong các tiêu chuẩn của CNTT. IEEE đã tặng cả IEEE<br />
829 và IEEE 1008 cho ISO để xây dựng bộ tiêu chuẩn mới ISO/IEC/IEEE 29119 về<br />
kiểm thử phần mềm.<br />
<br />
Hình 1 - Các tiêu chuẩn kỹ thuật hệ thống và phần mềm ISO/IEC<br />
Trong lĩnh vực công nghệ thông tin và truyền thông ISO thường xuyên phối hợp<br />
với IEC (Ủy ban kỹ thuật điện quốc tế) để xuất các tiêu chuẩn chung. ISO và IEC đã<br />
thành lập một tiểu ban (SC7) về kỹ thuật hệ thống và phần mềm, với các điều khoản<br />
tham chiếu cho các "tiêu chuẩn của các quy trình, công cụ hỗ trợ và hỗ trợ công nghệ<br />
cho kỹ thuật của sản phẩm phần mềm và hệ thống”. Đến năm 2013, tiểu ban SC7 đã có<br />
59 thành viên tham gia tổ chức tiêu chuẩn quốc gia. Hình 1 cho thấy số lượng các tiêu<br />
chuẩn được công bố và duy trì bởi SC7 kể từ khi tiểu ban này được thành lập.<br />
3.2 Động lực thúc đẩy xây dựng bộ tiêu chuẩn ISO 29119<br />
Cho đến bây giờ vẫn chưa có tiêu chuẩn kiểm thử phần mềm rõ ràng. Người tiêu<br />
dùng các dịch vụ kiểm thử phần mềm có thể không chỉ đơn giản là tìm kiếm “dấu hiệu<br />
của sự tuân thủ” và những người kiểm thử không có tài liệu thực hành tốt. Có nhiều<br />
tiêu chuẩn đề cập đến kiểm thử phần mềm, nhưng nhiều tiêu chuẩn trong số đó chồng<br />
chéo nhau và có những xung đột trong các định nghĩa, quy trình và thủ tục. Có một số<br />
<br />
3<br />
<br />