Presentation is loading. Please wait.

Presentation is loading. Please wait.

UML Unified Modeling Language

Similar presentations


Presentation on theme: "UML Unified Modeling Language"— Presentation transcript:

1 UML Unified Modeling Language
Hoang Huu Hanh (PhD), Hue University hanh-at-hueuni.edu.vn based on online totorials and presentations

2 Định nghĩa Những năm đầu của thập kỷ 90 có rất nhiều phương pháp phân tích, thiết kế hệ thống hướng đối tượng và cùng với chúng là các ký hiệu riêng cho từng phương pháp Thời kỳ này còn được biết đến với tên gọi là cuộc chiến giữa các phương pháp Khoảng đầu năm 94, Booch đã cải tiến phương pháp của mình trong đó có ứng dụng những ưu điểm của các phương pháp của Rumbaugh và Jacobson Các phương pháp đã bắt đầu hợp nhất, nhưng các kí hiệu sử dụng ở các phương pháp vẫn còn nhiều điểm khác biệt UML - một ngôn ngữ mô hình hóa hợp nhất đã trở thành một quy trình chuẩn của tổ chức OMG (Object Management Group) Introduction to UML

3 CS 578 Software Architecture -- From Architecture to Design: Role Of UML
16 April 2017 UML History Introduction to UML Walk the audience through the timeline. Point out that the UML is the natural successor to the notations. 1. Late ‘80s and early ‘90 - there are many (50+) OO methodologies 2. Among the first generation methodologies, Booch and OMT stood out 3. Around 1993, second generation methodologies came out - Booch ‘93 and OMT-II. Methodologist borrowed good concepts from each others so many concepts were the same across the methodologies, but different notations. 4. Oct Dr. James Rumbaugh joined Rational to unify Booch & OMT. 5. At OOPSLA ‘95, Grady and Jim announced Unified Method 0.8. 6. Use Case technique developed by Dr. Ivar Jacobson was adapted by all methodologies by then. 7. Rational acquires Objectory in fall of ‘95 - Dr. Ivar Jaconson joins Rational. 8. Jun of ‘96 - Rational submits UML 0.9 to OMG. 9. UML gains industry support from HP, Microsoft, Oracle + 16 others 10. UML is the de facto standard for OO and component technologies 11. The final submission goes in Sep. ‘97 - expect the announcement in Dec. ... © Neno Medvidovic & Edward Colbert

4 UML là gì? Nó là một ngôn ngữ mô hình hóa, không phải là một phương pháp Một phương pháp thông thường bao gồm một tập các quy tắc, một ngôn ngữ mô hình hóa và một quy trình mô tả những công việc cần làm Một ngôn ngữ mô hình hóa bao gồm các ký hiệu và các cách thức sử dụng cho việc thiết kế Quy trình là những sự hướng dẫn các bước trong quá trình thiết kế Ngôn ngữ mô hình hóa là thành phần quan trọng nhất trong một phương pháp, là yếu tố kết nối giữa các thành phần Introduction to UML

5 Tại sao lại sử dụng UML? Giúp cho việc phân tích và thiết kế
Là công cụ giao tiếp (Communication) Sử dụng các ưu điểm của OO Tài liệu hóa (Documentation) Như được đề cập trong The Unified Modeling Language User Guide; Ngôn ngữ UML dùng để: Trực quan hóa (Visualizing) Đặc tả (Specifying) Xây dựng (Constructing) Cung cấp tài liệu (Documenting) Introduction to UML

6 Trực quan hóa (Visualizing)
Hiểu và giải quyết các vấn đề dễ dàng hơn Khi trở thành một chuẩn trong việc lập mô hình, mỗi kí hiệu mang một ý nghĩa rõ ràng và duy nhất=> một nhà phát triển có thể đọc được mô hình xây dựng bằng UML do một người khác viết. Một mô hình rõ ràng, sáng sủa làm tăng khả năng giao tiếp, trao đổi giữa các nhà phát triển Introduction to UML

7 Đặc tả (Specifying) Xây dựng các mô hình một các tỉ mỉ, rõ ràng, đầy đủ ở các mức độ chi tiết khác nhau Tất cả các công đoạn từ phân tích, thiết kế cho đến triển khai đều có các biểu đồ UML biểu diễn. Introduction to UML

