Mô hình phần tầng công nghệ phần mềm

Tóm tắt nội dung tài liệu

  1. Chương 3. Thiết kế hệ thống Khái niệm Thiết kế Hệ thống (TKHT) Khá Nhập môn Công nghệ Phần mềm Vai trò, nguyên lý và chất lượng TKHT và Vai (Introduction to Software Engineering) (Introduction Quy trình thiết kế hệ thống Quy trì Phương pháp thiết kế cấu trúc phá thi trú Ph PGS.TS. Phan Huy Khánh Phương pháp thiết kế hướng đối tượng phá ướ ượ Ph , Thiết kế kiến trúc phần mềm trú Thi Chương 3. Thiết kế hệ thống Thiết kế giao diện phần mềm Thi 3. 2/61 2/61 Khái niệm thiết kế hệ thống Khá Vai trò thiết kế hệ thống Vai trò của TKHT : Vai Thiết kế hệ thống (TKHT) : Thi Cung cấp cái nhìn từ tổng thể đến mức chi tiết của HTPM cá nhì Cung Là thiết kế cấu hình phần cứng và cấu trúc phần mềm trú Là phương tiện để trao đổi thông tin, đảm bảo chất lượng ượ để có được hệ thống thỏa mãn các yêu cầu đề ra đượ Giúp người phát triển dễ hiểu, dễ kiểm chứng, bảo trì Giú ườ phá trì Là thiết kế cấu trúc (What), trú TKHT tạo ra tập các đơn thể chương trình (mô-đun) cá trì (mô un) TKHT ch không phải là thiết kế Logic (How) theo một cấu trúc phân cấp, tương tác lẫn nhau trú tá Cấu trúc phần mềm bao gồm : trú Để nâng cao chất lượng, khi TKHT cần xác định được : ượ xá ượ Chức năng xử lý Ch Chức năng và mô hình dữ liệu của các đơn thể và hì cá Ch Tổ chức dữ liệu Cách thức cài đặt đơn thể cà Tương tác giữa các đơn thể tá cá 3/61 3/61 4/61 4/61 Nguyên lý của TKHT Cấu trúc tổng thể của hệ thống trú TKHT phải đảm bảo được : ượ TKHT Cấu trúc tổng thể của hệ thống thực chất là trú là mô tả các đơn thể và hoạt động của chúng chú Có cái nhìn khái quát về hệ thống, nhì khá quá không bị bó buộc vào cái nhìn hạn hẹp và cá nhì Mỗi đơn thể : Có sự lựa chọn từ nhiều giải pháp khác nhau phá khá Là dãy các lệnh thực hiện một chức năng (Function) nào đó cá nà Có cấu trúc đơn thể, phân cấp dễ dàng sửa đổi trú Có thể được biên dịch độc lập ượ Có khả năng quay lui lại bước phân tích yêu cầu ướ tí Các đơn thể có thể có thể gọi lẫn nhau qua các giao diện cá Giao diện là danh sách các tham biến (Arguments) là sá cá Giao Kiiểm tra được sự thỏa mãn của các yêu cầu ượ cá K Các công cụ thiết kế thủ tục thường gặp : ườ Biiểu diễn kết quả TKHT có tính nhất quán và tính tích hợp có quá và tí B Mã giả, hay giả ngữ (Pseudo Code) Mã Các đơn thể và các yêu cầu không có tương ứng một-một có Sơ đồ (biểu đồ) luồng (Flow Chart) Thiết kế do nhiều người tiến hành song song ườ hà Thi Biiểu đồ (diagram) Nassi-Shneiderman Nassi- B Thống nhất quan điểm sử dụng, Th Ngôn ngữ Java trong thiết kế web (JSP-Java Server Pages) (JSP- Ngôn thống nhất giao diện tương tác tá 5/61 5/61 6/61 6/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 1
  2. Giao diện giữa các đơn thể cá Tổ chức, cấu trúc dữ liệu trú Cấu trúc dữ liệu của một hệ thống gồm : trú Giao diện là cách liên kết các đơn thể : là cá Giao Các thực thể, hay đối tượng dữ liệu hay ượ Quản lý tham biến hình thức/thực sự và kết quả trả về hì Qu Mối quan hệ giữa các thực thể cá Trao đổi thông tin, hạn chế dùng chung dữ liệu Trao Cách biểu diễn các thành phần cá thà Sử dụng kỹ thuật che giấu thông tin Các mức thiết kế cấu trúc dữ liệu : trú Ưu điểm khi sử dụng kỹ thuật che giấu thông tin : Thiết kế mức ý niệm, lôgic Thi Không cần biết cách thức cài đặt thực tế một đơn thể cá cà Không Đặc tả các thực thể/đối tượng dữ liệu và quan hệ/kết hợp ượ và Đặc tả các đặc tính/thuộc tính, các khóa tí tí cá khó Chỉ quan tâm đến chức năng và trao đổi dữ liệu và trao Ch Các ràng buộc và tính chất của quan hệ rà và Cho phép quản lý các đơn thể độc lập, các thiết bị vào-ra… Cho phé cá cá ra… Thiết kế mức vật lý Thi Giiảm hiệu ứng phụ mỗi khi sửa đổi đơn thể G Mô tả cụ thể (vật lý) các tệp CSDL cá Mô Quản lý được tài nguyên hệ thống ượ tà Qu Các kiểu dữ liệu Các miền giá trị và các ràng buộc sử dụng dữ liệu giá rà 7/61 7/61 8/61 8/61 Một số khái niệm thiết kế cơ sở khá Trừu tượng hóa (Abstraction) ượ hó Trừu tượng hóa (Abstraction) : ượ hó Tr Trừu tượng hóa : ượ hó Tr Trừu tượng hóa dữ liệu (thuộc tính) ượ hó tí Tr Khái niệm cơ sở trong tư duy của con người Khá ườ trong Trừu tượng hóa thủ tục (phương thức) ượ hó (ph Tr Là quá trình ánh xạ một sự vật, hay hiện tượng quá trì ượ Trừu tượng hóa điều khiển ượ hó Tr của thế giới thực thành một khái niệm logic thà khá Làm mịn : Tùy theo nhu cầu mà có nhiều mức khác nhau mà khá Biiến đổi mô hình thiết kế trừu tượng thành đơn thể vật lý hì ượ thà B Vai trò của trừu tượng hóa : ượ hó Vai Thiết kế đơn thể : Thi Cụ thể hóa chức năng xử lý và vận hành dữ liệu mỗi đơn thể và hà Cho phép tập trung (tư duy) để giải quyết vấn đề Cho phé (t uy) Kiiến trúc : trú K mà không bận tâm đến chi tiết Cấu trúc tổng thể của HTPM trú Biiểu diễn vấn đề bằng một cấu trúc tự nhiên trú B Thủ tục/hàm : c/hà Th Thuật toán thực hiện một chức năng xử lý Thu toá Che dấu thông tin, kích hoạt hệ thống qua giao diện kí Che 9/61 9/61 10/61 10/61 Ví dụ trừu tượng dữ liệu và thủ tục ượ và Làm mịn từng bước ướ Trừu tượng dữ liệu Bướccđếếngầầnccửa Bướ đ n g n ửa Đưaachìaakhóóavvàoổ xoay Đư chì kh a ào ổ xoay Trừu tượng thủ tục Mở ccửa Mở ửa Bướccqua ccửavvàophòng Bướ qua ửa ào phòng Đóóngccửalạại Đ ng ửa l i 11/61 11/61 12/61 12/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 2
  3. Chất lượng TKHT Độ đo chất lượng TKHT ượ Độ đo chất lượng TKHT phụ thuộc vào bài toán cụ thể, ượ và bà toá Một TKHT tốt thường thể hiện được ba đặc trưng sau : không có phương pháp chung có phá Tính rõ ràng, tường minh : Độ đo chất lượng thường áp dụng cho các đơn thể ượ ườ cá Triển khai được mọi yêu cầu mà khách hàng đòi hỏi Một số độ đo chất lượng thường gặp : ượ ườ Tuân thủ các đặc tả trong kết quả phân tích hệ thống Mức độ ghép nối giữa các đơn thể (Coupling) ghé cá Tính dễ đọc, dễ hiểu : Mức độ kết dính giữa các thành phần dí cá thà Thiết kế có hướng dẫn, dễ đọc, dễ hiểu bên trong một đơn thể (Cohesion) (Cohesion) cho người lập trình, người kiểm thử và người bảo trì Tính hiểu được ượ (Understandability) Tính đầy đủ, toàn vẹn : Tính thích nghi được thí ượ (Adaptability) Thiết kế cung cấp một bức tranh đầy đủ về HTPM hướng đến các yếu tố dữ liệu, chức năng xử lý và hành vi của hệ thống 13/61 13/61 14/61 14/61 Vận dụng độ đo trong TKHT Mức độ ghép nối các đơn thể ghé Độ đo ghép nối (Coupling) ghé Ghép nối thường Ghé ườ Loose & Best Đo khả năng liên kết (trao đổi dữ liệu) giữa các đơn thể (trao cá Ghép nối dữ liệu Ghé Still very Good Ghép nối chặt thường gây khó hiểu, khó sửa đổi Ghé ườ khó khó do phải tính hết mọi liên kết có thể, dễ gây lỗi lan truyền tí có Ghép nối nhãn Ghé OK Thực tế nên ghép nối lỏng lẻo (Loose) các đơn thể ghé cá Th Ghép nối điều khiển Ghé OK Độ đo kết dính (Cohesion) dí Đo sự phụ thuộc lẫn nhau của các thành phần cá thà trong cùng một đơn thể cù Kết dính chặt (cao) thì tính cục bộ cao (độc lập chức năng), dí thì ng), cao thường dễ hiểu, dễ sửa đổi ườ Ghép nối chung Ghé Very Bad Tiêu chuẩn của thiết kế tốt : kết dính chặt, ghép nối lỏng dí ghé Tiêu Ghép nối nội dung Ghé Tight & Worst 15/61 15/61 16/61 16/61 Ghép nối chung Ghé Bảy mức độ kết dính các đơn thể dí Trong ghép nối chung các đơn thể : Trong ghé cá 1. Chức năng High & Best Dữ liệu trao đổi thông qua biến toàn cục (Global Variables) toà 2. Tuần tự OK Lỗi của một đơn thể này 3. Truyền thông Still OK có thể ảnh hưởng đến hoạt động của đơn thể khác ưở khá 4. Thủ tục Not Bad at All Thường khó sử dụng lại các đơn thể Thườ khó cá 5. Thời điểm Still Not Bad at All 6. Lôgic Still Not Bad at All Đơn thể gây lỗi Đơn thể A Đơn thể B Đơn thể A Đơn thể B Đơn thể chịu lỗi 7. Góp Lowest & Worst by Far Biến toàn ccục Biến toàn ục Đơn thể C Đơn thể C Mọi i thành phần ccủa mỗi i đơn thể chỉ ỉ nên thựcc hiện mộtt chứcc năng Mọ thà thành phần ủa mỗ đơn thể ch nên thự hiện mộ chứ năng 17/61 17/61 18/61 18/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 3
  4. Giải thích các loại kết dính thí cá dí Tính hiểu được ượ 1. Kết dính góp (Coincidental Cohesion): dí gó (Coincidental Tính hiểu được (Understandability) ượ Gom các thành phần không liên quan đến nhau cá thà thể hiện qua các tiêu chí đạt được của hệ thống cá chí ượ 2. Kết dính lôgic (Logical Cohesion) dí (Logical Bao gồm các tiêu chí : cá chí Bao Gồm các thành phần có cùng chức năng lôgic cá thà có Cấu trúc rõ ràng, chặt chẽ trú rà 3. Kết dính thời điểm (Temporal Cohesion) dí Thuật toán xử lý dễ hiểu, dễ triển khai Thu toá Gồm các thành phần hoạt động cùng thời điểm cá thà cù 4. Kết dính thủ tục (Procedural Cohesion) dí Cấu trúc dữ liệu hợp lý trú Gồm các thành phần thực hiện theo một thứ tự xác định cá thà Ghép nối lỏng lẻo Ghé 5. Kết dính truyền thông (Communicational Cohesion) dí Tính kết dính cao dí Gồm các thành phần truy cập đến cùng tập dữ liệu cá thà cù Có tài liệu giải thích, hướng dẫn chi tiết thí ướ 6. Kết dính tuần tự (Sequential Cohesion) dí Cái ra của một thành phần là cái vào của thành phần tiếp theo thà là và thà 7. Kết dính chức năng (Functional Cohesion) dí Gồm các thành phần cùng thực hiện một chức năng cá thà cù 19/61 19/61 20/61 20/61 Tính thích nghi được thí ượ Quy trình thiết kế hệ thống trì Tính thích nghi được (Adaptability) thí ượ Quy trình thiết kế hệ thống bao gồm các bước : Quy trì cá ướ thể hiện qua các tiêu chí đạt được của hệ thống cá chí ượ Phân chia mô hình phân tích thành các hệ thống con hì tí thà cá Phân theo nguyên lý chia để trị Bao gồm : Bao Tìm sự tương tranh (Concurrency) có thể xảy ra có Tính tương thích : thí giữa các hệ thống con trong hệ thống cá Khả năng sửa đổi được ượ Kh Thiết kế giao diện, hay giao tiếp với NSD Thi Tái sử dụng được ượ Chọn chiến lược cài đặt, quản trị cơ sở dữ liệu (CSDL) ượ cà Ch Tính tự chứa : Tìm nguồn tài nguyên chung và cơ chế điều khiển truy cập tà và Không sử dụng thư viện bên ngoài ngoà Không Xây dựng kịch bản sử dụng hệ thống Xây Không xảy nra mâu thuẫn với xu hướng tái sử dụng ướ tá Phương pháp TKHT thường được sử dụng hiện nay : phá ườ ượ Không Ph Thiết kế cấu trúc (Structured Design) trú Thi Thiết kế hướng đối tượng (Object-Oriented Design) ướ ượ (Object- Thi 21/61 21/61 22/61 22/61 Phương pháp thiết kế cấu trúc phá thi trú Tổ chức đơn thể Khái niệm đơn thể dựa trên quan điểm chia để trị : Khá Thiết kế cấu trúc mô tả : trú Thi Mỗi đơn thể thực hiện một công việc nào đó nà Cấu trúc tổng thể của hệ thống gồm các đơn thể, thành phần trú cá thà Kích cỡ đơn thể nên được quyết định ượ Giao diện, hay mối quan hệ-tương tác, giữa các đơn thể tá cá Giao dựa trên khái niệm độc lập chức năng : khá Tổ chức, cấu trúc dữ liệu trú Ưu điểm : Không cần phải chỉ ra trong thiết kế cấu trúc : trú Không Giiảm độ phức tạp G Cục bộ, dễ sửa đổi nên dễ tái sử dụng Thứ tự thực hiện các đơn thể cá Th Có khả năng phát triển song song phá Số lần thực hiện cho mỗi đơn thể Kích cỡ ? Kích cỡ ? Chi tiết thiết kế của từng đơn thể Nộii dung ? Chi Nộ dung ? Đơn thể Trong thiết kế cấu trúc, người ta thường sử dụng trú ườ ườ Trong biểu đồ cấu trúc (Structure Chart) trú 23/61 23/61 24/61 24/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 4
  5. Chi phí của PP chia để trị phí Lập luận về độ phức tạp chia để trị Giiả sử cho bài toán P sử dụng PP chia để trị toá G Độ phức tạp PP chia để trị được tính toán như sau : ượ tí toá Cho hai hàm : Cho Giiả sử bài toán P sử dụng d dữ liệu toá G C(P) là độ phức tạp cảm nhận được của P đượ C(P) Gọi τ(d) là thời gian thực hiện phép tính trên d dữ liệu (d) phé E(P) là độ cố gằng theo thời gian để giải P E(P) Bài toán được chia ra thành k bài toán nhỏ hơn giống nhau toá đượ thà toá Khi đó, nếu P1 và P2 là hai bài toán (đơn thể) thì toá thì Khi Giiả sử d chia hết cho k, khi đó : G C(P1) > C(P2) → E(P1) > E(P2) τ(d) = k * τ(d/k) + C(k, d) (d) (d/k) C(k, Thực tế : Th Với C(k, d) là thời gian cần thiết để hoàn thành ráp nối C(k, hoà thà C(P1 + P2) > C(P1) + C(P2) C(P tất cả k bài toán nhỏ hơn giống nhau toá Từ đó : Rõ ràng, k càng lớn Rõ ng, E(P1 + P2) > E(P1) + E(P2) E(P thì thời gian cần thiết cho C(k, d) cũng tăng theo thì C(k, 25/61 25/61 26/61 26/61 Mô hình tính độ phức tạp chia để trị Thiết kế hướng đối tượng (HĐT) ướ ượ (H T) Thiết kế HĐT : Thi Chi phí phí Chi phí phí Tổng chi phí phí Hiiện nay trở nên phổ biến, H cho sự cố gắng cho giao diện, là giải pháp cho các hệ thống lớn, phức tạp phá cá Miền chi phí tối thiểu phí ráp nối là một cách tiếp cận khác với thiết kế hướng thủ tục cá khá ướ Thiết kế HĐT nhìn nhận hệ thống theo quan điểm : nhì Thi Hệ thống là tập các đối tượng tương tác với nhau là cá ượ tá Mỗi đối tượng đóng gói hai thành phần : ượ gó thà Thuộc tính (dữ liệu) và phương thức (xử lý dữ liệu) Thu tí và Chi phí đơn thể τ(d) phí (d) Số các đơn thể k Tương tác giữa các đối tượng bằng cách truyền thông báo tá cá ượ cá bá hay thông điệp (Messages) Cần xác định số đơn thể tối ưu xá Các đối tượng có thể kế thừa nhau ượ có 27/61 27/61 28/61 28/61 So sánh với thiết kế hướng thủ tục sá ướ Ưu điểm của thiết kế HĐT Thiết kế HĐT phù hợp cho các hệ thống lớn, phức tạp phù cá Thi Trong thiết kế hướng thủ tục : ướ Trong Các ưu đểm nổi bật : Cấu trúc dữ liệu/CSDL dùng chung cho cả hệ thống trú dù Đảm bảo tính độc lập dữ liệu tí Mọi thủ tục thao tác trên CSDL chung có chung trạng thái tá có thá do sử dụng các nguyên lý đóng gói, che dấu thông tin : cá gó Một thủ tục gây lỗi trên dữ liệu đang xử lý, Các đối tượng là các thực thể hoạt động độc lập, cục bộ hoặc sửa đổi một thủ tục có thể lan truyền, có ảnh hưởng sang các thành phần khác của hệ thống ưở cá thà khá Trao đổi dữ liệu qua truyền thông, nguyên lý đa Trao Hạn chế : Có khả năng kế thừa, dùng lại được Thay đổi cấu trúc dữ liệu dẫn đến thay đổi tổng thể hệ thống, trú Thay Dễ hiểu do đó cần tổ chức tốt dữ liệu Dễ bảo trì Với các hệ thống càng lớn, càng phức tạp, cá cà cà việc bảo trì càng khó khăn, chi phí càng cao trì khó n, phí 29/61 29/61 30/61 30/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 5
  6. Khái niệm kiến trúc phần mềm Khá trú Các bước thiết kế kiến trúc phần mềm ướ trú Kiiến trúc phần mềm (KTPM) : trú Gồm các bước : cá ướ K Mô tả cấu trúc tổng thể của một phần mềm trú Cấu trúc hóa hệ thống : trú hó Mô Phân chia hệ thống thành các hệ con (Sub-System) độc lập thà cá con (Sub- Thể hiện dạng một biểu đồ phân cấp gồm các thành phần cá thà Phân Th và mối quan hệ giữa chúng chú Xác định giao diện trao đổi thông tin giữa chúng chú Cho phép nhìn hệ thống theo nhiều góc nhìn khác nhau : Cho phé nhì gó nhì khá Mô hình hóa điều khiển : Mô hì hó Góc nhìn tĩnh nhì Xác lập mô hình điều khiển hì giữa các thành phần khác nhau của hệ thống cá thà khá Góc nhìn động nhì Phân rã thành các đơn thể : thà cá Phân Góc nhìn dữ liệu nhì Phân rã các hệ con thành các đơn thể Phân cá thà cá Góc nhìn triển khai nhì Quá trình thiết kế tạo ra các mô hình kiến trúc khác nhau Quá trì cá hì trú khá Kiiến trúc phần mềm được đặc tả ngay từ giai đoạn đầu trú ượ K giai của thiết kế hệ thống 31/61 31/61 32/61 32/61 Các mô hình kiến trúc hì trú Kiến trúc dữ liệu tập trung trú Các ứng dụng (phần mềm khách) khác nhau khá khá Mỗi mô hình kiến trúc biểu diễn một cách nhìn hệ thống hì trú cá nhì cùng dùng chung, cùng chia sẻ một kho dữ liệu tập trung dù cù Gồm các mô hình : cá hì Kiiến trúc dữ liệu tập trung (Data-Centered Architectures) trú (Data- K Ứng dụng 2 Ứng dụng 2 Kiiến trúc khách / dịch vụ (Client-Server Architectures) trú khá (Client- K Kiiến trúc phân tầng (Layered Architectures) trú K Ứng dụng 1 Kiiến trúc gọi và trả lại (Call and Return Architectures) trú và K … Ứng dụng 1 … Kho dữ liliệu Kho dữ ệu Kiiến trúc luồng dữ liệu (Data Flow Architectures) trú K ttậptrung ập trung (DB Repository) (DB Repository) Kiiến trúc hướng đối tượng (Object-Oriented Architectures) trú ướ ượ (Object- K Ứng dụng n Ứng dụng n 33/61 33/61 34/61 34/61 Mô hình kiến trúc khách/dịch vụ hì trú khá Đánh giá kiến trúc dữ liệu tập trung giá trú Giiữa các máy khách (chạy các ứng dụng Clients) cá má khá cá G Ưu điểm và các máy dịch vụ (Server) là hệ thống mạng má là Tiiện lợi cho chia sẻ dữ liệu lớn T Các ứng dụng sử dụng kho DL không cần biết dữ liệu được tạo ra, cập nhật và quản lý như thế nào đượ và Nhược điểm Nhượ Các hệ con phải tuân theo mô hình dữ liệu của kho hì Viiệc quản lý kho DL khó khăn, phức tạp, chi phí đắt đỏ khó n, phí V Khó có chính sách quản lý DL riêng cho các hệ con Khó chí sá cá Khó phân bố dữ liệu một cách hiệu quả giữa các ứng dụng Khó cá cá 35/61 35/61 36/61 36/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 6
  7. Mô hình kiến trúc phân tầng hì trú Đánh giá kiến trúc khách/dịch vụ giá trú khá Ưu điểm Phân phối dữ liệu trực tiếp Phân Sử dụng hiệu quả mạng, tận dụng được nhiều loại thiết bị ượ Dễ dàng mở rộng, nâng cấp, thêm mới dịch vụ Nhược điểm Nhượ Các hệ con dùng cấu trúc dữ liệu khác nhau, dù trú khá không chia sẻ được với nhau, ượ trao đổi dữ liệu có thể không hiệu quả có Quản lý ở các máy dịch vụ nhiều khi trùng lặp, dư thừa má trù Qu Khó quản lý ứng dụng, Khó khó tìm máy dịch vụ rỗi để giảm chi phí chờ đợi phục vụ khó má phí 37/61 37/61 38/61 38/61 Kiến trúc phân tầng trú Lợi ích của kiến trúc phân tầng trú Trong các ứng dụng mạng : Trong cá Bản chất kiến trúc phân tầng : trú Các giao thức được phân theo tầng, để giảm bớt ượ Phân rã hệ thống thành các tầng, thà cá Phân trao đổi thông tin giữa các thực thể trong một hệ thống cá mỗi tầng là một tập hợp các dịch vụ khác nhau là cá khá Application Dùng để mô hình hóa giao diện hì hó Layer của các phân hệ (Sub-Systems) cá (Sub- Trợ giúp phát triển các tầng, khi giao diện mỗi tầng thay đổi Tr giú phá cá thì chỉ ảnh hưởng tới các tầng liền kề thì ưở cá Logic Layer Đặc điểm kiến trúc phân tầng : trú Giúp bảo trì, cập nhật hệ thống dễ dàng Giú trì Physical Không phải hệ thống nào cũng dễ dàng xây dựng được nà ượ Không Layer kiến trúc phân tầng trú Ether Coax Optical Fiber 39/61 39/61 40/61 40/61 Kiến trúc phân tầng OSI Phân tầng/lớp trong thiết kế hệ thống Các công cụ xử lý Giao tiếp với NSD Mô hình OSI hay mô hình tham chiếu kết nối các hệ thống mở Hệ thống CSDL/CS Tri Thức (thủ tục, hàm...) hà NSD Tiếng Anh : Open Systems Interconnection Reference Model, (viết gọn OSI Model hoặc OSI Reference Model) 1.A 1.B 1.C Kiến trúc phần mềm : phát triển ứng dụng web, Windows... trú phá 2.A 2.B 2.C Kiến trúc lôgic : can thiệp vào hệ điều hành, trú và hà các phần mềm phát triển hệ thống, Utilities, Midleware... phá 3.A 3.B 3.C M áy Kiến trúc phần cứng : can thiệp vào hệ thống vật lý của máy... trú và má 41/61 41/61 42/61 42/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 7
  8. Kiến trúc gọi và trả lại Mô hình kiến trúc gọi và trả lại hì trú và Trong kiến trúc gọi - trả lại : Bao gồm chương trình chính (Main Program) và các chương trình con (Sub-Program) Các hệ thống con chia thành những đơn thể (Modules) Một đơn thể là một thành phần của hệ thống, phối hợp với những thành phần khác để cung cấp dịch vụ Mỗi hệ thống con có vai trò hoạt động độc lập, không phụ thuộc vào dịch vụ do các hệ thống con khác cung cấp 43/61 43/61 44/61 44/61 Thiết kế giao diện Kiến trúc luồng dữ liệu Ví dụ hệ thống xử lý đơn mua hàng Thiết kế giao diện gồm các nội dung : Vai trò, tầm quan trọng Tiến trình thiết kế giao diện chung Tiến trình thiết kế giao diện làm mẫu Nguyên tắc thiết kế giao diện Thiết bị và kiểu tương tác Các loại giao diện truyền thống Các hình thức tương tác Một số vấn đề thiết kế 45/61 45/61 46/61 46/61 Vai trò, tầm quan trọng Tiến trình thiết kế giao diện chung Thiết kế giao diện : Một khâu không thể thiếu trong thiết kế hệ thống, NSD thường đánh giá phần mềm qua giao diện Che dấu chi tiết kỹ thuật bên trong hệ thống Kết hợp 3 mặt : công thái học, chức năng, công nghệ NSD làm việc với hệ thống thông qua giao diện Giao diện trợ giúp NSD làm việc với khả năng của họ Giao diện trợ giúp tốt, NSD dễ thành công Giao diện thiết kế nghèo nàn làm NSD khó khăn, dễ mắc lỗi Giao diện thiết kế tồi là một trong nhiều lý do dẫn đến phần mềm không được sử dụng 47/61 47/61 48/61 48/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 8
  9. Tiến trình thiết kế giao diện làm mẫu Nguyên tắc thiết kế giao diện Cần phản ảnh vào giao diện khi thiết kế : Kinh nghiệm, năng lực, nhu cầu của NSD Khả năng dùng bàn phím, chuột,… Sở thích, văn hóa, lứa tuổi : mầu sắc, ngôn ngữ… Tính thẫm mỹ, khoa học Tính công thái học, đắc nhân tâm Những điểm chú ý : Giải quyết tốt hạn chế về mặt vật chất, tinh thần của NSD (trí nhớ kém, thao tác vụng về, dễ mắc lỗi…) Tốc độ phản ứng, khả năng nhớ thao tác của NSD … Luôn bao gồm việc làm bản mẫu để NSD đánh giá 49/61 49/61 50/61 50/61 Một số yêu cầu khác khá Thiết bị và kiểu tương tác Giao diện cần đảm bảo cho NSD : Thiết bị tương tác Các kiểu tương tác Tính thân thiện : Màn hình Thao tác trực tiếp về thuật ngữ, khái niệm, thói quen, trình tự nghiệp vụ Bàn phím Chọn thực đơn Tính nhất quán : Mouse, bút từ, ... Chọn biểu tượng về vị trí hiển thị, câu lệnh, lệnh đơn, biểu tượng, màu sắc… Màn hình cảm biến Điền vào mẫu biều Ít gây ngạc nhiên Mic / Speaker Ngôn ngữ lệnh Có cơ chế phục hồi tình trạng trước lỗi Ngôn ngữ tự nhiên Smart cards,… Cung cấp kịp thời phản hồi và trợ giúp mọi lúc, mọi nơi Tiện ích tương tác đa dạng Bóng xoay 51/61 51/61 52/61 52/61 Các loại giao diện Giao diện truyền thống Thường dùng cho các hệ thống tương tác đơn nhiệm, Cho đến nay, giao diện đã có nhiều tiến bộ vượt bậc nhờ : Cho là phương thức tương tác có sớm nhất Sự phát triển nhanh chóng của công nghệ phần cứng Cách làm việc là nhập lệnh/dữ liệu trực tiếp từ bàn phím Tiến bộ của Khoa học-Công nghệ thông qua các dòng lệnh Sự phát triển của tư duy con người, kinh nghiệm ứng dụng CNTT trong cuộc sống Bản chất của giao diện truyền thống : Người ta thường chia ra hai loại giao diện : Thực hiện thông qua các hàm/thủ tục thư viện của ngôn ngữ Có khả năng tổ hợp lệnh để tạo các lệnh phức tạp (Macro) Giao diện truyền thống cho các ứng dụng trên các HĐH Unix, Linux, MS-DOS… trước đây Phối hợp các Filter, tạo các lô xử lý (Batch) Giao diện đồ họa (GUI – Grapic User Interface) Có thể lập trình qua Shell (chẳng hạn HĐH Unix) Có thể tự động hóa It tiêu tốn tài nguyên, nguồn lực của hệ thống 53/61 53/61 54/61 54/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 9
  10. Đánh giá giao diện truyền thống giá Ví dụ giao diện truyền thống HĐH MS-DOS và các ứng dụng trước đây MS- và ướ Ưu điểm của giao diện truyền thống Lập trình đơn giản Dễ cài đặt hớn so với GUI Hạn chế : Thao tác thực hiện tuần tự Khó sửa lỗi thao tác trước đó Không phù hợp với NSD ít kinh nghiệm Khó học, khó nhớ Dễ nhầm Đòi hỏi kỹ năng sử dụng bàn phím 55/61 55/61 56/61 56/61 Giao diện đồ họa Ví dụ tương tác trực tiếp Giao diện đồ họa, GUI (Graphic User Interface) Nảy sinh khi khi nâng cấp một hệ điều hành Phát triển mạnh mẽ, trở nên phổ cập, quen thuộc từ khi công nghệ màn hình phát triển, có độ phân giải cao Liên quan đến GUI, người ta xây dựng chuẩn giao diện lập trình ứng dụng API (Application Programming Interface) Giao diện đồ họa có 2 hình thức tương tác chủ yếu : Tương tác trực tiếp Tương tác gián tiếp Tham khảo trang web : http://www.tinhte.vn/threads/673107/ 57/61 57/61 58/61 58/61 Ví dụ tương tác gián tiếp Các hình thức giao diện hì Có ba hình thức tạo giao diện : hì – “Kéo thả” truyền thống (Pop-Up Menu) : che-hiện (Pop- che- Thường gặp trong các ứng dụng Windows Thườ cá Update File Process View/Print Help Hệ thống Cập nhật Thống kê InXem Trợ giiúp Hệ thống Cập nhật Thống kê InXem Trợ g úp Lịịch công tác Tìình hìình mổ Tháng Khoa Giiớii thiệu L ch công tác T nh h nh mổ Tháng Khoa G ớ thiệu Máy tíính Phòng mổ DS Bệnh nhân Quý Hướng dẫn Máy t nh Phòng mổ DS Bệnh nhân Quý Hướng dẫn Càii đặt Bác sĩĩ Năm Cà đặt Bác s Năm Trò chơii Bệnh nhân Trò chơ Bệnh nhân Thoát Sổ theo dõi mổ Thoát Sổ theo dõi mổ “Duyệt” trên trang web (Web Browser) Liiệt kê (hiện) tất cả (trong chừng mực có thể) có L theo kiểu giao diện truyền thống 59/61 59/61 60/61 60/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 10
  11. Đánh giá giao diện đồ họa Giao diện đồ họa có nhiều ưu điểm : Dễ học, dễ sử dụng, thuận tiện với người ít kinh nghiệm Có nhiều cửa sổ, có thể tương tác song song Hiển thị, tương tác dữ liệu trên nhiều vị trí trong cửa sổ Tương tác trực tiếp với thông tin: soạn thảo; nhập dữ liệu vào các form… NSD nhận được kết quả thao tác tức thời Hạn chế : Lập trình phức tạp, đòi hỏi tính thẩm mỹ cao Cài đặt phức tạp, đòi hỏi mội trường đồ họa tương thích Tiêu tốn tài nguyên phần cứng 61/61 61/61 Nhap Mon CNPM - Ch.3 Thiết kế HT 11


Page 2

YOMEDIA

Vai trò, nguyên lý và chất lượng TKHT và Quy trình thiết kế hệ thống trì thiế kế thố Phương pháp thiết kế cấu trúc phá thiế kế trú Phương pháp thiết kế hướng đối tượng Khái niệm thiết kế hệ thống Thiết kế hệ thống (TKHT) : Là thiết kế cấu hình phần cứng và cấu trúc phần mềm để có được hệ thống thỏa mãn các yêu cầu đề ra Vai trò của TKHT : Cung cấp cái nhìn từ tổng thể đến mức chi tiết của HTPM Là phương tiện để trao đổi thông tin, đảm bảo chất...

14-03-2013 245 19

Download

Mô hình phần tầng công nghệ phần mềm

Giấy phép Mạng Xã Hội số: 670/GP-BTTTT cấp ngày 30/11/2015 Copyright © 2009-2019 TaiLieu.VN. All rights reserved.