1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Đảm bảo chất lượng phần mềm: Chương 3 - PGS.TS. Trần Cao Đệ

47 55 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 47
Dung lượng 1,09 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Đảm bảo chất lượng phần mềm - Chương 3: Các chuẩn chất lượng phần mềm cung cấp cho người học các kiến thức: Chuẩn (standard) là gì, một số hệ thống chuẩn trong CNPM, quan điểm trong QLCL,... Mời các bạn cùng tham khảo nội dung chi tiết.

Trang 1

Đảm bảo chất lượng phần mềm

Software Quality Assurance

Chương 3: CÁC CHUẨN CHẤT LƯỢNG

PHẦN MỀM

PGS TS Trần Cao Đệ

Bộ môn Công nghệ phần mềm Khoa CNTT&TT – Đại học Cần Thơ

Trang 2

Chuẩn (standard) là gì?

Wikimedia: a standard is a basic for comparison Standards are made either by many people that agree on something, or if some organization makes it so

• Khái niệm chuẩn: (trong lĩnh vực CNPM) chuẩn là một định nghĩa đầy đủ,

rõ ràng một kỹ thuật, qui trình hoặc thủ tục bởi một nhóm các nhà cung cấp dịch vụ hay sản phẩm

• Chuẩn làm cho các sản phẩm, dịch vụ có nguồn gốc khác nhau có thể so sánh được hay nối kết được

– Giúp đảm bảo chất lượng cao (bằng cách check các yêu cầu của chuẩn)

– Chỉ ra được chất lượng sản phẩm.

– Gia tăng tính đồng bộ giữa các nhóm và đào tạo nhân viên mới

– Cung cấp hướng dẫn thực hành tốt/đúng- tránh sai lầm trong quá khứ

– Cung cấp sự bảo hộ về mặt luật pháp.

• Hai loại chuẩn

– Thực tế (de facto)

– Luật (de jure)

Trang 3

Một số hệ thống chuẩn trong CNPM

International Organization for Standardization

Software Engineering Institute’s (SEI)

Capability Maturity Model

Trang 4

Giới thiệu một số chuẩn trong CNPM

Terminology: IEEE Std 610.12:1990 Standard of Software Engineering Terminology

Technical: ISO/IEC 8631:1989 Program Constructs and Conventions for their Representation

Quality management

ISO 9000-3 Quality Management and Quality Assurance Standards - Part 3: Guidelines for the application of 9001 to the development, supply, installation and maintenance of computer software

– Quality measurement

IEEE Std 1061-1992 Standard for Software Quality Metrics Methodology

General project management

IEE Std 1058.1-1987 Standard for Software Project Management Plans

Producing plans

IEEE Std 1059-1993 Guide for Software Verification and Validation Plans

Trang 5

Giới thiệu các chuẩn trong CNPM (tt)

Trang 6

Một số chuẩn IEEE quan trọng cho SQA

IEEE 610.12-1990 (R2002) Standard Glossary of Software Engineering Terminology

IEEE 730-2002 Standard for Software Quality Assurance Plans

IEEE 828-1998 Standard for Software Configuration Management Plans

IEEE 829-1998 Standard for Software Test Documentation

IEEE 830-1998 Recommended Practice for Software Requirements Specifications

IEEE 1008-1987 (R1993, R2002) Standard for Software Unit Testing

IEEE 1012-1998 Standard for Software Verification and Validation

IEEE 11016-1998 Recommended Practice for Software Design Descriptions

IEEE 1028-1997 (R2002) Standard for Software Reviews

IEEE 1045-1992 (R2002) Standard for Software Productivity Metrics

IEEE 1058-1998 Standard for Software Project Management Plans

IEEE 1061-1998 (R2004) Standard for Software Quality Metrics Methodology

IEEE 1074-1997 Standard for Developing Software Life Cycle Processes

IEEE 1220-1998 Standard for the Application and Management of the Systems Engineering Process

