1. Trang chủ
  2. » Công Nghệ Thông Tin

Tổng quan về ngôn ngữ mô hình hóa UML

54 705 1

Đ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

Thông tin cơ bản

Định dạng
Số trang 54
Dung lượng 1,16 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tài liệu này dành cho sinh viên, giáo viên khối ngành công nghệ thông tin tham khảo và có những bài học bổ ích hơn, bổ trợ cho việc tìm kiếm tài liệu, giáo án, giáo trình, bài giảng các môn học khối ngành công nghệ thông tin

Trang 1

Gv: Vũ Thị Dương Email: duongvt01@gmail.com

KHOA CÔNG NGHỆ THÔNG TIN

Trường Đại học công nghiệp Hà Nội

PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG

Trang 2

Nội dung chi tiết

1. Các khái niệm hướng đối tượng

2. Tổng quan về ngôn ngữ mô hình hóa UML

3. UML trong tiến trình phát triển phần mềm

4. Mô hình hóa yêu cầu (biểu đồ ca sử dụng)

5. Mô hình hóa lĩnh vực ứng dụng (biểu đồ lớp lĩnh vực)

6. Mô hình hóa hành vi( biểu đồ tương tác, trạng thái)

7. Biểu đồ kiến trúc vật lý và phát sinh mã trình

8. Mô hình hóa dữ liệu

Trang 3

Giới thiệu Ngôn ngữ mô hình hóa thống nhất

Bài 2

Trang 4

Mô hình là gì?

 Mô hình (Model)

 Là sự đơn giản hóa của hệ thống thực MHH có thể bức tranh hay mô

tả vấn đề đang cố gắng giải quyết hay mô tả chính giải pháp vấn đề

 là ngôn ngữ của người thiết kế (trong nhiều lĩnh vực)

 là trình diễn hệ thống sẽ xây dựng

 là phương tiện giao tiếp giữa các stakeholders

 là kế hoạch chi tiết (blueprints)

Trang 5

Khái niệm mô hình hóa

 Mô hình hóa (modeling) là quá trình dùng mô hình để diễn

tả hệ thống

 Tại sao phải mô hình hóa?

1 Mô hình hóa để hiểu vấn đề (dễ nhận thức)

2 MHH để trao đổi (phương tiện giao tiếp giữa những người phát triển)

3 MHH để hoàn chỉnh( dễ dàng nhận sự phù hợp giữa mô hình và nhu cầu để cải tiến, hoàn thiện)

 Ngôn ngữ mô hình hóa là ngôn ngữ mô tả hệ thống hay tác nghiệp

Trang 8

Mô hình hóa trực quan?

Computer System Business Process

Order

Item

Ship via

“Modeling captures essential

parts of the system.”

Dr James Rumbaugh

Visual Modeling is modeling

using standard graphical

notations

Trang 9

Các nguyên tắc mô hình hóa

Trang 10

Một số phương pháp MHH HĐT

 OOD- Object Oriented Design

 OOSE- object Oriented Software Engineering

 OMT- Object Modeling Technique

Trang 11

OOD- Object Oriented Design

 Phương pháp này được phát triển bởi Booch Nó bao gồm

Trang 12

OOSE- object Oriented Software Engineering

 Phương pháp được phát triển bởi Jacobson

 5 mô hình

 Mô hình yêu cầu – kịch bản sủ dụng

 Mô hình phân tích- mức khái niện

 Mô hình thiết kế - mức logic

 Mô hình mã hóa – mức vật lý

 Mô hình kiểm thử

Trang 13

OMT- Object Modeling Technique

 Phương pháp được phát triển bởi Rumbaugh

Trang 14

 Cuối năm 1995, Jacobson tham gia nhóm của họ và

6/1996 phiên bản UML v0.9 ra đời

Trang 15

Lịch sử phát triển UML

 1996: Hội thảo đầu tiên về UML được tổ chức

 1997 phiên bản v1.0 được đề xuất như chuẩn đối với tổ chức OMG (Object management Group)

 8/1998 UML v1.3 được phát hành bởi OMG

Trang 16

Ngôn ngữ mô hình hóa thống nhất

UML stands for Unified Modeling Language

Trang 18

Contributions to the UML

Trang 19

UML – một ngôn ngữ

 Cung cấp từ vựng, cú pháp và ngữ nghĩa để mô

tả sự giao tiếp

 Là một ngôn ngữ mà trong đó từ vựng và luật

được sử dụng để mô tả mức khái niện và mức vật

lý của một hệ thống

 UML cung cấp từ vựng và luật để mô tả các mô hình khác nhau của một hệ thống

Trang 20

