chủ đề 8: thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay,...

50
OOAD CH8 - 1 HIENLTH Chủ đề 8: Thiết kế kiến trúc vật lý

Upload: others

Post on 29-Aug-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 1 HIENLTH

Chủ đề 8: Thiết kế kiến trúc vật lý

Page 2: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 2 HIENLTH

Thiết kế kiến trúc vật lý

•The objective of designing the physical

architecture layer is to determine what parts of

the application software will be assigned to

what hardware.

Page 3: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 3 HIENLTH

Các thành phần cơ bản của hệ thống

• Phần mềm có thể chia thành 4 phần cơ bản:

• Data storage: thành phần lưu trữ dữ liệu của hệ thống

• Data access logic: thành phần giúp liên lạc với thành phần lưu

trữ

• Application logic: thành phần xử lý các quy trình nghiệp vụ

• Presentation logic: thành phần xử lý giao diện

• Phần cứng có thể chia thành 3 loại:

• Client: là thiết bị tiếp nhận input/output từ người dùng. Thường là

máy tính để bàn, máy tính xách tay, điện thoại di động

• Server: là những máy tính đảm nhận 1 số nhiệm vụ xử lý quan

trọng, là trung tâm của hệ thống

• Network: là những thiết bị đảm bảo các client và server kết nối

với nhau

Page 4: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 4 HIENLTH

Các kiểu kiến trúc vật lý

Page 5: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 5 HIENLTH

Kiến trúc Server – Based

• Client chỉ đóng vai trò

nhận input/output từ

thao tác chuột và bàn

phím của người dùng

• Các xử lý về giao

diện, nghiệp vụ, lưu

trữ đều diễn ra trên

server

• Ví dụ: ssh tunel,

remote desktop,…

Page 6: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 6 HIENLTH

Kiến trúc Client - Based

• Tất cả thực thi trên client

• Một số kiến trúc tách phần data storage cho 1 server đảm nhận

• Các ứng dụng local như: chương trình đọc sách, chương trình quản

lý tiền lương dạng local,…

Page 7: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 7 HIENLTH

Kiến trúc Client – Server

• Server chỉ đảm nhận 1 số nhiệm vụ quan trọng như quản lý dữ liệu

• Client đảm nhận về xử lý đồ họa và 1 số quy trình nghiệp vụ

Page 8: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 8 HIENLTH

Kiến trúc Client – Server nhiều tầng

• Client chỉ đảm nhận công việc xử lý đồ họa

• Công việc trên server sẽ chia sẻ thành nhiều tầng để tăng tốc độ,

hiệu năng xử lý

• Có thể có 3 tầng, 4 tầng hoặc n – tầng

Page 9: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 9 HIENLTH

Chọn kiến trúc nào hợp lý?

•Chi phí của kiến trúc:

• Chi phí phần cứng cần phải có trong kiến trúc

• Lượng băng thông di chuyển trong mạng

•Chi phí phát triển phần mềm:

• Kiến trúc càng nhiều phần cứng tham gia đòi hỏi

phải có thêm nhiều lớp đảm nhận nhiệm vụ liên lạc

giữa các bên

• Vấn đề bảo mật khi liên lạc giữa các bên

• Mức độ mở rộng của hệ thống

Page 10: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 10 HIENLTH

PACKAGE DIAGRAM

Page 11: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 11 HIENLTH

What is package?

•Package groups model elements base on their

role or meaning together

•Maintenance will be more effective

• It is possible to have other package into

package itself

Page 12: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 12 HIENLTH

Package diagram elements

Package A Package B

dependency

package

Page 13: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 13 HIENLTH

Sample for grouping model elements by package

Product

Order

Client

Product category

Product

Book

Software

Order

Ordering product

Credit card information

Client type

Client

Delivery

Page 14: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 14 HIENLTH

Modify class name with package name

• It is possible to modify class name into name of

class and package that it belongs for more

clearly

•Package name :: class name

P

A

P :: A

Class name that modified with package name

Page 15: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 15 HIENLTH

Dependency among packages

• Unilateral dependency relationship• Classes in package P can use classes in package Q, but the reverse is

impossible

P Q

R S

• Bilateral dependency relationship

– Classes in package R can use classes in package S, and the reverse is possible

Page 16: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 16 HIENLTH

Dependency among packages (cont.)

•Though classes in package P have changes

but package R is not effective.P R

A

H

F

I

B

E

C

D

G

Page 17: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 17 HIENLTH

Dependency among packages (cont.)

•When class in package P changes, maybe it

effects to other packageP R

A

H

F

I

B

E

C

D

G

Class H can be effected

Class A can be effected

Page 18: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 18 HIENLTH

Display the structure

• It is possible to display the stage of package

P

Q R S

P

S

RQ

Can display the child package

Page 19: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 19 HIENLTH

Exercise

•Select the best package diagram

for class diagram as below

Pack A :: A

Pack B :: B

Pack C :: C