IEEE 1490-2003 Adoption of PMI Standard: A Guide to the Project Management Body of

Knowledge

IEEE 1517-1999 (R2004) Standard for Information Technology – Software Life Cycle

Processes - Reuse Processes

Trang 7

Quan điểm trong QLCL

Requirements document structure Submission of documents to CM

Method header format Version release process

Java programming style Project plan approval process

Project plan format Change control process

Trang 8

ISO 9000

Trang 9

Chuỗi ISO 9000

cho đến các ngành công nghiệp dịch vụ

– ISO 9000: Fundamentals and vocabulary

– ISO 9001: Requirements

– ISO 9004: Guidelines for performance improvements ISO

phần mềm.

và nó phải được cụ thể hóa ở mỗi tổ chức dùng chuẩn này.

Trang 10

Chuỗi ISO 9000 (tt)

• ISO 9001:2000 - “Quality Management Systems –Requirements”

• ISO 90003:2004 – “Software engineering – Guidelines for the

application of ISO 9001:2000 to computer software”

– Cung cấp các hướng dẫn (về chất lượng) cho dành hợp đồng, cung

ứng, phát triển, vận hành, bảo trì phần mềm và các dịch vụ có liên quan

• cross-refers to

– ISO 12207 Life Cycle Models; to support software project activities

– ISO TR 15504 Software Process Assessment; to support the

measurement of processes and continual improvement

– ISO 14143 Functional Size Measurement

Trang 11

Triết lý của ISO 9000

• Tài liệu hóa cái gì bạn làm

– Lưu ý làm cho phù hợp các đòi hỏi của

– Để kiểm tra và xác nhận, công nhận chuẩn

Trang 12

ISO 9001

• Quản trị tổ chức như là một hệ thống các qui trình liên quan

nhau Người quản lí sẽ lập kế hoạch cho các qui trình này; xác định mối quan hệ giữa chúng; thiết lập mục tiêu; đo

lường tiến trình và thực hiện cải tiến.

• Thiết lập một số tiêu chí chất lượng:

– Tập hợp các mục tiêu chất lượng (Set quality goals)

– Đảm bảo các đòi hỏi của khách hàng được hiểu và thỏa mãn (Ensure customer

requirements are understood and met)

– Đào tạo đội ngũ làm việc(Train employees)

– Kiểm soát quá trình sản xuất (Control your production processes)

– Mua từ các nhà cung cấp khác có khả năng cung cấp SP chất lượng (Purchase from suppliers that can provide quality product)

– Sửa lỗi và đảm bảo chúng không xảy ra nữa (Correct problems and make sure they do not happen again)

• Nếu tất cả các tiêu chí đều được thỏa, công ty sẽ được đăng

kí cấp chứng chỉ ISO 9001

Trang 13

Yêu cầu của ISO 9001 (REQUIREMENTS)

1 Chính sách về chất lượng phải được xác định và tài liệu hóa; đồng thời

phải đảm bảo chính sách này được thông suốt ở mọi cấp trong tổ chức

2 Mọi qui trình kiểm soát chất lượng đều phải được tài liệu hóa

3 Mọi hợp đồng cung cấp hàng hóa, dịch vụ phải có sự kí kết rằng nhà

phát triển có khả năng giao hàng

4 Phải có qui trình xét duyệt, phê chuẩn thiết kế và các tài liệu khác

5 Thành phần nào trong hệ thống cung cấp cho khách hàng mà đến từ

bên thứ ba phải có qui trình, qui định để đảm bảo, kiểm tra và xác nhận chất lượng

6 Mỗi một sản phẩm đều có thể nhận diện được cùng với các thành phần

của nó

7 Tiến trình tạo ra sản phẩm hoàn chỉnh phải được lên kế hoạch và kiểm

soát

8 Thanh tra và kiểm thử (mã nguồn) phải được thực hiện suốt quá trình

phát triển, hoàn thiện trước khi bàn giao Thanh tra và kiểm thử cũng phải được thực hiện trên thành phần thu được từ bên thứ 3

