Lecture 2:
Phân tích yêu cầu phần mềm
Quy trình công nghệ yêu cầu
(RE - The requirements engineering)
Khái niệm
Quy trình dùng để khảo sát, phân tích và kiểm chứng tính hợp lệ
của các yêu cầu hệ thống
Quy trình là một tập các hoạt động nhằm dẫn đến việc phát sinh
định nghĩa và đặc tả yêu cầu.
1
Phân tích yêu cầu phần mềm
Các đặc tính chung
Quy trình RE có nhiều dạng khác nhau, phụ thuộc vào lĩnh
vực ứng dụng, các nhân tố liên quan và tổ chức phát triển yêu
cầu.
Tuy nhiên, có một số đặc tính chung cho các quy trình là :
Thu thập yêu cầu (Requirements elicitation)
Phân tích yêu cầu (Requirements analysis)
Kiểm chứng yêu cầu (Requirements validation)
Quản trị yêu cầu (Requirements management)
2
Phân tích yêu cầu phần mềm
Các nội dung chính
Nghiên cứu khả thi (Feasibility studies)
Thu thập yêu cầu và phân tích
(
Requirements elicitation and analysis)
Kiểm chứng yêu cầu hợp lệ (Requirements
validation)
Quản trị yêu cầu (Requirements management)
.
3
Phân tích yêu cầu phần mềm
Các bước trong quy trình
4
Nghiên cứu khả thi
Phân tích yêu cầu phần mềm
Thực hiện ước lượng nhằm đánh giá sự đáp ứng cho yêu cầu:
Kỹ thuật phần cứng
Kỹ thuật phần mềm
Nghiên cứu khả thi quyết định hệ thống
Có giá trị hiệu quả về kinh doanh
Có thể phát triển với những ràng buộc ngân sách hiện có
Phải rẻ và nhanh chóng
Kết quả : Báo cáo khả thi (Feasibility Report)
Quyết định điều gì là quan trọng với các lý giải chi tiết
Bản báo cáo về tính khả thi của hệ thống
Tài liệu đặc tả yêu cầu người dùng
5
Phân tích yêu cầu phần mềm
N
g
h
i
Phân tích làm rõ yêu cầu
Quá trình đưa ra các yêu cầu hệ thống
Khảo sát hệ thống hiện tại
Thảo luận với người dùng và các nhà trung gian tiềm năng
Phân tích công việc
Có thể phát triển 1 hoặc nhiều mô hình hệ thống khác nhau
Giúp nhà phân tích hiểu rõ hệ thống để đặc tả
Bản mẫu có thể lập để hiểu rõ các yêu cầu
6
Hiểu phạm
vi vấn đề
Phân tích yêu cầu phần mềm
Tiến trình phân tích làm rõ yêu cầu
7
Đầu vào
ti
ế
n trình
Kiểm chứng
yêu cầu
Định nghĩa
yêu cầu và
Đ
ặ
c tả
Sắp ưu tiên
Thu thập
Yêu cầu
Giải quyết
Mâu thuẫn
Phân loại
Phân tích yêu cầu phần mềm
Các hoạt động trong tiến trình
Hiểu phạm vi vấn đề (Domain understanding)
Thu thập yêu cầu (Requirements collection)
Phân loại (Classification)
Giải quyết mâu thuẫn (Conflict resolution)
Sắp ưu tiên (Prioritisation)
Kiểm tra yêu cầu (Requirements checking)
8
Phân tích yêu cầu phần mềm
Xác định yêu cầu
Là hoạt động chuyển thông tin phát sinh trong suốt tiến trình
phân tích thành tài liệu định nghĩa tập hợp các yêu cầu
Phản ánh chính xác điều mà người dùng muốn
Tài liệu phải được viết để hệ thống sẽ được hiểu bởi
Người dùng cuối
Những khách hàng của hệ thống.
9
Phân tích yêu cầu phần mềm
Đặc tả yêu cầu
Bản mô tả các yêu cầu hệ thống được thiết lập như cơ sở của
hợp đồng giữa khách hàng và nhà phát triển phần mềm
Mô tả thật chi tiết về yêu cầu người dùng và yêu cầu hệ thống
hữu ích cho thiết kế
Mô tả chính xác để nắm bắt đúng vấn đề
Việc lập tài liệu này được thực hiện song song cùng với một số
các thiết kế cấp cao khác.
Lỗi trong định nghĩa yêu cầu cần được xem xét kỹ lưỡng.
Nó phải được sửa chữa theo đúng vấn đề này.
10
Phân tích yêu cầu phần mềm
Quản lý yêu cầu
Quản lý yêu cầu là tiến trình quản lý sự thay đổi của yêu
cầu trong suốt quy trình công nghệ yêu cầu và phát triển
hệ thống
Yêu cầu thì chắc hẳn là sẽ không hoàn thiện và không
nhất quán
Các yêu cầu mới thì liên tục phát sinh trong suốt tiến trình khi nhu cầu
công việc thay đổi và có sự hiểu rõ hơn về hệ thống đang phát triển
Các quan điểm khác nhau có các yêu cầu khác nhau và điều này
thường làm phát sinh mâu thuẫn
11
Phân tích yêu cầu phần mềm
Kết luận
Các hoạt động trong quy trình công nghệ yêu cầu thì không
đơn giản để thực hiện một cách tuần tự mà chúng phải lặp đi
lặp lại.
Phân tích yêu cầu vẫn tiếp tục trong suốt quá trình định nghĩa và đặc tả
Các yêu cầu mới vẫn còn tiếp tục phát sinh trong suốt tiến trình
Tài liệu yêu cầu phải thay đổi thường xuyên và được đặt dưới
sự kiểm soát của một hệ thống quản lý cấu hình
.
12