PackA PackB

PackC

1

PackA PackB

PackC

2

PackA PackB

PackC

4

PackA PackB

PackC

3

Page 20: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 20 HIENLTH

COMPONENT DIAGRAM

Page 21: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 21 HIENLTH

What is a Component diagram?

• Show the structural relationships between the

components of a system

• Display structure inside of components or subsystem

• An architecture-level artifact

: Order : Customer

<<component>>

: Product

Page 22: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 22 HIENLTH

Component & Interface

•Component• Autonomous, encapsulated unit inside of software

• Physical phase: business component, process component

• Logical phase: EJB, CORBA, COM+, .NET, WSDL

• There are more one interface be public to outside

• Interface• Provided: Interface that support to outside

• Required: Interface that request to outside

Page 23: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 23 HIENLTH

Component & Interface (cont.)

• Notation of component

<<component>>

: Order : Order : Order

<<component>>

• Interfaces is connecting point among components

<<component>>

: Order

<<component>>

: Customer

Page 24: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 24 HIENLTH

Interface

• Interface can be displayed in several kinds

<<component>>

Order

<<provided interface>>

OrderEntry

<<required interface>>

Person

Create()

FindByName()

OrderEntry

<<component>>

Order

Person

<<interface>>

OrderEntry

<<component>>

Order

<<interface>>

Person

Create()

FindByName()

Page 25: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 25 HIENLTH

Display structure inside of component

Provided interface

Required interface

<<component>>

Component name

Part Part

connector

partport

• Part: Element that compose component

• Port: Element for boundary of outside and inside

• Connector• This is linking object between parts

• Same as relationship among classes, it is possible to set multiplicity at each connect point.

Page 26: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 26 HIENLTH

Display structure inside of subsystem

• Transfer connector: Transfer request to interface that public to outside or parts inside.

• Assembly connector: Show the connect between provide interface and require interface

<<subsystem>>

Component name

<<component>>

Component name A

<<component>>

Component name B

<<delegate>>

<<delegate>>

assembly connector

subsystem

transfer connect

Page 27: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 27 HIENLTH

DEPLOYMENT DIAGRAM

Page 28: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 28 HIENLTH

Deployment Diagrams

•Lược đồ triển khai (Deployment Diagram) mô

tả kiến trúc cài đặt vật lý các thành phần bên

trong hệ thống và tương tác giữa chúng, cho

biết mối quan hệ giữa phần mềm và phần

cứng.

•Lược đồ triển khai thường được sử dụng trong

Deployment View.

Page 29: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 29 HIENLTH

Deployment Diagram

•Một hệ thống có thể được triển khai theo nhiều

lược đồ khác nhau:

• Hệ thống được triển khai trên máy đơn?

• Hệ thống được triển khai theo mô hình

Client/Server?

• Hệ thống được triển khai tại văn phòng công ty? Các

phòng ban?

• Yêu cầu phần cứng máy tính?

• ….

Page 30: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 30 HIENLTH

Deployment Diagram

•Một hệ thống có thể được triển khai theo nhiều

lược đồ khác nhau.

User A User B User CUser D

Server

Triển khai hệ thống LAN (1)

Page 31: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 31 HIENLTH

Deployment Diagram

•Một hệ thống có thể được triển khai theo nhiều

lược đồ khác nhau.

Triển khai hệ thống LAN – WLAN (2)

ServerWireless

Access Point

User A User B User C User D

Wireless Client

Page 32: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 32 HIENLTH

Phương án triển khai

1. Các hạng mục thiết bịSTT Thiết bị SL Giá dự kiến

(USD)Thành

tiền (USD)Mục đích

1 Web Server 3 -Hosting Website

-01 server IIS (ASP.NET)

-01 Server Apache (PHP)

2 Database Server

-Lưu trữ database của các Website

-Hỗ trợ MS SQL Server và MySQL

3 Workstation (máy trạm)

Sử dụng IE, FireFox để truy cập hệ thống

4 Switch

Tổng

Page 33: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 33 HIENLTH

Phương án triển khai

• Cấu hình/thông số kỹ thuật của từng thiết bị, ví dụ:

Page 34: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 34 HIENLTH

Phương án triển khai

2. Các hạng bản quyền phần mềmSTT Tên phần mềm SL Giá dự kiến

(USD)Thành tiền

(USD)Mục đích

1 Windows Server 2008

-Hosting Website

-01 server IIS (ASP.NET)

-01 Server Apache (PHP)

2 SQL Server Stand/Ent 2008

-Lưu trữ database của các Website

-Hỗ trợ MS SQL Server và MySQL

3 Windows 7 Basic/Pro

Sử dụng IE, FireFox để truy cập hệ thống

4

Tổng

Page 35: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 35 HIENLTH

Deployment Diagram•Một hệ thống có thể được triển khai theo nhiều

lược đồ khác nhau.

ServerWireless

Access Point

User A User B User C User D

Wireless Client