Trang 14

Yêu cầu của ISO 9001 (tt)

9 Thiết bị dùng trong quá trình sản xuất cũng phải được kiểm soát là hợp

chuẩn

10 Trạng thái kiểm tra mọi thành phần trong hệ thống và cả hệ thống phải

được ghi chép rõ ràng, đầy đủ

11 Thận trọng để đảm bảo rằng mọi phần tử được biết là có lỗi không bị sử

dụng một cách tình cờ

12 Khi phát hiện lỗi, các biện pháp cần thiết phải được thực hiện để loại bỏ

lỗi và đảm bảo rằng lỗi đó sẽ không xuất hiện nữa

13 Có qui định thỏa đáng về sử dụng, lưu trữ, bảo quản, đóng gói và

Trang 15

ISO 9001 Sections

• Section 4: General Requirements

– Requirements for the overall Quality Management System

• Section 5: Management Responsibility

– Requirements for Management and their role in the Quality

Management System

• Section 6: Resource Management

– Requirements for resources including personnel, training, the facility and work environment

• Section 7: Product Realization

– Requirements for the production of the product or service, including planning, customer related processes, design, purchasing, and

process control

• Section 8: Measurement, Analysis and Improvement

– Requirements on monitoring processes and improving those

Trang 16

ISO 90003

Chứa các hướng dẫn để áp dụng các phần tử đặc tả

trong ISO 9001, ISO 9002, and ISO 9003 vào phần

mềm

Trang 17

ISO 9000 và Quản lí chất lượng

Project 1 quality plan

Project 2 quality plan

Project 3 quality plan

Project quality management

Organisation quality man ual

ISO 9000 quality models

Organisation quality pr ocess

is used to de velop instantiated as

instantiated as

documents

Supports

Trang 18

ISO 9126

Trang 19

ISO 9126

• 3 góc nhìn về chất lượng SP phần mềm:

Chất lượng trong (Internal Quality)

là các đặc tính của SP phần mềm từ góc nhìn bên trong trong suốt quá trình phát triển hoặc bảo trì (ví dụ code, kiến trúc)

Chất lượng ngoài (External Quality)

là các đặc tính của SP phần mềm từ góc nhìn bên ngoài thông qua thực thi chương trình

Chất lượng dùng (Quality in Use)

là góc nhìn của người dùng về chất lượng SP phần mềm khi dùng

nó trong một môi trường, hoàn cảnh cụ thể Nó phản ánh mức độ

mà người dùng có thể hoàn thành mục tiêu của họ trong một hoàn cảnh cụ thể hơn là đánh giá các đặc tính của bản thân phần mềm

• Chất lượng trong xác định chất lượng ngoài, chất lượng ngoài ảnh hưởng đến chất lượng dùng

Trang 20

ISO9126 Standards

• ISO/IEC 9126-1:2001 Software engineering Product quality

Part 1: Quality model

• ISO/IEC TR 9126-2:2003 Software engineering Product

quality Part 2: External metrics

• ISO/IEC TR 9126-3:2003 Software engineering Product

quality Part 3: Internal metrics

• ISO/IEC TR 9126-4:2004 Software engineering Product

quality Part 4: Quality in use metrics

Trang 21

Khung chất lượng (Quality Framework)

User quality needs

External quality Requirements

Internal quality Requirements

Validation

Verification

Trang 22

Chất lượng trong vòng đời phần mềm

Trang 23

ISO 9126: chất lượng trong và ngoài

Trang 24

Chức năng PM (Functionality)

Functionality : Khả năng của phần mềm cung cấp các chức năng tương ứng với yêu cầu đã được phát biểu và suy diễn khi phần mềm được dùng trong các điều kiện cụ thể.

– Suitability (thích hợp) – Khả năng phần mềm cung cấp tập các chức năng phù hợp với công việc và mục đích của người dùng đã được đặc tả