Khái quát về UML

 UML là ngôn ngữ để

 Visualizing – mô hình hóa trực quan

 Specifying – đặc tả

 Constructing – xây dựng

 Documenting – làm tài liệu

 Nó có thể sử dụng trong mọi tiến trình, xuyên suốt vòng đời phát triển và trải qua các công nghệ cài đặt khác

nhau

Trang 21

UML- ngôn ngữ để mô hình hóa trực quan

 UML cung cấp 1 tập các ký hiệu và luật để biểu diễn đồ họa những mô hình của hệ thống

 Biểu diễn đồ họa thường đem lại cái nhìn tốt hơn

về hệ thống

Trang 22

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

 Một đặc tả là một mô tả chính xác và không nhập nhằng về hệ thốn g

 UML cung cấp các công cụ để đặc tả hệ thống ở nhiều mức: Phân tích, thiết kế, cài đặt

Trang 23

UML- ngôn ngữ để xây dựng

 Các mô hình UML có thể được chuyển sang 1

ngôn ngữ lập trình khá dễ dàng

 UML là khá chính xác và không nhập nhằng để cho phép thực hiện các mô phỏng

Trang 24

UML- ngôn ngữ để lập tài liệu

 UML cho phép mô tả tất cả các bước xây dựng một hệ thống

 Các mô hình được xây dựng tạo nên một tài liệu đầy đủ và chính xác về hệ thống

Trang 25

Khái quát về UML

 Mô hình hóa các phần tử

 Các quan hệ

 Cơ chế mở rộng

 Các biểu đồ

Trang 27

