1. Trang chủ >
  2. Công nghệ thông tin >
  3. Lập trình >

Hình 1.2: Ví dụ kết quả phép đo phần mềm (Fsoft-fpt)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (720.7 KB, 91 trang )


1.2.3 Các yêu cầu đối với một phép đo phần mềm

o Đơn giản để có thể tính toán một cách dễ dàng.

o Có tính thực tế và tính thuyết phục cao (ví dụ giá trị đo được tỷ lệ với chất

lượng sản phẩm).

o Thể hiện tính khách quan (khi tiến hành bởi nhiều người khác nhau, bằng thủ

công hay bằng máy tính phải cho những kết quả tương tự nhau).

o Có đơn vị đo được chuẩn hóa (ví dụ giá trị đo được nằm trong khoảng 0..1,

càng gần 1 tức là chất lượng càng cao).

o Độc lập với ngôn ngữ lập trình.

o Có tính tích cực đối với quá trình nâng cao chất lượng sản phẩm (cung cấp

những thông tin phản hồi có giá trị cho nhóm phát triển phần mềm).



1.2.4 Các bước của quá trình đo phần mềm

Như phần 1.1.1 đã nói, khi muốn đo một thuộc tính của một thực thể nào đó,

chúng ta cần phải có một số hiểu biết về thuộc tính của thực thể sắp tiến hành đo,

sau đó cần có phương tiện để thực hiện phép đo (độ đo, công cụ đo). Khi cần tiến

hành đo phần mềm, chúng ta có thể tiến hành theo những bước sau [7]:

1. Lựa chọn phép đo. Tùy mục đích và môi trường phần mềm mà chúng ta lựa

chọn phép đo phù hợp.

2. Tiến hành đo trong môi trường phần mềm đó.

3. Đánh giá kết quả đo và có những cải tiến phép đo.



1.2.5 Một ví dụ về phép đo phần mềm

Trong phần này chúng ta đưa ra một ví dụ về phép đo của Halstead [5]. Phép

đo này dựa trên số toán tử và toán hạng có trong chương trình để đưa ra ước tính

về chi phí thời gian để viết đoạn chương trình đó.

Một chương trình P là tập hợp các ký hiệu, gồm có toán tử và toán hạng. Các

phép đo ban đầu được định nghĩa:

µ1 = số toán tử phân biệt



N1 = tổng số toán tử



µ2 = số toán hạng phân biệt



N2 = tổng số toán hạng



Độ dài của chương trình P được định nghĩa là N=N 1+N2. Lượng từ vựng của P là

µ=µ1+µ2. Chi phí công sức (effort) để xây dựng chương trình P được ước tính

như sau:



18



E=



µ1 N 2 N log µ

2µ 2



Thời gian thực sự cần để viết đoạn chương trình P được ước tính dựa trên kết quả

nghiên cứu của John Stroud [8]: T = E / 18 (giây). T = E / 18 (giây).

Ví dụ: Xét đoạn chương trớnh viết bằng FORTRAN sau:

SUBROUTINE SORT (A, N)

INTEGER A(100), N, I, J, SAVE, M

ROUTINE SORTS ARRAY A INTO DESCENDING ORDER

IF (N.LT.2) GO TO 40

DO 30 I=2, N

M=I-1

DO 20 J=1, M

IF (A(I).GT.A(J)) GO TO 10

GO TO 20

10SAVE = A(I)

SAVE = A(I)

A(I) = A(J)

A(J) = SAVE

20CONTINUE

CONTINUE

30CONTINUE

CONTINUE

40RETURN

RETURN

END

µ1 = 14



µ2 = 13



N1 = 51N



N2 = 42

N = N1 + N2 = 93

µ = µ1 + µ2 = 27



E=



µ1 N 2 N log µ

= 10045

2µ 2



T = E / 18 = 10045 / 18 = 558 giây ≈ 10 phút.



1.2.6 Một số mô hình đo phần mềm

Chúng ta đã biết tại sao trong công nghệ phần mềm cần tiến hành các phép đo.

Bây giờ chúng ta xem xét một số kết quả nghiên cứu đã đạt được trong phép đo

phần mềm. Các kết quả này bao gồm các vấn đề sau:

Mô hình đo và ước tính chi phí và nhân lực.

19



Mô hình đo năng suất.

Mô hình đánh giá chất lượng phần mềm.

Mô hình đánh giá độ tin cậy.

Mô hình đánh giá hiệu năng.

Độ phức tạp tính toán.

Độ phức tạp cấu trúc chương trình.

Ước tính chi phí và nhân lực

Yêu cầu này xuất phát từ phía nhà quản lý. Người quản lý muốn dự đoán sớm

chi phí cho các dự án sắp tiến hành. Một số mô hình đã được đề xuất là

COCOMO (Boehm) [1], Function Point (Albrecht) [6].

Dựa vào kết quả nghiên cứu các dự án phần mềm, người ta đưa ra các công

thức có thể ước tính trước chi phí cho các dự án sắp tiến hành. Mô hình

COCOMO (Constructive Cost Model) đưa ra công thức cơ bản của nó như sau :

E = ai ( KLOC ) bi

D = ci E di



trong đo E là chi phí về nhân lực – tháng

D là thời gian cần để hoàn thành sản phẩm

KLOC là ước tính số nghìn mã lệnh

Các hệ số ai, bi, ci, di được cho trong bảng 1.3, các dự án phần mềm được chia

thành ba loại: loại dự án nhỏ và đơn giản, loại dự án trung bình về mặt kích cỡ và

độ phức tạp, loại dự án lớn và phức tạp có sự ràng buộc giữa phần cứng và phần

mềm.

Dự án

ai

bi

ci

Nhỏ

2.4

1.05

2.5

Trung bình

3.0

1.12

2.5

Lớn

3.6

1.20

2.5

Bảng 1.2: Các hệ số trong mô hình COCOMO



di

0.38

0.35

0.32



Function Point tính dựa trên trọng số của các thông tin về : số đầu vào, số đầu

ra, số yêu cầu của người sử dụng, số file, số giao diện với bên ngoài.Trọng số

(weighting factor) này biểu hiện các thực thể trên là thuộc loại đơn giản, trung

bình hay phức tạp, lấy giá trị trong khoảng từ 3 đến 15. Ngoài ra người ta còn

phải trả lời 14 câu hỏi khác để thu được một giá trị gọi là trị số ảnh hưởng

(influence). Function point được tính như sau:

function point = SUM(weighting factor) * [0.65 + 0.01 * SUM(influence)]



20



Function point cũng là một thông số tốt để chỉ kích thước phần mềm. Phương

pháp này không phụ thuộc vào quy trình phát triển phần mềm và ngôn ngữ được

sử dụng. Tuy nhiên điểm yếu của phép đo này là sự đánh giá chủ quan khi trả lời

các câu hỏi và nó không thể tính tự động được.

Mô hình đánh giá chất lượng

Một số mô hình đánh giá chất lượng được sử dụng rộng rãi trong công nghệ

phần mềm gồm có: mô hình FCM, mô hình ISO 9126, ... Mô hình đánh giá nhân

tố - tiêu chuẩn (Factor-Criteria-Metrics, FCM) được xem là một thành phần cơ

bản để đánh giá chất lượng phần mềm. Nguyên tắc cơ bản của mô hình này là

mỗi thuộc tính được chia thành một tập các nhân tố mà bản thân chúng có thể

được chia thành một tập các tiêu chuẩn và các tiêu chuẩn được tính toán qua các

độ đo (metrics). Các mô hình chất lượng phần mềm của ISO và IEEE được xây

dựng dựa trên mô hình FCM.



Nh©n tè 1

Tiªu chuÈn 1



Tiªu chuÈn 2



Nh©n tè 2

Thuéc tÝnh



.

.

.



.

.

.



Tiªu chuÈn k



§é ®o a

§é ®o b

.

.

.



§é ®o x



Nh©n tè n



Hình 1.3: Mô hình FCM

Các nhân tố, tiêu chuẩn và độ đo được sử dụng như sau : khách hàng và người

giám đốc chỉ quan tâm đến mức thuộc tính và mức nhân tố (factor, ví dụ như độ

tin cậy), người quản lý và điều hành dự án làm việc với mức tiêu chuẩn (criteria,

ví dụ như tính chính xác của kết quả thực thi chương trình), họ phải xem xét

những tiêu chuẩn nào ảnh hưởng đến nhân tố nào; ở mức sản xuất phần mềm,

nhân viên của dự án phải thu thập các độ đo (metric, ví dụ như số lỗi trong quá

trình kiểm tra).

Chất lượng phần mềm, theo ISO 9126, được hiểu là “tất cả các tính chất hay

thuộc tính của sản phẩm phần mềm làm cho nó có khả năng thích ứng với các

tình huống hay là thỏa mãn cỏc yờu cầu”. Ngoài ra, ISO 9126 cũng nêu ra chất

lượng phần mềm có 6 nhân tố sau:



21



Xem Thêm
Tải bản đầy đủ (.doc) (91 trang)

×