8 Kiến tạo(Constructing)
UML là một ngôn ngữ chuẩn với tập quy tắc về cú pháp riêng. Chúng ta có thể xây dựng các công cụ để chuyển đổi các mô hình Các mô hình của UML có thể kết nối với nhiều ngôn ngữ lập trình. Tức là có thể ánh xạ các mô hình UML về một ngôn ngữ lập trình như C++, Java... Việc chuyển các mô hình trong UML thành Code trong ngôn ngữ lập trình  Forward engineering (Ex: Rational Rose) Introduction to UML

9 Tạo lập tài liệu (Documenting)
Giúp xây dựng tài liệu đặc tả - requirements Tài liệu kiến trúc (architecture) Tài liệu thiết kế Source code Tài liệu để kiểm thử - Test Tài liệu mẫu - Prototype Tài liệu triển khai – Deployment Introduction to UML

10 Cách sử dụng (Usages) Định nghĩa các giới hạn của hệ thống và các chức năng chính của nó Trường hợp sử dụng (Use cases) và các tác nhân (actor) Minh họa các UC Biểu đồ tương tác (interaction diagram) Định nghĩa cấu trúc tĩnh của hệ thống Biểu đồ lớp (class diagrams ) Mô hình hóa các hành vi của đối tượng Biểu đồ chuyển trạng thái (state transition diagrams) Mô tả kiến trúc vật lý(phần cứng và phần mềm) của hệ thống Biểu đồ thành phần và biểu đồ triển khai (component & deployment diagrams) Mở rộng Các khuôn mẫu (stereotypes) Introduction to UML

11 Cơ bản về UML Mô hình và các hướng nhìn (Views) Các biểu đồ chính
Các thành phần cơ bản Introduction to UML

12 Introduction to UML

13 Mô hình và hướng nhìn Hướng nhìn chỉ ra những khía cạnh khác nhau của hệ thống cần phải được mô hình hóa Một hướng nhìn không phải là một bản vẽ, mà là một sự trừu tượng hóa bao gồm một loạt các biểu đồ khác nhau Chỉ qua việc định nghĩa của một loạt các hướng nhìn khác nhau, mỗi hướng nhìn chỉ ra một khía cạnh riêng biệt của hệ thống, người ta mới có thể tạo dựng nên một bức tranh hoàn thiện về hệ thống. Introduction to UML

14 Core Elements Introduction to UML

15 Core Elements (cont’d)
¹ An extension mechanism useful for specifying structural elements. Introduction to UML

16 Các thành phần cơ bản Là các thành phần được sử dụng trong các biểu đồ
Một phần tử mô hình thường được sử dụng trong nhiều biểu đồ khác nhau, nhưng nó luôn luôn có chỉ một ý nghĩa và một kí hiệu.. Introduction to UML

17 Biểu đồ Các biểu đồ góp phần chi tiết hóa hệ thống
Mỗi biểu đồ là sự kết hợp của các thành phần cơ bản Dựa và các biểu đồ, các nhà phát triển có thể giao tiếp với nhau và giải quyết các vấn đề phức tạp của hệ thống Biểu đồ lớp là loại biểu đồ thông dụng nhất, dùng đề mô tả mối quan hệ giữa các lớp, giúp cho nhà phát triển có thể hiểu cấu trúc lớp của hệ thống Introduction to UML

18 Hướng nhìn (View) Mô hình hóa một hệ thống phức tạp là một việc làm khó khăn Khi xem xét một hệ thống, chúng ta cần xây dựng các mô hình từ những khía cạnh khác nhau, xuất phát từ thực tế là những người làm việc với hệ thống với những vai trò khác nhau sẽ nhìn hệ thống từ những khía cạnh khác nhau Vì vậy một hệ thống thường được miêu tả trong một loạt các hướng nhìn khác nhau Mỗi hướng nhìn sẽ thể hiện một bức ảnh ánh xạ của toàn bộ hệ thống và chỉ ra một khía cạnh riêng của hệ thống. Mỗi một hướng nhìn được miêu tả trong một loạt các biểu đồ, chứa đựng các thông tin nêu bật khía cạnh đặc biệt đó của hệ thống. Introduction to UML

