69
Chương 1 Chương 1 Tng quan vphân tích và thiết kế UML/NN 1

UML Chuong 1 Phantichthietke n

Embed Size (px)

Citation preview

Page 1: UML Chuong 1 Phantichthietke n

Chương 1Chương 1

Tổng quan về phân tích và thiết kế

UML/NN 1

Page 2: UML Chuong 1 Phantichthietke n

Nội dung

Phân tích, thiết kế là gì?Quá trình phân tích thiết kếPhân tích thiết kế hướng đối tượngRUP (Rational Unified Process)

UML (Unified Modeling Language)( g g g )Giới thiệuCác thành phần của UMLCác thành phần của UMLCác loại mô hình UML

UML/NN 2

Page 3: UML Chuong 1 Phantichthietke n

1.1 Phân tích thiết kế là gì?

Phân tích thiết kế phần mềm:ểQuá trình tìm hiểu và mô phỏng lại hiện tượng,

quy trình nghiệp vụ trong thế giới thực từ đó xây dựng hệ thống để giải quyết bài toán đặt ra trêndựng hệ thống để giải quyết bài toán đặt ra trên máy tính.

Thiết kếThế giới thực

UML/NN 3

Lập trình Kiểm thử Phần mềm

Page 4: UML Chuong 1 Phantichthietke n

Tại sao phải phân tích thiết kế?

Bảo trì Bảo trì

Cài đặtKiểm thử

Cài đặtKiểm thử

Bảo trì

Thiết kếCài đặt

ó ế ế ế ếCó thiết kế Không thiết kế

UML/NN 4

Page 5: UML Chuong 1 Phantichthietke n

Tại sao phải phân tích thiết kế?

Chất lượng thiết kế là nhân tố chính quyết đị h hất lượ hầ ềđịnh chất lượng phần mềmKhông thiết kế - hoặc thiết kế không tốt dẫn đến phần mềm chất lượng thấp

Không quản lý được những thay đổi yêu cầuKhó kiểm thửKhó bảo trìKhông có tính tiến hóaKhông tái sử dụng được

UML/NN 5

Không tái sử dụng được

Page 6: UML Chuong 1 Phantichthietke n

Phân tích, thiết kế trong CNPM

Quy trình thác nước:

Phân tích yêu cầu Vị trí của Phân tích thiết kế

trong quy trình phát triển PM

Yêu cầu

Thiết kế

g y

Cài đặt & Kiểm thử

Triển khai

UML/NN 6

Phần mềm

Page 7: UML Chuong 1 Phantichthietke n

Phân tích yêu cầu

Là bước đầu tiên trong xây dựng phần mềmGồm có các bước

Phân tích viên phân tích hiện trạng và yêu cầu của khách hàngMô hình hệ thốngLập bảng các chức năng của hệ thống

Yêu cầu chức năngYêu cầu phi chức năng

Xác định phạm vi của hệ thống

UML/NN 7

Page 8: UML Chuong 1 Phantichthietke n

Thiết kế

Là bước kế tiếp nhằm phác họa ra hệ thốngViệc thiết kế bao gồim các công việc

Thiết kế dữ liệuThiết kế kiến trúcThiết kế thành phầnpThiết kế giao diện

UML/NN 8

Page 9: UML Chuong 1 Phantichthietke n

Cài đặt, kiểm thử

Cài đặt theo thiết kế (sử dụng các công cụ để â dự hầ ề từ thiết kế)để xây dựng phần mềm từ thiết kế)Kiểm thử:

Kiểm thử đơn vị (Unit Test)Kiểm thử hệ thống con (Sub-System Test)ệ g ( y )Kiểm thử hệ thống (System Test)

UML/NN 9

Page 10: UML Chuong 1 Phantichthietke n

Triển khai

Cài đặt hệ thốngGiải pháp phần cứngCài đặt phần mềmChuyển giao công nghệ

Hướng dẫn sử dụng: đào tạo, tài liệu hướng dẫn

Bảo trì, nâng cấp

UML/NN 10

Page 11: UML Chuong 1 Phantichthietke n

Phương pháp phân tích thiết kế