Các quan hệ

 Dependency – phụ thuộc ( mũi tên đứt nét)

 Association – kết hợp (đoạn thẳng với bội, bản số

Trang 28

Cơ chế mở rộng

 Khuôn dập-Stereotype

 Giá trị - Tagged value

 Ràng buộc-Constraint

Trang 29

Models and Diagrams

Use Case Diagrams

Object Diagrams

Activity Diagrams

Models

Trang 30

Các biểu đồ- Diagrams

 Biểu đồ là cách diễn tả hệ thống theo một góc nhìn

 Thể hiện cách nhìn từ góc độ của người tham gia

 Cung cấp 1 trình diễn cụ thể của hệ thống

 Về mặt ngữ nghĩa thì mỗi biểu đồ có thể sẽ khác nhau đối với cách nhìn khác nhau

 Trong UML có 9 biểu đồ cơ bản

 Tĩnh: use case, class, object, component, deployment

 Động: sequence, collaboration, statechart, activity

 A diagram is a view into a model

 Presented from the aspect of a particular stakeholder

 Provides a partial representation of the system

 Is semantically consistent with other views

 In the UML, there are nine standard diagrams

 Static views: use case, class, object, component, deployment

 Dynamic views: sequence, collaboration, statechart, activity

Trang 31

Kiến trúc hệ thống UML

Logical View ( Góc nhìn logic)

System topology Delivery, installation Communication

System engineering

Use Case View

Trang 32

Góc nhìn Hệ thống

 Góc nhìn người sử dụng (use case).Mô tả hệ thống dưới góc nhìn của người sử dụng đầu cuối và người sở hữu

 Mô tả các mục tiêu và mục đích của hệ thống

 Mô tả các chức năng của hệ thống

 Góc nhìn logic- mô tả mặt tĩnh và cấu trúc của hệ thống

 Góc nhìn hành vi- mô tả mặt động của hệ thoongs (tương tác giữa các phần tử của hệ thống)

 Góc nhìn cài đặt – mô tả thực hiện giải phấp- mã chương trình

 Góc nhìn triển khai- mô tả các phần tử vật lý của giải pháp (bộ xử lý, thiết bị)

Trang 33

Cần bao nhiêu khung nhìn?

 Mô hình phù hợp với ngữ cảnh phát triển hệ thống

 Không phải tất cả các mô hình đòi hỏi đầy đủ khung nhìn

 Đơn xử lý: Bỏ qua khung nhìn triển khai

 Đơn tiến trình: Bỏ qua khung nhìn tiến trình

 Chương trình rất nhỏ: Bỏ qua khung nhìn cài đặt

 Bổ sung các khung nhìn

 Data view

 Security view

Trang 34

 Mô hình hóa hành vi đối tượng bằng state transition diagrams

 Biểu thị kiến trúc cài đặt vật lý bằng component & deployment diagrams

 Mở rộng các chức năng bằng stereotypes

Trang 35

 Sinh viên ( Student ) chọn 4 môn học chính và 2 môn dự bị

 Khi sinh viên đăng ký học thì hệ thống thanh toán ( billing system )

in hóa đơn học phí cho sinh viên

 Sinh viên có thể sử dụng hệ thống để bổ sung/loại bỏ môn học sau khi đã đăng ký (trong khoảng thời gian cố định)

 Giáo sư ( Professors ) sử dụng hệ thống để xem bảng phân công dạy học ( course rosters )

 Người sử dụng hệ thống đăng ký được cấp passwords để vào máy

Trang 36

Biểu đồ ca sử dụng

 Biểu đồ use case dùng để mô tả tập hợp các ca sử

dụng, các tác nhân và những mối quan hệ giữa chúng

 Các biểu đồ này mô tả cái nhìn tĩnh về hệ thống dưới con mắt của người sử dụng

 Các biểu đồ này rất quan trọng để nắm bắt chức năng của hệ thống

 Biểu đồ được tạo bởi người phân tích TK hay các

chuyên gia của hệ thống

Trang 37

Biểu đồ ca sử dụng

Student

Registrar

Professor Maintain Schedule

Maintain Curriculum Request Course Roster

Billing System

Trang 38

Biểu đồ tuần tự- Sequence Diagram

 Mô tả sự trao đổi các thông điệp giữa các đối tượng dựa theo thời gian

Trang 39

Biểu đồ tuần tự

: Student registration

form

registration manager math 1011: fill in info

2: submit

3: add course(joe, math 01)

4: are you open?

5: are you open?

6: add (joe)

7: add (joe)

math 101 section 1

Trang 40

Biểu đồ tương tác- Collaboration Diagram

 Mô tả sự trao đổi các thông điệp giữa các đối tượng dựa theo cấu trúc quan hệ giữa chúng

Trang 41

Biểu đồ tương tác- Collaboration Diagram

: Registrar

course form : CourseForm

theManager : CurriculumManager aCourse :

Trang 42

Biểu đồ lớp

 Mô tả tập hợp các lớp và các tương tác giữa chúng

 Các biểu đồ lớp mô tả cấu trúc tĩnh của hệ thống

 Tạo bởi: analysts, designers, and implementers

Trang 43

Biểu đồ lớp- Class Diagram

addStudent(Course, StudentInfo)

name numberCredits

open() addStudent(StudentInfo) major

location

open() addStudent(StudentInfo) tenureStatus

ScheduleAlgorithm

1 0 *

0 4 1

Trang 44

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

 Mô tả tập hợp các đối tượng và quan hệ giữa chúng

 Các biểu đồ này mô tả cùng các thông tin như biểu

đồ lớp nhưng dưới cách nhìn của các thể hiện lớp

 Developed by analysts, designers, and implementers

Trang 45

Biểu đồ trạng thái: State Transition Diagram

 Biểu diễn máy trạng thái- chuyển tiếp sự kiện và

Trang 46

Biểu đồ trạng thái: State Transition Diagram

do: Initialize course

do: Finalize course do: Notify registered students

Add Student / Set count = 0

Add student [count < 10]

[count = 10]

Cancel

Cancel

Cancel

Trang 47

Biểu đồ hoạt đông -Activity Diagram

 Mô tả luồng thông tin

từ 1 hoạt động này đến

1 họat động khác

 Mô tả cài nhìn động về

hệ thống

Trang 48

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

 Chỉ ra tổ chức và sự phụ thuộc giữa các thành phần của

Trang 49

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

Billing System

Trang 50

Biểu đồ triển khai - Deployment Diagram

 Mô tả các nút và các thành phần của hệ thống tại thời điểm thực thi

 Developed by architects, networking engineers, and system engineers

Trang 51

Biểu đồ triển khai- Deployment Diagram

Registration Database

Library

Dorm

Main Building

Trang 52

Biểu đồ triển khai-Deployment Diagram

Client

Server

Application Server

Fulfillment

System

Financial System

Inventory System

RDBMS Server

Dynamic HTML, JavaScript, Java plug-ins, source code enhancements

Java, C, C++, JavaScript, CGI

Java, C, C++, JavaBeans, CORBA, DCOM

Native languages

Trang 53

Góc nhìn và biểu đồ

Logical View ( Góc nhìn logic)

Biểu đồ lớp, bd đối tượng

Implementation View (Góc nhìn cài đặt)

System topology Delivery, installation Communication

BD triển khai

Use Case View

- Biểu đồ ca sử dụng

Trang 54

Tóm tắt

 Các vấn đề đã nghiên cứu

 Khái niệm mô hình, mô hình hóa trực quan

 Khái quát về Ngôn ngữ mô hình hóa thống nhất

 Thí dụ sử dụng các biểu đồ của UML

Ngày đăng: 22/10/2014, 22:34

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w