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

Bài giảng đặc tả yêu cầu

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 (510.07 KB, 48 trang )

Đặc tả yêu cầu

Giáo viên: Nguyễn Dũng
Email:


Nội dung
• Khái niệm và tầm quan trọng
• Phân loại các u cầu

• Phân tích và xác định u cầu
• Đặc tả yêu cầu
• Định dạng tài liệu yêu cầu

2


Khái niệm và tầm quan trọng
• Xác định và đặc tả yêu cầu
• Là khâu kỹ thuật đầu tiên của q trình phát
triển phần mềm. Thiếu nó khơng thể tiếp tục
q trình
• Là sự phối hợp của nhà phát triển và khách
hàng
• Nó quyết định chất lượng phần mềm đạt được
với chi phí dự kiến và thời hạn cho trước
3


Các yêu cầu và mục tiêu
• Các yêu cầu là các mô tả trừu tượng đến chi tiết


về dịch vụ mà hệ thống cung cấp cũng như các
ràng buộc lên sự phát triển và hoạt động của nó
• Mục đích của các yêu cầu:
• Làm cơ sở cho việc mời thầu (cần có giải thích
từ phía chủ đầu tư)
• Làm cở sở cho việc ký hợp đồng thầu (cần đủ
và chi tiết)
• Làm tư liệu đầu vào cho thiết kế và triển khai
(cần đủ, chính xác và khơng mâu thuẫn)

4


Các loại yêu cầu
• Yêu cầu người sử dụng
• Đơn giản, dễ hiểu
• Diễn đạt bằng ngơn ngữ tự nhiên và sơ đồ về dịch vụ hệ
thống cần cung cấp và các ràng buộc trong hoạt động của nó

• Dành cho khách hàng

• u cầu hệ thống
• Mơ tả đủ chi tiết về các dịch vụ hệ thống cung cấp
• Các đặc trưng hệ thống cần có
• Như một hợp đồng giữa khách hàng và chủ đầu tư
• Đặc tả phần mềm
• Đủ chi tiết làm cơ sở cho việc thiết kế và triển khai
• Dành cho nhà phát triển

5



u cầu người sử dụng
• Nên mơ tả
• u cầu chức năng
• Yêu cầu phi chức năng

• Dễ hiểu đối với người sử dụng
• Khơng có kiến thức chi tiết về kĩ thuật/tin học

• Nên được mơ tả bởi:
• Ngơn ngữ tự nhiên
• Ưu điểm: Dễ hiểu, dễ sử dụng
• Hạn chế:
• Khơng rõ ràng, thiếu chính xác, nhập nhằng
• Lẫn lộn giữa yêu cầu chức năng và phi chức năng
• Q mềm dẻo (trình bày nhiều cách)

• Biểu đồ, bảng biểu

6


Yêu cầu hệ thống
• Là đặc tả chi tiết hơn yêu cầu người sử dụng
• Phục vụ cơ bản cho bước thiết kế

• Có thể sử dụng làm một phần của hợp đồng
• Có thể sử dụng các mơ hình để mô tả
7



Tài liệu đặc tả
• Là các phát biểu chính thức về hệ thống cần xây
dựng
• Khơng phải là tài liệu thiết kế

• Xác định hệ thống cần làm gì (What?)
• Không trả lời cho câu hỏi như thế nào (How?)
8


Tài liệu đặc tả
• Các yêu cầu đối với tài liệu đặc tả
• Đặc tả hành vi bên ngồi của hệ thống
• Đặc tả các ràng buộc cài đặt
• Dể dàng thay đổi
• Sử dụng như là cơng cụ tham khảo khi
bảo trì
• Dự báo thời gian sống của hệ thống
• Đặc tả trả lời các sự kiện khơng mong đợi

9


Những người đọc yêu cầu
• Người dùng hệ thống
• Người quản lý của khách hàng
• Kỹ sư của khách hàng
• Nhà kiến trúc hệ thống

• Các nhà phát triển và bảo trì phần mềm
 Yêu cầu viết ra cần đáp ứng được các đối
tượng trên
10


Yêu cầu từ nghiệp vụ
• Các yêu cầu chức năng (Function requirement):
• Mơ tả các chức năng hay các dịch vụ mà hệ thống phần
mềm cần cung cấp
• Các yêu cầu phi chức năng (Non-Function requirement):
• Mơ tả các ràng buộc đặt lên dịch vụ và quá trình phát
triển hệ thống (về chất lượng, về môi trường, chuẩn sử
dụng, qui trình phát triển,…)
• Các u cầu miền/lĩnh vực ngồi:
• Những yêu cầu đặt ra từ miền ứng dụng, phản ánh
những đặc trưng miền đó.
11


Các u cầu chức năng
• Mơ tả chức năng hay dịch vụ của hệ thống
• Chúng phụ thuộc vào:
• Loại phần mềm sẽ được xây dựng
• Sự mong muốn của khách hàng
• Loại hệ thống mà phần mềm trợ giúp
• Mức độ các yêu cầu
• Trừu tượng: hệ thống làm gì?
• Chi tiết: nhiệm vụ cụ thể của hệ thống cần thực
hiện


12


