Giới thiệu Theo định nghĩa hình thức về chất lượng phần mềm của Tổ Chức Tiêu Chuẩn Quốc Tế ISO trong bộ tiêu chuẩn 8402, "chất lượng là khả năng đáp ứng toàn diện nhu cầu của người sử
Trang 1HOC VIEN CONG NGHE BUU CHINH VIEN THONG VIEN KHOA HỌC KỸ THUẬT BƯU ĐIỆN
THUYET MINH TIEU CHUAN:
XÂY DỰNG TIỂU CHUÄN ĐÁNH GIÁ SẢN PHẢM
Nhóm thực hiện: TS Nguyễn Chiến Trinh
TS Nguyễn Tiến Ban
Ks Đào Ngọc Dũng
Ks Dinh Thi Oanh
Hà Nội, 2009
Trang 2
HOC VIEN CONG NGHE BUU CHINH VIEN THONG VIEN KHOA HOC KY THUAT BUU BIEN
COT 1A
THUYET MINH TIEU CHUAN:
XAY DU’NG TIEU CHUAN ĐÁNH GIÁ SAN PHAM
Nhóm thực hiện: TS Nguyễn Chiến Trinh
TS Nguyễn Tiến Ban
Ks Đào Ngọc Dũng
Ks Dinh Thi Oanh
Ad WG RE peo
PEM
Ha Noi, 2009
Trang 32 Nghiên cứu tiêu chí và hướng dẫn đánh giá sản phẩm phần mềm của các tổ
chức tiêu chuẩn quốc tế ST TH TH HH E1 Hee, 6 2.1 Tổng quan về chất lượng sản phẩm phần mềm - 02s czcec 6
2.2 ISO 9001-3 oo ceccccsccceessssceeecessseecccsssseecevssssevcesssssescesststresevetseeseestaaes 7 2.3 \SO-91.26 oo ee ecccccessccsssecsscecseeceseecssscesseccssecesecessssessesssssesseceseeecrevsusenaeens 8
2.3.1 Phạm vi mô hình chat Iwong 1SO-9126 .cccccccesseessesesseecssessesseesees 8 2.3.2 Tiêu chí chất lượng v2 21121 21211211rree 9
2.3.3 Chất lượng sản phẩm và vòng đời -¿-ccccc sec re the, 10
2.3.4 Đối tượng để đánh giá 20c 2t t2 2112k 13
2.3.5 Sử dụng một mô hình chất lượng co HH neo 13 2.3.6 Tiéu chi danh gid san phdm phan MAM ou ccccccessescscescscseseencees 14 2.3.7 Tiêu chuẩn đánh giá sản phầm phần mềm 5 2c c2 18
2.4 le cccecsesseeccessssecescessucececssseeccvsseusueverssssscuseesqaeseecsresesseanes 19
2.4.1 Quá trình đánh giá dành cho người phát triỂn -.oc sec 20 2.4.2 Quá trình đánh giá dành cho người mua sản phẩm 25 2.4.3 Quá trình đánh giá dành cho người đánh giá 33
2.5 IEEE 1061 — 1992 0000 HH HH HH TH kg KE nh kg key 38 2.8 ISO -12119 oi icccccccssecccsseceseseressseeecsseccesssuavsssscsssssucssueccssssesseasonsusenenecs 39
3 Tiêu chí đánh giá sản phẩm phan mềm của doanh nghiệp trong nước 41 3.1 Các doanh nghiệp thuộc VINASA TH 12H HH HH TH nh ng như 41
Trang 4
5.1 Bue 1: Thiét lap cdc yéu CAU anh gid cc ccccccececececseeseeeseseseneees 45
5.2 Bước 2: Xác lập cơ chế đánh giá Q20 Q ST rệc 45
5.3 Bước 3: Thiết kế kế hoạch đánh giá sản phẩm phần mềm 45
5.4 Bước 4: Thực hiện đánh giá . - -Q TH HH HH TH ng 1111 rkrre 46
6 Kết luận và khuyến nghị che 47
Tài liệu tham khảo HH HH TH HH nh TH KH TH HH net 48
Viện Khoa Học Kỹ Thuật Bưu Điện
Trang 5
Danh muc hinh vé
Hình 1: Chat lreng trong vong doi San PHAM ccccsccsecceccseccsescsssescssecsseccasecssecssrseserensne 9 Hinh 2: Chat luorng trong vong doi PHAN MEM ou cccccsseccsecsesssssecsssecsssccssecssecssesessesssess 11 Hình 3: Mô hình chất lượng cho chất lượng trong và ngoài -e -c 14 Hình 4: Mô hình chất lượng Str MUG ccc scccscccsecssesssessussssssessssecssesssecssscssccsscssscsseessees 17
Hình 5: Mối liên hệ giữa tiêu chuẩn ISO 9616 va ISO 14598 nen 20
Hình 6: Khung tham số chất lượng phần mềm 222s22St 222 22E522252225522xxeE 38 Hình 7: Quy trình đánh giá sản phẩm phần mềm 2222222212711 2215211.15xee2 45
Viện Khoa Học Kỹ Thuật Bưu Điện
Trang 6
Giới thiệu
Theo định nghĩa hình thức về chất lượng phần mềm của Tổ Chức Tiêu Chuẩn Quốc
Tế ISO trong bộ tiêu chuẩn 8402, "chất lượng là khả năng đáp ứng toàn diện nhu cầu
của người sử dụng về tính năng cũng như công dụng được nêu ra một cách tường minh hoặc không tường minh trong những ngữ cảnh xác định" Ngay trong định nghĩa này chất lượng cũng được định nghĩa một cách rất "mờ", thiếu hắn yếu tố định lượng
Thêm nữa, để hiểu hết nhu cầu của người sử dụng quả thực là rất khó Với những khó
khăn về định lượng trong khái niệm chất lượng phần mềm, để có được một phần mềm tốt cách thông thường nhất là tiếp cận theo chất lượng quy trình Nếu chúng ta có quy trình sản xuất tốt thì sẽ có khả năng sản xuất ra sản phẩm tối
Việt Nam vẫn chưa có một tiêu chuẩn chung để đánh giá chất lượng sản pham phan mềm và
mặc dù chất lượng sản phẩm luôn là mối quan tâm hàng đầu với các doanh nghiệp và người
sử dụng Dựa trên các chuẩn để đánh giá phần mềm trong các lĩnh vực khác nhau của các tổ chức tiêu chuân quốc tế và các tiêu chí đánh giá của các doanh nghiệp Việt Nam, nhóm thực
hiện đề tài đã đưa ra các tiêu chí đánh giá và quy trình chuẩn quy trình đánh giá chất lượng
sản phẩm phần mềm
Viện Khoa Học Kỹ Thuật Bưu Điện -
Trang 7
1 Mo dau
4.4 Tén dé tai Xây dựng tiêu chuẩn đánh giá sản phẩm phần mềm (Các phép đánh giá chất lượng
— Xây dựng tiêu chí và tiêu chuẩn đánh giá sản phẩm phần mềm trong
2 Nghiên cứu tiêu chí và hướng dẫn đánh giá sản phẩm phan mềm
của các tổ chức tiêu chuẩn quốc tế 2.1 _ Tổng quan về chất lượng sản phẩm phần mềm Theo định nghĩa hình thức về chất lượng sản phẩm phần mềm của Tổ Chức Tiêu
Chuẩn Quốc Tế ISO trong bộ tiêu chuẩn 8402, "chất lượng là khả năng đáp ứng
toàn diện nhu cầu của người dùng về tính năng cũng như công dụng được nêu ra một cách tường minh hoặc không tường minh trong những ngữ cảnh xác định"
Ngay trong định nghĩa này chất lượng cũng được định nghĩa một cách rất "mờ", thiếu yếu tố định lượng Thêm nữa, để hiểu hết nhu cầu của người sử dụng quả thực là rất khó Với những khó khăn về định lượng trong khái niệm chất lượng phần mềm, để có được một phần mềm tốt cách thông thường nhát là tiếp cận theo lối chất
lượng quy trình Nghĩa là nếu chúng ta có quy trình sản xuất tốt thì sẽ có khả năng sản xuất ra sản phẩm tốt
Viện Khoa Học Kỹ Thuật Bưu Điện
Trang 8phần mềm, nếu có chứng chỉ CMM hoặc ISO 9001 đều có khả năng sản xuất ra các phần mềm tốt hơn hẳn các công ty chưa có chứng chỉ Tuy nhiên, chúng ta cần lưu ý đây chỉ là "khả năng" chứ không phải là “chắc chắn” Vẫn có doanh nghiệp có quy trình tốt nhưng sản xuất ra sản phẩm chất lượng không cao Điều này chứng tỏ cách tiếp cận theo chất lượng quy trình chưa phải là cách tiếp cận toàn diện mà chỉ giải
quyết vấn đề ở mức căn bản
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 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
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
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 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ế Theo cách tiếp cận của !SO, chất lượng toàn diện của phần mềm cần phải được quan tâm từ chất lượng quy trình, tới chất lượng sản phẩm nội bộ, chất lượng sản phẩm đối chiếu với yêu cầu của người dùng (chất lượng ngoài) và chất lượng phần mềm trong sử dụng
Ở một góc nhìn khác, vòng đời của một sản phẩm phần mềm bắt đầu từ các bài toán
thực tiễn và được thể hiện theo quy trình sau:
4 Từ các bài toán thực tiễn, nhu cầu để phần mềm hình thành;
2 Nhu cầu này được thể hiện qua các tài liệu yêu cầu (Requirements);
3 Nhu cầu sẽ xác định yêu cầu chất lượng ngoài Thỏa mãn được yêu cầu chất lượng này sẽ thỏa mãn được yêu cầu của người sử dụng;
4 Các yêu cầu chất lượng thể hiện trong tài liệu đặc tả hệ thống
(Specification)
5 Yêu cầu chất lượng ngoài là tiền đề cho yêu cầu chất lượng trong;
6 Trong quá trình thiết kế phần mềm, các yêu cầu chất lượng trong được thể hiện trong các tiêu chí của phần mềm và chuyển thành chất lượng trong;
7 Ứng với chất lượng trong có các độ đo chất lượng trong mà phần mềm
phải đáp ứng;
8 Tới giai đoạn tích hợp chạy thử, vấn đề được quan tâm sẽ là chất lượng
ngoài Phần mềm được gọi là có chất lượng khi tất cả các độ đo chất lượng
ngoài được đảm bảo;
Viện Khoa Học Kỹ Thuật Bưu Điện -7-
Trang 9
9 Trong quá trình vận hành, vẫn sử dụng các độ đo ngoài, chất lượng của
phần mềm trong quá trình vận hành, sử dụng sẽ tiếp tục được xem xét và cải tiến;
10 Quá trình cải tiền sẽ diễn ra liên tục cho tới khi phần mềm trở nên lạc hậu
hoàn toàn, cần được thay thế bằng một phần mềm mới
Với cách tiếp cận như vậy, Tổ chức tiêu chuẫn quốc tế lSO đã ban hành bộ tiêu chuẩn ISO-9001/2000-3 để chuẩn hóa quy trình chất lượng;
2.3 ISO-9126
ISO-9126 thiết lập một mô hình chất lượng chuẩn cho các sản phẫm phần mềm Bộ tiêu chuẫn này được chia làm bốn phân:
o 9126-1 Đưa ra mô hình chất lượng sản phẩm phần mềm
o 9126-2 Phép đánh giá chất lượng ngoài
o 9126-3 Phép đánh giá chất lượng trong
o 9126-4 Độ đo cho chất lượng sản phẩm phần mềm trong quá trình
sử dụng
ISO-9126 là tiêu chuẩn quốc tế đánh giá phần mềm Được phân chia thành 4 phần
tuân theo các tiêu chí một cách nghiêm ngặt: mẫu chất lượng, hệ đo lường bên
ngoài và bên trong, hệ đo lường chất lượng khi sử dụng
Mô hình chất lượng ISO-9126 trên thực tế được mô tả là một phương pháp phân
loại và chia nhỏ những thuộc tính chất lượng, nhằm tạo nên những đại lượng đo
đếm được dùng để kiểm định chất lượng của sản phẩm phần mềm
2.3.4 Phạm vi mô hình chất lượng ISO-9126
ISO-9126 mô tả một mô hình chất lượng sản phẩm phần mềm gồm hai phan:
e - Chất lượng trong và chất lượng ngoài
e Chất lượng sử dụng Phân thứ nhất của mô hình xác định 6 tiêu chí của chất lượng trong, 6 tiêu chí chất
lượng ngoài; các tiêu chí này sau đó lại được chia nhỏ thành nhiều tiêu chí con
Những tiêu chí này được bộc lộ ra ngoài khi phần mềm được coi như là một phần của hệ thống máy tính và là kết quả của các thuộc tính phần mềm bên trong
Phần thứ hai của mô hình mô tả 4 tiêu chí chất lượng sử dụng Chất lượng sử dụng
là hệ quả của 6 tiêu chí chất lượng sản phẩm phần mềm đối với người dùng
Các tiêu chí sản phẩm phần mềm này có thể áp dụng cho tất cả các loại phần mềm Những tiêu chí sản phẩm phần mềm tạo ra sự nhất quán đối với chất lượng sản phẩm phần mềm, đồng thời cung cấp một khung cho việc xác định các yêu cầu đối
với chất lượng phần mềm
Viện Khoa Học Kỹ Thuật Bưu Điện — =8~
Trang 10
Trong phần này, chất lượng sản phẩm phần mềm được xác định và đánh giá theo nhiều hướng, gắn với kết quả thu được, các yêu cầu, sự phát triển, sử dụng, đánh giá, hỗ trợ, tính én định, đảm bảo chất lượng và kiểm định của phần mềm Nó có thể được sử dụng bởi nhà phát triển, tổ chức sử dụng, nhân viên đảm bảo chất lượng phần mềm hay người đánh giá độc lập Đồng thời nó đặc biệt thích hợp cho việc xác định và đánh giá chất lượng sản phẩm phần mềm Ví dụ, mô hình chất lượng này có thể được dùng để:
» - Kiểm tra tính đáp ứng đối với những yêu cầu đã đặt ra
e - Xác định các yêu cầu phần mềm
e - Xác định các đối tượng thiết kế phần mềm
e - Xác định các đối tượng kiểm thử phần mềm
e _ Xác định các tiêu chuẩn đảm bảo chất lượng
e Xác định các tiêu chuẩn chấp nhận cho một sản phẩm phần mềm
hoàn chỉnh
2.3.2 Tiêu chí chất lượng Chất lượng sử dụng phải bao gồm các yêu cầu về chất lượng trong từng trường hợp
sử dụng cụ thể Những yêu cầu này có thể được sử dụng khi xác định các chất
lượng trong và ngoài, sử dụng các tiêu chí chất lượng sản phẩm phần mềm củng
các phép đánh giá tương ứng (hình 1)
- Kết quả sản phẩm Quá trình Sản phẩm phần mềm phan mềm
Phụ thuộc Phụ thuộc
Quá trình đánh giá Phép đánh giá trong Phép đánh giá ngoài Đánh giá chất lượng sử dụng
Hình 1: Chất lượng trong vòng đời sản phẩm
Việc đánh giá sản phẩm phần mềm để thoả mãn các yêu cầu chất lượng là một trong những quy trình trong vòng đời phát triển của phần mềm Chất lượng sản
phẩm phần mềm cần được đánh giá bằng việc đo kiểm các thuộc tính bên trong
(thường là các phương pháp đo tĩnh trên các sản phẩm trung gian), hoặc bằng cách
đo kiểm các thuộc tính bên ngoài (thường là đo các đáp ứng của mã lệnh khi thực
Viện Khoa Học Kỹ Thuật Bưu Điện -9-
Trang 11
thi), hoặc bằng cách đo kiểm chất lượng các thuộc tính sử dụng Mục dich là để sản
phẩm đáp ứng được những yêu cầu trong từng trường hợp sử dụng cụ thể
Quy trình chất lượng góp phần cải tiến chất lượng sản phẩm, và chất lượng sản phẩm góp phần cải tiền chất lượng sử dụng Do đó, việc đánh giá va cải tiến một quy trình đồng nghĩa với cải tiến chất lượng sản phẩm Tương tự, việc đánh giá chất lượng sử dụng có thể tác động ngược trở lại để cải tiến một sản phẩm và đánh giá một sản phẩm phần mềm có thể tác động trở lại để cải tiền một quy trình
Các thuộc tính trong thích hợp của phần mềm là yêu cầu tiền đề để đạt được các
phản ứng bên ngoài, và các hoạt động bên ngoài thích hợp là yêu cầu tiền đề để đạt
được chất lượng sử dụng
Các yêu câu cho chất lượng sản phẩm phần mềm sẽ bao gồm các tiêu chuẩn đánh
giá chất lượng bên trong, bên ngoài và chất lượng sử dụng, để đáp ứng yêu cầu của người sử dụng, người bảo dưỡng, tổ chức sử dụng, và người dùng cuối
2.3.3 Chất lượng sản phẩm và vòng đời
Quan niệm về chất lượng trong, chất lượng ngoải và chất lượng sử dụng thay đổi trong suốt vòng đời phần mềm Ví dụ, chất lượng được xác định là các yêu cầu chất lượng tại thời điểm bắt đầu vòng đời - hầu hết được xem xét dưới góc nhìn bên
ngoài của người dùng và nó khác biệt so với chất lượng sản phẩm trung gian, như là
chất lượng thiết kế - hau hết được nhìn dưới góc độ bên trong của người phát triển Các công nghệ giúp đạt được mức chất lượng cần thiết, như xác định và đánh giá chất lượng, cần hỗ trợ các cách nhìn ngược trở lại Cần phải xác định môi trường và các công nghệ liên quan cho chất lượng, nhằm mục đích quản lý chất lượng một cách đúng đắn tại mỗi giai đoạn trong vòng đời sản phẩm (hình 2)
Với mục đích là đạt được chất lượng cần thiết, đáp ứng yêu cầu của người dùng, ISO 8402 định nghĩa chất lượng là khả năng làm thoả mãn những yêu cầu đặt ra
Tuy nhiên, những yêu cầu do người sử dụng đưa ra không phải lúc nào cũng phản ánh đúng những gi họ thực sự cần bởi vì:
1 Người sử dụng thường không ý thức được nhu cầu của mình
2 Các yêu cầu có thể thay đổi sau khi chúng được đưa ra
3 Những người sử dụng khác nhau thường có những môi trường làm việc khác nhau
4 Không thể tham khảo ý kiến của tất cả các kiểu người sử dụng, đặc biệt là cho các phần mềm đóng gói
Vì thế, các yêu cầu chất lượng không thể hoàn toàn xác định trước khi bắt tay vào thiết kế Do đó, cần phải hiểu các nhu cầu thực sự của người sử dụng ở mức chỉ tiết nhất có thể được, và đưa chúng ra dưới dạng các yêu cầu Mục đích không phải là thu được chất lượng hoàn hảo mà là chất lượng đủ và cần thiết cho mỗi trường hợp
sử dụng cụ thê, khi sản phẩm được phân phối và sử dụng bởi người dùng
Viện Khoa Học Kỹ Thuật Bưu Điện
Trang 12Hình 2: Chất lượng trong vòng đời phần mềm
Các độ đo dùng cho yêu cầu chất lượng có thể chia làm nhiều loại, tuỳ theo các mức
độ thoả mãn khác nhau cho các yêu cầu Ví dụ, có thể chia làm 2 loại: không thoả
mãn và thoả mãn, hoặc 4 loại: vượt quá yêu câu, đạt yêu cầu, đạt mức chấp nhận tối thiểu, không chắp nhận được Các loại chia này được xác định để cả người sử dụng
và người phát triển tránh vượt quá chỉ phí và thời gian làm việc không cần thiết của
Có nhiều cách nhìn khác nhau về chất lượng sản phẩm, đi kèm với nó là phương
pháp đo liên quan tại các giai đoạn khác nhau trong vòng đời phần mềm
Các nhu cầu về chất lượng của người sử dụng được xác định là các yêu cầu
chất lượng trong phép đo chất lượng sử dụng, phương pháp đo chất lượng ngoài,
thậm chí cả phương pháp đo chất lượng trong Những yêu cầu này được xác định bằng phương pháp đo và sử dụng như chuẩn khi đánh giá sản phẩm Để có được một sản phẩm thoả mãn nhu cầu của người dùng đòi hỏi quá trình phát triển phần
mềm phải liên tục và luôn luôn có những phản hồi từ phía họ
Các yêu cầu chất lượng bên ngoài xác định các mức yêu cầu đối với chất lượng theo hướng nhìn từ bên ngoài Chúng bao gồm các yêu cầu xuất phát từ nhu cầu ngưởng dụng, gồm các yêu cầu chất lượng sử dụng Các yêu cầu chất lượng ngoài được sử dụng như là đích của quá trình kiểm tra tại mỗi giai đoạn phát triển Các yêu cầu chất lượng ngoài cho tất cả các tiêu chí chất lượng xác định trong phần này
nên được đặt trong các đặc tả yêu cầu chất lượng sử dụng phương pháp đo ngoài,
nên được chuyên đỗi sang các yêu cầu chất lượng trong, và nên được sử dụng như
là chuẩn để kiểm tra sản phẩm
Các yêu cầu chất lượng trong xác định các mức chất lượng yêu cầu theo hướng
Viện Khoa Học Kỹ Thuật Bưu Điện
Trang 13
nhìn tử bên trong của sản phẩm Các yêu cầu chất lượng trong được sử dụng để
xác định tiêu chí của các sản phẩm trung gian Chúng có thể bao gồm các mô hình tĩnh hoặc động, các tài liệu và mã nguồn khác nhau Các yêu cầu chất lượng trong
có thể được coi là đích cho các kiểm tra tại các giai đoạn khác nhau trong quá trình
phát triển Chúng cũng có thể được sử dụng để xác định các chiến lược phát triển, chuẩn để đánh giá, các kiểm tra trong quá trình phát triển Có thể sử dụng một số
phương pháp đo mở rộng (ví dụ: cho việc tái sử dụng), nằm ngoài phạm vi của
ISONEC 9126 Các yêu cầu chất lượng trong nên được xác định một cách định
lượng qua việc sử dụng phương pháp đo trong
Chất lượng trong là tổng hợp của tắt cả các tiêu chí của sản phẩm phần mềm theo cách nhìn từ bên trong Chất lượng trong được đo kiểm và đánh giá theo các yêu cầu chất lượng trong Các chỉ tiết của chất lượng sản phẩm phần mềm có thể được cải tiền trong suốt quá trình triển khai mã hoá, kiểm thử, nhưng bản chất cơ bản của chất lượng sản phẩm phần mềm thể hiện qua chất lượng trong thì không thay đổi trừ khi có sự thiết kế lại
Chất lượng ngoài ước lượng (dự đoán) là chất lượng mà ước lượng hoặc dự
đoán được của sản phẩm phần mềm tại cuối mỗi giai đoạn trong quá trình phát triển đối với mỗi tiêu chí chất lượng, dựa trên những hiểu biết về chất lượng trong
Chất lượng ngoài là tổng hợp của các tiêu chí của sản phẩm phần mềm theo cách nhìn từ bên ngoài Đó là chất lượng khi phần mềm hoạt động, thường được đo kiểm,
ước lượng trong khi kiểm thử trong môi trường giả lập với dữ liệu giả lập, sử dụng
phương pháp đo ngoài Trong quá trình kiểm thử, hầu hết các lỗi cần được phát hiện
và khắc phục Tuy nhiên, sau kiểm thử, vẫn còn lại một số lỗi Bởi vì rất khó để sửa chữa kiến trúc và các vấn đề liên quan đến thiết kế cơ bản của phần mềm, nên thiết
kế cơ bản của phần mềm thường không thay đổi khi kiểm thử
Chất lượng sử dụng ước lượng (dự đoán) là chất lượng mà ước lượng hay dự
đoán được của sản phẩm phần mềm tại cuối mỗi giai đoạn phát triển đối với mỗi tiêu chí chất lượng sử dụng, dựa trên hiểu biết về chất lượng trong và ngoài
Chất lượng sử dụng là cách nhìn của người dùng về chất lượng của sản phẩm
phần mềm khi nó được sử dụng trong một môi trường và hoàn cảnh cụ thể Nó xác
định phạm vi mà người sử dụng có thể đạt được mục đích của mình trong một môi
trường cụ thể, hơn là xác định các tiêu chí của bản thân phần mềm
Chất lượng trong môi trường của người sử dụng có thể khác với trong môi trường
của người phát triển, đó là do sự khác nhau giữa nhu cầu và khả năng của những
người sử dụng khác, nhau, và sự khác nhau giữa các phần cứng và môi trường Người sử dụng chỉ đánh giá các tiêu chí của phần mềm mà họ dùng tới Đôi khi, các
thuộc tính của phần mềm, xác định bởi người sử dụng trong khi phân tích yêu cầu
không đáp ứng được nhu cầu của người sử dụng trong quá trình sử dụng, đó là do
những thay đổi yêu cầu của người sử dụng và các khó khăn trong việc xác định nhu
cầu
Viện Khoa Học Kỹ Thuật Bưu Điện -
Trang 14Các đối tượng có thể được đánh giá trực tiếp hoặc đánh giá gián tiếp qua kết quả
của chúng Ví dụ một quá trình có thể được đánh giá gián tiếp thông qua việc định
lượng và ước lượng sản phẩm của nó, một sản phẩm có thể được đánh giá gián tiếp
qua đo kiểm hiệu quả làm việc của người sử dụng (sử dụng phương pháp đo chất lượng sử dụng)
Phần mềm không bao giờ chạy một mình mà luôn chạy như một phần của một hệ
thống lớn, bao gồm nhiều phần mềm khác nữa mà nó có các giao diện, phần cứng, điều khiển của người sử dụng, các luồng công việc Sản phẩm phần mềm hoàn
chỉnh có dụng được ước lượng bằng các mức độ của phương pháp đo ngoài được
chọn Phương pháp đo này mô tả các tương tác của nó với môi trường, và được
đánh giá bằng cách quan sát hoạt động của phần mềm Chất lượng sử dụng có thể được đo kiểm bằng các phạm vi trong đó: sản phẩm đáp ứng được nhu cầu của -
người sử dụng cụ thể tương ứng, thoả mãn tính hiệu quả, năng suất, tính an toàn và
sự hài lòng Điều này thường được bỗ sung bằng cách đo kiểm các tiêu chí chất lượng của các phần mềm xác định, có thể thực hiện trước khi phát triển phần mềm
Trong giai đoạn đầu của quá trình phát triển phần mềm, chỉ có tài nguyên và các quá trình được đo Khi đã có những sản phẩm trung gian, chúng có thể được đo kiểm
bằng các mức độ của phương pháp đo trong được chọn Phương pháp đo này có
thể được dùng để dự đoán kết quả của phương pháp đo ngoài Chúng cũng có thể được đo trực tiếp như những tiền đề thiết yếu cho chất lượng ngoài
Một sự khác biệt nữa giữa việc đánh giá sản phẩm phần mềm và đánh giá môi
trường là theo cách chúng được thực hiện Ví dụ, tính tin cậy của một hệ thống
được đánh giá bằng cách quan sát các lỗi gây ra bởi các lý do như phần cứng, phần mềm, người sử dụng ., trong khi tính tin cậy của sản phẩm phần mềm được đánh giá bằng cách quan sát các lỗi và tìm những lý do gây lỗi của phần mềm như lỗi khi
xác định yêu cầu, lỗi thiết kế hay lỗi triển khai
Cũng như vậy, ranh giới của hệ thống được xác định dựa trên mục đích của đánh giá và dựa trên người sử dụng là ai Ví dụ, người dùng trên một máy bay với hệ
thống điều khiển bằng máy tính thì được coi là hành khách, vì thế hệ thống ở đây bao gồm những thành phần mà họ phụ thuộc như phi hành đoàn, máy bay, phần cứng và phần mềm trong hệ thống điều khiển Trong khi nếu coi phi hành đoàn là người sử dụng, thì hệ thống mà họ phụ thuộc chỉ bao gồm máy bay và hệ thống điều
khiển
2.3.5 Sử dụng một mô hình chất lượng Chat lượng sản phẩm phần mềm có thể được đánh giá qua một mô hình chất lượng
cụ thể Mô hình chất lượng nên được sử dụng khi xác định các mục tiêu chất lượng
cho sản phẩm phần mềm hay cho các sản phẩm trung gian Sản phẩm phần mềm nên được phân tách theo cắp bậc vào một mô hình phần mềm với những tiêu chí và
Viện Khoa Học Kỹ Thuật Bưu Điện
Trang 15
những tiêu chí con, sao cho có thể sử dụng chúng như một danh sách để kiểm tra
những vần đề phát sinh liên quan đến chất lượng
Không thể đo đạc tất cả các tiêu chí con trong và ngoài cho tất cả các phần của một sản phẩm phần mềm lớn Tương tự như vậy, thường không thể đo đạc chất lượng
sử dụng cho tất cả các kịch bản sử dụng có thể có Tài nguyên để đánh giá cần được xác định giữa nhiều loại phương pháp đo dựa trên đối tượng công việc, bản chất của sản phẩm và quá trình thiết kế
2.3.6 Tiêu chí đánh giá sản phẩm phần mềm
2.3.6.1 Mô hình chất lượng trong và mô hình chất lượng ngoài
Mô hình chất lượng ISO-9126 trên thực tế được mô tả là một phương pháp phân loại và chia nhỏ những thuộc tính chất lượng, nhằm tạo nên những đại lượng
đo đếm được dùng để kiểm định chất lượng của sản phẩm phần mềm Mô hình chất lượng trong và chất lượng ngoài của sản phẩm trong ISO-9126 thể hiện trên hình 3
| | | | | _|
Tính năng Tính tin cậy Tính khả dụng Tính hiệu quả Khả năng bảo trì Tính khả chuyển
us Tỉnh dễ hiểu ofa bine thế tich hyp
Tính chính xác | | Khả năng sửa lỗi Tinh an toan » Khả năng phục 2 Kha nang van Tỉnh dễ học › Sử dụng tại ˆ gian se Khả năng thay | | Khả năng cài đặt doi * Kha nang chung
Tỉnh tương tác hồi Tỉnh hắp dẫn hành nguyên Khả năng kiểm Tỉnh căn bằng Khả nang thay sống
dinh th
Hình 3: Mô hình chất lượng cho chất lượng trong và ngoài
Mỗi tiêu chí chất lượng, tiêu chí chất lượng con của phần mềm đều được định nghĩa
Với mỗi tiêu chí và các tiêu chí con, khả năng của phần mềm được xác định bằng
tập các thuộc tính trong có thể đo đạc được Các tiêu chí và các tiêu chí con cũng có
thé đo đạc trong phạm vi khả năng của hệ thống chứa phần mềm
Tính chức năng
Khả năng của phần mềm cung cấp các chức năng đáp ứng được nhu cầu sử dụng khi phần mềm làm việc trong điều kiện cụ thể
—_ Tính phù hợp: là khả năng của một phần mềm có thể cung cấp một
tập các chức năng thích hợp cho công việc cụ thể phục vụ mục đích
của người sử dụng
Viện Khoa Học Kỹ Thuật Bưu Điện -14-
Trang 16Tinh tin cay
Tính chính xác: là khả năng của phần mềm có thể cung cấp các kết
quả hay hiệu quả đúng đắn hoặc chấp nhận được với độ chính xác
cần thiết
Khả năng hợp tác làm việc: khả năng tương tác với một hoặc một
vài hệ thống cụ thể của phần mềm
Tính an toàn: khả năng bảo vệ thông tin và dữ liệu của sản phẩm
phần mềm, sao cho người, hệ thống không được phép thì không thể
truy cập, đọc hay chỉnh sửa chúng
Có các chức năng phù hợp: các phần mềm theo các chuẩn, quy
ước, quy định
Là khả-năng của phần mềm có thể hoạt động ổn định trong những điều kiện cụ thể
Tính hoàn thiện: khả năng tránh các kết quả sai Khả năng chịu lỗi: khả năng của phần mềm hoạt động ổn định tại một mức độ cả trong trường hợp có lỗi xảy ra ở phần mềm hoặc có những
vi phạm trong giao diện
Khả năng phục hồi: khả năng của phần mềm có thể tái thiết lại hoạt
động tại một mức xác định và khôi phục lại những dữ liệu có liên quan
trực tiếp đến lỗi
Tính tin cậy chung: phần mềm thoả mãn các chuẩn, quy ước, quy
Tinh kha dung
Là khả năng của phần mềm có thể hiểu được, học được, sử dụng được và hấp dẫn
người sử dụng trong từng trường hợp sử dụng cụ thể
Có thể hiểu được: người dùng có thể hiểu được xem phần mềm có
hợp với họ không và và sử dụng chúng thế nào cho những công việc
Tính hấp dẫn: khả năng hấp dẫn người sử dụng của phần mềm
Tính khả dụng phù hợp: phần mềm thoả mãn các chuẩn, quy ước,
Trang 17
Khả năng của phần mềm có thể hoạt động một cách hợp lý, tương ứng với lượng tài nguyên nó sử dụng, trong điều kiện cụ thể
— Đáp ứng thời gian: khả năng của phần mềm có thể đưa ra một trả lời,
một thời gian xử lý và một tốc độ thông lượng hợp lý khi nó thực hiện
công việc của mình, dưới một điều kiện làm việc xác định
- Tan dụng tài nguyên: khả năng của phần mềm có thể sử dụng một
lượng, một loại tài nguyên hợp lý để thực hiện công việc trong những
điều kiện cụ thể
— `Tính hiệu quả chung: thoả mãn các chuẩn, quy ước, quy định
Khả năng bảo hành, bảo trì
Khả năng của phản mềm có thể chỉnh sửa Việc chỉnh sửa bao gồm: sửa lại cho đúng, cải tiến và làm phần mềm thích nghỉ được với những thay đổi của môi trường,
của yêu cầu và của chức năng xác định
- Có thể phân tích được: phần mềm có thể được chẩn đoán để tìm
những thiếu sót hay những nguyên nhân gây lỗi hoặc để xác định những phản cần sửa
— Có thể thay đổi được: phần mềm có thể chắp nhận một số thay đổi
cụ thể trong quá trình triển khai
—_ Tính ổn định: khả năng tránh những tác động không mong muốn khi
Là khả năng của phần mềm cho phép nó có thể được chuyển từ môi trường này
sang môi trường khác
— Khả năng thích nghỉ: khả năng của phần mềm có thể thích nghỉ với nhiều môi trường khác nhau mà không cần phải thay đổi
—_ Có thể cài đặt được: phần mềm có thể cài đặt được trên những môi trường cụ thê
Viện Khoa Học Kỹ Thuật Bưu Điện - l6 -
Trang 18
- Khả năng cùng tồn tại: phần mềm có thể cùng tồn tại với những
phần mềm độc lập khác trong một môi trường chung, cùng chia sẻ
những tải nguyên chung
- Khả năng thay thế: phần mềm có thể dùng thay thế cho một phan
mềm khác, với cùng mục đích và trong cùng môi trường
~ Tinh khả chuyên phù hợp: thoả mãn các chuẩn, quy ước, quy định
2.3.6.2 Mô hình chất lượng sử dụng Tiêu chí đối với chất lượng sử dụng (hình 4) được chia thành 4 tiêu chí: tính hiệu quả, năng suất, tính an toàn và tính thoả mãn
Chất lượng sử dụng
việc đáp ứng các tiêu chuẩn chất lượng trong không có nghĩa sẽ đáp ứng tiêu chuẩn
chất lượng ngoài, đáp ứng tiêu chuẩn chất lượng ngoài không có nghĩa sẽ đáp ứng tiêu chuẩn của chất lượng sử dụng
Chất lượng sử dụng
Là khả năng của phần mềm cho phép những người sử dụng cụ thể đạt được những
mục đích cụ thể với tính hiệu quả, tính năng suất, tính an toàn và tính thoả mãn,
trong một hoàn cảnh làm việc cụ thể
e Tính hiệu quả: khả năng của phần mềm cho phép người dùng đạt
được mục đích một cách chính xác và hoàn toàn, trong điều kiện làm
việc cụ thể
« Tính năng suất: khả năng của phần mềm cho phép người dùng sử
dụng lượng tài nguyên hợp lý tương đối để thu được hiệu quả công
việc trong những hoàn cảnh cụ thể
Viện Khoa Học Kỹ Thuật Bưu Điện -17-
Trang 19
e - Tính thoả mãn: phần mềm có khả năng làm thoả mãn người sử dụng
trong từng điều kiện cụ thể
2.3.7 Tiêu chuẩn đánh giá sản phầm phần mềm
Tiêu chuẩn để đánh giá các tiêu chí trong phần 1 của ISO-9126 là thông qua một mô
hình chất lượng (là một phương pháp phân loại và chia nhỏ những thuộc tính chất
lượng, nhằm tạo nên những đại lượng đo đếm được dùng để kiểm định chất lượng của sản phẩm phần mềm) Tiêu chuẩn đánh giá này được trình bẩy trong :
Phần 2 là tập hợp phương pháp đo để đánh giá 06 tiêu chí đối với chất
lượng ngoài
Phần 3 là tập hợp phương pháp đo để đánh giá 06 tiêu chí đối với chất
lượng trong
Phần 4 là tập hợp phương pháp đo để đánh giá chất lượng khi sử dụng
Ví dụ phương pháp đo để được xây dựng để đánh giá tính chức năng:
Viện Khoa Học Kỹ Thuật Bưu Điện -
Trang 20Tínhtoàn |Việc triển khailThực hiện các bài kiểm tra chức
vẹn triển |các chức năng|năng cho hệ thống theo các đặc
khai chức |như thế nào soltính yêu cầu
năng với các đặc tính an Tính tóan số lượng các chức
yêu cầu năng bị mắt được phát hiện trong
quá trình đánh giá và so sánh với
số lượng các chức năng được
miêu tả trong đặc tính yêu cầu
X=1-A/B
A= Số lượng các chức năng bị mất
Phần 6: Tài liệu đánh giá các khối
Phân I của chuẩn ISO/IEC 14598 giới thiệu về các phần khác, đưa ra quy trình đánh giá chung cho sản phẩm phần mềm Nó cung cấp một cái nhìn tổng quát về các chuẩn khác và giải thích mối quan hệ giữa ISO/IEC 14598 và mô hình chất lượng
trong ISO/IEC 9126 như trong hình 5 Phần này xác định một cách rõ ràng các thuật ngữ công nghệ được sử dụng trong các phần khác, bao gồm
đánh giá chất lượng phần mềm và các khái niệm chung các yêu cầu chung, Bên cạnh đó phần l cung cấp mô hình cơ bản để đánh giá chất lượng cho các sản
phầm phần mềm và các yêu cầu cho các phương pháp đo và đánh giá sản phẩm
phần mém ISO/IEC 14598 được sử dụng cho người phát triển, người sử dụng và những người đánh giá độc lập có trách nhiệm đánh giá sản phầm phần mềm
Viện Khoa Học Kỹ Thuật Bưu Điện -19-
Trang 21
- Quá trình của sản
Qua trinh danh ia
phẩm mới hay cải tiến các sản phẩm sẵn có Nó cũng phù hợp với các tổ
chức dự định sử dụng chính nhân viên kỹ thuật của mình để thực hiện đánh
giá sản phẩm phần mềm
s°e_ Người mua sản phẩm: các quá trình đánh giá phần mềm dành cho người mua sản phẩm có thể được sử dụng bởi các tổ chức có kế hoạch khai thác, tái sử dụng các sản phẩm phần mềm đã có hoặc sắp phát triển Nó có thể được sử dụng để xác định xem sản phẩm phần mềm có chấp nhận được không hoặc để lựa chọn phần mềm thích hợp giữa các sản phẩm cùng chức
năng
e._ Người đánh giá: người đánh giá (thường làm việc cho một bên thứ 3) sử
dụng những quá trình đánh giá riêng để có những kết luận độc lập về một sản phẫm phần mềm Người phát triển hệ thống, người khai thác hay một
bên liên quan nào đó có thể yêu cầu thực hiện những quá trình này
2.4.1 Quá trình đánh giá dành cho người phát triển
2.4.1.1 Những yêu cầu chung
Yêu cầu tỗ chúc: tỗ chức phát triển sẽ xây dựng một hạ tầng cho phép thu thập số
liệu, chỉnh sửa quá trình dựa trên các phân tích dữ liệu
Viện Khoa Học Kỹ Thuật Bưu Điện - 20-
Trang 22Nhiều phương pháp phân tích dữ liệu yêu cầu dữ liệu từ dự án trước đã được phát
triển trong điều kiện tương tự và với những yêu cầu chất lượng có thể so sánh Do vậy, người phát triển nên áp dụng một mô hình phát triển giống với mô hình sử dụng
trong dự án trước của tổ chức Tất nhiên là bộ thuộc tính của mô hình trước cũng
được áp dụng lại vào dự án này để phục vụ việc phân tích dữ liệu
2.4.1.2 Thiết lập các yêu cầu đánh giá
Xác định các yêu cầu chất lượng Người phát triển cần phải chắc rằng đã xác định được các yêu cầu chất lượng chung có thể áp dụng được cho phần mềm Khi xác định các yêu cầu chung, cần
xem xét: các nhu cầu của người sử dụng, kinh nghiệm của tổ chức, kinh nghiệm
trong lĩnh vực ứng dụng, các yêu cầu toàn vẹn phần mềm, các chuẩn cần đáp ứng, các quy định và luật Người phát triển cần phải chắc chắn rằng chỉ mô hình chất lượng đã được thông qua được sử dụng để cấu trúc các yêu cầu chất lượng
Một danh sách các yêu cầu hệ thống khác có thể ảnh hưởng đến tính khả thi của yêu cầu chất lượng của hệ thống sẽ được liệt kê Các vấn đề liên quan đến khai thác như các ràng buộc về giá, kế hoạch, vấn đề bảo hành và các vấn đề của tổ chức cũng nên được quan tâm Những yêu cầu mâu thuẫn nhau nên được giải quyết
Tất cả các bên liên quan đến quá trình xây dựng và khai thác, sử dụng hệ thống
phần mềm nên tham gia hoặc nên được trình bay trong quá trình xác định các yêu
cầu chất lượng Tính ưu tiên tương quan của các yêu cầu nên được bàn luận với tất
cả các bên liên quan Mỗi nhóm nên đánh giá mức quan trọng của các yêu cầu chất
lượng cùng với các yêu cầu hệ thống khác và các ràng buộc từ nhiều phía
Các yêu cầu chất lượng được xác định có thể mâu thuẫn hoặc tương hỗ với nhau
Mâu thuẫn giữa các yêu cầu nên được giải quyết tại thời điểm này Ngoài ra, nếu việc lựa chọn các yêu cầu chất lượng lại mâu thuẫn với giá thành, kế hoạch hay các chức năng hệ thống, một trong hai thứ mâu thuẫn sẽ bị thay thế
Người phát triển sẽ tiến hành một phân tích khả thí về các yêu cầu chất lượng Kinh nghiệm từ các dự án trước thực hiện trong tổ chức, với những yêu cầu chất lượng
tương tự, sẽ được xem xét Người phát triễn sẽ đảm bảo rằng các yêu cầu này là có tính khả thi về mặt công nghệ, hợp lý, có tính bổ sung cho nhau, có thể đạt được và
có thé kiểm tra được Các yêu cầu chất lượng sẽ được chuyển vào một tập dựa theo
mô hình chất lượng đã được thống nhất Tập các yêu cầu này phải được thông qua của tất cả các bên liên quan J3 LÝ 4221M
TRƯỜNG 8i KỶ THUẬT GÓNG NGHỆ TP.HCV Í
Viện Khoa Học Kỹ Thuật Bưu Điện 4 _ 24879 lor
Trang 23
2.4.1.3 Đặc tả công việc đánh giá Phần này liên quan đến việc định lượng các yêu cầu chất lượng Với mỗi yêu cầu
chất lượng, có một vài các thuộc tính ngoài được lựa chọn để biểu diễn chúng Các giá trị đo được chính là thể hiện định lượng của các yêu cầu đó
Với mỗi yêu cầu chất lượng ngoài có một vài thuộc tính trong được chọn để biểu diễn chúng trong suốt quá trình phát triển Các giá trị đích đo được của các thuộc tính trong đó được sử dụng để điều khiển chất lượng trong quá trình phát triển
Các yêu câu chất lượng ngoài Người phát triển sẽ:
e - Xác định quá trình nào, hoạt động nào trong vòng đời, thực thể nào cần đánh giá
e Xác định các thuộc tính ngoài nào cần phải đo, xác định phương pháp đo cho
mỗi yêu cầu chất lượng từ các thực thể và các thuộc tính ngoài đã xác định
trước đó
e Xác định các giá trị đích cho mỗi phương pháp đo, xác định điều kiện thực hiện phương pháp đo, tức là xác định các thuộc tính khác mà giá trị của chúng ảnh hưởng lên phương pháp đo và xác định giá trị của các thuộc tính
đó
e - Tiến hành phân tích tính khả thi của các yêu cầu chất lượng Kinh nghiệm tử
các dự án trước đó với những yêu cầu chất lượng tương tự thực hiện trong
tổ chức sẽ được xem xét, đồng thời đảm bảo rằng các yêu cầu này có tính khả thi về mặt công nghệ, hợp lý, bổ sung cho nhau, có thể đạt được và có
thể kiểm tra được
Các yéu cau chất lượng trong Người phát triển sẽ:
e - Xác định các quá trình, các hoạt động và các thực thể nào trong vòng đời cần
đo đạc và đánh giá các thuộc tính trong
e - Xác định các thuộc tính trong cần tiền hành đo đạc
e - Xác định phương pháp đo cho mỗi kết hợp thuộc tính, thực thé
e - Xác định tập các thuộc tinh trong ma
- Bao trùm hoạt động và sản phẩm trung gian
- - Phù hợp với lĩnh vực ứng dụng và với phương pháp sử dụng trong
Trang 24
e Xac dinh mét tap các thuộc tính trong liên quan đến tất cả các thuộc tính ngoài, cho tất cả các yêu cầu chất lượng Những thuộc tính này được sử dụng như những yếu tố chỉ định chất lượng
e Mô tả mô hình dự đoán cho những yếu tố chỉ định chất lượng đã xác định ở trên, mối quan hệ giữa các yếu tố chỉ định này với các thuộc tính chất lượng ngoài Đề sử dụng quản lý hiệu quả, số lượng các yếu tố chỉ thị nên được giữ
ở mức nhỏ Nên đặt ưu tiên cho các yếu tố chỉ thị được hỗ trợ bởi dữ liệu thu thập trong suốt quá trình tồn tại của quá trình, ví dụ như quản lý cấu hình hay kiểm tra thống nhát
e Đặt giá trị đích cho các thuộc tính trong khi thích hợp
e Xác định điều kiện để thực hiện đo đạc, tức là xác định các thuộc tính khác
mà giá trị của chúng ảnh hưởng đến công việc đo đạc và xác định giá trị của
các thuộc tính này
2.4.1.4 Thiết kế đánh giá
Phần này liên quan đến việc thiết kế đánh giá Việc đánh giá ngoài liên quan đến các yêu cầu chất lượng ngoài, việc đánh giá trong liên quan đến điều khiển và theo dõi chất lượng trong trong suốt quá trình phát triển
Lập kế hoạch đánh giá ngoài Người phát triển sẽ xác định các thủ tục thu thập số liệu cần thực hiện để thu được
giá trị thực cho mỗi phương pháp đo ngoài Công việc này bao gồm cả xác định thời
gian trong kế hoạch, trách nhiệm, sử dụng các công cụ thu thập và phân tích số liệu
Nếu cần đào tạo đặc biệt cho nhân viên, thì cũng sẽ được lên kế hoạch
Người phát triển cũng sẽ xác định độ chính xác của phương pháp đo Bất kỳ mô
hình thống kê nào được sử dụng cũng sẽ được xác định, bao gồm các yêu cầu về
dữ liệu đầu vào, chiến lược lấy mẫu
Lập kế hoạch đánh giá trong Việc lập kế hoạch đánh giá trong, trước hết gồm những công việc như trong lập kế
hoạch đánh giá ngoài Ngoài ra, người phát triển cũng sẽ xác định các hoạt động có
thể có (ví dụ như công việc đánh giá mở rộng) trong trường hợp kết quả đo kiểm
không thuyết phục hoặc đáng báo động Người phát triển sẽ xem xét các tác động
lên hoạt động phát triển phần mềm Tập phương pháp đo có thể gợi ý một thay đổi trong quá trình phát triển
2.4.1.5 Thực hiện công việc đánh giá
Phần này liên quan đến việc thu thập số liệu về chất lượng theo như kế hoạch để so
sánh với các giá trị đích
Đánh giá trong Viện Khoa Học Kỹ Thuật Bưu Điện - 23 -