Bài giảng Công nghệ phần mềm: Chương 2 Phân tích và đặc tả yêu cầu cung cấp cho người học những kiến thức như: Tổng quan; Quá rình phân tích; Xác định yêu cầu; Mô hình hóa yêu cầu hệ thống. Mời các bạn cùng tham khảo!
Insert or Drag and Drop your Image PHÂN TÍCH VÀ ĐẶC TẢ YÊU CẦU Jens Martensson NỘI DUNG Tổng quan Q rình phân tích Xác định u cầu Mơ hình hóa u cầu hệ thống Jens Martensson 2.1 Tổng quan đặc tả u cầu • Gồm cơng đoạn: • Nghiên cứu tính khả thi • Phân tích mơ hình • Đặc tả yêu cầu • Được phối hợp nhóm phát triển phần mềm khách hàng • u cầu khách hàng thu thập đầy đủ chi tiết • Cơng cụ: loại sơ đồ biểu diễn khái niệm mơ hình hóa mối quan hệ đối tượng hệ thống Jens Martensson 2.2 Q trình phân tích Bao gồm bước phân tích: ü Phân tích phạm vi dự án ü Phân tích mở rộng yêu cầu nghiệp vụ ü Phân tích yêu cầu bảo mật ü Phân tích yêu cầu tốc độ ü Phân tích yêu cầu vận hành ü Phân tích khả mở rộng yêu cầu ü Phân tích yêu cầu sẵn dùng ü Phân tích yếu tố người ü Phân tích yêu cầu tích hợp Jens Martensson 2.2 Q trình phân tích Jens Martensson 2.2.1 Phân tích phạm vi dự án • Xác định rõ trình nghiệp vụ mà phần mềm xử lý • Một giải pháp nghiệp vụ gồm: • Phần triển khai phần mềm: Trong yêu cầu nghiệp vụ khách hàng thực hóa thành phần mềm cụ thể, • Phần thực người hay chương trình: Là giai đoạn vận hành sử dụng hệ thống Jens Martensson 2.2.1 Phân tích phạm vi dự án • Mục đích việc chia giải pháp nghiệp vụ thành phần là: • Chia trách nhiệm thành nhiệm vụ tương ứng với việc chia chương trình thành module • Xác định vùng địa lý liên quan (chi nhánh văn phòng), • Ước lượng số người dùng phần mềm, thời gian phần mềm trì, • Biết tính xác yêu cầu phần mềm, • Hiểu khách hàng mong đợi dự án triển khai • Xác định phạm vi dự án, dự đoán ngân sách, thời gian nguồn nhân lực Jens Martensson 2.2.2 Phân tích mở rộng u cầu nghiệp vụ • Xác định yêu cầu nghiệp vụ: • Mỗi dự án có hay nhiều yêu cầu nghiệp vụ (tác vụ) liên quan đến việc mô tả công việc cụ thể nghiệp vụ • Một tác vụ chia nhỏ thành nhiều phần đủ để mô tả công việc xác Jens Martensson 2.2.2 Phân tích mở rộng yêu cầu nghiệp vụ Jens Martensson 2.2.2 Phân tích mở rộng u cầu nghiệp vụ • Xác định u cầu chất lượng: • Mỗi dự án có yêu cầu liên quan đến khả đáp ứng nhanh, bảo mật, phụ thuộc, dễ dùng … • Chất lượng dự án mức độ chấp nhận, thỏa mãn nhu cầu khách hàng Jens Martensson 10 2.4.2 Sơ đồ phân rã chức (FDD) Jens Martensson 62 2.4.2 Sơ đồ phân rã chức (FDD) Jens Martensson 63 2.4.3 Mơ hình mẫu (prototype) • • Mơ hình mẫu phát thảo sơ số chức hệ thống gồm giao diện, dựa ý tưởng/yêu cầu khách hàng Bản mẫu mô tả cách thức phần mềm hoạt động, cách người dùng tương tác với hệ thống giúp người dùng hình dung sản phẩm theo u cầu Jens Martensson 64 2.4.3 Mơ hình mẫu (prototype) • Thực mẫu • Mơ hình mẫu tạo kỹ sư phân tích kỹ sư thiết kế phần mềm • Người sử dụng xem mẫu đưa ý kiến đóng góp phản hồi thơng tin giúp nhóm phân tích có u cầu xác • Nếu người sử dụng đồng ý với mẫu nhóm phát triển tiến hành xây dựng phần mềm • Ngược lại hai phải quay lại giai đoạn xác định yêu cầu • Cơng việc lặp lại liên tục người sử dụng đồng ý với mẫu nhà phát triển đưa Jens Martensson 65 2.4.4 Sơ đồ luồng liệu (DFD) • • Sơ đồ luồng liệu (data-flow diagram): Là mơ hình biểu diễn luồng liệu cách thức liệu xử lý bên hệ thống với nhiều mức chi tiết khác Sơ đồ có nhiều biến thể mở rộng khác Jens Martensson 66 2.4.5 Mô hình hướng đối tượng • Phương pháp phân tích hướng đối tượng: dựa ý tưởng lập trình hướng đối tượng, gồm khái niệm • Ðối tượng (Object): gồm liệu hành vi tác động lên liệu • Lớp (Class): tập đối tượng có cấu trúc liệu hành vi • Đóng gói (Encapsulation): khả hạn chế tác động trực tiếp lên liệu đối tượng • Kế thừa (inheritance): đặc tính cho phép lớp kế thừa thuộc tính hành vi lớp cha Jens Martensson 67 2.4.5 Mơ hình hướng đối tượng • • Mơ hình hướng đối tượng: mơ hình hóa đối tượng mối quan hệ đối tượng Công cụ: sử dụng ngơn ngữ mơ hình hóa UML, bao gồm mơ hình biểu diễn khía cạnh hệ thống: • Biểu diễn hành vi: use case diagram, sequence diagram, activity diagram, • Biểu diễn nghiệp vụ: business model • Biểu diễn cấu trúc hệ thống: domain model, class diagram, component diagram Jens Martensson 68 2.4.5 Mơ hình hướng đối tượng • Ví dụ: Use Case Diagram Jens Martensson 69 2.4.5 Mơ hình hướng đối tượng • Ví dụ: class Diagram Jens Martensson 70 2.4.6 Minh họa từ yêu cầu sang mơ hình hóa • Ví dụ: Phân tích phần mềm quản lý thư viện gồm yêu cầu: • Lập thẻ độc giả • Nhận sách, • Cho mượn sách, • Trả sách Jens Martensson 71 2.4.6 Minh họa từ u cầu sang mơ hình hóa • Mơ hình hóa u cầu • Sơ đồ luồng liệu cho cơng việc lập thẻ độc giả • D1: Thơng tin thẻ độc giả cần nhập • D4: Thơng tin thẻ độc giả cần lưu trữ kho • D5: Thông tin thẻ độc giả (trong giới thực) Xử lý thẻ độc giả: Kiểm tra tính hợp lệ thẻ trước ghi nhận in Jens Martensson 72 2.4.6 Minh họa từ u cầu sang mơ hình hóa • Mơ hình hóa u cầu • Sơ đồ luồng liệu cho cơng việc nhận sách • D1: Thơng tin thẻ sách cần nhập • D4: Thơng tin sách cần lưu trữ kho Xử lý nhập sách: Kiểm tra tính hợp lệ sách trước lưu vào kho Jens Martensson 73 2.4.6 Minh họa từ u cầu sang mơ hình hóa • Mơ hình hóa u cầu • Sơ đồ luồng liệu cho cơng việc cho mượn sách • D1: Thơng tin độc giả sách muốn mượn • D3: Thơng tin sử dụng cho việc kiểm tra quy định mượn sách • D4: Thơng tin việc mượn sách Xử lý cho mượn sách: Kiểm tra tính hợp lệ việc mượn, lưu vào kho Jens Martensson 74 2.4.6 Minh họa từ u cầu sang mơ hình hóa • Mơ hình hóa u cầu • Sơ đồ luồng liệu cho cơng việc trả sách • D1: Thơng tin độc giả sách trả • D3: Thơng tin sử dụng cho việc kiểm tra quy định trả sách • D4: Thông tin việc trả sách Xử lý trả sách: Kiểm tra tính hợp lệ việc trả sách, lưu vào kho Jens Martensson 75 BÀI TẬP • Phụ lục A trang 170 • Phụ lục B trang 179 Jens Martensson 76 ... Martensson 2. 2 Q trình phân tích Jens Martensson 2. 2.1 Phân tích phạm vi dự án • Xác định rõ trình nghiệp vụ mà phần mềm xử lý • Một giải pháp nghiệp vụ gồm: • Phần triển khai phần mềm: Trong... nghiệp vụ • Một tác vụ chia nhỏ thành nhiều phần đủ để mô tả công việc xác Jens Martensson 2. 2 .2 Phân tích mở rộng yêu cầu nghiệp vụ Jens Martensson 2. 2 .2 Phân tích mở rộng u cầu nghiệp vụ • Xác... việc phần cứng phần mềm có • Nếu biết HĐH, loại mạng sử dụng, thơng tin cấu hình máy chủ, phần mềm khơng tương thích với chương trình giúp việc phân tích xác hiệu Jens Martensson 11 2. 2 .2 Phân