Ví dụ
• Người sử dụng có thể tìm kiếm tài liệu dựa
trên các từ khóa có trong tài liệu hoặc tên
tài liệu
• Hệ thống phải đọc được các định dạng
khác nhau của tài liệu: văn bản (.txt), PDF,
Word, Excel,…
• Hệ thống cần cung cấp phương tiện hiển
thị dễ dàng các tài liệu từ CSDL
13


Các u cầu phi chức năng
• Định nghĩa các tính chất và ràng buộc của hệ thống
• Yêu cầu tiến trình
• Phương pháp thiết kế
• Ngơn ngữ lập trình
• Cơng cụ sử dụng

• Thời gian trả lời
• Độ tin cậy
• Yêu cầu về lưu trữ dữ liệu
• Yêu cầu phi chức năng có thể quan trọng hơn yêu cầu
chức năng. Nếu yêu cầu phi chức năng không được đáp
ứng  hệ thống trở nên vô dụng


14


Các yêu cầu phi chức năng
• Yêu cầu về sản phẩm:
• Tốc độ, độ tin cậy, bộ nhớ cần, giao diện,…
• u cầu về tổ chức/tiến trình phát triển:
• Các chuẩn áp dụng, phương pháp thiết kế,
ngơn ngữ lập trình, mơ trình tiến trình,…
• u cầu từ bên ngồi:
• Về chi phí, thời gian, bản quyền, liên kết,…
15


Các loại yêu cầu phi chức năng

16


Ví dụ
• u cầu về sản phẩm
• Chỉ sử dụng tối đa 256 MB bộ nhớ
• Yêu cầu về tổ chức
• Tiến trình phải đáp ứng chuẩn DO178
• u cầu bên ngồi
• Hệ thống khơng được để lộ thơng tin của
khách hàng.
17



Tiến trình kỹ nghệ u cầu
• Các hoạt động của tiến trình kỹ nghệ
• Nghiên cứu khả thi  Báo cáo khả thi
• Phân tích, xác định u cầu  Mơ hình hệ
thống
• Đặc tả u cầu  Các u cầu được đặc tả

• Thẩm định yêu cầu  Tài liệu yêu cầu

18


Tiến trình kỹ nghệ yêu cầu

19


Nghiên cứu khả thi
• Nhằm trả lời câu hỏi:
• Có nên phát triển hệ thống hay khơng?
• Nội dung nghiên cứu khả thi tập trung để trả lời các câu
hỏi:
• Hệ thống được xây dựng sẽ giúp ích gì cho tổ chức?

• Hệ thống sử dụng cơng nghệ nào, kinh phí bao nhiêu,
thời gian bao nhiêu?
• Hệ thống cần phải tích hợp với hệ thống nào đang sử
dụng?
20



Triển khai nghiên cứu khả thi
• Báo cáo khả thi được viết dựa trên các thông tin, báo cáo
thu thập được, những đánh giá ban đầu về hệ thống hiện
tại và phác thảo các phương án dự kiến
• Câu hỏi đặt ra cho người của tổ chức:
• Cái gì xảy ra nếu hệ thống khơng được triển khai?
• Những vấn đề gì cần giải quyết?
• Hệ thống được đề xuất giúp họ như thế nào?
• Những tích hợp gì cần phải có?
• Cơng nghệ mới là gì, kỹ năng gì cần có?
• Những tiện ích gì cần trợ giúp từ hệ thống?

21


Phân tích và xác định u cầu
• Làm rõ:
• Phạm vi lĩnh vực ứng dụng
• Các dịch vụ hệ thống cần cung cấp

• Các ràng buộc đặt lên hệ thống
• Bằng cách xây dựng các mơ hình phân tích (mơ
hình nghiệp vụ của hệ thống) để làm rõ các yêu
cầu trên

22


Những khó khăn của phân tích

• Khách hàng thương mơ hồ về u cầu, khơng biết rõ
mình muốn gì, dễ lẫn lộn giữa yêu cầu và mong muốn
• Họ thể hiện yêu cầu theo thuật ngữ riêng
• Khách hàng đa dạng, các u cầu có thể mâu thuẩn nhau

• Những yếu tố tổ chức và chính sách có thể ảnh hưởng
đến u cầu
• u cầu thương mang tính đặc thù, khó hiểu, khó có
chuẩn chung.
• Các u cầu thay đổi trong q trình phân tích: mơi
trường nghiệp vụ thay đổi,…

23


Mục tiêu, mong muốn và yêu cầu
• Mục tiêu, mong muốn: là cái hướng tới
• Chẳng hạn: xây dựng giao diện thân thiện với
người dùng
• Yêu cầu: là cái cụ thể, kiểm tra được
• Chẳng hạn: giao diện đồ họa, các lệnh được
chọn bằng thực đơn hay biểu tượng
 Nhiệm vụ của người phân tích là gợi mở, xác
định đúng, đầy đủ, chính xác các yêu cầu
24


Tiến trình phân tích u cầu
• Các hoạt động chính:
• Tìm hiểu miền ứng dụng


• Phát hiện, thu thập u cầu
• Phân loại yêu cầu
• Giải quyết xung đột (nếu có)
• Sắp xếp ưu tiên các u cầu
• Thẩm định yêu cầu

25


×