19 Hướng nhìn (View) UML có tất cả các hướng nhìn sau:
Hướng nhìn UC Hướng nhìn thiết kế (Design) Hướng nhìn triển khai (Development) Hướng nhìn tiến trình (Process) Hướng nhìn vật lý (Physical) Các hướng nhìn phải phù hợp với nhau vì cùng mô tả về một hệ thống Có thể được sử dụng để kiểm tra tính hợp lệ giữa các hướng Introduction to UML

20 Hướng nhìn Use Case Mô tả ứng xử của hệ thống theo cách nhìn nhận của người dùng, người phân tích hệ thống. Các thuật ngữ sử dụng trong hướng nhìn mang ý nghĩa rõ ràng về một lĩnh vực nào đó người dùng có thể kiểm tra xem các yêu cầu của mình đã được đáp ứng đầy đủ hay chưa hoặc có chức năng nào của hệ thống là không cần thiết. Được miêu tả qua các biểu đồ Use case (use case diagram) và thỉnh thoảng cũng bao gồm cả các biểu đồ hoạt động (activity diagram). . Hướng nhìn Use case mang tính trung tâm, bởi nó đặt ra nội dung thúc đẩy sự phát triển các hướng nhìn khác Introduction to UML

21 Hướng nhìn thiết kế (Design View)
Hướng nhìn thiết miêu tả phương thức mà các chức năng của hệ thống sẽ được cung cấp Chủ yếu nó được sử dụng cho các nhà thiết kế và nhà phát triển. Biểu đồ thường được sử dụng là biểu đồ lớp và biểu đồ tương tác Introduction to UML

22 Hướng nhìn triển khai (Development View)
Là một lời miêu tả của việc thực thi các modul cũng như sự phụ thuộc giữa chúng với nhau Nó thường được sử dụng cho nhà phát triển và thường bao gồm nhiều biểu đồ thành phần Hướng nhìn này mang tính tùy chọn Introduction to UML

23 Hướng nhìn tiến trình (Process View)
Chia hệ thống thành các tiến trình(process) và luồng(thread), mô tả việc đồng bộ hóa và các xử lý đồng thời. Các tiến trình và luồng thường được xác định dựa vào biểu đồ lớp thông qua các lớp động (active class) Bên cạnh việc chia hệ thống thành các tiểu trình có thể được thực thi song song, hướng nhìn này cũng phải quan tâm đến vấn đề giao tiếp và đồng bộ hóa các tiểu trình đó Bao gồm các biểu đồ động (trạng thái, trình tự, tương tác và hoạt động) cùng các biểu đồ thực thi (biểu đồ thành phần và biểu đồ triển khai) Introduction to UML

24 Hướng nhìn vật lý (Physical View)
Chỉ cho chúng ta sơ đồ triển khai về mặt vật lý của hệ thống Hướng nhìn triển khai giành cho các nhà phát triển, người tích hợp cũng như người thử nghiệm hệ thống và được thể hiện bằng các biểu đồ triển khai Ánh xạ các thành phần của hệ thống vào cấu trúc vật lý Introduction to UML

25 Hướng nhìn Danh sách các hướng nhìn là không giới hạn
Phụ thuộc vào cách nhìn nhận hệ thống, ta có thể tạo ra một hướng nhìn mới Ví dụ: hướng nhìn về Security Introduction to UML

26 Các phần tử mô hình Phần tử cấu trúc (Structural elements)
class, interface, collaboration, use case, active class, component, node Phần tử hành vi(Behavioral elements) interaction, state machine Nhóm (grouping elements) package, subsystem Các thành phần khác note Introduction to UML

27 Các loại biểu đồ Biểu đồ Use Case
Mô tả các yêu cầu Biểu đồ hoạt động (Activity Diagrams) Nó chỉ ra các bước thực hiện, các hành động, các nút quyết định và điều kiện rẽ nhánh để điều khiển luồng thực hiện của hệ thống Biểu đồ tương tác (Interaction Diagrams) Biểu đồ cộng tác (tập trung vào đối tượng) – Collaboration Diagrams Biểu đồ tuần tự (mang yếu tố thời gian) – Sequence Diagrams Biều đồ cấu trúc tĩnh (Static Structure Diagrams) Objects/Classes/Packages Biểu đồ trạng thái Mô tả trạng thái của đối tượng ứng với từng thời điểm trong vòng đời của nó Biểu đồ thực thi (Implementation Diagrams) Biểu đồ thành phần (Component Diagrams) Biểu đồ triển khai( Deployment Diagrams) Introduction to UML