Phương pháp hướng chức năngLà lối tiế ậ t ề thố ủ Cô hệ hầ ềLà lối tiếp cận truyền thống của Công nghệ phần mềmTập trung vào thông tinDể dàng xử lý việc thay đổi dữ liệu nhưng lại khó trongDể dàng xử lý việc thay đổi dữ liệu, nhưng lại khó trong thay đổi về nguyên tắc nghiệp vụ

Phương pháp hướng đối tượngg p p g ợ gChúng ta tập trung vào cả thông tin và hoạt độngXem xét các thành phần trong bài toán tương tự như các ố ế ớđối tượng trong thế giới thực

Dễ dàng tái sử dụng

UML/NN 11

Page 12: UML Chuong 1 Phantichthietke n

Phân tích hướng đối tượng (OOA)

Là một giai đoạn của dự án nhằm tạo ra một ô hì h õ à à ú tí h hữ ấ đềmô hình rõ ràng và súc tích những vấn đề

cần giải quyết theo những khái niệm và đối tượ ủ thế iới thựtượng của thế giới thựcViệc phân tích cần xác định những đặc trưng, những tương tác và quan hệ có liên quan của các thực thể

UML/NN 12

Page 13: UML Chuong 1 Phantichthietke n

Cửa hàng bán xe hơi

Xác định thực thểKhá h hàKhách hàngNgười bán hàngĐơn đặt hàngĐơn đặt hàngXe hơiHóa đơn

Những tương tácKhách hàng xem xegKhách hàng đặt hàngKhách hàng thanh toán

UML/NN 13

Người bán hàng giao hóa đơn và giao xe

Page 14: UML Chuong 1 Phantichthietke n

Ngân hàng bán lẻ

Xác định thực thểL i tài kh ả ATM Tiết kiệ Khô kỳ hLoại tài khoản: ATM, Tiết kiệm, Không kỳ hạnKhách hàngNhân viênNhân viên

Những tương tácKhách hàng mở tài khoảnKhách hàng mở tài khoảnChuyển tiền từ tài khoản Tiết kiệm đến tài khoản ATMChuyển tiền từ tài khoản Tiết kiệm tới tiền gởi Không kỳ y ệ g g ỳhạnChuyển tiền từ tài khoản Không kỳ hạn tới tiền gởi tiết kiệm

UML/NN 14

kiệm

Page 15: UML Chuong 1 Phantichthietke n

Thiết kế hướng đối tượng (OOD)

Chương trình được xem như là một tập hợp những đối tượng cộng tác đối tượng là thểnhững đối tượng cộng tác, đối tượng là thể hiện của lớp, các lớp tạo nên cây phân cấp có quan hệ thừa kếcó quan hệ thừa kếNhà thiết kế xác định trách nhiệm, thuộc tính tác vụ và quan hệ của các lớptác vụ và quan hệ của các lớp

UML/NN 15

Page 16: UML Chuong 1 Phantichthietke n

Những thuận lợi của OOA&D

Phù hợp với suy nghĩ tự nhiên của con người giải quyết được một số vấn đề trongngười, giải quyết được một số vấn đề trong sản xuất phần mềmTăng cường tái sử dụng đối tượng nhờ đóTăng cường tái sử dụng đối tượng nhờ đó giảm được chi phí, lỗi, công sức, gia tăng tốc độ thiết kế và bảo trìđộ thiết kế và bảo trìGiúp phát triển những phần mềm phức tạp, hỗ trợ cho việc tạo ra những hệ thống phầnhỗ trợ cho việc tạo ra những hệ thống phần mềm dẻo và có khả năng ráp nối cao

UML/NN 16

Page 17: UML Chuong 1 Phantichthietke n

Qui trình RUP (Rational Unified Process)

