chuong3tacvutkpm xuanhiens weblog

54 4 0
chuong3tacvutkpm xuanhiens weblog

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

 Được áp dụng với các quy trình có giai đoạn phân tích , việc thiết kế chỉ nhận 1 phần kết quả từ giai đoạn xác định yêu cầu , phần chính được nhận từ giai đoạn phân tí[r]

(1)(2)

1 Tổng quan thiết kế 2 Kiến trúc phần mềm

3 Phương pháp thiết kế phần mền 4 Ví dụ minh họa

(3)

Jens Martensson

Jens Martensson

Mục tiêu việc thiết kế là định hình hệ thống tìm dạng thức

của phần mềm đáp ứng yêu cầu

Dữ liệu đầu vào giai đọn thiết kế: Kết thu từ bước

phân tích trước đó.

3

(4)

Mục đích thiết kế:

Hiểu rõ yêu cầu ràng buộc có liên quan, khả tái sử dụng thành phần

Tạo đầu vào thích hợp điểm xuất phát cho hoạt động thực

Có thể phân rã việc cài đặt thành phần nhỏ dễ quản lý để nhiều nhóm phát triển xử lý đồng thời

Lựa chọn kiến trúc phù hợp với hệ thống

(5)

Jens Martensson

Jens Martensson

Có hai phương pháp chính: Thiết kế từ xuống (Top- Down) Thiết kế từ lên (Bottom – Up)

5

(6)

Quá trình thiết kế bắt đầu thành phần tổng

quan hệ thống.

Triển khai thành module nhỏ hơn, trình lặp

lại nhiệm vụ trở nên đơn giản cho thuật tốn tính tốn giải được.

(7)

Jens Martensson

Jens Martensson

Thiết kế từ lên bắt đầu từ công việc nhỏ cụ

thể, phát triển liên tiếp thành thành phần trừu tượng khi đạt kết mà chức theo yêu cầu người dùng.

7

(8)

Thiết kế hệ thống phần mềm có ba cấp độ kết quả:

Thiết kế kiến trúc: Thiết kế kiến trúc phiên trừu tượng cao hệ thống Nó xác định phần mềm hệ thống có nhiều thành phần tương tác với

Thiết kế cấp cao: Thiết kế cấp cao tập trung vào cách hệ thống với tất thành phần thực dạng mô-đun Thiết kế chi tiết: Thiết kế chi tiết liên quan đến phần thực hệ

thống hệ thống con, xác định cấu trúc logic mô-đun giao diện chúng để giao tiếp với module khác

(9)

Jens Martensson

Jens Martensson

Thiết kế mẫu: tạo giao diện sơ bộ, bản thiết kế phác

thảo cho người dùng tham khảo trước thiết kế chi tiết

Các thiết kế thực dạng tài liệu kỹ phần mềm thiết kế nhanh MS Visio, MS Visual Basic / C# / C++, MS Front Page / Visual Interdev …

Đây bước đệm trước vào thực chi tiết.

9

(10)

Phân rã thiết kế giúp thực hóa phần thiết

mức chi tiết Các nhóm phương pháp phân rã gồm:

 Phân rã hướng chức năng  Phân rã hướng liệu

(11)

Jens Martensson

Jens Martensson

Phân rã hướng chức

Dựa yêu cầu chức để phân rã hướng đến tác nhiệm toàn hệ thống

Sử dụng Sơ đồ phân rã chức (FDD):

– Xác định chức dựa mơ tả tính chất đầu vào đầu – Xác định phạm vi hệ thống

– Phân hoạch chức

– Tạo tảng cho thiết kế kiến trúc hệ thống

11

(12)

Phân rã hướng liệu

Tiến trình thiết kế tập trung vào liệu

Chiến lược thiết kế hướng đến đối tượng liệu cần thực Việc phân rã hệ thống dựa việc phân tích liệu, bao gồm sơ đồ luồng

dữ liệu (Data flow diagram - DFD), giúp xem toàn luồng liệu bên hệ thống cách liệu xử lý theo nhiều mức chi tiết khác nhiều biến thể mở rộng khác

(13)

Jens Martensson

Jens Martensson

Ví dụ: DFD hệ thống bán vé

13

(14)

3.1.1.5 Phân rã thiết kế

Tiếp cận từ xuống (top-down)

Lập sơ đồ luồng liệu cấp (xét tất luồng liệu nhập xuất, tất yêu cầu xử lý)