– Accuracy (chính xác)- Khả năng phần mềm cung cấp kết quả hoặc hiệu ứng đúng đắn hoặc được đồng ý với độ chính xác đòi hỏi

– Interoperability (tương tác)- Khả năng phần mềm trong tương tác với

1 hoặc nhiều hệ thống khác được đặc tả

– Security (an toàn) - Khả năng phần mềm bảo vệ thông tin, dữ liệu sao cho người hoặc hệ thống không được phép thì không truy cập được

và người hoặc êệ thống được phép thì truy cập được

– Functional Compliance (thỏa chuẩn chức năng) – Khả năng phần

mềm thỏa mãn chuẩn, qui ước hoặc các qui định luật pháp về chức năng

Trang 25

Reliability (tin cậy)

Reliability - Khả năng phần mềm đạt được một mức độ hiệu quả xác định khi dùng trong một điều kiện cụ thể

hóc vì lỗi phần mềm

• Đo bằng tần xuất hỏng (Frequency of failure)

một mức độ hiệu quả xác định trong trường hợp có lỗi hoặc có sự xâm hại trên giao diện đã được đặc tả

độ hiệu quả hoặc phục hồi dữ liệu bị ảnh hưởng trực tiếp trong

trường hợp có hỏng hóc

mềm thỏa mãn chuẩn, qui ước hoặc các qui định luật pháp về độ tin cậy

Availability (tính sẳn dùng) là tổ hợp của maturity, fault

Trang 26

– Usability compliance (thỏa mãn chuẩn về dùng được).

• Chú ý: trong trường hợp ứng dụng web, tính dùng được còn bao gồm cả truy cập được.

Trang 27

Efficiency (hiệu quả)

Efficiency – khả năng phần mềm trong hiệu quả sử

dụng nguồn lực, tài nguyên máy tính trong những điều kiện cụ thể.

– Time behavior (đáp ứng về thời gian)- thời gian thao tác hoặc trả lời hoặc tần xuất đứt quãng khi thực hiện các

chức năng trong một điều kiện cụ thể.

– Resource utilization (dùng tài nguyên) số lượng tài nguyên

và kiểu tài nguyên dùng phù hợp.

– Efficiency compliance (thỏa mãn chuẩn về hiệu quả).

Trang 28

Bảo trì được - Maintainability

Maintainability – Khả năng sửa đổi được phần mềm, bao gồm sửa lỗi, cải tiến để đáp ứng các thay đổi về môi trường hoặc trong đặc

tả chức năng

– Analyzability (phân tích được) – khám xét được sự phụ thuộc hoặc nguyên nhân hỏng hóc

– Changeability (thay đổi được)

– Stability (ổn định)- tránh được hiệu ứng lề từ việc thay đổi trong phần mềm

– Testability (kiểm tra được) – kiểm tra, kiểm chứng được phần mềm

đã sửa đổi

– Maintainability Compliance (thỏa mãn chuẩn về tính bảo trì được)

Trang 29

Khả chuyển - Portability

Portability – Khả năng phần mềm chuyển từ môi trường này sang môi trường khác

– Adaptability (thích ứng)- thích ứng trong các môi trường khác nhau

không cần hành động hoặc phương tiện nào khác

– Installability – (cài đặt được)

– Co-existence (cùng tồn tại)- cùng tồn tại với các phần mềm độc lập

khác và chia sẻ tài nguyên

– Replaceability (thay thế được), ví dụ IE8 thay IE7

– Portability Compliance (thỏa mãn chuẩn về khả chuyển)

Trang 30

Chất lượng dùng - Quality in use

Quality in use

Effectiveness Productivity Safety Satisfaction

• Effectiveness (hiệu quả): khả năng phần mềm cho phép người dùng hoàn thành mục đích xác định với độ chính xác và đầy đủ trong ngữ cảnh được dùng

• Productivity (hiệu suất): cho phép người dùng trả một lượng phù hợp

về tài nguyên liên quan tới mục đích dùng