Qui trình phát triển phần mềm thống nhất RUP là ột t hữ i t ì h hát t iểRUP là một trong những qui trình phát triển phần mềm theo hướng đối tượng, dùng N ô ữ ô hì h thố hất (UMLNgôn ngữ mô hình thống nhất (UML -Unified modeling language)

ểRUP là qui trình do hãng Rational phát triển

UML/NN 17

Page 18: UML Chuong 1 Phantichthietke n

Các vấn đề về phần mềm

UML/NN 18

Page 19: UML Chuong 1 Phantichthietke n

Nguyên nhân

UML/NN 19

Page 20: UML Chuong 1 Phantichthietke n

RUP

UML/NN 20

Page 21: UML Chuong 1 Phantichthietke n

Các giai đoạn RUP

UML/NN 21

Page 22: UML Chuong 1 Phantichthietke n

RUP: Nỗ lực

UML/NN 22

Page 23: UML Chuong 1 Phantichthietke n

Qui trình RUP…

Giai đoạn 1 (Inception): khởi đầuPh i dự á ê ầ ười dù à à b ộPhạm vi dự án, yêu cầu người dùng và ràng buộcYêu cầu nghiệp vụ, rủi ro, kế hoạch dự án (phân công, chi phí)chi phí)Thiết kế kiến trúc (chi phí, lịch, tài nguyên)Cấu hình môi trường làm việc, công cụ

Giai đoạn 2 (Elaboration): Hình thànhTinh chỉnh tài liệuHoạch định những bước lặpKế hoạch phát triển: tiến trình, công cụ CASETi h hỉ h kiế ú à h hà h hầ ( )

23 CNPM/NN

Tinh chỉnh kiến trúc và chọn thành phần (component)

Page 24: UML Chuong 1 Phantichthietke n

…Qui trình RUP

Giai đoạn 3 (Construction): Xây dựngả ý ế ì ả ẩ ấ ả ảQuản lý tiến trình tạo sản phẩm: năng suất, đảm bảo

chất lượngTạo sản phẩm (alpha beta các phiên bản test khác)Tạo sản phẩm (alpha, beta, các phiên bản test khác)Kế hoạch triển khai ứng dụng: phần mềm, người sử dụng, hỗ trợ…

Giai đoạn 4 (Transition): Chuyển giaoTạo sản phẩm xuất xưởngKiểm tra sản phẩm, thu thập phản hồi

24 CNPM/NN

Page 25: UML Chuong 1 Phantichthietke n

Unified ProcessA role played by an individual or a team

Activity

A unit of work

Activity

Describe a CAnalyst

Worker

Use Case

responsible for

Analyst

Artifact

A piece of information that is produced, modified, or used by a process

UML/NN 25

Use case package

Use caseby a process

Page 26: UML Chuong 1 Phantichthietke n

Qui trình thiết kế

UML/NN 26

Page 27: UML Chuong 1 Phantichthietke n

1.2 UML (Unified Modeling Language)

Là ngôn ngữ biểu diễn hệ thống bằng mô hìnhGiải ết ấ đề t á hệ thố hứ t áGiải quyết vấn đề trong các hệ thống phức tạp, các hệ thống ràng buộc nghiêm ngặt nhờ các ưu điểm trong việc biểu diễntrong việc biểu diễnTạo một mô hình có thể sử dụng được bởi người và máyvà máy.

UML/NN 27

Page 28: UML Chuong 1 Phantichthietke n

Mô hình

Mô hình là một hình ảnh khái quát nhằm biểu diễn hệ thống thực Nó chỉ ra được cấu trúc và ứng xửhệ thống thực. Nó chỉ ra được cấu trúc và ứng xử của hệ thốngNgôn ngữ để xây dựng mô hình được là ngôn ngữNgôn ngữ để xây dựng mô hình được là ngôn ngữ mô hìnhMô hình đối tượng là một mô hình biểu diễn hệMô hình đối tượng là một mô hình biểu diễn hệ thống theo những đối tượngNguyên tắc tạo mô hìnhNguyên tắc tạo mô hình

Phải sử dụng nhiều mô hình khác nhau trong biểu diễnMô hình giúp cho việc giải quyết vấn đề và hình thành

UML/NN 28

g p ệ g q ygiải pháp

Page 29: UML Chuong 1 Phantichthietke n

Tạo mô hình

Việc tạo mô hình phải thỏa mãn các yếu tố sau:sau:

Chính xác (accurate): Mô tả đúng hệ thống cần xây dựngxây dựng.Nhất quán (consistent): Các khung nhìn (view) khác nhau không được mâu thuẩn với nhau.g ợCó thể hiểu được (understandable): cho người xây dựng lẫn người sử dụngễ ổDễ thay đổi (changeable)

Dễ dàng trao đổi với các mô hình khác (exchangeable)

UML/NN 29

(exchangeable)

Page 30: UML Chuong 1 Phantichthietke n

Các quy tắc ngôn ngữ mô hình

Syntactic (Cú pháp): cho biết hình dạng các biể tượ à á h kết hợ hú tbiểu tượng và cách kết hợp chúng trong ngôn ngữ.Semantic (Ngữ nghĩa): cho biết ý nghĩa của mỗi biểu tượng, chúng được hiểu thế nào khi nằm trong hoặc không nằm trong ngữ cảnh của các biểu tượng khác.Pragmatic (Thực dụng): Hữu dụng, mọi người có thể hiểu được mô hình, có thể chia

UML/NN 30

g ợ ,sẻ thông tin một cách thuận tiện

Page 31: UML Chuong 1 Phantichthietke n

Lịch sử các phương pháp mô hình hóa

Thập niên 60ẳ ẩPhương pháp sơ đẳng với đặc tính chung là chuẩn

hóa kỹ thuật của các nhà phát triển ứng dụng Thập niên 70Thập niên 70

Phương pháp Descartes với đặc trưng là phân rã chức năng của HTTT theo mô hình phân cấp và ứng dụng các phương pháp lập trình cấu trúc đơn thể Một sốcác phương pháp lập trình cấu trúc, đơn thể. Một số phương pháp: HIPO, SADT, SA hay SSA, SA/SD,…Hướng tiếp cận:

Tính rõ ràngTính dừngSự rút gọn

31

g

Page 32: UML Chuong 1 Phantichthietke n

Lịch sử các phương pháp mô hình hóa

Thập niên 70 (tiếp)Phân loạiPhân loại

Phân tích cấu trúc: phân rã chức năng HTTT (HIPO, SADT, PSL/PSA, SA-SD, SSA, SASS )Khái niệm cấu trúc: mô tả cấu trúc các đơn thể (PSL/PSA, ệ ( / ,JSD, SA-SD )

Ưu điểmTiếp cận theo hướng từ trên xuống (top – down) ễDễ dàng áp dụng cho các hệ thống được cấu thành bởi

những thành phần ghép nối Tiếp cận từng bước

Khuyết điểmKhuyết điểmThiếu qui luật chính xác trong sự phân rã Thiếu các ràng buộc về việc bố trí xứ lý theo thời gian Khó khăn trong việc phân rã một hệ thống lớn

32

Khó khăn trong việc phân rã một hệ thống lớn

Page 33: UML Chuong 1 Phantichthietke n

Lịch sử các phương pháp mô hình hóa

Thập niên 80: phương pháp hệ thống, tiếp cận dữ liệu và xử lý: MERISE, IDA, REMORA, IA,… ý , , , ,

Cách tiếp cậnTính toàn thể Tính đúng đắn

Phâ l iPhân loạiMô hình cấu trúc dữ liệu của hệ thống (hướng tiếp cận CSDL) Mô hình hành vi hệ thống (tiếp cận theo hướng xử lý) Bao gồm 2 trường pháiBao gồm 2 trường phái

Lưỡng phần dữ liệu và xử lý: MCT, SADT, MERISE Không phân biệt rõ ràng giữa dữ liệu và xử lý: IDA, Remora, ACM-PCM, CIAM

Ưu điểmƯu điểmMô hình ERA được sử dụng rộng rãi nhất 2 cách tiếp cận của hệ thống về dữ liệu và xử lý Quan tâm đến những thành phần không tin học hóa

Kh ết điể

33

Khuyết điểmLưỡng phần dữ liệu và xử lý

Page 34: UML Chuong 1 Phantichthietke n

Lịch sử các phương pháp mô hình hóa

Thập niên 90: phương pháp hướng đối tượng, mô hình tiêu biểu là OOD HOOD BON OSA và sau này làtiêu biểu là OOD, HOOD, BON, OSA, … và sau này là OOSA, OOA, OMT, CRC, OOM, OOAD, UML/RUP

Đặc trưng cơ bảnTính bao bọc (encapsulation)Tính bao bọc (encapsulation)Tính phân loại (classification)Tính kết hợp (aggregation)Tính thừa kế (heritage)( g )

Phân loại: 2 hướngLập trình:lập trình đơn thể -> hướng đối tượngHệ quản trị CSDL: CSDL hướng đối tượngHệ quản trị CSDL: CSDL hướng đối tượng

Cách tiếp cận: 2 cáchPhương pháp kỹ thuật: CNPM (OOD, HOOD, BON, BOOCH, MECANO, OODA)

34

Phương pháp toàn cục:HTTT (OOA, OOSA, OOAD, OMT, OOM )

Page 35: UML Chuong 1 Phantichthietke n

Lịch sử các phương pháp mô hình hóa

Thập niên 90Ư ểƯu điểm

Cấu trúc hoá được các cấu trúc phức tạp và sử dụng được cấu trúc đệ qui Xác định được đối tượng của hệ thống qua định danh đối tượng Tính thừa kế được đưa ra tạo tiền đề cho việc tái sử dụng

ểKhuyết điểmNhiều khái niệm biểu diễn, khá rắc rối trong việc phân biệt ngữ nghĩa một số khái niệm gần nhau Xác định một đối tượng khá khó khăn Hướng tiếp cận về hệ thống vẫn còn đơn giản

Kiểu đối tượng <-> hành vi

35

Mô hình ER -> đối tượng

Page 36: UML Chuong 1 Phantichthietke n

Lịch sử phương pháp tiếp cận

Xöû lyù UML/ Thôøi gian

ế ố

OMT OOM

CRCOODa

OOSA

Xö ly

Sadt OOA

RUPThôi gian

Tiếp cận đối tượng

Ida

Merise

Remora

Axial

Ssa

Tiếp cận hệ

90Sa/sd

Jsd

Hipo

Tiếp cận Descartes

Proteeù

Tiếp cận hệ thống80

70

Döõ lieäu

Arianne

Corig

60

Niam

36

Page 37: UML Chuong 1 Phantichthietke n

Giới thiệu

Vài công ty hàng đầu đã sử dụng và góp hầ hát t iể UMLphần phát triển UMLHewlett – PackardMicrosoftOracleIBMUnisys

UML/NN 37

Page 38: UML Chuong 1 Phantichthietke n

Lịch sử của UML

UML/NN 38

Page 39: UML Chuong 1 Phantichthietke n

Lịch sử của UML

Booch and Rumbaughmethods - Unified M th d 0 8 (1995)Method v. 0.8 (1995)Jacobson góp phần cho UML 0.9, 1996UML là standard modelling language (OMG) 1996.UML 1.0 (1997), UML 1.1 (9 tháng sau).UML 1 4 (2001) UML 1 5 (2003)UML 1.4 (2001), UML 1.5 (2003)UML 2.0 (cuối 2004)

UML/NN 39

Page 40: UML Chuong 1 Phantichthietke n

UML – ngôn ngữ đặc tả

Cung cấp khung nhìn (view) cho việc phát t iể à t iể kh itriển và triển khaiUML không phụ thuộc qui trìnhUML được đề nghị sử dụng với những quá trình

Hướng theo use-case (chức năng – người dùng)Lấy kiến trúc làm trọng tâmLấy kiến trúc làm trọng tâmLặp lạiTăng thêm

UML/NN 40

Tăng thêm

Page 41: UML Chuong 1 Phantichthietke n

Đích (goal) của UML

Cung cấp những kỹ thuật đặc tả, có thể mở rộng từ những khái niệm lõinhững khái niệm lõiCung cấp những mô hình mô hình trực quan (visual) và trao đổi thuận lợi( ) ậ ợCung cấp những đặc tả độc lập với ngôn ngữ lập trình và qui trình phát triểnỗHỗ trợ việc gia tăng thị trường công cụ (tool)

hướng đối tượngHỗ trợ mức phát triển cao hơn với những khái niệmHỗ trợ mức phát triển cao hơn với những khái niệm mẫu (pattern) và thành phần (component)

UML/NN 41

Page 42: UML Chuong 1 Phantichthietke n

Thành phần của ngôn ngữ UML

Hướng nhìn (view)Biể đồ (di )Biểu đồ (diagram)Phần tử mô hình hóa (model element) Cơ chế chung (General Mechanism)

UML/NN 42

Page 43: UML Chuong 1 Phantichthietke n

“4+1” view

UML/NN 43

Page 44: UML Chuong 1 Phantichthietke n

Biểu đồ (diagram)

UML/NN 44

Page 45: UML Chuong 1 Phantichthietke n

Biểu đồ (diagram)

1. Biểu đồ Use case (Use Case Diagram)Biể đồ lớ (Cl Di )2. Biểu đồ lớp (Class Diagram)

3. Biểu đồ đối tượng (Object Diagram)ể4. Biểu đồ trạng thái (State Diagram)

5. Biểu đồ trình tự (Sequence Diagram)ự ( q g )6. Biểu đồ cộng tác (Collaboration Diagram)7. Biểu đồ hoạt động (Activity Diagram)7. Biểu đồ hoạt động (Activity Diagram)8. Biểu đồ thành phần (Component Diagram)9 Biểu đồ triển khai (Deployment Diagram)

UML/NN 45

9. Biểu đồ triển khai (Deployment Diagram)

Page 46: UML Chuong 1 Phantichthietke n

Biểu đồ Use case (Use Case Diagram)

UML/NN 46

Page 47: UML Chuong 1 Phantichthietke n

Biểu đồ lớp (Class Diagram)

UML/NN 47

Page 48: UML Chuong 1 Phantichthietke n

Biểu đồ đối tượng (Object Diagram)

UML/NN 48

Page 49: UML Chuong 1 Phantichthietke n

Biểu đồ trạng thái (State Diagram)

UML/NN 49

Page 50: UML Chuong 1 Phantichthietke n

Biểu đồ trình tự (Sequence Diagram)

: Database: People : LoginForm

1: submit(uname, psswd) 1.1: verify(uname, psswd)

1.2: welcome

UML/NN 50

Page 51: UML Chuong 1 Phantichthietke n

Biểu đồ cộng tác (Collaboration Diagram)

UML/NN 51

Page 52: UML Chuong 1 Phantichthietke n

Biểu đồ hoạt động (Activity Diagram)

UML/NN 52

Page 53: UML Chuong 1 Phantichthietke n

Biểu đồ thành phần (Component Diagram)

People<<file>> Database

PeopleInfo

StudentInfo

LectureInfoRegister<<file>> RegisterForm

PeopleInfo LectureInfo

Loginfil

Index.shtml<<page>>

<<file>>

LoginForm

UML/NN 53

Page 54: UML Chuong 1 Phantichthietke n

Biểu đồ thành phần là gì?

Thành phần là một phần vật lý và có thể thay thếMột thà h hầ d ó thể là ột tậ ti (Một thành phần code có thể là một tập tin (source code), một thành phần nhị phân (binary) hay thực thi được (executable)… Chúng có thể được nhómthi được (executable)… Chúng có thể được nhóm góp lại với nhau thành từng gói (package)Biểu đồ thành phần là loại biểu đồ cấu trúc, chỉ ra

ộ á à ầ ớnhững sự phụ thuộc giữa các thành phần với nhau, một thành phần thay đổi sẽ gây ra hiệu ứng đối với những thành phần khácnhững thành phần khác

UML/NN 54

Page 55: UML Chuong 1 Phantichthietke n

Giao diện (interface)

UML/NN 55

Page 56: UML Chuong 1 Phantichthietke n

Biểu đồ triển khai

UML/NN 56

Page 57: UML Chuong 1 Phantichthietke n

Mô hình Quản lý thư viện

Node 1 (phòng quản trị):Server CSDL

Node 3 (đọc giả):APP

Giao diệnGiao diện

Node 4 (thủ thư):APPTiện ích

Node 2 (phòng quản trị):APP Server

Cơ sở dữGiao diện

Cơ sở dữ liệu

Xử lý

57

Page 58: UML Chuong 1 Phantichthietke n

Biểu đồ triển khai là gì?

Biểu đồ triển khai chỉ ra kiến trúc vật lý của hầ ứ ũ hư hầ ề t hệphần cứng cũng như phần mềm trong hệ

thống.ể ểBiểu đồ có thể chỉ ra từng trang thiết bị cụ

thể (node), sự kết nối, loại kết nối Bên trong các nốt (node) chứa các thành phần thực thi cùng sự phụ thuộc giữa các p ự g ự p ụ ộ gthành phần

UML/NN 58

Page 59: UML Chuong 1 Phantichthietke n

NỐT (NODE)

Đối tượng vật lý thời gian thực thi mà biểu diễ ột tài ê tí h t á ột á hdiễn một tài nguyên tính toán, một cách tổng quát có ít nhất một bộ nhớ và thường ó khả ă ử lýcó khả năng xử lý

UML/NN 59

Page 60: UML Chuong 1 Phantichthietke n

Biểu đồ triển khai

Phân bổ các thành phần (thiết bị máy móc) trong công trìnhtrong công trình

UML/NN 60

Page 61: UML Chuong 1 Phantichthietke n

Biểu đồ triển khai

UML/NN 61

Page 62: UML Chuong 1 Phantichthietke n

Phần tử mô hình (model element)

Use case name

Class

Attributes

Component Name

Dependency

Operations

Dependency

Generalization

AssociationAssociation

Aggregation (a form of Association)

UML/NN 62

Page 63: UML Chuong 1 Phantichthietke n

Phần tử mô hình (model element)

Các biểu đồ được xây dựng từ các phần tử mô hình (model element)(model element). Một phần tử mô hình được định nghĩa với ngữ nghĩa (semantic) và được biểu diễn bằng ký hiệunghĩa (semantic) và được biểu diễn bằng ký hiệuMột phần tử mô hình có thể tồn tại trong nhiều dạng biểu đồ khác nhau theo những nguyên tắcdạng biểu đồ khác nhau, theo những nguyên tắc xác định loại phần tử nào được dùng trong loại biểu đồ nào

UML/NN 63

Page 64: UML Chuong 1 Phantichthietke n

Quan hệ (relationship)

Liên kết (Association) : liên kết các phần tử Khái át hó (G li ti ) ò đ i là tí hKhái quát hóa (Generalization): còn được gọi là tính thừa kế, có ý nghĩa rằng một phần tử này có thể là một sự chuyên biệt hóa của một phần tử khácmột sự chuyên biệt hóa của một phần tử khác.Sự phụ thuộc (Dependency): chỉ ra rằng một phần tử này phụ thuộc trong một phương thức nào đótử này phụ thuộc trong một phương thức nào đó vào một phần tử khác.Kết tập (Aggregation): Một dạng của nối kết, trongKết tập (Aggregation): Một dạng của nối kết, trong đó một phần tử này chứa các phần tử khác.

UML/NN 64

Page 65: UML Chuong 1 Phantichthietke n

Cơ chế chung (General Mechanism)

Biểu thị (Adornment)Ghi hú (N t )Ghi chú (Note)Đặc tả (Specification)

UML/NN 65

Page 66: UML Chuong 1 Phantichthietke n

Mở rộng UML

Khuôn mẫu (Stereotype)Giá trị đính kèm (Tagged Value)Ràng buộc (Constraint)g ộ ( )

UML/NN 66

Page 67: UML Chuong 1 Phantichthietke n

Sử dụng lược đồ UML

UML/NN 67

Page 68: UML Chuong 1 Phantichthietke n

UML Hello World

UML/NN 68

Page 69: UML Chuong 1 Phantichthietke n

Công cụ (Tool) – chức năng

Vẽ biểu đồH t độ h ột kh (R it )Hoạt động như một kho (Repository)Hỗ trợ điều hướng (Navigation )ỗHỗ trợ nhiều người sử dụng

Tự động tạo code Tái tạo mô hìnhTích hợp với các công cụ khác Bao quát mô hình ở tất cả các mức độ trừu tượng hóa khác nhau

UML/NN 69

Trao đổi mô hình