Phân rã sơ đồ luồng liệu cấp thành sơ đồ luồng liệu cấp 1:

– Phân rã các xử lý thành nhiều xử lý và định luồng liệu tương ứng

– Phân rã các luồng liệu nhập xuất thành nhiều luồng liệu và định xử lý tương ứng

(15)

Jens Martensson

Jens Martensson

Nhận xét: Cách tiếp cận từ xuống

Thích hợp với phần mềm có số lượng người dùng, số lượng yêu cầu (nếu ngược lại sơ đồ cấp phức tạp khó lập xác)

Đặc biệt thích hợp với loại phần mềm mà yêu cầu chưa xác định rõ từ đầu (ví dụ phần mềm hệ thống) sử dụng

15

(16)

Tiếp cận từ lên (bottom-up)

Lập sơ đồ luồng liệu mức cao nhất.

Tích hợp sơ đồ để tạo sơ đồ có cấp nhỏ theo cách:

– Tích hợp xử lý sơ đồ cấp k vào sơ đồ cấp k-1 giữ nguyên luồng liệu sơ đồ cấp k

– Tích hợp đồng thời xử lý luồng liệu sơ đồ cấp k để tạo lập sơ đồ cấp k-1

– Quá trình kết thúc đạt đến sơ đồ cấp

(17)

Jens Martensson

Jens Martensson

Nhận xét: Cách tiếp cận từ lên

Thích hợp với phần mềm có yêu cầu chi tiết, cụ thể có quy mơ trung bình

Khó thực với dự án có quy mơ lớn yêu cầu chưa rõ ràng chi tiết

17

(18)

Hướng tiếp cận phối hợp:

Lập sơ đồ luồng liệu cấp k theo tiêu chí xác định

Phân rã sơ đồ cấp k thành nhiều sơ đồ cấp k+1 tiếp tục đạt sơ đồ

Tích hợp sơ đồ cấp k thành sơ đồ cấp k-1 tiếp tục đạt sơ đồ cấp

Nhận xét

Cách tiếp cận phối hợp thích hợp cho phần mềm có quy mơ u cầu lớn, phức tạp

Được dùng nhiều thực tế.

(19)

Jens Martensson

Jens Martensson

Lập sơ đồ luồng liệu cho công việc

Việc lập sơ đồ luồng liệu cho toàn phần mềm trở thành lập sơ đồ luồng liệu cho công việc.

Sau tích hợp để có sơ đồ cấp 0.

Quá trình lập sơ đồ luồng liệu cho công việc tiến hành qua bước

– Xác định liệu nhập – Xác định liệu xuất – Mô tả cách xử lý

19

(20)

Bước 1: Xác định liệu nhập, dữ liệu nhập phải thỏa điều kiện sau:

– Khơng nhập vào liệu tính tốn dựa quy định hay cơng thức có

– Khơng nhập vào liệu lưu trữ trước

– Dữ liệu nhập từ thiết bị nhập khác xem xét có yêu cầu đặc biệt số phần mềm đặc biệt như: hệ thống thời gian thực, hệ thống đồ, nhập qua điện thoại tổng đài …

(21)

Jens Martensson

Jens Martensson

Bước 2: Xác định liệu xuất

Cần phải có thơng báo giúp người dùng biết kết xử lý hệ thống Ví dụ thơng báo việc mượn sách không hợp lệ …

Tăng tính tiện dụng: tất xử lý (kể xử lý lưu trữ, tính tốn) cần phải xuất cho người dùng thông tin kết

Tất liệu xuất hình phải xuất máy in Đối với loại thiết bị xuất khác cần phải có loại phần mềm đặc biệt

21

(22)

Bước 3: Mô tả Xử lý

– Chỉ mô tả cách xử lý mà không cần ý đến cách thực nhập xuất – Khi mô tả cách sử dụng liệu nhập để tạo liệu xuất, việc mô tả

chi tiết việc thiết kế xử lý dễ dàng – Chỉ trọng đến tính đắn

– Mơ tả xác thứ tự nhập/xuất

(23)

Jens Martensson

Jens Martensson

Xây dựng mô hình thực thể kết hợp (ERD)

 Mơ hình ERD dạng sơ đồ giúp thể đối tượng liệu

được đặc tả yêu cầu phần mềm, tạo tảng cho việc thiết kế chi tiết sở liệu cho phần mềm.

23

(24)

Phân rã hướng đối tượng

Một hệ thống phần mềm được xem tập hợp đối tượng, đối tượng có cấu trúc liệu hành vi

Phân rã hướng đối tượng hướng đến tính đồng liệu, hành vi dựa che dấu thống tin dẫn xuất kế thừa

(25)

Jens Martensson

Jens Martensson

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

Thiết kế giao diện được hỗ trợ phần thiết kế dạng mơ hình

bản mẫu (prototype) nhằm làm rỏ yêu cầu từ người dùng đáp ứng yêu cầu giao diện

Nếu khách hàng đồng ý với mẫu đưa giai đoạn xác định yêu cầu, kỹ sư thiết kế hồn chỉnh thêm để đảm bảo xác u cầu người dùng

25

(26)

Các yếu tố cần quan tâm thiết kế giao diện

Chế độ (modes):

– Trường hợp mà người dùng thực số thao tác giới hạn

– Kỹ thuật tạo/sử dụng cửa sổ cung cấp dịch vụ có giá trị biểu diễn chế độ chương trình, giúp thực thao tác cửa sổ khác thể chế độ chương trình khác

(27)

Jens Martensson

Jens Martensson

Thanh menu: giúp người dùng chọn lệnh chương trình Có hai dạng menu

Dạng Pop-up menu: menu xuất vị trí

Dạng Pull-down menu: là dạng mở rộng tập lệnh dễ dàng sử dụng Có thể phân loại menu theo tập lệnh thao tác với tham số, tập lệnh chuyển

đối chế độ người dùng

27

(28)

Dialog window: dạng hộp thoại giúp người dùng tương tác với chương trình linh hoạt

– Khi thiết kế hộp thoại, ta cần đảm bảo tính đồng giao diện người dùng, nên ngắn gọn cô động cách đặt nhãn Label, Checkbox, Button, List box

Màu sắc Màu dùng nơi cần làm bật yêu cầu cần nhấn mạnh nội dung, dấu hiệu cảnh báo nguy hiểm

– Nên sử dụng màu hài hòa toàn hệ thống

– Sử dụng màu phải phù hợp với loại giao diện chương trình

(29)

Jens Martensson

Jens Martensson

Âm Thanh cách tốt tập trung ý người dùng Chúng phần mềm phù hợp tình xử lý lỗi, kiện không chắn, tạm thời

– Nên tạo âm khác với kiện khác nhau, tránh dùng âm gây ồn

Tính kiên định

Thanh lệnh: với chức giống nên có vị trí giống

Phím tắt: nên dùng cho số chức phần mềm nên cố định Nút lệnh chức tương tự nên có nhãn vị trí giống nhau

29

(30)

Thiết kế hướng chức năng: tập trung vào thuật toán để giải

quyết vấn đề

Xem thuật tốn như hàm tính tốn với tham số đầu vào Tại thời điểm bắt đầu giai đoạn thiết kế, thuật toán chưa xác định

Cần xây dựng thuật toán để giải tác nhiệm khó phức tạp phần mềm

Việc module hóa để phân rã công việc thành các công việc độc lập dựa vào thuật tốn xử lý cơng việc

Kết chung của giải pháp dựa thuật toán gộp lại.

(31)

Jens Martensson

Jens Martensson

Thiết kế hướng đối tượng tổ chức thiết kế xoay quanh

đối tượng mối liên hệ chúng, bao gồm:

Thiết kế lớp đối tượng: xây dựng lớp đối tượng bao gồm thuộc tính hành vi đối tượng,

Thiết kế giao diện: xây dựng giao diện (interface) lớp đối tượng tương ứng với trách nhiệm lớp đối tượng

Thiết kế liệu: thiết kế cách thức tổ chức lưu trữ đối tượng nhớ phụ

Khả tái sử dụng: đóng vai trị quan trọng lập trình hướng đối tượng

31

(32)

Kiến trúc phần mềm chương trình máy tính cấu trúc

của thành phần bên hệ thống, mối quan hệ (cấu trúc) cách tương tác thành phần với nhau.

Kiến trúc phần mềm bao gồm phần tử chức năng, thuộc tính mối quan hệ chúng

Kiến trúc phần mềm giúp việc định mức cao thiết kế phần mềm dễ dàng cho phép tái sử dụng các thành phần mẫu thiết kế dự án

(33)

Jens Martensson

Jens Martensson 33

(34)