28 Biểu đồ Các biểu đồ kết nối lại với nhau tạo nên một cái nhìn tổng quát về hệ thống Mỗi biểu đồ mô tả một khía cạnh khác nhau của hệ thống. Có thể chia thành hai loại: biểu đồ hành vì và biểu đồ cấu Biểu đồ UC, tuần tự và biểu đồ lớp thường được sử dụng nhất Introduction to UML

29 Biểu đồ hành vi Biểu đồ hành vi đưa ra một cách nhìn động về hệ thống. Nó thường được sử dụng để đặc tả sự cộng tác giữa các thành phần nhằm đáp ứng lại các yêu cầu về hành vi của hệ thống Có thể chia ra 5 loại biểu đồ: Use case Hoạt động Trạng thái Tuần tự Cộng tác Biều đồ UC, tuần tự, cộng tác hay được sử dụng Biểu đồ hoạt động, trạng thái thường được sử dụng để mô tả các yêu cầu cơ bản Biểu đồ hoạt đông mô tả một cách trực quan các hành vi được lấy ra từ các UC Biểu đồ trạng thái nhằm minh họa các giao tác hành vi (transition) phức tạp trong các lớp đơn Introduction to UML

30 Các kiểu quan hệ Introduction to UML

31 Các kiểu quan hệ Introduction to UML

32 Các kiểu quan hệ Quan hệ nối kết (association): là một kết nối trực tiếp hai chiều giữa các lớp Một quan hệ nối kết là một đường thẳng nối các lớp có quan hệ với nhau Quan hệ kết tập (aggregation): là một dạng của nối kết, trong đó một phần tử này chứa một phần tử khác Một quan hệ kết tập là một đường thẳng nối các lớp có quan hệ với nhau với một đầu mang ký hiệu hình thoi ở lớp tổng Quan hệ phụ thuộc (dependency): là một sự liên quan ngữ nghĩa giữa hai phần tử mô hình, một mang tính độc lập và một mang tính phụ thuộc Mọi sự thay đổi trong phần tử độc lập sẽ ảnh hưởng đến phần tử phụ thuộc Quan hệ phụ thuộc được thể hiện bằng đường thẳng gạch rời (dashed line) với mũi tên (và có thể thêm một nhãn) giữa các phần tử mô hình Introduction to UML 30

33 Bội số quan hệ 1 – một và chỉ một 4 – 4 và chỉ 4 0..1 – 0 hoặc 1
5..10 – min=5, max=10 0..* - zero or more 4..* - four or more Introduction to UML

34 Tìm kiếm mối quan hệ Các mối quan hệ được phát hiện thông qua biểu đồ tương tác Nếu hai đối tượng “nói chuyện” với nhau thì phải có một cách thức giao tiếp giữa chúng RegistrationManager Course Registration Manager Math 101: Course 3: add student(joe) Introduction to UML 31

35 Mối quan hệ ScheduleAlgorithm RegistrationForm RegistrationManager
Course Student CourseOffering Professor addStudent(Course, StudentInfo) name numberCredits open() addStudent(StudentInfo) major location tenureStatus ScheduleAlgorithm Introduction to UML 32

36 Quan hệ nối kết Introduction to UML

37 Các đầu liên kết Introduction to UML

38 Nối kết tam nguyên Introduction to UML

39 Quan hệ hợp thành (Composition)
Introduction to UML

40 Quan hệ hợp thành (Composition)
Introduction to UML

41 Quan hệ khái quát hóa (Generalization)
Introduction to UML

42 Quan hệ khái quát hóa Introduction to UML

43 Quan hệ phụ thuộc (Dependencies)
Introduction to UML

44 Quan hệ phụ thuộc Introduction to UML

45 Derived Attributes and Associations
Introduction to UML

46 Nối kết (Links) Introduction to UML

47 Các ràng buộc và lời chú thích
Introduction to UML

