Tải bản đầy đủ (.pdf) (20 trang)

Bài giảng Đảm bảo chất lượng phần mềm: Đặc tả phần mềm - Nguyễn Anh Hào

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 (1.79 MB, 20 trang )

SW Quality Assurance

1

02. Đặc tả phần mềm


Nguyễn Anh Hào
Khoa CNTT2
Học viện CNBCVT – Cs Tp.HCM


Yêu cầu là gi ?

2
 Yêu

cầu (requirements) là đặc tả cho những gì
cần phải được hiện thực (được thoả mãn).
đặc tả hành vi xử lý của phần mềm (functions)
đặc tả các đặc tính của phần mềm (characteristics)
đặc tả các ràng buộc đ/v cách thức phát triễn phần
mềm (constraints).

 Yêu

cầu không tường minh (needs) là những
mong muốn được cho là cần thiết, nhưng không
được đặc tả.
 Cả yêu cầu lẫn mong muốn đều góp phần quyết
định chất lượng của phần mềm.


Software_Requirements, 3rd edition, 2013.pdf: Page 6


2 khía cạnh mơ tả cho PM

3

Người sử dụng cần nêu ra các yêu cầu đ/v PM
để nó thoả mãn cho nhu cầu sử dụng của họ.
 VD: đáng tin cậy (reliability)|user là PM cho
kết quả chính xác trong mọi tình huống.
2. Nhà phát triễn cần biết các chức năng và đặc
tính được mong đợi từ PM để làm ra nó.
 ie. developers cần biết
1.

Yêu cầu chức năng (functional requirements)
Yêu cầu đặc tính (non-functional requirements)
 Ví dụ : yếu tố đáng tin cậy|user được developer hiểu
là nhất quán (consistency), chịu đựng được hư hỏng
(fault tolerance) & chính xác (accuracy), là những
thuộc tính cố hữu của PM mà developer có thể kiễm
soát được.




Làm PM thoả mãn yêu cầu (1)

4


 Thông

thường, nhà phát triễn sẽ phiên dịch yêu
cầu và mong muốn của người sử dụng thành
đặc tả chức năng và đặc tính của phần mềm sẽ
xây dựng.
Vấn đề là:
 Liệu các yêu cầu từ users có đủ để làm ra phần
mềm có chất lượng ?


Ie, đơi khi user khơng nói ra nhưng devs phải biết.

 Các

đặc tính chất lượng được yêu cầu từ users
được hiểu như thế nào cho đúng để cài đặt ?



Hiểu đúng: không hiểu lầm, cả user lẫn devs đều có
chung một ý niệm như nhau đối với yêu cầu.


5

Mối quan hệ giữa các đặc tả

dot arrow = “is the origin of…”, arrow = “are stored in …”

Software_Requirements, 3rd edition, 2013.pdf: Page 8


Các yếu tố tham gia đặc tả yêu cầu

6

Slide

trước chỉ ra rằng một chức năng của phần
mềm được đặc tả từ 5 nguồn:

1. Yêu cầu từ users (user requirements doc)
 2. Quy tắc quản lý tổ chức (business rules)
 3. Đặc tính chất lượng được mong đợi ở sản phẩm phần
mềm (quality attributes), bắt nguồn từ quy tắc quản lý.
 4. Yêu cầu của hệ thống có chứa phần mềm.
 5. Các giao tiếp ngồi.


Phần

mềm có chất lượng chỉ khi các đặc tả trên
đã được hiểu đúng và làm đúng, trong đó có đặc
tả về các đặc tính chất lượng được mong đợi (bắt
nguồn từ quy tắc quản lý).


Làm PM có chất lượng (2)


7
Thực

tế:

Người sử dụng có thể mơ tả được u cầu chức năng,
nhưng khó mơ tả những đặc tính nào của PM
(reusability, maintainability,… ) quyết định chất lượng
của PM.
Đặc tính được u cầu đơi khi bị nhầm lẫn, vd: dể sử
dụng (do năng lực của người sử dụng), chạy nhanh
(do tài nguyên cấp cho PM),…
Vấn

đề trong việc mơ tả u cầu đ/v SPPM:

Cần chuẩn hố các yêu cầu chất lượng đ/v phần mềm
(gọi là các yếu tố chất lượng, quality factors, “QF”) để
hiểu đúng và sử dụng đúng từ 2 phía.
Cần ánh xạ các yếu tố chất lượng thành những đặc
tính cố hữu của phần mềm để devs cài đặt chúng vào
trong sản phẩm.


8

Các mơ hình chất lượng của SPPM
Các

mơ hình chất lượng PM trong SE:


McCall (1977), B. Boelm, …
ISO 9126 (2000) → ISO 25010 →SQuaRE,…
Vai

trị của các mơ hình này:

Chuẩn hố các yếu tố chất lượng của phần
mềm ở góc độ sử dụng (tránh trùng lặp, mâu
thuẩn hoặc hiểu lầm).
Ánh xạ các yếu tố chất lượng thành các đặc
tính của sản phẩm phần mềm.
(Để đánh giá mức độ thoả mãn các yêu cầu chất
lượng từ các đặc tính được thiết kế của phần mềm.)


Mơ hình Mc.Call (1977)

9

Chuyển giao

Xây dựng

Cập nhật

Sử dụng (vận hành)

PM cần thỏa mãn các yêu cầu & mong đợi từ 3
khía cạnh: chuyển giao, vận hành và cập nhật.

2. Các yếu tố chất lượng (quality factors) được đưa
ra từ 3 khía cạnh này, để users và devs “hiểu
nhau” (có chung quan điểm).
3. Quality factors được mơ hình “phiên dịch” thành
các đặc điểm của PM (quality criteria) cho devs
tiến hành xây dựng PM.
1.


10

Mơ hình Mc.Call (1977)

Quality Factors = external quality factors


Mc.Call : OPERATION

11

Correctness: là khả năng cung cấp các kết quả
chính xác chấp nhận được.
Reliability: Là khả năng hoạt động ổn định trong
những điều kiện bất thường và tránh được các kết
xuất sai.

1.
2.




3.
4.
5.

Khả năng chịu lỗi.
Khả năng tự phục hồi.

Usability: Là khả năng giúp người sử dụng hiểu
được, học được và sử dụng được phần mềm.
Integrity: Là khả năng bảo vệ thông tin và dữ liệu để
ngăn chặn sự truy cập, đọc hay chỉnh sửa trái phép.
Efficiency: Là khả năng thực hiện tất cả các chức
năng một cách hợp lý tương ứng với lượng tài
nguyên được phép sử dụng.


Mc.Call : TRANSITION

12
1.




2.


3.




Portablity: Là khả năng dùng được PM trong
nhiều mơi trường khác nhau.

Thích nghi với nhiều mơi trường (lớp nền, services,
…)
Cùng nhau tồn tại trong môi trường (no conflict)
Thay thế cho phần mềm khác có cùng chức năng

Reusability: Là khả năng sử dụng lại được một
hoặc nhiều thành phần của PM.
PM có thể tháo rời thành nhiều gói dùng lại được

Interoperability: khả năng cộng tác giữa các
thành phần, hoặc giữa PM với các hệ thống
khác.
PM có giao tiếp & phương thức hợp chuẩn.


Mc.Call : REVISION

13

Maintainability: Là mức độ trợ giúp từ PM cho
người bảo trì, để giảm thiểu nổ lực tìm ra
nguyên nhân hư hỏng (failures), sửa chữa
hoặc cải tiến.

1.





Cấu trúc thành phần của PM thuận lợi cho bảo trì
Có tài liệu đặc tả tốt về phần mềm (q.lý cấu hình)

Flexibility: Là mức độ đáp ứng linh hoạt của
PM cho các yêu cầu đa dạng trong phạm vi
sử dụng các chức năng được thiết kế.

2.



Dự trù trước các tình huống tùy biến của chức
năng

Testability: Là mức độ trợ giúp người kiểm tra
đánh giá, chẩn đốn để tìm lỗi hoặc để xác
định những chổ cần sửa của phần mềm.

3.



Bẩy lỗi và báo lỗi trong chương trình


Mc.Call:Mapping


14

Quality Factors

Quality Criteria
Traceability

OPERATION

Correctness
Reliability

Completeness
Consistency
Accuracy
Error tolerance

Efficiency

Execution efficiency
Storage efficiency

Integrity

Access control
Access audit

Usability


Operability
Training
Communicativeness


Mc.Call: Mapping

15

REVISION

Quality Factors
Maintainability
Testability
Flexibility

Quality Criteria
Simplicity
Conciseness
Instrumentation
Self-descriptiveness
Expandability

TRANSITION

Generality
Modularity
Portability
Reusability
Interoperability


Software-system independence
Machine independence
Communication commonality
Data commonality


ISO 9126 (2000) : tiếp cận

16

1.
2.

Chất lượng PM có từ việc sử dụng nó trong
một ngữ cảnh cụ thể (quality in use)
Giống McCall: external quality attributes (QF)
phụ thuộc vào internal quality attributes
(Quality Criteria).

ISO 9126-1 standard.pdf


17

ISO 9126 (2000) : nguyên lý
Specs
Evaluation

User’s view


Dev’s view

Product


development supports

18

ISO 9126 (2000): SW characteristics


19

ISO 9126 (2000): SW in use

application supports

Specified users, specified goals in a specified context of use

Satisfaction

Productivity

Quality
in use
Safety

Effectiveness



Internal attributes (Criteria)

Attribute

Sub-characteristic
Characteristic

ISO 9126-1 standard.pdf

External attributes (QF)

ISO 9126 : Mapping

20



×