Kiến trúc phần mềm bao gồm thành phần bản: Giao

diện, Xử lý, Dữ liệu

Khi thiết kế phần mềm, nhóm thiết kế phải chọn lựa định “vật liệu” dùng thành phần

Kết trình bày bảng vẽ, dạng tài liệu kỹ thuật, tạo thành mơ hình phần mềm

(35)

Jens Martensson

Jens Martensson

Thành phần Giao diện

Nội dung hình thức trình bày chức giao tiếp

Các thao tác người dùng giao diện để thực giao tiếp chức xử lý

Thành phần Xử lý:

Các kiểu liệu mô tả cách tổ chức lưu trữ nhớ

Các hàm thực xử lý (ví dụ kiểm tra tính hợp lệ việc cho mượn sách, ghi vào sổ việc cho mượn sách …)

35

(36)

Thành phần Dữ liệu:

cách tổ chức lưu trữ liệu nhớ

Cách lưu trữ liệu sử dụng phần mềm,

Hệ thống thành phần lưu trữ mối quan hệ liệu.

(37)

Jens Martensson

Jens Martensson

Một số mơ hình kiến trúc mẫu Model-ViewController – MVC

Kiến trúc phân tầng Kiến trúc client-server

37

(38)

Kiến trúc Model-View-Controller – MVC

Hệ thống cấu trúc thành ba thành phần logic tương tác với nhau. – Model : quản lý liệu hệ thống thao tác liệu

View : định nghĩa quản lý cách liệu hiển thị cho người dùng – Controller: Quản lý tương tác người dùng (VD, ấn phím, nhấp chuột, )

và chuyển tương tác tới View Model

(39)

Jens Martensson

Jens Martensson

Kiến trúc Model-View-Controller – MVC

Hoạt động MVC

Controller chuyển yêu cầu liệu người dùng cho Model. Model Lấy liệu chuyển cho Controller.

Controller chuyển liệu cho View

View Hiển thị thông tin cho người dùng.

39

(40)

Kiến trúc Client-Server (máy khách-máy chủ) là mơ hình

máy tính, máy chủ (server), cung cấp quản lý hầu hết các nguồn lực dịch vụ cho máy khách (client).

(41)

Jens Martensson

Jens Martensson

Kiến trúc Layer: gồm có thành phần: Presentation Layers,

Business Logic Layers, Data Access Layers

Presentation Layers: làm nhiệm vụ giao tiếp với người dùng cuối để thu thập liệu hiển thị kết giao diện

Busines Logic Layers: xử lý liệu trước chuyển xuống Data Access Layer để lưu liệu xuống sở liệu

Data Access Layers: thực nghiệp vụ liên quan đến lưu trữ truy xuất liệu ứng dụng đọc, lưu, cập nhật sở liệu

41

(42)

Kiến trúc Layer: Cách vận hành:

Người dùng giao tiếp với tầng giao diện (GUI) để gửi yêu cầu, thông tin kiểm tra, OK, liệu chuyển xuống tầng nghiệp vụ (BLL)

Tại BLL, thông tin xử lý, không cần đến Database BLL gửi trả kết GUI, ngược lại liệu đưa xuống tầng truy cập liệu (DAL)

DAL thao tác với Database trả kết cho BLL, BLL kiểm tra gửi cho GUI để hiển thị cho người dùng

(43)

Jens Martensson

Jens Martensson

Phương pháp trực tiếp

Phương pháp áp dụng thực phần mềm không qua giai đoạn phân tích, việc thiết kế nhận kết đươc chuyển giao trực tiếp từ giai đoạn xác định yêu cầu

Đối với phương pháp trực tiếp: Thiết kế phần mềm trình chuyển đổi từ các u cầu đến mơ hình phần mềm tương ứng

Cách tiếp cận rất khó phần mềm có quy mơ lớn

43

(44)

Phương pháp gián tiếp

Được áp dụng với các quy trình có giai đoạn phân tích, việc thiết kế nhận phần kết từ giai đoạn xác định yêu cầu, phần nhận từ giai đoạn phân tích, PM xây dựng dựa mơ hình giai đoạn phân tích

 Cách tiếp cận thích hợp với phần mềm có quy mơ lớn

Đối với phương pháp gián tiếp: Thiết kế PM trình chuyển từ kết

giai đoạn phân tích đến mơ hình phần mêm tương ứng

(45)

Jens Martensson

Jens Martensson

Ví dụ minh họa trình thiết kế phần mềm sau thực giai

đoạn mơ hình hóa yêu cầu.

Thiết kế phần mềm quản lý thư viện với 4 yêu cầu: Lập thẻ đọc giả, Nhận sách, Cho mượn sách, Trả sách

Mơ hình hóa u cầu:

45

(46)

Thiết kế phần mềm: Hệ thống hình giao diện

Màn hình

Nội dung: Thông tin thư viện, Thông tin độc giả, Thông tin sách Thao tác người dùng: Tra cứu chọn độc giả, Tra cứu chọn sách

Màn hình Lập thẻ

Nội dung: Thông tin thẻ độc giả

Thao tác người dùng: Nhập thông tin thẻ, Yêu cầu lập thẻ

(47)

Jens Martensson

Jens Martensson

Màn hình cho mượn sách

Nội dung: Thông tin thẻ độc giả (Ngày mượn sách, Danh mục sách) Thao tác người dùng: Nhập thông tin mượn sách, Yêu cầu mượn sách.

Màn hình Nhận sách

Nội dung: Ngày nhận sách, Danh mục sách nhận & thông tin liên quan

Thao tác người dùng: Nhập thông tin việc cho nhận sách, Yêu cầu cho nhận sách

Màn hình Trả sách

Nội dung: Ngày trả sách, Thơng tin việc trả sách

Thao tác người dùng: Nhập thông tin trả sách, Yêu cầu trả sách.

47

(48)

Hệ thống hàm xử lý

Hàm lập thẻ: Kiểm tra tính hợp lệ lưu thẻ vào kho

Hàm Tra cứu độc giả: Tìm thẻ độc giả theo tiêu chuẩn khác

phép cập nhật hay xóa thẻ

Hàm Xóa thẻ: Xóa thẻ kho

Hàm Nhập sách: Kiểm tra tính hợp lệ sách lưu sách vào kho Hàm Xóa sách: Xóa sách kho

Hàm Cho mượn sách: Kiểm tra tính hợp lệ việc cho mượn sách ghi

nhận thông tin cho mượn sách vào kho

Hàm Tra cứu sách: Tìm sách theo tiêu chuẩn khác phép cập

(49)

Jens Martensson

Jens Martensson

Hàm Tính số sách độc giả mượn: tổng số sách độc giả mượn

Hàm Kiểm tra độc giả mượn sách hạn: Kiểm tra độc giả có sách mượn

quá hạn trả đúng, sai

Hàm Kiểm tra tình trạng sách: Kiểm tra sách mượn, hàm trả

nếu sai

Hàm Tra cứu phiếu cho mượn sách: Tra cứu phiếu mượn sách theo

nhiều tiêu chuẩn để cập nhật hay số phiếu cho mượn

Hàm Xóa phiếu cho mượn sách: Xóa thông tin việc mượn sách kho Hàm Trả sách: Ghi nhận việc trả sách kho

Hàm Tính tiền phạt: Tính tiền phạt độc giả trả sách trễ hạn

49

(50)

Hệ thống bảng liệu

Bảng THU_VIEN: thông tin thư viện Bảng DOC_GIA: thông tin độc giả Bảng SACH: thông tin sách

Bảng MUON_SACH: thông tin mượn trả sách

(51)

Jens Martensson

Jens Martensson

1 Theo nguyên tắc, Kỷ luật thứ ba gì?

A Triển khai B Thực

C Mơ hình hóa kinh doanh D Thiết kế

51

(52)

2 Các bước gọi Quy trình hợp (UP) gì

A Lặp lại (Iterations)

B Vòng đời phát triển hệ thống(System Development Life Cycle) C Kỷ luật (Disciplines)

D Kiến trúc thông tin (Information Architecture)

(53)

Jens Martensson

Jens Martensson

3 KHÔNG phải hoạt động thiết kế chi tiết?

A Thiết kế phần mềm ứng dụng

B Thiết kế chế lưu phục hồi hệ thống

C Thiết kế giao diện người dùng hệ thống bên D Thiết kế kiến trúc

53

(54)

4 yêu cầu ràng buộc xác định đặc điểm quan trọng tài nguyên xử lý thông tin cách chúng tương tác.

A Kiến trúc hệ thống B Kiến trúc thông tin

C Kiến trúc Internet D Thực

Ngày đăng: 27/04/2021, 18:35

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan