Một số yêu cầu nhập môn công nghệ phần mềm Một số yêu cầu nhập môn công nghệ phần mềm Bởi: Phạm Thị Quỳnh Yêu cầu hệ thống Giới thiệu Các yêu cầu hệ thống phần mềm thường chia thành ba loại: yêu cầu chức năng, yêu cầu phi chức yêu cầu miền ứng dụng Tuy nhiên, thực tế khó phân biết ba loại yêu cầu cách rõ ràng Mục tiêu - Tìm hiểu yêu cầu hệ thống đặc điểm chúng - Phương pháp xác định yêu cầu hệ thống - Nắm rõ kỹ thuật đặc tả yêu cầu hệ thống biết cách áp dụng kỹ thuật cách thích hợp Ví dụ Trong chương này, sử dụng ví dụ hệ thống thư viện để xác định loại yêu cầu Hệ thống thư viện (LIBSYS) cung cấp giao diện đơn giản để lưu CSDL báo thư viện khác Người sử dụng tìm kiếm, download in tài liệu 1/6 Một số yêu cầu nhập môn công nghệ phần mềm Yêu cầu chức Đặt vấn đề - Để xây dựng hệ thống dùng thực sự, trước hết phải đạt yêu cầu gì? - Yêu cầu chức có phải quan trọng không? - Nếu ta không xác định đầy đủ, rõ ràng yêu cầu chức xảy chuyện gì? Yêu cầu chức mô tả hệ thống làm Nó mô tả chức dịch vụ hệ thống cách chi tiết Đặc điểm yêu cầu chức năng: - Tính mập mờ, không rõ ràng yêu cầu: Vấn đề xảy yêu cầu không xác định cách cẩn thận Các yêu cầu mập mờ người xây dựng người sử dụng hiểu theo nhiều cách khác - Tính hoàn thiện quán: Về nguyên tắc, yêu cầu phải chứa tất mô tả chi tiết xung đột đối ngược yêu cầu Tuy nhiên, thực tế khó đạt điều Xác định yêu cầu chức LYBSYS - Người sử dụng tìm kiếm tất CSDL tập CSDL - Hệ thống cung cấp giao diện thích hợp để người sử dụng đọc tài liệu - Tất hoá đơn mà người sử dụng đăng ký để in tài liệu có mã Yêu cầu phi chức Đặt vấn đề - Nếu hệ thống thoả mãn yêu cầu chức đủ chưa? - Ví dụ hệ thống không tiện dụng người sử dụng sao? - Yêu cầu phi chức bao gồm vấn đề gì? Yêu cầu phi chức không đề cập trực tiếp tới chức cụ thể hệ thống Yêu cầu phi chức thường định nghĩa thuộc tính như: độ tin cậy, thời gian đáp 2/6 Một số yêu cầu nhập môn công nghệ phần mềm ứng, yêu cầu lưu trữ …và ràng buộc hệ thống như: khả thiết bị vào/ra, giao diện … Một số yêu cầu phi chức có liên quan đến quy trình xây dựng hệ thống Ví dụ: chuẩn sử dụng, công cụ CASE, ngôn ngữ lập trình … Các yêu cầu phi chức hạn chế yêu cầu chức Nhưng không thoả mãn hệ thống không sử dụng Các yêu cầu phi chức xuất yêu cầu người sử dụng, ràng buộc ngân sách, sách tổ chức sử dụng hệ thống, yêu cầu tương thích phần cứng phần mềm tác nhân khác Do đó, phân loại yêu cầu phi chức sau: - Các yêu cầu sản phẩm xác định ứng xử sản phẩm như: hiệu năng, khả sử dụng, độ tin cậy … sản phẩm - Các yêu cầu tổ chức: yêu cầu lấy từ sách quy tắc khách hàng tổ chức sử dụng hệ thống - Các yêu cầu ngoài: xác định từ tác nhân hệ thống 3/6 Một số yêu cầu nhập môn công nghệ phần mềm Xác định yêu cầu phi chức LIBSYS - Yêu cầu sản phẩm: LIBSYS phải cài đặt HTML mà frame Java applets - Yêu cầu mặt tổ chức: Quy trình xây dựng hệ thống tài liệu chuyển giao phải thoả mãn quy tắc định nghĩa XYZCo-SP-STAN-95 - Yêu cầu ngoài: Hệ thống không để lộ thông tin cá nhân khách hàng Nói chung, khó xác định xác khó thẩm tra yêu cầu phi chức mập mờ Do đó, tài liệu đặc tả yêu cầu, người ta thường bổ sung mục tiêu Mục tiêu hữu ích người phát triển hệ thống truyền tải mong muốn người sử dụng hệ thống Còn với yêu cầu phi chức thẩm định yêu cầu kiểm thử cách khách quan Tuy nhiên, nhiều trường hợp thường xảy xung đột yêu cầu phi chức hệ thống phức tạp Các mục tiêu yêu cầu phi chức thẩm định LIBSYS - Mục tiêu hệ thống dễ sử dụng người sử dụng có kinh nghiệm tổ chức để cho tối thiểu hoá lỗi - Các yêu cầu phi chức thẩm định được: Những người sử dụng có kinh nghiệm sử dụng tất chức hệ thống sau hai tiếng tập huấn Sau khoá huấn luyện này, số lỗi chương trình gây người sử dụng không hai lỗi ngày Yêu cầu miền ứng dụng Đặt vấn đề - Yêu cầu đội phát triển hệ thống? - Các yêu cầu lĩnh vực ứng dụng hệ thống thuộc vào loại hai loại trình bày? Yêu cầu miền ứng dụng xác định từ miền ứng dụng hệ thống phản ánh thuộc tính ràng buộc miền ứng dụng Nó yêu cầu chức phi chức Nếu yêu cầu miền ứng dụng không thoả mãn hệ thống không làm việc 4/6 Một số yêu cầu nhập môn công nghệ phần mềm Sau số vấn đề liên quan đến yêu cầu miền ứng dụng: - Khả hiểu được: yêu cầu biểu diễn ngôn ngữ lĩnh vực ứng dụng - Ẩn ý: Các chuyên gia có hiểu biết lĩnh vực họ họ cách xây dựng yêu cầu miền ứng dụng cách rõ ràng, mang tính kỹ thuật Yêu cầu miền ứng dụng LIBSYS - Giao diện người dùng chuẩn cho tất CSDL dựa chuẩn Z39.50 - Vì vấn đề quyền nên số tài liệu phải xoá vừa chuyển đến - Phụ thuộc vào yêu cầu người sử dụng, tài liệu in server chuyển đến cho người sử dụng gửi đến cho máy in mạng Một số kỹ thuật đặc tả yêu cầu hệ thống Giới thiệu Nói chung, ngôn ngữ tự nhiên thường sử dụng để viết đặc tả yêu cầu hệ thống yêu cầu người sử dụng Tuy nhiên, yêu cầu hệ thống thường chi tiết yêu cầu người sử dụng nên đặc tả ngôn ngữ tự nhiên thường gặp số vấn đề sau: - Không rõ ràng: Người đọc người viết yêu cầu phải giải thích từ theo nghĩa Ngôn ngữ tự nhiên có chất mập mờ nên để đạt yêu cầu khó khăn - Quá mềm dẻo: với vấn đề có nhiều cách khác để đặc tả - Thiếu khả mô-đun hoá: cấu trúc ngôn ngữ tự nhiên không tương xứng với cấu trúc yêu cầu hệ thống Vì lý mà đặc tả ngôn ngữ tự nhiên thường gây khó hiểu Do đó, sử dụng số phương pháp trình bày phần sau để đặc tả yêu cầu Đặc tả ngôn ngữ hướng cấu trúc Sử dụng ngôn ngữ hướng cấu trúc yêu cầu người viết đặc tả tuân theo mẫu định nghĩa trước Tất yêu cầu viết theo chuẩn thuật ngữ sử dụng bị hạn chế 5/6 Một số yêu cầu nhập môn công nghệ phần mềm Ưu điểm phương pháp đạt mức độ diễn tả cao ngôn ngữ tự nhiên mức độ đồng lại bị lạm dụng đặc tả Đặc tả dựa biểu mẫu (Form-based) Đặc tả dựa biểu mẫu định nghĩa chức thực thể, mô tả đầu vào nơi xuất phát nó, mô tả đầu nơi đến Đặc tả dựa biểu mẫu rõ thực thể cần thiết, điều kiện trước sau (nếu thích hợp), ảnh hưởng chức Biểu đồ trình tự Biểu đồ trình tự biểu diễn trình tự kiện xảy người sử dụng tương tác với hệ thống Nếu ta đọc biểu đồ từ đầu đến cuối ta thấy thứ tự hành động thực 6/6 ... ứng dụng Nó yêu cầu chức phi chức Nếu yêu cầu miền ứng dụng không thoả mãn hệ thống không làm việc 4/6 Một số yêu cầu nhập môn công nghệ phần mềm Sau số vấn đề liên quan đến yêu cầu miền ứng... tác nhân hệ thống 3/6 Một số yêu cầu nhập môn công nghệ phần mềm Xác định yêu cầu phi chức LIBSYS - Yêu cầu sản phẩm: LIBSYS phải cài đặt HTML mà frame Java applets - Yêu cầu mặt tổ chức: Quy.. .Một số yêu cầu nhập môn công nghệ phần mềm Yêu cầu chức Đặt vấn đề - Để xây dựng hệ thống dùng thực sự, trước hết phải đạt yêu cầu gì? - Yêu cầu chức có phải quan trọng