48 Traffic Control System
Tác nhân (Actors) Một tác nhân là một người hoặc một vật nào đó tương tác với hệ thống, sử dụng hệ thống External Forces Tương tác giữa người (Human interaction) Các hệ thống tự động (Automated System) Traffic Control System Driver Keyboard Operator User <<Backup System>> <<toll booth>> Introduction to UML 14

49 Use Cases Một UC là một mô tả về một hành vi của hệ thống
Là một chuỗi các giao tác (transaction) có quan hệ với nhau được thực hiện bởi một tác nhân trong hệ thống Chi tiết những gì hệ thống cần cung cấp cho tác nhân khi một UC được thực thi A flow of events document is created for each use case Xuất phát từ quan điểm của tác nhân Các tác nhân sẽ được phỏng vấn để xác định cách thức mà họ tương tác với hệ thống Phân tách các hành vi đến mức chi tiết nhất Các nội dung chủ yếu: Một UC bắt đầu và kết thúc như thế nào?How the use case starts and ends Các dòng sự kiện thông thường (Normal flow of events) Các dòng sự kiện tùy chọn (Alternate flow of events) Các dòng sự kiện ngoại lệ (Exceptional flow of events) Introduction to UML 15

50 Biểu đồ Use case Biểu dồ Use case tập trung vào các quy trình nghiệp vụ mà ứng dụng cần phải thực thi Biểu đồ UC cho phép chúng ta cấu trúc hóa các toàn bộ ứng dụng xoay quanh quy trình cần phải thực thi Chỉ ra tập các tác nhân và UC và mối quan hệ giữa chúng Biểu đồ UC góp phần làm hiệu quả việc mô hình hóa Introduction to UML

51 Biểu đồ Use case Nắm bắt các chức năng của hệ thống theo cách nhìn bởi người sử dụng Built in early stages of development Mục đích Xác định rõ các ngữ cảnh của hệ thống Nắm bắt các yêu cầu của hệ thống Xác định tính hợp lệ kiến trúc hệ thống Hướng dẫn thực thi và kiểm tra tính đầy đủ chức năng Được xây dựng bởi các nhà phân tích và các chuyên gia Introduction to UML

52 Customer Service Agent
Biểu đồ Use case Biểu đồ Use case nhằm trực quan hóa các mối quan hệ giữa tác nhân và Use case Pay toll Driver Passager Lost Luggage Customer Service Agent Ramp Maintenance Mechanic Introduction to UML 18

53 Biểu đồ Use case Nắm bắt các yêu cầu của hệ thống theo cách nhìn của người sử dụng Introduction to UML

54 Biểu đồ cộng tác Là một dạng của biểu đồ tương tác mô tả cách thức tổ chức các đối tượng gửi và nhận các thông điệp Xét về mặt ngữ nghĩa gần giống như biểu đồ trình tự Khác với biểu đồ trình tự là ở đây tập trung vào ngữ cảnh và không gian thực hiện công việc Introduction to UML

55 Biểu đồ cộng tác Biểu đồ cộng tác mô tả cách tổ chức các tương tác của đối tượng và sự kết nối của chúng với đối tượng khác course form : 1: set course info CourseForm 2: process 3: add course : Registrar theManager : aCourse : CurriculumManager Course Introduction to UML 4: new course 22

56 Biểu đồ trình tự Tương đương với biểu đồ cộng tác.
Mô tả trật tự thời gian của các thông điệp được gởi giữa các đối tượng Được sử dụng trong hầu hết các quy trình phát triển phần mềm Introduction to UML

57 Biểu đồ trình tự Mô tả sự tương tác giữa các đối tượng theo một trật tự thời gian Counter Agent Ticket Passenger Gate Agent Plane 1: Give Info 2: Questions 3: Answer 4: Print 5: Safeguard 6:Present 7: Board 8: Overbook 9: Return Introduction to UML 21

58 Trạng thái của đối tượng
Biểu đồ trạng thái mô tả: Quá trình sống của một lớp Các sự kiện nào gây ra sự thay đổi từ trạng thái này đến trạng thái khác Các hành động là kết quả của sự thay đổi trạng thái Biểu đồ dịch chuyển trạng thái được tạo cho các đối tượng có hành vi không cố định Introduction to UML 37