• Safety (an toàn): mức độ rủi ro phù hợp về tổn hại con người, công việc kinh doanh, của cải, …

• Satisfaction (thỏa mãn người dùng)

Trang 31

CMM

Trang 32

Five maturity levels

Process characterized for

projects and is often

Focus on continuous process improvement

Optimizing

Quantitatively Managed

Trang 33

đó với các dự án tương tự.

3 Defined: Qui trình phần mềm cho các hoạt động kỹ nghệ và quản

lí được tài liệu hóa, chuẩn hóa và tích hợp vào trong qui trình

chuẩn của tổ chức Mọi dự án dùng một phiên bản đã được duyệt

và ban hành trong tổ chức để phát triển và bảo trì phần mềm.

4 Managed: Các độ đo cho qui trình phần mềm và chất lượng sản phẩm được tập hợp Cả qui trình và sản phẩm đều được hiểu và kiểm soát định lượng.

5 Optimizing: Cải tiến qui trình 1 cách liên tục được thực hiện dựa trên các phản hồi định lượng từ qui trình và từ các sáng kiến, phát minh công nghệ.

Trang 34

• Thành công phụ thuộc vào người giỏi làm việc đúng đắn

• Khó trụ được khi người giỏi bỏ đi

• Nhiều công ty phần mềm ở mức này

Trang 35

Level 2

• Qui trình được thiết lập

• Kế hoạch cho dự án mới được thiết lập

dựa trên những cái tương tự trước đó

• Kiểm soát và quản lí cơ bản

• Theo dõi giá và lịch biểu

• Xác định các vấn đề

• Sản phẩm được chuẩn hóa: kiểu viết

code, kiểu test

• Kiểm soát và quản lí dự án cơ bản

– Quản lí yêu cầu khách hàng

– Kế hoạch dự án

– Điều hành và kiểm soát dự án

– Quản lí hợp đồng với nhà cung cấp

– Đảm bảo chất lượng qui trình và sản

phẩm

– Quản lí cấu hình

Trang 36

Level 3

• Qui trình công nghệ phần mềm và quản

lí được định nghĩa và tài liệu hóa

• Đội ngũ nhân viên có thể đo lường qui

trình khi cần

• Tiếp cận tới chuẩn hóa.

• Kiểm tra chéo.

Có hạ tầng cho qui trình công nghệ và

– Phát triển các yêu cầu khách hàng

– Giải quyết các vấn đề kỹ thuật

Trang 37

Level 4

• Đo lường và phân tích qui trình

• Dữ liệu đo lường được dùng để thiết lập qui trình mới

• Qui trình định lượng được và dự báo được.

• Các cải tiến có thể nhìn thấy ở đây.

Có hiểu biết 1 cách định lượng cho cả qui trình và sản phẩm đang xây dựng

– Đánh giá hiệu quả của qui trình thuộc tổ chức

– Quản lí dự án 1 cách định lượng.

Trang 38

Level 5

• Qui trình được thiết lập và đo được.

• Các cải tiến liên tục dựa trên các phản hồi

• Có thể phân tích nguyên nhân hỏng hóc và nguyên nhân

• Có thể đạt tiến độ đã thiết lập

• Tiếp tục trưởng thành

• Các vấn đề về cả tổ chức và dự án phải được đề

cập và thiết lập các cải tiến liên tục, định lượng:

– Phân tích nguyên nhân và hậu quả

– Sáng kiến của tổ chức và triển khai.

Trang 39

CMM in a big picture

Trang 40

Phạm vi qui trình chính

Key Process Areas

• Xác định một tập các hoạt động mà khi thực hiện đồng loạt

nó hoàn thành các mục tiêu quan trọng để nâng cao khả

năng của qui trình

• (KPA) Được định nghĩa để tập trung vào một mức trưởng

thành

• Xác định các vấn đề cần phải giải quyết để đạt mức trưởng

thành

Ngày đăng: 08/05/2021, 13:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN