các mục tiêu. Mục tiêu rất hữu ích đối với người phát triển hệ thống khi nó truyền tải được những mong muốn của người sử dụng hệ thống. Còn với những yêu cầu phi chức năng có thể thẩm định được là những yêu cầu có thể kiểm thử một cách khách quan. Tuy nhiên, trong nhiều trường hợp thường xảy ra xung đột giữa các yêu cầu phi chức năng đối với những hệ thống phức tạp.
Hình 4.1. Phân loại các yêu cầu phi chức năng
Ví dụ 1: Xét phần mềm quản lý thư viện
- Yêu cầu về sản phẩm:
+ Yêu cầu sử dụng: Phải được cài đặt bằng HTML mà không có frame hoặc Java applets;
+ Yêu cầu linh động: Cho phép thay đổi qui định số sách mượn tối đa;
+ Yêu cầu hiệu quả: Tốc độ nhập liệu cho mỗi phiếu mượn sách không quá 30 giây
- Yêu cầu về mặt tổ chức: Quy trình xây dựng hệ thống và các tài liệu chuyển giao phải thoả mãn các quy tắc đã được định nghĩa trong XYZCo-SP-STAN-95.
- Yêu cầu ngoài:
+ Yêu cầu về luật: Hệ thống không được để lộ các thông tin cá nhân của khách hàng.
+ Yêu cầu về tương thích: Cho phép chuyển tất cả các báo cáo sang dạng tập tin
.XLS; Cho phép nhập sách mới từ tập tin .XLS
3) Các yêu cầu miền ứng dụng
Yêu cầu miền ứng dụng được xác định từ miền ứng dụng của hệ thống và phản ánh các thuộc tính và ràng buộc của miền ứng dụng. Nó có thể là yêu cầu chức năng hoặc phi chức năng.
Nếu yêu cầu miền ứng dụng không được thoả mãn thì có thể hệ thống sẽ không làm việc được.
Sau đây là một số vấn đề liên quan đến yêu cầu miền ứng dụng:
- Khả năng có thể hiểu được: Các yêu cầu được biểu diễn dưới ngôn ngữ của lĩnh vực ứng dụng.
- Ẩn ý: Các chuyên gia có hiểu biết về lĩnh vực của họ nhưng họ không biết cách xây dựng những yêu cầu miền ứng dụng một cách rò ràng, mang tính kỹ thuật.
Ví dụ: Yêu cầu về miền ứng dụng của phần mềm quản lý điểm
- Giao diện người dùng chuẩn cho tất cả các CSDL đều dựa trên chuẩn Z39.50.
- Vì vấn đề bản quyền nên một số tài liệu phải xoá ngay khi vừa chuyển đến.
- Phụ thuộc vào yêu cầu của người sử dụng, những tài liệu đó có thể được in ngay trên server và chuyển đến cho người sử dụng hoặc gửi đến cho máy in mạng.
4.1.3. Quy trình xác định yêu cầu
1) Các loại tài liệu yêu cầu
Xác định yêu cầu là mô tả trừu tượng các dịch vụ mà hệ thống được mong đợi phải cung cấp và các ràng buộc mà hệ thống phải tuân thủ khi vận hành. Nó chỉ có các đặc tả phẩm hạnh bên ngoài của hệ thống mà không liên quan đến các đặc tính thiết kế. Nó phải được viết sao cho người ta có thể hiểu được mà không cần một kiến thức chuyên môn đặc biệt nào.
Khi một công ty muốn ký một hợp đồng cho một dự án phát triển một phần mềm, công ty sẽ phát biểu các yêu cầu ở mức trừu tượng để không bắt buộc định nghĩa trước các giải pháp. Các yêu cầu phải được viết sao cho các nhà phát triển phần mềm có thể đưa ra các giải pháp khác nhau. Sau khi đã trúng thầu và ký hợp đồng, yêu cầu phải được làm rò hơn để khách hàng có thể hiểu và đánh giá được phần mềm. Cả hai tài liệu nói trên đều gọi là tài liệu yêu cầu người dùng.
Theo mức độ chi tiết có thể chia ra các loại tài liệu yêu cầu:
- Xác định yêu cầu: đây là một khẳng định, bằng ngôn ngữ tự nhiên hơn là các sơ đồ, về các dịch vụ hệ thống cần cung cấp và các ràng buộc mà hệ thống phải tuân theo. Tài liệu này cung cấp cho các thành phần: người quản lý của bên khách hàng, người dùng cuối của hệ thống, kỹ sư của khách hàng, người quản lý ký kết hợp đồng, các kiến trúc sư hệ thống.
- Đặc tả yêu cầu: là tài liệu được cấu trúc mô tả hệ thống các dịch vụ chi tiết hơn. Đôi khi tài liệu này được gọi là đặc tả chức năng. Đây có thể coi là hợp đồng ký kết giữa người mua và kẻ bán phần mềm. Tài liệu này cung cấp cho các thành phần: người dùng cuối của hệ thống, kỹ sư của khách hàng, các kiến trúc sư hệ thống, người phát triển phần mềm.
- Đặc tả phần mềm: là mô tả trừu tượng hơn của phần mềm làm cơ sở cho thiết kế và triển khai. Tài liệu này cung cấp cho các thành phần: kỹ sư của khách hàng, các kiến trúc sư hệ thống, người phát triển phần mềm.
2) Các pha của quy trình xác định yêu cầu
Mục tiêu của quy trình xác định yêu cầu là đưa ra các tài liệu yêu cầu của hệ thống. Quy trình xác định yêu cầu biến đổi phụ thuộc vào miền ứng dụng, con người và tổ chức xây dựng yêu cầu. Tuy nhiên, những quy trình này vẫn có chung một số hoạt động sau: phát hiện yêu cầu, phân tích yêu cầu, đánh giá yêu cầu và quản lý yêu cầu.
Hình 4.2. Quy trình xác định yêu cầu
Quy trình xác định yêu cầu bao gồm bốn pha chính:
- Nghiên cứu khả thi: Nghiên cứu khả thi giúp xác định những yêu cầu của người sử dụng có thoả mãn những công nghệ hiện tại hay không. Về góc độ kinh doanh, nghiên cứu khả thi nhằm xác định hệ thống đưa ra có mang lại lợi nhuận không. Việc nghiên cứu khả thi nên được thực hiện một cách nhanh chóng và không quá tốn kém. Kết quả của việc nghiên cứu khả thi sẽ xác định có nên tiếp tục xây dựng hệ thống nữa hay không.
- Phân tích và rút ra các yêu cầu: Đây là quy trình đưa ra các yêu cầu hệ thống thông qua một số phương pháp như: quan sát hệ thống hiện tại, phỏng vấn và thảo luận với người sử dụng, phân tích nhiệm vụ, phân tích tài liệu hoặc hệ thống cũ … Trong pha này, chúng ta có thể phải xây dựng một hoặc nhiều mô hình hệ thống và các mẫu thử.
- Đặc tả yêu cầu: Pha này sẽ tư liệu hoá những thông tin thu thập được. Có hai loại yêu cầu cần được xác định:
+ Yêu cầu của người sử dụng: là những yêu cầu bằng ngôn ngữ tự nhiên bổ sung thêm cho các biểu đồ của các dịch vụ mà hệ thống cung cấp và các ràng buộc vận hành của nó. Kiểu yêu cầu này được viết bởi người sử dụng.
+ Yêu cầu hệ thống: là những tài liệu có cấu trúc mô tả chi tiết về các chức năng, dịch vụ và các ràng buộc vận hành của hệ thống. Yêu cầu hệ thống sẽ định nghĩa
những gì cần phải xây dựng, cho nên nó có thể trở thành bản hợp đồng giữa khách hàng và nhà thầu.
- Đánh giá yêu cầu: pha này sẽ kiểm tra lại các yêu cầu xem chúng có đúng thực tế hay không, có thống nhất không, có đầy đủ không. Nếu phát hiện ra lỗi thì ta phải chỉnh sửa các lỗi này.
Tuy nhiên, trong thực tế, các yêu cầu luôn luôn thay đổi, thậm chí ngay cả khi đang xây dựng hệ thống. Vì vậy, người ta thường sử dụng mô hình xoắn ốc để xác định các yêu cầu. Mô hình này cho phép việc xác định yêu cầu và cài đặt hệ thống được thực hiện cùng lúc.
Hình 4.3. Mô hình xoắn ốc của quy trình xác định yêu cầu
3) Các bước xác định yêu cầu:
Đối tượng thực hiện việc xác định yêu cầu:
- Chuyên viên Tin học: Am hiểu về khả năng máy tính, nhưng lại có thể có rất ít hoặc thậm chí không có kiến thức về các công việc trong thế giới thực liên quan.
- Nhà chuyên môn, người sử dụng phần mềm: Rất am hiểu về công việc, nghiệp vụ của mình, nhưng có thể có rất ít kiến thức về khả năng máy tính.
Do đó, phải có sự phối hợp giữa các đối tượng này để có thể xác định đầy đủ và chính xác yêu cầu.
Để có được một danh sách đầy đủ và chính xác các yêu cầu, quá trình xác định yêu cầu phải theo các bước như sau:
Bước 1: Khảo sát hiện trạng
Bước 2: Xác định yêu cầu chức năng
- Về chức năng nghiệp vụ
- Về chức năng hệ thống
Bước 3: Xác định yêu cầu phi chức năng
a) Khảo sát hiện trạng
Tìm hiểu hiện trạng về các công việc của nhà chuyên môn
- Hiện trạng về mặt tổ chức: cần hiểu rò cơ cấu tổ chức các bộ phận của thế giới thực bao gồm trách nhiệm và quyền hạn. Ngay sau đó phải xác định bộ phận nào sẽ sử dụng phần mềm để tiếp tục khảo sát chi tiết hơn về bộ phận đó. Thông thường được biểu diễn bằng sơ đồ tổ chức và cơ cấu chức năng.
- Hiện trạng về mặt nghiệp vụ: Với các bộ phận có liên quan đến việc ứng dụng phần mềm, lập ra danh sách các công việc mà bộ phận này phụ trách, sau đó tìm hiểu các thông tin chi tiết cho từng công việc (thông tin mô tả yêu cầu công việc).
Phòng / ban A Phòng / ban B …
- Hiện trạng về mặt tin học:
+ Phần cứng
+ Phần mềm
+ Nhân sự tin học
b) Xác định yêu cầu chức năng
- Xác định yêu cầu chức năng nghiệp vụ
Cách tiến hành: Nhà chuyên môn đề xuất và chuyên viên tin học sẽ xem xét lại. Bước tiến hành:
Bước 1. Xác định bộ phận / người dùng sẽ sử dụng phần mềm
Bước 2. Xác định các công việc mà người dùng sẽ thực hiện trên máy tính với phần mềm theo từng loại công việc:
+ Lưu trữ
+ Tra cứu
+ Tính toán
+ Kết xuất
Bước 3: Lập bảng yêu cầu chức năng nghiệp vụ cùng với các thông tin liên quan như sau:
+ Bảng yêu cầu chức năng nghiệp vụ Bộ phận:……….
Công việc | Loại công việc | Quy định liên quan | Biểu mẫu liên quan | Ghi chú | |
1 | |||||
2 |
Có thể bạn quan tâm!
- Đánh Giá Khối Lượng Và Thời Gian Thực Hiện Các Công Việc
- Lựa Chọn Chiến Lược Cài Đặt
- Công nghệ phần mềm - Phạm Hùng Phú, Nguyễn Văn Thẩm Biên soạn - 12
- Mối Liên Hệ Giữa Các Kiểu Ứng Dụng Và Các Đặc Tính Dữ Liệu
- Đánh Giá Tính Phù Hợp Của Các Kỹ Thuật Thu Thập Yêu Cầu
- Các Công Việc Vủa Cán Bộ Phân Tích
Xem toàn bộ 305 trang tài liệu này.
+ Bảng quy định liên quan
Mã số | Tên quy định | Mô tả chi tiết | Ghi chú | |
1 | ||||
2 |
Ví dụ. Xét phần mềm quản lý thư viện, thủ thư phải thực hiện các công việc nghiệp vụ sau: Cho mượn sách bằng các sử dụng phiếu mượn (mẫu BM1) mà độc giả cung cấp biết rằng chỉ cho mượn sách đối với các độc giả có thẻ còn hạn, chưa mượn đủ số sách qui định, không có sách mượn quá hạn; tính tiền phạt các độc giả mượn sách quá hạn biết rằng nếu quá hạn từ 1 đến 10 ngày thì mỗi ngày quá hạn phạt 1000 , phạt 3000/ngày kể từ ngày thứ 11; Tra cứu sách theo mã sách; Lập báo cáo thống kê các mẫu biểu: Báo cáo thống kê về số lượt mượn sách theo từng thể loại trong năm (mẫu BM2), báo cáo thống kê về nhập sách mới theo từng thể loại trong năm (mẫu BM3), báo cáo thống kê về nhập sách từng tháng trong năm (mẫu BM4).
Hãy xác định các yêu cầu chức năng nghiệp vụ.
- Bảng quy định liên quan
Mã số | Tên quy định | Mô tả chi tiết | Ghi chú | |
1 | QĐ1 | Qui định cho mượn sách | - Chỉ cho mượn sách đối với các độc giả có thẻ còn hạn. - Chưa mượn đủ số sách qui định. - Không có sách mượn quá hạn. | |
2 | CT1 | Công thức tính tiền phạt khi trả sách trễ hạn | - Mỗi ngày trễ phạt 1000 (từ 1-10) - 3000/ngày kể từ ngày thứ 11 |
- Bảng yêu cầu chức năng nghiệp vụ Bộ phận: Thủ thư
Công việc | Loại công việc | Quy định liên quan | Biểu mẫu liên quan | Ghi chú | |
1 | Cho mượn sách | Lưu trữ | QD1 | BM1 | |
2 | Tính tiền phạt | Tính toán | CT1 | ||
3 | Tra cứu sách | Tra cứu | |||
4 | Lập b/c thống kê | Kết xuất | BM2 BM3 BM4 |
- Xác định yêu cầu chức năng hệ thống
Cách tiến hành: chuyên viên tin học, nhà chuyên môn cùng đề xuất và cùng xem xét lại các yêu cầu.
Các bước tiến hành:
Bước 1: Xem xét các yêu cầu chức năng hệ thống cơ bản, thông dụng
Bước 2: Xem xét các yêu cầu chức năng hệ thống chuyên biệt (các yêu cầu về các công việc mới chỉ có thể tiến hành khi thực hiện trên máy tính).
Bước 3: Lập bảng yêu cầu chức năng hệ thống và bảng yêu cầu về chất lượng
+ Bảng yêu cầu chức năng hệ thống
Nội dung | Mô tả chi tiết | Ghi chú | |
1 | |||
2 |
+ Bảng yêu cầu về chất lượng
Nội dung | Tiêu chuẩn | Mô tả chi tiết | Ghi chú | |
1 | ||||
2 |
Ví dụ: Xét phần mềm quản lý thư viện. Giả sử phục vụ cho 4 bộ phận là : Độc giả, thủ thư, Ban giám hiệu và người quản trị hệ thống.
Bảng yêu cầu chức năng hệ thống
Nội dung | Mô tả chi tiết | Ghi chú | |
1 | Phân quyền sử | - Người quản trị: tất cả các chức năng. | |
dụng | - Đọc giả: chỉ tra cứu sách. | ||
- Ban giám hiệu: chỉ tra cứu sách và | |||
lập các báo các thống kê. | |||
- Thủ thư: tất cả các chức năng ngoại | |||
trừ chức năng phân quyền, sao lưu, | |||
phục hồi |
+ Bảng yêu cầu về chất lượng
Nội dung | Tiêu chuẩn | Mô tả chi tiết | Ghi chú | |
1 | Cho phép thay đổi qui định tính tiền phạt | Tiện lợi | Người dùng phần mềm có thể thay đổi đơn giá phạt và biên các mức phạt | |
2 | Hình thức tra cứu thật tiện dụng, trực quan | Tiện dụng | ||
3 | Tiến độ thực hiện việc cho mượn sách nhanh | Hiệu quả | Tối đa 30 GB cho việc nhập mới phiếu mượn | |
4 | Cho phép nhập sách mới từ tập tin.xls | Tương thích | Có thể lập trực tiếp danh sách các sách mới bằng tập tin Excel với cấu trúc định sẵn. |
c) Xác định yêu cầu phi chức năng
Cách tiến hành: Nhà chuyên môn đề xuất và chuyên viên tin học sẽ xem xét lại. Bước tiến hành:
Bước 1. Xác định các yêu cầu mà khách hàng yêu cầu:
+ Yêu cầu sản phẩm: Yêu cầu sử dụng, yêu cầu hiệu quả, yêu cầu độ tin cậy, yêu cầu linh động
+ Yêu cầu của tổ chức: Yêu cầu chuyển giao, yêu cầu cài đặt, yêu cầu hợp chuẩn
+ Yêu cầu ngoài: Yêu cầu tương thích, yêu cầu hợp quy tắc, yêu cầu về luật.
Bước 3: Lập các bảng: Yêu cầu về sản phẩm, yêu cầu về mặt tổ chức, yêu cầu ngoài
Tên bảng: ………
Nội dung | Mô tả chi tiết | Ghi chú | |
1 | |||
2 |
Ví dụ xét phần mềm quản lý thư viện
- Bảng yêu cầu về sản phẩm Tên bảng: Yêu cầu về sản phẩm
Nội dung | Mô tả chi tiết | Ghi chú | |
1 | Yêu cầu sử dụng | Phải được cài đặt bằng HTML mà không có frame hoặc Java applets | |
2 | Yêu cầu linh động | Cho phép thay đổi qui định số sách mượn tối đa | |
3 | Yêu cầu hiệu quả | Tốc độ nhập liệu cho mỗi phiếu mượn sách không quá 30 giây |
- Bảng yêu cầu về mặt tổ chức Tên bảng: Yêu cầu về tổ chức
Nội dung | Mô tả chi tiết | Ghi chú | |
1 | Yêu cầu chuyển | Quy trình xây dựng hệ thống và các tài | |
giao và hợp chuẩn | liệu chuyển giao phải thoả mãn các | ||
quy tắc đã được định nghĩa trong | |||
XYZCo-SP-STAN-95 |
- Bảng yêu cầu ngoài: Tên bảng: Yêu cầu ngoài
Nội dung | Mô tả chi tiết | Ghi chú | |
1 | Yêu cầu về luật | Hệ thống không được để lộ các thông tin cá nhân của độc giả. | |
2 | Yêu cầu về tương thích | Cho phép chuyển tất cả các báo cáo sang dạng tập tin .XLS; Cho phép nhập sách mới từ tập tin .XLS |