Thông tin tài liệu
Trường Đại Học Bách Khoa Tp. Hồ Chí Minh Khoa Công Nghệ Thông Tin -Trang 138- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển Chương 6 CƠ SỞ CỦA THIẾT KẾ PHẦN MỀM VÀ PHƯƠNG PHÁP THIẾT KẾ CỔ ĐIỂN ✦ ✦✦ ✦ Trừu tượng hoá, tinh chế, kiến trúc ✦ ✦✦ ✦ Phân chia module hiệu quả ✦ ✦✦ ✦ Thiết kế dữ liệu, kiến trúc, thủ tục, giao diện NỘI DUNG 6.1. Các cơ sở của thiết kế phần mềm 6.1.1. Trừu tượng hoá (abstraction) 6.1.2. Tinh chế (refirement) 6.1.3. Phân chia module (modularity) 6.1.4. Kiến trúc phần mềm 6.1.5. Cấu trúc dữ liệu 6.1.6. Thủ tục 6.1.7. Che dấu thông tin -Trang 139- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển NỘI DUNG (t.t) 6.2. Phân chia module hiệu quả 6.2.1. Độ kết dính (cohesion) 6.2.2. Sự liên kết (coupling) 6.2.3. Các heuristics cho phân chia module 6.3. Thiết kế dữ liệu 6.4. Thiết kế kiến trúc 6.4.1. Dòng transform và dòng transaction 6.4.2. nh xạ dòng transform 6.4.3. nh xạ dòng transaction 6.5. Thiết kế giao diện người dùng 6.6. Thiết kế thủ tục -Trang 140- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển GIỚI THIỆU Thiết kế phần mềm là công việc đầu tiên của giai đoạn phát triển Thiết kế tạo ra các biểu diễn và dữ kiện của hệ thống phần mềm cần xây dựng từ kết quả phân tích yêu cầu để có thể dễ dàng hiện thực sau đó Là lónh vực tương đối mới mẻ và đang phát triển với nhiều phương pháp khác nhau -Trang 141- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển TRỪU TƯNG HOÁ Quá trình thiết kế trải qua nhiều mức trừu tượng hoá khác nhau Mức cao nhất: vấn đề cần thiết kế được mô tả một cách tổng quát sử dụng thuật ngữ hướng vấn đề Các mức thấp hơn: hướng đến thủ tục xử lý chi tiết; kết hợp các thuật ngữ hướng đến hiện thực Mức thấp nhất: vấn đề được mô tả theo cách có thể hiện thực trực tiếp Phân loại trừu tượng hoá: thủ tục và dữ liệu -Trang 142- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển TRỪU TƯNG HOÁ (t.t) Trừu tượng hoá thủ tục Là chuỗi các lệnh liên tiếp thực hiện chức năng nào đó. Ví dụ: mở cửa (bao gồm đi đến cửa, cầm lấy tay nắm, xoay tay nắm, kéo cánh cửa, đi vào…); thêm một phần tử vào danh sách có thứ tự (xác đònh vò trí, chèn phần tử mới) Trừu tượng hoá dữ liệu Là tổ hợp dữ liệu mô tả một đối tượng dữ liệu (liên hệ tới đối tượng thực thể trong UML). Ví dụ: hàng, chồng, cánh cửa . Một số ngôn ngữ lập trình hỗ trợ kiểu ADT và template -Trang 143- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển TINH CHẾ Tinh chế là quá trình làm rõ vấn đề Tinh chế và trừu tượng hoá là hai khái niệm bù trừ nhau: càng tinh chế thì càng hạ thấp mức trừu tượng hoá -Trang 144- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển PHÂN CHIA MODULE Khái niệm module đã xuất hiện khoảng 4 thập niên trờ lại đây Phần mềm được xây dựng bằng cách phân chia thành nhiều module, sau đó sẽ được tích hợp lại Phân chia module làm cho việc quản lý phần mềm khoa học hơn Giả sử C(x): độ phức tạp của x, E(x): công sức để thực hiện x. Rõ ràng: nếu C(p1) > C(p2) thì E(p1) > E(p2). Nếu phân chia p = p1 + p2 ta thấy (một cách trực quan): C(p1 + p2) > C(p1) + C(p2) E(p1 + p2) > E(p1) + E(p2) -Trang 145- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển PHÂN CHIA MODULE (t.t) Số lượng module phụ thuộc vào độ phức tạp của hệ thống phần mềm cần xây dựng quá ít hoặc quá nhiều module đều không tốt Số lượng module Công sức bỏ ra Công sức từng module Công sức tích hợp Tổng công sức Vùng tối ưu -Trang 146- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển KIẾN TRÚC PHẦN MỀM Kiến trúc phần mềm mô tả các thành phần (component) kiến tạo nên hệ thống phần mềm và sự giao tiếp giữa các thành phần đó Thành phần có thể là Các module mã nguồn Các file thực thi (*.dll, *.exe, *.class .) Các thành phần của kiến trúc hệ thống: ActiveX control, bean . Các trang HTML, *.asp, *.jsp . -Trang 147- Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển [...]... Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển SỰ LIÊN KẾT Sự liên kết dùng để đo đạc quá trình giao tiếp giữa các module: giao tiếp của module chứa nhiều tác vụ và nhiều thông số gọi thì sự liên kết càng cao Thiết kế kiến trúc phần mềm: cố gắng giảm sự liên kết - Trang 155 Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương. .. Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển DÒNG TRANSFORM VÀ TRANSACTION Dòng đi ra Dòng đi vào Dòng xử lý Dòng transform bao gồm 3 phần: dòng đi vào, dòng xử lý và dòng đi ra - Trang 161 Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển DÒNG TRANSFORM VÀ TRANSACTION (t.t) Dòng đi vào Dòng transaction... Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển THIẾT KẾ DỮ LIỆU Tìm kiếm biểu diễn luận lý cho các phần tử dữ liệu đã được nhận diện trong giai đoạn phân tích yêu cầu Thiết kế các cấu trúc dữ liệu của chương trình và cơ sở dữ liệu Thực hiện tinh chế từng bước - Trang 158 Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương. .. Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển TỔNG KẾT Các cơ sở của thiết kế phần mềm: trừu tượng hoá, tính chế từng bước, phân chia module, cấu trúc dữ liệu, chương trình con, che dấu thông tin Phân chia module hiệu quả: tăng độ kết dính và giảm sự liên kết Thiết kế cổ điển bao gồm 4 công đoạn: t/k dữ liệu, t/k kiến trúc, t/k giao diện người máy và t/k thủ... đi vào, Tcenter và các đường xử T-center lý đầu ra T-center: Chỉ có một đường ra được kích hoạt tại một thời điểm - Trang 162 Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển ÁNH XẠ DÒNG TRANSFORM Tự đọc [1], trang 377 - Trang 163 Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp. .. và phương pháp thiết kế cổ điển ÁNH XẠ DÒNG TRANSACTION Tự đọc [1], trang 387 - Trang 164 Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG Phần mềm cần có giao diện thân thiện với người sử dụng Một số tiêu chuẩn giao diện Thời gian đáp ứng của hệ thống: giá trò trung bình và độ lệch Phương tiện trợ... lỗi và cách khắc phục Đặt tên nhãn: ngắn gọn và gợi nhớ - Trang 165 Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG (t.t) Công cụ thiết kế giao diện nên có những tính năng sau Quản lý thiết bò nhập (bàn phím, chuột) Hiệu chỉnh thông tin input Kiểm soát lỗi và hiển thò thông báo lỗi Cung cấp trợ giúp và. .. Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển NGÔN NGỮ PDL Ngôn ngữ PDL vay mượn từ vựng của ngôn ngữ tự nhiên và cú pháp của ngôn ngữ lập trình có cấu trúc Nó có các tính chất sau: Cú pháp chặt chẽ của các từ khoá hỗ trợ đặc tả cấu trúc, khai báo dữ liệu, phân chia module Cú pháp tự do của ngôn ngữ tự nhiên giúp miêu tả xử lý Phương tiện mô tả dữ... Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển THIẾT KẾ KIẾN TRÚC Mục tiêu là xây dựng sơ đồ phân cấp module từ DFD Đặt nền móng để thiết kế chi tiết thủ tục và dữ liệu Phân biệt dòng transform và dòng transaction trong DFD Thực hiện ánh xạ cho từng vùng của DFD tuỳ theo nó là dòng transform hay transaction - Trang 160 Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm. .. Nghệ Thông Tin - Môn Công Nghệ Phần Mềm Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển CÁC HEURISTICS cho PHÂN CHIA MODULE Sửa lại thiết kế ban đầu để tăng độ kết dính và giảm sự liên kết Khi chiều sâu tăng, hạn chế fan-out trong khi sử dụng fan-in Giữ cho tầm ảnh hưởng của một module nằm bên trong tầm điều khiển của nó Loại bỏ dư thừa trong giao tiếp của các module Ưu tiên các module . Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển Chương 6 CƠ SỞ CỦA THIẾT KẾ PHẦN MỀM VÀ PHƯƠNG PHÁP THIẾT KẾ CỔ ĐIỂN. Công Nghệ Phần Mềm - Chương 6: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển KIẾN TRÚC PHẦN MỀM Kiến trúc phần mềm mô tả các thành phần (component)
Ngày đăng: 29/09/2013, 14:20
Xem thêm: Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển, Cơ sở của thiết kế phần mềm và phương pháp thiết kế cổ điển