Bài giảng Công nghệ phần mềm - Chương 4: Thiết kế phần mềm

NỘI DUNG CHÍNH:

4.1. Đặc điểm của quá trình thiết kế phần mềm

4.2. Các hoạt động của quá trình phát triển phần mềm

4.3. Nền tảng thiết kế

4.4. Chất lượng thiết kế

4.5. Chiến lược thiết kế

4.6. Thiết kế kiến trúc ứng dụng và các mô hình cho thiết kế ứng dụng

4.7. Thiết kế giao diện người dùng

 

 

 

 

ppt70 trang | Chuyên mục: Công Nghệ Phần Mềm | Chia sẻ: dkS00TYs | Lượt xem: 2271 | 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 4: Thiết kế phần mềm, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
hát triển phương pháp thiết kế hướng đối tượng. Thiết kế hướng đối tượng là một chiến lược thiết kế, nó không phụ thuộc vào ngôn ngữ để thực hiện. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 4.6. Thiết kế kiến trúc ứng dụng và các mô hình cho thiết kế ứng dụng Thiết kế kiến trúc ứng dụng Các mô hình thiết kế ứng dụng * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Thiết kế kiến trúc ứng dụng Kiến trúc của hệ thống được suy dẫn ra qua tiến trình phân hoạch đặt mối quan hệ giữa các phần tử của giải pháp phần mềm được xác định trong phần phân tích yêu cầu. Các hoạt động phân rã kiến trúc: Cấu trúc hệ thống: hệ thống được cấu trúc thành một số các phân hệ, mỗi phân hệ là một đơn vị phần mềm độc lập. Các liên kết thông tin giữa các phân hệ được xác định. Mô hình hoá điều khiển: một mô hình chung về các quan hệ điều khiển giữa các thành phần của hệ thống được thiết lập. Phân rã mô hình: mỗi phân hệ đã xác định sẽ được phân rã thành các module. Kiến trúc sư sẽ phải quyết định các kiểu module và các kết nối. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Thiết kế kiến trúc ứng dụng (tiếp) Kết quả của thiết kế kiến trúc ứng dụng là tài liệu thiết kế kiến trúc. Bao gồm một số các biểu diễn đồ hoạ về các mô hình hệ thống kèm theo các giải thích bằng văn bản. Mô tả tại sao hệ thống được phân rã thành các phân hệ và các phân hệ lại được phân rã thành các module. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Các mô hình thiết kế ứng dụng Mô hình kho dữ liệu Mô hình khách - phục vụ Mô hình máy trừu tượng Mô hình điều khiển Mô hình đối tượng Mô hình luồng dữ liệu * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Các mô hình thiết kế ứng dụng (tiếp) Mô hình kho dữ liệu Các phân hệ cần trao đổi thông tin, và nó có thể tiến hành theo hai cách: Mỗi phân hệ duy trì một cơ sở dữ liệu riêng của mình. Dữ liệu được trao đổi giữa các phân hệ bằng cách chuyển đổi các thông báo. Mọi dữ liệu được lưu trữ tại một cơ sở dữ liệu trung tâm có thể được truy cập bởi mọi phân hệ. Mô hình này gọi là mô hình kho dữ liệu. Mô hình kho dữ liệu phù hợp cho các ứng dụng khi dữ liệu được tạo bởi một phân hệ và được sử dụng bởi các phân hệ khác * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Các mô hình thiết kế ứng dụng (tiếp) Mô hình khách - phục vụ Mô hình khách - phục vụ là một mô hình hệ thống phân tán biểu diễn việc phân tán các dữ liệu và xử lý trên nhiều máy tính khác nhau. Các thành phần chính là: Một tập các server độc lập phục vụ cho các phân hệ. Một tập các khách hàng yêu cầu các dịch vụ. Chúng có thể là các phân hệ, hay là các thể hiện khác nhau của cùng một chương trình. Một mạng cho phép các khách hàng có thể truy nhập được các dịch vụ. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Các mô hình thiết kế ứng dụng (tiếp) Mô hình máy trừu tượng Mô hình máy trừu tượng đôi khi gọi là mô hình lớp, mô hình hoá giao diện của các phần mềm. Nó tổ chức một hệ thống thành một dãy các lớp cung cấp các dịch vụ khác nhau. Mỗi lớp xác định một máy trừu tượng, ngôn ngữ máy của lớp này sẽ làm cơ sở để thực hiện cho lớp kế tiếp. Nhược điểm là hệ thống được cấu trúc theo cách này tương đối phức tạp. Việc thực hiện cũng gặp vấn đề do nhiều lớp của cùng một giao tiếp cần phải có. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Các mô hình thiết kế ứng dụng (tiếp) Mô hình điều khiển Là mô hình mà để vận hành, hệ thống phải được điều khiển làm việc đồng bộ và đúng. Mô hình cấu trúc không có các thông tin điều khiển mà các luồng điều khiển được chỉ ra ở mô hình điều khiển. Hai cách tiếp cận chung có thể xác định là: Điều khiển tập trung, Điều khiển trên cơ sở sự kiện Mô hình điều khiển bổ sung cho mô hình cấu trúc. Mỗi mô hình cấu trúc đã nói trên đều có thể dùng mô hình điều khiển tập trung hoặc mô hình điều khiển trên cơ sở sự kiện. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Các mô hình thiết kế ứng dụng (tiếp) Mô hình đối tượng Hệ thống được phân thành các đối tượng giao tiếp với nhau. Phân tích hướng đối tượng chỉ ra các lớp đối tượng liên quan, các thuộc tính và các hoạt động của chúng. Ưu điểm của nó là tính bao đóng cho phép dấu các thực hiện của các đối tượng và cho phép dùng lại mã. Tuy nhiên nhược điểm là để sử dụng các dịch vụ, các đối tượng phải gọi tường minh các tên và giao diện của các đối tượng khác. Sự thay đổi giao diện sẽ làm ảnh hưởng tới các đối tượng khác. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Các mô hình thiết kế ứng dụng (tiếp) Mô hình luồng dữ liệu Hệ thống được phân hoá thành các module chức năng. Chúng nhận các dữ liệu chuyển hoá chúng rồi lại đưa ra kết quả. Trong mô hình luồng dữ liệu, các bộ biến đổi xử lý dữ liệu đầu vào và tạo dữ liệu ra. Dữ liệu được chảy tuần tự theo luồng từ bộ biến đổi này sang bộ khác. Mỗi bước của quy trình giống như một phép biến đổi * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Các mô hình thiết kế ứng dụng (tiếp) Mô hình luồng dữ liệu (tiếp) Mô hình này có ưu điểm: Nó hỗ trợ việc sử dụng lại các biến đổi. Nó phù hợp với suy nghĩ của mọi người quan niệm về dữ liệu được xử lý theo luồng có đầu vào và đầu ra. Thêm các xử lý khác vào hệ thống đơn giản. Dễ thực hiện xử lý song song hoặc tuần tự. Nhược điểm của mô hình này là: Cần phải có một định dạng chung cho các dữ liệu để có thể xử lý bởi mọi bộ biến đổi. Các hệ thống tương tác khó được viết theo mô hình luồng dữ liệu. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 4.7. Thiết kế giao diện người dùng Khi các hệ thống tin học hoá ngày càng đi vào đời sống con người thì vấn đề thiết kế giao diện càng trở nên quan trọng trong việc phát triển phần mềm. Có nhiều câu hỏi được đặt ra trong quá trình thiết kế giao diện, như: 	Ai là người dùng? 	Người dùng học cách tương tác với hệ thống mới dựa trên máy tính như thế nào? 	Người dùng diễn giải thông tin do hệ thống tạo ra như thế nào? 	Người dùng trông đợi gì ở hệ thống?... * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 4.7. Thiết kế giao diện người dùng (tiếp) Các nhân tố quan trọng trong việc thiết kế giao diện: Nhân tố con người Phong cách tương tác người - máy Thiết kế giao diện người - máy Hướng dẫn thiết kế giao diện * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Nhân tố con người Nhân tố con người gồm các yếu tố: Nền tảng về cảm nhận của con người, Mức độ kỹ năng và hành vi con người, Nhiệm vụ và nhân tố con người: được phân loại dựa vào mục đích của ứng dụng, cụ thể: Nhiệm vụ trao đổi Nhiệm vụ đối thoại. Nhiệm vụ nhận biết. Nhiệm vụ điều khiển. * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Phong cách tương tác người - máy Phong cách tương tác người – máy quan hệ chặt chẽ với lịch sử tiến hóa của máy tính, có một số loại giao diện như: Giao diện chỉ lệnh vào hỏi, Giao diện đơn (menu đơn giản), Giao diện trỏ và nhặt (hướng cửa sổ),... Hiện nay, giao diện thông dụng nhất cho người sử dụng là giao diện hướng cửa sổ (X-Window). * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Thiết kế giao diện người - máy Thiết kế giao diện người - máy là một nhiệm vụ quan trọng trong thiết kế phần mềm. Quy trình đánh giá thiết kế giao diện được mô tả: * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Hướng dẫn thiết kế giao diện Hướng dẫn về tương tác chung: giao diện phải Nhất quán, Cho thông tin phản hồi có nghĩa, Yêu cầu kiểm chứng mọi hành động phá hủy không tầm thường, Cho phép dễ dàng lần ngược nhiều hành động , Tìm kiếm tính hiệu quả trong đối thoại, vận động và ý nghĩa, Dung thứ cho sai lầm, Phân loại các hoạt động theo chức năng và tổ chức màn hình hài hòa theo vùng, Cung cấp tiện nghi trợ giúp làm ngữ cảnh, Dùng các động từ đơn giản hay cụm từ ngắn để đặt tên chỉ lệnh,... * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Hướng dẫn thiết kế giao diện (tiếp) Hướng dẫn về hiển thị thông tin Chỉ hiển thị thông tin có liên quan đến ngữ cảnh hiện tại, Đừng chôn vùi người dùng dưới dữ liệu, hãy dùng định dạng trình bày cho phép hấp thu nhanh chóng thông tin, Dùng nhãn nhất quán, cách viết tắt chuẩn và màu sắc dự kiến trước được, Cho phép người dùng duy trì ngữ cảnh trực quan, Đưa ra các thông báo lỗi có nghĩa, Dùng chữ hoa, chữ thường, thụt cấp và gộp nhóm văn bản để trợ giúp cho việc hiểu, Sử dụng cửa sổ để đóng khung các kiểu thông tin khác nhau, Dùng cách hiển thị "tương tự" để biểu diễn thông tin dễ được hấp thụ hơn với dạng biểu diễn này, Xem xét vùng hiển thị có sẵn trên màn hình và dùng nó một cách có hiệu quả,... * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Hướng dẫn thiết kế giao diện (tiếp) Hướng dẫn về vào dữ liệu Tối thiểu số hành động đưa vào mà người sử dụng thực hiện, Duy trì sự nhất quán giữa hiển thị thông tin và cái vào dữ liệu, Cho phép người dùng làm phù hợp cái vào, Tương tác nên mềm dẻo và hài hòa với mode đưa vào ưa thích, Khử kích hợp các lệnh không phù hợp hiện tại, Để cho người dùng kiểm soát luồng tương tác, Cung cấp trợ giúp cho mọi hành động đưa vào,... * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Hướng dẫn thiết kế giao diện (tiếp) Một số giao diện người dùng đẹp * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Hướng dẫn thiết kế giao diện (tiếp) Một số giao diện người dùng đẹp * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 Hướng dẫn thiết kế giao diện (tiếp) Một số giao diện người dùng đẹp * * Công nghệ phần mềm - Chương 3 Công nghệ phần mềm - Chương 4 * Công nghệ phần mềm - Chương 4 * ? * Công nghệ phần mềm - Chương 4 * Câu hỏi kết thúc chương 1. Tại sao phải có thiết kế ứng dụng? 2. Nêu các hoạt động của quá trình thiết kế phần mềm. 3. Thế nào là một thiết kế phần mềm tốt. 4. Với tài liệu yêu cầu đã có ở chương 3, bạn hãy xây dựng tài liệu thiết kế cho ứng dụng. Bạn đã lựa chọ mô hình thiết kế ứng dụng nào, vì sao? 5. Vì sao phải thiết kế giao diện ứng dụng? Chỉ rõ các vấn đề quan trọng khi thiết kế giao diện ứng dụng. 

File đính kèm:

  • pptBài giảng Công nghệ phần mềm - Chương 4 Thiết kế phần mềm.ppt