59 Biểu đồ dịch chuyển trạng thái
Mô tả các trạng thái bên trong liên quan đến các hành vi của đối tượng Việc dịch chuyển giữa các trạng thái giúp cho việc xác định, xác thực các hành vi phức tạp Mỗi lớp có ít nhất một biểu đồ trạng thái Introduction to UML

60 Biểu đồ dịch chuyển trạng thái
Add Student / Set count = 0 Add student[ count < 10 ] [ count = 10 ] Cancel Initialization Open do: Initialize course do: Finalize course do: Notify registered students entry: Register student exit: Increment count Canceled Closed Introduction to UML 38

61 Biểu đồ hoạt động Mô hình hóa các dòng hoạt động giữa các quy trình
Rất hữu ích trong việc chi tiết hóa các hành vi của UC Biểu đồ hoạt động không chỉ ra sự cộng tác giữa các đối tượng Introduction to UML

62 Biểu đồ cấu trúc Các loại biểu đồ dạng này thường tập trung phân tích vào khía cạnh tĩnh của hệ thống Biểu đồ lớp là loại biểu đồ thường được sử dụng Khi chuyển sáng phân tích thiết kế bằng UML, hầu hết các tổ chức có xu hướng sử dụng biểu đồ lớp trước tiên vì: Giúp cho việc giao tiếp giữa các nhà phát triển thuận lợi và dễ dàng Là công cụ để giải quyết các vấn đề nảy sinh Biểu đồ lớp thường có hai dạng Dạng thứ nhất thường được sử dụng, bao gồm các lớp đối tượng cấu tạo nên hệ thống và cấu trúc của nó Dạng thứ hai ít được sử dụng nhưng có tầm quan trọng không kém, đặc biệt rất hữu ích trong việc phát triển hệ thống từ mức cao Biểu đồ gói (package diagram), một dạng của biểu đồ lớp, thường được mô tả dưới dạng các gói của ngôn ngữ Java và mối quan hệ giữa chúng Introduction to UML

63 Biểu đồ lớp Mô tả tập các lớp, gói và mối quan hệ giữa chúng theo một hướng nhìn cụ thể về hệ thống Thường được sử dụng trong việc mô hình hóa hệ thống Introduction to UML

64 Class Diagrams Biểu đồ lớp đưa ra các lớp tồn tại và mỗi quan hệ giữa chúng theo hướng nhìn logic về hệ thống Các phần tử mô hình hóa UML trong biểu đồ lớp Lớp, cấu trúc lớp và hành vi Các quan hệ nối kết, kết tập, phụ thuộc , kế thừa Chỉ số quan hệ và hướng của quan hệ Các quy tắc đặt tên Thuộc tính Thuộc tính cho biết cấu trúc của lớp Thuộc tính có thể được xác định thông qua địnhg nghĩa lớp, các yêu cầu và các tri thức về lĩnh vực phân tích Phương thức Hành vi của lớp được thể hiện thông qua các phương thức Các phương thức có thể xác định thông qua sự tương tác giữa các biểu đồ Introduction to UML 23

65 Class Diagram Xác định các từ vựng của hệ thống Introduction to UML

66 Biểu đồ đối tượng Cung cấp một bức tranh thực tế về hệ thống nhằm mô tả các mối quan hệ tĩnh giữa các đối tượng Một biểu đồ đối tượng vì vậy là một ví dụ của biểu đồ lớp, chỉ ra một bức tranh thực tế có thể xảy ra khi hệ thống thực thi: bức tranh mà hệ thống có thể có tại một thời điểm nào đó. Rất hữu ích trong việc bổ sung các thể hiện của các mối quan giữa các đối tượng, góp phần kiểm tra tính đúng đắn của biểu đồ lớp Không được sử dụng nhiều Introduction to UML

67 Mối quan hệ Mối quan hệ cho biết cách thức giao tiếp giữa các đối tượng Biểu đồ tuần tự hay cộng tác được sử dụng để xác định các liên kết giữa các đối tượng để thực hiện hành vi của chúng Nếu hai đối tượng muốn “nói chuyện” với nhau thì tồn tại một liên kết giữa chúng Có 3 kiểu quan hệ: Nối kết Kết tập Phụ thuộc Introduction to UML 29

