Bài giảng Nhập môn công nghệ phần mềm - Chương 4: Yêu cầu phần mềm cung cấp cho người học các kiến thức: Các khái niệm cơ bản, thu thập yêu cầu, đặc tả yêu cầu, kiểm nghiệm yêu cầu. Mời các bạn cùng tham khảo nội dung chi tiết.
Yêu cầu phần mềm GV Nguyễn Minh Huy Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Các khái niệm bản Thu thập yêu cầu cầu Đặc tả yêu cầu cầu Kiểm nghiệm yêu cầu cầu Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Các khái niệm bản Thu thập yêu cầu cầu Đặc tả yêu cầu cầu Kiểm nghiệm yêu cầu cầu Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Các khái niệm Yêu cầu phần mềm gì? ? Yêu cầu phần mềm (software requirements): Bản mô tả phần mềm cần làm được:: Khả (chức năng) ) Ứng xử (hồi đáp đáp) ) Ràng buộc buộc Nhằm thỏa mãn mong muốn Stakeholder Khái niệm Stakeholder: Khách hàng (client) Người dùng (user) Hệ thống liên quan (related systems) Đội ngũ phát triển (development team) Những nhân tố ảnh hưởng đến yêu cầu phần mềm mềm Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Các khái niệm Nhu cầu vs Yêu cầu cầu:: Nhu cầu (user (user needs): mong muốn Stakeholder Mục tiêu hướng đến đến Yêu cầu (requirements): đáp ứng phần mềm mềm Những thực hóa hóa Nhu cầu (Stakeholder) Yêu cầu (Phần mềm) Là giám đốc, muốn biết doanh thu bán hàng tháng, quý, năm Thống kê doanh thu bán hàng Là độc giả, tơi muốn tìm sách theo tên tác giả năm xuất Tra cứu sách Là người dùng, muốn thời gian chờ xử lý tác vụ không phút Xử lý phản hồi nhanh Là người dùng đăng ký, muốn mật đăng nhập dễ dàng dị Bảo mật mật Nhập mơn Cơng Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Các khái niệm Mức độ chi tiết yêu cầu cầu:: Mức người dùng (user requirements): Mô tả tổng quan quan,, khách hàng đọc hiểu hiểu Thể chức phần mềm mềm Mức đội ngũ phát triển (system requirements): Mơ tả chi tiết tiết,, dùng để lập trình trình Thể bước hồi đáp đáp,, ứng xử phần mềm mềm Mức người dùng Mức đội ngũ phát triển Tra cứu sách - B1: độc giả cung cấp tên tác giả, năm xuất - B2: độc giả lệnh tra cứu - B3: hệ thống thông báo chờ - B4: hệ thống liệt kê danh sách tìm theo thứ tự tên sách Bảo mật mật Mật người dùng dài tối thiểu ký tự, có chữ số, mã hóa lưu trữ CSDL Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Các khái niệm Phân loại yêu cầu cầu:: Yêu cầu chức (functional requirements): Có thể sử dụng được Có tương tác người dùng hệ thống thống Chức phần mềm mềm Yêu cầu phi chức (non (non functional requirements) Khơng có tương tác tác Ràng buộc ứng xử phần mềm mềm Yêu cầu Phân loại Thống kê doanh thu bán hàng Chức Tra cứu sách Chức Xử lý phản hồi nhanh Phi chức Bảo mật mật Phi chức Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Các khái niệm Phân loại yêu cầu phi chức năng:: Ràng buộc phần mềm mềm:: Tính tiện dụng dụng,, tốc độ xử lý, lý, Tính ổn định định,, đáp ứng ứng,, thích ứng, ứng, bảo mật mật,, chịu lỗi, lỗi, Ràng buộc nghiệp vụ: vụ: Quy trình nghiệp vụ vụ Tiêu chuẩn cơng nghệ nghệ Ràng buộc mơi trường trường:: Máy móc móc,, thiết bị, bị, đường truyền truyền Giao tiếp với hệ thống khác khác Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Các khái niệm Phân loại yêu cầu phi chức năng:: Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Các khái niệm Các hoạt động phân tích u cầu cầu:: Nhập mơn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 10 Thu thập yêu cầu Chất lượng thu thập yêu cầu cầu:: Tính xác xác:: rõ ràng, ràng, khơng mơ hồ hồ Tránh dùng từ đa nghĩa nghĩa Giải thích thuật ngữ nghiệp vụ vụ Tính đầy đủ: đủ: đáp ứng trọn vẹn mong muốn muốn Làm việc với tất phận Stakeholder Làm rõ yêu cầu phi chức năng Tính qn qn:: khơng mâu thuẫn thuẫn Thống ý kiến phận Stakeholder Phân loại loại,, gom nhóm yêu cầu liên quan quan Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 14 Thu thập yêu cầu Phương pháp vấn khách hàng hàng:: Mục tiêu tiêu:: nắm bắt yêu cầu trực tiếp tiếp Cách thực hiện:: Trực tiếp tiếp:: gặp mặt mặt,, điện thoại thoại,, họp trực tuyến tuyến Gián tiếp tiếp:: bảng câu hỏi hỏi,, email Phân loại câu hỏi hỏi:: Câu hỏi đóng đóng:: giới hạn câu trả lời lời Câu hỏi mở mở:: câu trả lời tùy ý Hạn chế chế:: Sắp xếp thời gian (khách hàng hàng) ) Khó kiểm sốt lạc đề đề Khó nắm bắt yêu cầu đầy đủ đủ Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 15 Thu thập yêu cầu Phương pháp khảo sát thực địa: địa: Mục tiêu tiêu:: Nắm bắt yêu cầu gián tiếp tiếp Quan sát sát,, kiểm nghiệm thực tế tế Tìm hiểu nghiệp vụ vụ Tìm hiểu khó khăn khăn,, hạn chế chế Cách thực hiện:: Tham quan nơi làm việc việc Dự thính quy trình nghiệp vụ vụ Tham gia thực tập tập Hạn chế chế:: Sắp xếp thời gian (đội ngũ phát triển triển) ) Làm ảnh hưởng công việc khách hàng hàng Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 16 Thu thập yêu cầu Họp JRD (Joint Requirement Development): Mục tiêu tiêu:: Thống ý kiến Stakeholders Làm rõ yêu cầu đầy đủ đủ Cách thực hiện:: Họp mặt tất Stakeholders BA điều khiển khiển Giải thích rõ yêu cầu cầu Hạn chế chế:: Sắp xếp thời gian gian Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 17 Nội dung Các khái niệm bản Thu thập yêu cầu cầu Đặc tả yêu cầu cầu Kiểm nghiệm yêu cầu cầu Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 18 Đặc tả yêu cầu Khái niệm niệm:: Mô tả yêu cầu mức chi tiết (system requirements): Yêu cầu chức năng:: mô tả bước hồi đáp đáp Yêu cầu phi chức năng:: mô tả ràng buộc buộc Cấu trúc hóa yêu cầu cầu:: Phân loại loại,, gom nhóm nhóm Thệ mối liên hệ yêu cầu cầu Một đặc tả tốt cần có: có: Ngữ cảnh (context): hoàn cảnh bắt đầu đầu Ứng xử (behaviors): bước hồi đáp đáp Ràng buộc (constraints): ràng buộc buộc Kiểm chứng (testable): đo lường kết quả Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 19 Đặc tả yêu cầu Các phương pháp đặc tả tả:: Dùng ngôn ngữ tự nhiên nhiên Dễ diễn đạt đạt,, dài dòng dòng,, dễ nhầm lẫn lẫn Viết theo mẫu định dạng sẵn sẵn Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 20 Đặc tả yêu cầu Các phương pháp đặc tả tả:: Dùng ngôn ngữ hình thức (formal specification): Tương tự ngơn ngữ lập trình cơng thức tốn học học Ưu điểm điểm:: Chính xác xác,, rõ ràng ràng Kiểm tra tự động động Phát sinh chương trình tự động động Khuyết điểm điểm:: Phức tạp, tạp, khó diễn đạt đạt Hạn chế chế Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 21 Đặc tả yêu cầu Các phương pháp đặc tả tả:: Dùng mơ hình hình:: Hình vẽ + Mơ tả theo định dạng dạng Dễ hiểu hiểu,, ngắn gọn gọn,, súc tích tích Phương pháp phân tích tình huống Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 22 Đặc tả u cầu Phương pháp phân tích tình huống: huống: Mục tiêu tiêu:: Làm rõ yêu cầu mức chi tiết tiết:: Các chức năng Hồi đáp đáp,, ứng xử chức năng Ý tưởng tưởng:: Phần mềm ~ Bộ phim phim//Vở kịch kịch Stakeholder ~ Diễn viên viên Yêu cầu ~ Cảnh quay/ quay/Màn Màn diễn Chi tiết yêu cầu ~ Tình huống, huống, kịch diễn diễn Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 23 Đặc tả yêu cầu Phương pháp phân tích tình huống: huống: Màn diễn Diễn viên Tình & Kịch diễn Đăng nhập Độc giả/ Thủ thư Tình đăng nhập thành cơng -Hệ thống: hỏi tên đăng nhập mật -Người dùng: cung cấp thông tin -Người dùng: đề nghị đăng nhập -Hệ thống: kiểm tra thông tin đăng nhập -Hệ thống: chuyển đến hình Tình đăng nhập thất bại -Hệ thống: hỏi tên đăng nhập mật -Người dùng: cung cấp thông tin -Người dùng: đề nghị đăng nhập -Hệ thống: kiểm tra thông tin đăng nhập -Hệ thống: thông báo sai đề nghị cung cấp lại Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 24 Nội dung Các khái niệm bản Thu thập yêu cầu cầu Đặc tả yêu cầu cầu Kiểm nghiệm yêu cầu cầu Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 25 Kiểm nghiệm yêu cầu Vì phải kiểm nghiệm yêu cầu cầu? ? Hiểu phạm vi vấn đề cần giải quyết 80% dự án thất bại hiểu sai yêu cầu cầu Hạn chế lỗi lọt qua pha sau sau yêu cầu sai ~ 100 lỗi sai lập trình trình Các phương pháp kiểm nghiệm nghiệm:: Stakeholder phản hồi hồi Prototype: Phần mềm mẫu mẫu Minh họa trực quan quan Hiệu để kiểm nghiệm nghiệm Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 26 Kiểm nghiệm yêu cầu Lưu ý kiểm nghiệm yêu cầu cầu:: Tính xác xác Tính đầy đủ đủ Tính quán quán Yêu cầu đo lường (testable) Quản lý thay đổi yêu cầu cầu:: Nguyên nhân thay đổi đổi:: Khách quan quan:: ý kiến khách hàng hàng,, nghiệp vụ, vụ, môi trường trường Chủ quan quan:: hiểu sai sai,, thay đổi công nghệ nghệ Theo vết thay đổi đổi Xác định rủi ro Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 27 Bài tập Bài tập phân tích yêu cầu cầu:: Phân tích yêu cầu “Hệ thống quản lý học phần phần” ” Các vai diễn diễn:: Thu thập yêu cầu cầu:: Xác định Stakeholders Với stakeholder, liệt kê mong muốn họ họ Chuyển mong muốn thành yêu cầu tổng quan quan Đặc tả yêu cầu cầu:: Chọn yêu cầu tổng quan để đặc tả chi tiết PP phân tích tình huống Kiểm nghiệm yêu cầu cầu:: Vẽ prototype cho yêu cầu chi tiết đặc tả tả Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 28 ... chức năng:: Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt Các khái niệm Các hoạt động phân tích yêu cầu cầu:: Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com... Đăng nhập Độc giả/ Thủ thư Tình đăng nhập thành công -Hệ thống: hỏi tên đăng nhập mật -Người dùng: cung cấp thông tin -Người dùng: đề nghị đăng nhập -Hệ thống: kiểm tra thông tin đăng nhập -Hệ... sai sai,, thay đổi công nghệ nghệ Theo vết thay đổi đổi Xác định rủi ro Nhập môn Công Nghệ Phần Mềm - 2011 CuuDuongThanCong.com https://fb.com/tailieudientucntt 27 Bài tập Bài tập phân tích yêu