Remote UserRemote

INTERNET

Triển khai hệ thống LAN – WLAN – WLAN (3)

Page 36: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 36 HIENLTH

Ví dụ: Xét ứng dụng quản lý TKB

•Hệ thống cho phép bộ phận giáo vụ Khoa nhập

thời khóa biểu, cập nhật thời khóa biểu của tất

cả các lớp

•Hệ thống cho phép sinh viên tra cứu thời khóa

biểu theo từng học kỳ của lớp

•Hệ thống cho phép giảng viên tra cứu thời

khóa biểu giảng dạy trong học kỳ

Page 37: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 37 HIENLTH

Ví dụ minh họa

•Deployment diagram mô tả hệ thống quản lý thời

khóa biểu

Database Server

SQL Server

Web Server

IIS ServerHệ thống quản lý TKB

SMS Server

SMS Service

SMSC Gateway

SMS Web Service

Client

Web Browser

Server QLGV

Hệ thống quản lý giáo vụ

Page 38: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 38 HIENLTH

Deployment diagram elements

<<device>>

: Application server

<<ExecutionEnvironment>>

: Java EE Server

<<device>>

: Application server

<<ExecutionEnvironment>>

: Java EE Server

<<ExecutionEnvironment>>

: Java EE Server

<<device>>

: Database server

Node

Communication method

Page 39: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 39 HIENLTH

Các thành phần trong Deployment Diagram

•Node

•Component Instance

•Quan hệ giữa các thành phần

Node Name

IIS Server

Node A Node B

Node A

ComponentInstance_1

Node B

ComponentInstance_1

Page 40: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 40 HIENLTH

Các thành phần trong Deployment Diagram

•Node• Là các tài nguyên trong hệ thống.• Mỗi Node tương ứng với một thiết bị phần cứng

• Server• PC• Printer• Scanner• Router• ….

• Stereotype cho biết loại phần cứng. Stereotype có thể là: device, mobile device, application server, web server, database server, client workstation

• Mỗi Node có thể có nhiều component

Page 41: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 41 HIENLTH

Các thành phần trong Deployment Diagram

•Component Instance

• Là một thể hiện của một component (trong

component diagram) sẽ được cài đặt trong Node

• Thuộc tính của Component Instance• Cardinality

• Component

IIS Server

Node_7

ComponentInstance_1

ComponentInstance_2

Page 42: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 42 HIENLTH

Các thành phần trong Deployment Diagram

•Quan hệ giữa các thành phần

• Quan hệ giữa Node và Node

• Quan hệ giữa Node và Component Instance

• Quan hệ giữa Component Instance và Component

Instance

•Các loại quan hệ

• Node Association

• Dependency

Page 43: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 43 HIENLTH

Ví dụ minh họa 1

Page 44: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 44 HIENLTH

Ví dụ minh họa

•Deployment diagram mô tả hệ thống quản lý

thời khóa biểu

• Sử dụng mô hình Client server

• Sử dụng công nghệ Web (Asp.net)

• Sử dụng IIS Web sever 7

• Sử dụng trình duyệt (IE) version 8.0 trở lên

• Sử dụng CSDL SQL server 2005

• Sử dụng công nghệ nhắn tin di động SMS

Page 45: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 45 HIENLTH

Ví dụ minh họa•Deployment diagram mô tả hệ thống quản lý thời

khóa biểu

Database Server

SQL Server

Web Server

IIS ServerHệ thống quản lý TKB

SMS Server

SMS Service

SMSC Gateway

SMS Web Service

Client

Web Browser

Server QLGV

Hệ thống quản lý giáo vụ

Page 46: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 46 HIENLTH

Ví dụ minh họa

•Deployment diagram mô tả hệ thống quản lý thời

khóa biểu

Web Server

IIS Server

Hệ thống quản lý TKB

Data Access

ADO.NET

Database Server

SQL Server

Page 47: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 47 HIENLTH

Ví dụ minh họa

•Deployment diagram mô tả hệ thống quản lý thời

khóa biểu

Web Server

IIS Server

Hệ thống quản lý TKB

Data Access

ADO.NET

Report

Seagate Crystal ReportDatabase Server

SQL Server

Page 48: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 48 HIENLTH

Bài tập

Sử dụng Power Designer để xây dựng lược đồ

Deployment cho các bài sau:

•Quản lý giải bóng đá vô địch quốc gia

•Quản lý bình chọn bài hát hay Làn sóng xanh

•Quản lý giáo vụ trường đại học

•Quản lý giáo vụ trường phổ thông

•Quản lý bán hàng

•Quản lý nhân sự - Tiền lương

Page 49: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 49 HIENLTH

Câu hỏi và thảo luận

Page 50: Chủ đề 8: Thiết kế kiến trúc vật lý · máy tính để bàn, máy tính xách tay, điện thoại di động •Server: là những máy tính đảm nhận 1 số

OOAD CH8 - 50 HIENLTH

Thank you!!!