68 Bộ số quan hệ và hướng quan hệ
Bộ số quan hệ định nghĩa số lượng đối tượng tham gia vào quan hệ Cho biết số lượng thể hiện của một lớp quan hệ với một thể hiện của lớp khác Với mỗi quan hệ nối kết hay kết tập, có hai dạng bộ số quan hệ cần phải xác: one for each end of the relationship Mặc dù các quan hệ nối kết và kết tập là các quan hệ hai chiều nhưng chúng thường được giới hạn lại thành quan hệ một chiều Khi hướng quan hệ được xác định, đầu mũi tên sẽ được thêm vào nhằm thông báo chiều của quan hệ Introduction to UML 33

69 Bội số quan hệ và hướng quan hệ
RegistrationForm RegistrationManager Course Student CourseOffering Professor addStudent(Course, StudentInfo) name numberCredits open() addStudent(StudentInfo) major location tenureStatus ScheduleAlgorithm 1 0..* 1..* 4 3..10 0..4 Introduction to UML 34

70 Kế thừa Quan hệ kế thừa là quan hệ giữa lớp cha và các lớp con của nó
Có hai phương để xác định mối quan hệ kế thừa: Khái quát hóa Chuyên biệt hóa Với các thuộc tính, phương thức hay các mối quan hệ tồn tại chung thường được đặt ở mức cao nhất của cây phân cấp Introduction to UML 35

71 Kế thừa ScheduleAlgorithm RegistrationForm RegistrationManager Course
Student CourseOffering Professor addStudent(Course, StudentInfo) name numberCredits open() addStudent(StudentInfo) major location tenureStatus ScheduleAlgorithm name RegistrationUser Introduction to UML 36

72 Các yếu tố vật lý Biểu đồ thành phần chỉ ra cấu trúc và sự phụ thuộc giữa các phần của phần mềm Một thành phần có thể là: Thành phần mã nguồn Thành phần mã nhị phân Thành phần thực thi Introduction to UML 39

73 Biểu đồ thành phần Nhấn mạnh các mối quan hệ tĩnh giữa các thành phần phần mềm thực thi Đó có thể là các loại file .exe, .dll, .ocx, jar files, hay là Enterprise JavaBeans. Có thể được sử dụng để chỉ ra các phần mềm bên trong ứng dụng Các thành phần không phải là các lớp Introduction to UML

74 Biểu đồ thành phần Mô tả cấu trúc vật lý của quá trình thực thi
Introduction to UML

75 Triển khai hệ thống Biểu đồ triển khai chỉ ra cấu hình các phần tử xử lý lúc chương trình chạy, các nút trên mạng và các tiến trình phần mềm thực hiện trên những phần tử đó Nó chỉ ra mối quan hệ giữa các phần cứng và phần mềm của hệ thống Trực quan hóa các thành phần riêng biệt của ứng dụng Introduction to UML 41

76 Biểu đồ triển khai Mô tả mối quan hệ của hệ thống phần cứng
Introduction to UML

77 Biểu đồ trển khai Mô tả cấu trúc vật lý của hệ thống Biểu đồ triển khai chỉ ra toàn bộ các nút trên mạng, kết nối giữa chúng và các tiến trình chạy trên chúng Rất hữu ích đối với các hệ thống có môi trường cấu hình phức tạp Đối với các ứng dụng triển khai trên nhiều server và vùng lãnh thổ, việc sử dụng biểu đồ trển khai là cần thiết Introduction to UML

78 Mở rộng UML Khuông mẫu (Stereotype) Giá trị đính kèm (Tagged value)
Hạn chế (Constraint) Introduction to UML

79 Mở rộng UML Khuôn mẫu có thể được sử dụng để mở rộng các phần tử ký hiệu của UML Phân loại các quan hệ mở rộng như nối kết, kế thừa, lớp và thành phần Ví dụ: Các khuôn mẫu lớp: biên, điều khiển, thực thể, tiện ích, ngoại lệ Khuôn mẫu kế thừa: sử dụng(uses) và mở rộng(extends) Khuôn mẫu thành phần: hệ thống con Introduction to UML 43

80 Q & A … time to ask questions Introduction to UML

81 Thank you! … take a break Introduction to UML


Download ppt "UML Unified Modeling Language"

Similar presentations


Ads by Google