Bài giảng Công nghệ phần mềm - Chương 3: Khảo sát, phân tích và đặc tả yêu cầu

3.1. Tìm hiểu, xác định yêu cầu

3.2. Phân tích yêu cầu

3.3. Đặc tả yêu cầu

3.4. Tư liệu hóa yêu cầu phần mềm

3.5. Đặc tính dữ liệu và các kỹ thuật để thu thập dữ liệu

 

 

 

 

ppt41 trang | Chuyên mục: Công Nghệ Phần Mềm | Chia sẻ: dkS00TYs | Lượt xem: 4651 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Công nghệ phần mềm - Chương 3: Khảo sát, phân tích và đặc tả yêu cầu, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 trình Cần thiết đặc biệt trong trường hợp môi trường là động và sự thay đổi của nó ảnh hưởng tới hành vi của thực thể nào đó tương tác với môi trường nào đó Công nghệ phần mềm - Chương 3 * * 3.3. Đặc tả yêu cầu – tiếp Nguyên lý đặc tả (8 nguyên lý) Nguyên lý 3: Đặc tả phải bao gồm hệ thống có phần mềm là một thành phần vì: Hệ thống bao gồm các thành phần tương tác với nhau, chỉ bên trong hoàn cảnh của toàn bộ hệ thống và tương tác giữa các thành phần của nó thì hành vi của một thành phần mới có thể xác định. Công nghệ phần mềm - Chương 3 * * * Công nghệ phần mềm - Chương 3 * 3.3. Đặc tả yêu cầu – tiếp Nguyên lý đặc tả (8 nguyên lý) Nguyên lý 4: 	Đặc tả phải bao gồm cả môi trường mà hệ thống vận hành Công nghệ phần mềm - Chương 3 * * 3.3. Đặc tả yêu cầu – tiếp Nguyên lý đặc tả (8 nguyên lý) Nguyên lý 5: Đặc tả hệ thống phải là một mô hình nhận thức Không phải là mô hình thiết kế hay cài đặt. Phải mô tả một hệ thống như cộng đồng người sử dụng cảm nhận thấy. Công nghệ phần mềm - Chương 3 * * 3.3. Đặc tả yêu cầu – tiếp Nguyên lý đặc tả (8 nguyên lý) Nguyên lý 6: Đặc tả phải vận hành phải đầy đủ và hình thức để có thể được dùng trong việc xác định liệu một cài đặt được đề nghị có thỏa mãn đặc tả trong những trường hợp kiểm thử tùy ý hay không Công nghệ phần mềm - Chương 3 * * 3.3. Đặc tả yêu cầu – tiếp Nguyên lý đặc tả (8 nguyên lý) Nguyên lý 7: Đặc tả hệ thống phải dung sai về tính không đầy đủ và tính nâng cao. Đặc tả không thể hoàn toàn đầy đủ do môi trường phức tạp Đặc tả là mô hình - sự trừu tượng hóa - của tình huống thực nên không đầy đủ. Đặc tả sẽ tồn tại ở nhiều mức chi tiết Các công cụ phân tích được sử dụng để giúp cho đặc tả và kiểm thử đặc tả phải có khả năng xử lý với tính không đầy đủ. Công nghệ phần mềm - Chương 3 * * 3.3. Đặc tả yêu cầu – tiếp Nguyên lý đặc tả (8 nguyên lý) Nguyên lý 8: Đặc tả phải được cục bộ hóa và được ghép lỏng lẻo Đặc tả làm cơ sở cho thiết kế và cài đặt, không phải tĩnh mà là một sự vật động, đang trải qua thay đổi đáng kể nên nội dung và cấu trúc phải phù hợp. Sự thay đổi khi cần sửa đổi là tối thiểu, chỉ một phần nhỏ các thành phần có thể thâm vào hay loại bớt một cách dễ dàng. Công nghệ phần mềm - Chương 3 * * 3.4. Tư liệu hóa yêu cầu phần mềm Cấu trúc của tài liệu yêu cầu phần mềm gồm các thành phần: Giới thiệu: Sự cần thiết, sơ lược chức năng và cách làm Thuật ngữ: Các định nghĩa rõ ràng Mô hình hệ thống Định nghĩa yêu cầu chức năng Định nghĩa yêu cầu phi chức năng Tiến triển hệ thống Đặc tả yêu cầu Công nghệ phần mềm - Chương 3 * * 3.4. Tư liệu hóa yêu cầu phần mềm (tiếp) Cấu trúc của tài liệu yêu cầu phần mềm gồm các thành phần (tiếp): Tài liệu yêu cầu phần mềm có thể bao gồm thêm các phần sau Phần cứng Yêu cầu dữ liệu Chỉ mục có thể được cung cấp,… Công nghệ phần mềm - Chương 3 * * 3.4. Tư liệu hóa yêu cầu phần mềm (tiếp) Nội dung yêu cầu cần thỏa mãn Cần mô tả các hành vi hệ thống bên ngoài Cần mô tả các ràng buộc về thực hiện Cần phải dễ thay đổi Phải là công cụ tham chiếu cho người bảo trì hệ thống Cần ghi được vòng đời của hệ thống Cần biểu thị được các đáp ứng chấp nhận được với sự kiện không dự kiến. Công nghệ phần mềm - Chương 3 * * 3.4. Tư liệu hóa yêu cầu phần mềm (tiếp) Theo thời gian tài liệu yêu cầu cũng cần phải thay đổi. Cần đáp ứng tốt: Các yêu cầu ổn định Các yêu cầu bất thường Công nghệ phần mềm - Chương 3 * * 3.5. Đặc tính dữ liệu và các kỹ thuật để thu thập dữ liệu Đặc tính dữ liệu Tính định hướng thời gian: Quá khứ - Hiện tại – Tương lai Tính cấu trúc Tính đầy đủ Nhập nhằng Ngữ nghĩa Độ lớn của dữ liệu,… Công nghệ phần mềm - Chương 3 * * 3.5. Đặc tính dữ liệu và các kỹ thuật để thu thập dữ liệu (tiếp) Các kỹ thuật để thu thập dữ liệu cho ứng dụng Một số kỹ thuật để thu nhập dữ liệu Phỏng vấn Họp nhóm Quan sát Ấn định công việc tạm thời Điều tra qua câu hỏi Xem xét tài liệu Xem xét phần mềm Công nghệ phần mềm - Chương 3 * * * Công nghệ phần mềm - Chương 3 * Phỏng vấn Phỏng vấn cần có: Bắt đầu: Tự giới thiệu bản thân và đặt các câu hỏi đơn giản Đoạn giữa: Tập trung vào chủ đề chính Kết thúc: Tóm tắt những thứ đã nghe đã nói * Công nghệ phần mềm - Chương 3 * Phỏng vấn (tiếp) Hai kiểu câu hỏi: Câu hỏi mở: như “… nghĩ thế nào?”, “ … làm thế nào?”,… Câu hỏi đóng: như “có” – “không”, “đúng” – “sai”, “thích” – “không thích” * Công nghệ phần mềm - Chương 3 * Phỏng vấn (tiếp) Các bước tiến hành Tiến hành đặt cuộc hẹn theo thời gian phù hợp nhất Chuẩn bị tốt, tìm hiểu kỹ người được phỏng vấn Đúng giờ Lên kế hoạch cho cuộc phỏng vấn Giới thiệu bản thân và mục đích Sử dụng câu hỏi mở để bắt đầu Luôn chú ý vào câu trả lời (“Lắng nghe”) Có kế hoạch cho nội dung chính Kết hợp câu hỏi đóng và mở * Công nghệ phần mềm - Chương 3 * Phỏng vấn (tiếp) Lên kế hoạch cho cuộc phỏng vấn (tiếp) Luôn bám sát các trình bày và phát triển chi tiết Luôn cung cấp các thông tin phản hổi (xin phép trình bày lại,…) Hạn chế ghi chép Có kế hoạch kết thúc Tóm tắt nội dung, yêu cầu hiệu chỉnh Yêu cầu làm chính xác, đánh giá ghi chép lại Hẹn ngày nhận báo cáo Thống nhất lại ngày lấy lại phiên bản hiệu chỉnh Xác nhận lại lịch làm việc * Công nghệ phần mềm - Chương 3 * Phỏng vấn (tiếp) Ưu nhược điểm của phỏng vấn có cấu trúc và không cấu trúc * Công nghệ phần mềm - Chương 3 * Phỏng vấn (tiếp) Ưu điểm Phỏng vấn thích hợp cho việc nhận các thông tin đảm bảo cả số lượng lẫn chất lượng Các kiểu thông tin định tính là các ý kiến, niềm tin, thói quen, chính sách, và mô tả. Các kiểu về thông tin định lượng bao gồm tần suất, số lượng, định lượng các mục được dùng trong ứng dụng. * Công nghệ phần mềm - Chương 3 * Phỏng vấn (tiếp) Nhược điểm Phỏng vấn và các dạng khác của thu thập dữ liệu có thể làm bạn lạc lối, thiếu chính xác, hoặc thông tin không liên quan, không thích hợp. Bạn cần học cách đọc ngôn ngữ cử chỉ và thói quen để quyết định được các điều cần thiết cho cùng một thông tin. Đòi hỏi kỹ năng Có thể có kết quả thiên vị Đòi hỏi ba người để kiểm tra kết quả và thuờng không thích hợp với số lượng lớn người * Công nghệ phần mềm - Chương 3 * Họp nhóm Ưu điểm Có thể tạo ra quyết định Nhận được cả thông tin tổng hợp và chi tiết Phương pháp tốt cho các yêu cầu bên ngoài Tập hợp được nhiều người dùng liên quan,… Nhược điểm Nếu số đại biểu nhiều sẽ tốn thời gian Tốn thời gian Các ngắt quãng làm phân tán chú ý Mới không đúng đối tượng => kết quả không tốt Dễ chuyển sang chủ đề không liên quan * Công nghệ phần mềm - Chương 3 * Quan sát Thủ công Tự động * Công nghệ phần mềm - Chương 3 * Quan sát (tiếp) Nhược điểm: Thời gian của quan sát có thể không biểu diễn cho các công việc diễn ra thông thường, Ý nghĩ là đang bị quan sát có thể làm thay đổi thói quen thường ngày của người bị quan sát, Tốn thời gian. Ưu điểm: Kỹ sư phần mềm có thể nhận được sự hiểu biết tốt về môi trường công tác hiện tại và quá trình xử lý thông qua quan sát. Kỹ sư phần mềm có thể tập trung vào vấn đề, mà không bị ảnh hưởng bởi người khác. Các ngăn cách giữa kỹ sư phần mềm và các người được phỏng vấn sẽ được vượt qua bởi quan sát. * Công nghệ phần mềm - Chương 3 * Ấn định công việc tạm thời Cho ta cơ sở hình thức hoá các câu hỏi về các chức năng nào của phương pháp hiện thời của công việc sẽ được lưu giữ lại và cái nào sẽ bị loại trừ hoặc thay đổi. Nó cũng là cách thức để trả lời các câu hỏi không thể thực hiện được Bất lợi của công việc tạm thời là tốn thời gian và sự lựa chọn về thời gian có thể làm tối thiểu hoá vấn đề. Người kỹ sư phần mềm có thể có thiên kiến về quá trình xử lý công việc, nội dung làm ảnh hưởng tới công việc thiết kế sau này * Công nghệ phần mềm - Chương 3 * Điều tra qua câu hỏi Xây dựng các câu hỏi trên giấy hoặc trên máy Ưu điểm: Các trả lời không cần biết tên nên quan điểm và cảm nhận thu được là trung thực, Có thể tiến hành với nhiều người, Thích hợp với các câu hỏi đóng và hữu hạn, Phù hợp với công ty đa văn hoá và có thể tuỳ biến với quy ước địa phương,…  Nhược điểm Khó thực hiện lại được, Các câu hỏi không có trả lời có nghĩa là không thu được thông tin, Các câu hỏi có thể khó hiểu, Thực hiện và đánh giá có thể chậm, Không thể thêm các thông tin khi đã tiến hành công việc, Thông tin thu được hạn chế trong một phạm vi hẹp, Chỉ dùng nó như một phương pháp bổ sung,... * Công nghệ phần mềm - Chương 3 * Xem xét tài liệu Tài liệu có thể hiểu: các cẩm nang, quy định, các thao tác chuẩn mà tổ chức cung cấp như là hướng dẫn cho các nhà quản lý và nhân viên. Thực sự hữu ích cho các kỹ sư phần mềm để học về các lĩnh vực mà họ chưa từng có kinh nghiệm. Tài liêu có thể gây thành kiến và không không cung cấp để có thể nhận biết được quan điểm, động cơ,... * Công nghệ phần mềm - Chương 3 * Xem xét phần mềm Khi các ứng dụng cũ phải được thay thế các phần mềm mới, việc nghiên cứu các phần mềm đã tồn tại cung cấp cho chúng ta các thông tin về quá trình xử lý công việc hiện thời và các mở rộng có ràng buộc bởi thiết kế phần mềm. Khuyết điểm chính của việc nhận thông tin từ quan sát phần mềm là tài liệu có thể không chính xác hoặc kịp thời. Thời gian có thể bị lãng phí nếu ứng dụng đang bị xoá bỏ 3.5. Đặc tính dữ liệu và các kỹ thuật để thu thập dữ liệu (tiếp) Các kỹ thuật để thu thập dữ liệu cho ứng dụng (tiếp) Đánh giá tính phù hợp của các kỹ thuật thu thập dữ liệu đối với đặc tính của dữ liệu Công nghệ phần mềm - Chương 3 * * 3.5. Đặc tính dữ liệu và các kỹ thuật để thu thập dữ liệu (tiếp) Các kỹ thuật để thu thập dữ liệu cho ứng dụng (tiếp) Đánh giá tính phù hợp của các kỹ thuật thu nhập dữ liệu đối với các kiểu ứng dụng Công nghệ phần mềm - Chương 3 * * * Công nghệ phần mềm - Chương 3 * * Công nghệ phần mềm - Chương 3 * Câu hỏi 1. Hãy chỉ rõ vai trò quan trọng của việc xác định đúng đắn yêu cầu của bài toán. 2. Hãy phân tích để chỉ rõ các sai lầm thường gặp trong việc xác định yêu cầu. 3. Các công việc phải làm để có được một tài liệu yêu cầu chính xác. 4. Hãy nêu và phân tích các đặc tính dữ liệu của yêu cầu. 5. Các kỹ thuật để thu thập dữ liệu cho bài toán. Khi xây dựng một ứng dụng, bạn đã sử dụng những kỹ thuật nào, vì sao? 6. Hãy xây dựng tài liệu yêu cầu cho các hệ thống phần mềm mà các anh chị đã tìm hiểu. 

File đính kèm:

  • pptBài giảng Công nghệ phần mềm - Chương 3 Khảo sát, phân tích và đặc tả yêu cầu.ppt