-component diagram -deployment diagramsiam2dev.net/e_learning/ooad/lec11_ooad_application... ·...

68
Lec11 : Application Architecture Design ดร. นัฐพงศ งเนียม - Component Diagram - Deployment Diagram ขอขอบคุณแหล่งข้อมูล : SCC : Suthida Chaichomchuen [email protected] Lec11_OOAD_Application_Architecture_Disign 1

Upload: others

Post on 25-Mar-2021

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Lec11 : Application Architecture Designดร. นฐพงศ สงเนยม

- Component Diagram- Deployment Diagram

ขอขอบคณแหลงขอมล :SCC : Suthida Chaichomchuen

[email protected]

Lec11_OOAD_Application_Architecture_Disign

1

Page 2: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Agenda

• ความหมายของ Application

• ความหมายของ Application Design

• Application Architecture Design

• Component Diagram

• ประโยชนของ Component Diagram

• หลกการในการทา System Decomposition

• …

2

Page 3: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

ความหมายของ Application

• Application คอ Software ทสรางขนมาเพอการใชงานสาหรบระบบงานใดงานหนงโดยเฉพาะ

3

Page 4: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

ความหมายของ Application Design

• Application Design หมายถง การออกแบบวาจะใหระบบงานทไดออกแบบไว ไปทางานอยบนคอมพวเตอรลกษณะใด

• โดยการพจารณาเปรยบเทยบขอดขอเสยของระบบคอมพวเตอรตาง ๆ ทจะนาระบบงานไปใช

4

Page 5: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Application Architecture Design

• คอ กระบวนการทดงเอาผลลพธตาง ๆ ทไดจากการทา object-oriented analysis ซงไดแก diagram ตาง ๆ มาเปนวตถดบในการออกแบบสวนประกอบของ application ทจะมในระบบ

• โดยใช component diagram เปนเครองมอในการทา application architecture

5

Page 6: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Component Diagram

• เปน Static Diagram ทใชจาลองลกษณะทางกายภาพของ object-oriented system โดยจะแสดงใหเหนถง สวนประกอบทาง software component ตาง ๆ ของระบบ รวมถงความสมพนธระหวาง component ตาง ๆ

6

Page 7: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

ประโยชนของ Component Diagram

• สามารถแบงระบบงานขนาดใหญ (system)ออกเปนระบบยอย ๆ (subsystem) ซงในแตละระบบยอยจะม component ตาง ๆ ประกอบอย

7

Page 8: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Class Diagram : Application Architecture Design

System

Subsystems

Components

2..n

2..n

8

Page 9: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

System Decomposition

• คอ การแบงระบบใหญออกเปนระบบยอย ๆ• การแบงแยกระบบแบบ Drill down คอ การแบงแยกระบบใหญ

ออกไปเปนระบบยอยๆ และทาการแยกยอยแตละสวนจนกระทงละเอยดทสด

9

Page 10: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Drill Down Engineering

1

1.2

1.1.1 1.1.2 1.1.3

1.1

10

Page 11: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Drill Down Engineeringใชหลกการแบงระบบออกเปน 3 สวนหลกดงน• Presentation Logic Subsystem• Working Logic Subsystem / Business Logic Subsystem• Database Logic Subsystem

11

Page 12: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Presentation Logic Subsystem

• เปน Subsystem ทเกยวของกบระบบยอยทตดตอกบผใชงานระบบโดยตรง ไดแก– สวนทตดตอกบผใช (User Interface)– สวนของการแสดงผลลพธ (Output)– สวนของการนาเขา (Input)

12

Page 13: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Working Logic Subsystem

• คอ สวนของระบบทเกยวของกบการทางานทเกดขนจรง ๆ ใน CPU ของเครองคอมพวเตอร เชน– สวนของการคานวณ– กลไกการจดดงขอมลทไดรบมาเพอนามาใชงาน– กลไกการบนทกขอมล

13

Page 14: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Database Logic Subsystem• เปนการจาลองภาพของ Data Item ตางๆ ทถกจดเกบอยในสอ

บนทกขอมล ซงสามารถอยในรปของ database หรอ file

14

Page 15: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

สญลกษณใน Component Diagram

• มลกษณะคลายคลงกบ Class Diagram และ Use Case Diagram

• แบงออกเปน 2 สวนคอ– สญลกษณแทน Component– สญลกษณแทน Link/Relationship

15

Page 16: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

สญลกษณแทน Component

• โปรแกรมทสามารถนาไปประมวลผลได (Executable Program)• ไฟล หรอ source code• ฐานขอมล (database)• ชดขอมลในฐานขอมล (Table)

16

Page 17: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

สญลกษณแทน Component ตาง ๆ

Executable Program Program1.exe

Page or File Page1.html

17

Page 18: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

สญลกษณแทน Component ตางๆ

DatabaseDB

Table

18

Page 19: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

สญลกษณแทน Link/Relationship

• สญลกษณการเรยกใชงานหรอการขนตอกน (Call, Uses, Dependency)

• สญลกษณแสดงการเชอมโยงหรอเชอมตอ (GeneralConnection)

• สญลกษณแสดงการเปนสวนประกอบ (Aggregation)

19

Page 20: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

สญลกษณแทน Link/Relationship

Dependency, Calls or Uses

General Connection

Composition or Aggregation

<<hyperlinks>>

20

Page 21: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

ตวอยาง Component Diagram

ของ Web Browsing System

InternetExplorer.exe

www.test.com

Page1.html Page2.html Page3.html

<<hyperlinks>>

21

Page 22: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

ตวอยาง Component Diagram

ของ Database Subsystem ของระบบงานบคลากร

DB Back UpDB

Person Detail B_Person B_Detail

22

Page 23: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

หลกการในการทาSystem Decomposition

แบงเปนขนตอนตาง ๆ ดงน• การเขยนโดยทวไป• การเขยน Presentation Logic Subsystem• การเขยน Working Logic Subsystem• การเขยน database Logic Subsystem

23

Page 24: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

หลกการในการเขยนโดยท วไป

• ทาจากระบบหยาบ ๆ ไปจนกระทงละเอยด• เมอได Subsystem แตละตวแลว ใหพจารณา Class ทมอยและ

หา Class ทตกหลนไป• เมอมการเพม Class ใหม ใหใสความสมพนธของ Class นนกบ

Class อนทมอยแลว ลงใน Class Diagram และ Sequence Diagram ดวย

24

Page 25: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

การเขยน Presentation Logic Subsystem

• ดงทก Class จาก Class Diagram ทเปน User Interface มาใสลงใน Presentation Logic Subsystem

• พยายามหา Generalized Class ของ User Interface ทงหมด• เขยน Component Diagram ของ Presentation Logic

Subsystem

25

Page 26: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Ex: Presentation Logic Subsystem

InternetExplorer.exe

e-Commerce.com

Main.html

GoodsBrowse.html

<<hyperlinks>>

Paying.html

GoodsOrder.html

ของระบบ e-Commerce

26

Page 27: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

การเขยน Working Logic Subsystem

• ดงทก Class และความสมพนธทมทงหมดทไมใช User Interface จาก Class Diagram มาใสใน Working Logic Subsystem

• ใชหลกการ Drill Down เพอแบงแยก Working Logic Subsystem โดยยดหลกการทวา Class ทมความสมพนธตอกนมกจะทางานรวมกนเสมอ

• เขยน Component Diagram ของ Working Logic Subsystem

27

Page 28: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Ex: Working Logic Subsystem

ของ Application การจดการการสงสนคา

Order.exe

Receive.Lib

Check.lib

<<includes>>

<<includes>>

28

Page 29: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

การเขยน Database Logic Subsystem

• Class ทอยใน Subsystem นไมจาเปนตองมอยใน Class Diagram กได

• ตวอยางของ Database Component คอ Table ตางๆ ใน Relational Database

• ทกๆ Database Interface เปน Class ทมคณสมบตเหมอนกนบางประการ

เชน

– จะตองม Function Connect และ Disconnect เพอเขาและออกจาก

ระบบ Database

29

Page 30: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Ex: Database Logic Subsystem

DB

Member Inventory Order

ของระบบ e-Commerce

30

Page 31: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

System Architecture Design

Page 32: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

จดประสงค

1. เพอใหนกศกษาเขาใจในการออกแบบระบบคอมพวเตอรในสวนของ Hardware

ดวย System Architecture design ได

2. เพอใหนกศกษาสามารถใช Deployment Diagram ในการออกแบบ Hardware

Component ได

Page 33: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

System Architecture Design และ Deployment Diagram

การวเคราะหและออกแบบระบบดวยหลกการ Object Oriented

Analysis and Design นน จะถอวาทกๆ สวนประกอบของระบบนนเปน Object

ตวหนงเสมอ ซง Object นน ไมไดหมายถงเฉพาะสวนทอยใน Application หรอ

Software เทานน แตยงหมายรวมถง เครองคอมพวเตอร หรอ Hardware ซงถอ

เปนขอไดเปรยบของการออกแบบระบบดวย Object Oriented Analysis and

Design เพราะเราสามารถทจะออกแบบ Software และ Hardware โดยไมตอง

เปลยนหลกการทใชเพอการออกแบบ (เพราะทง Hardware และ Software ตางก

ถอเปน Object เหมอนกน) การออกแบบในสวนของ Hardware ของระบบนน

เรยกวา System Architecture Design

Page 34: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Deployment Diagram

• หมายถง แผนภาพ แสดงสถาปตยกรรมของระบบ ในลกษณะ

physical architecture เพอแสดงโครงสรางการใช

ทรพยากร Hardware และ Software ซงรวมไปถงการแสดง

ความสมพนธ ของ อปกรณในระบบ ซงเปนสวนหนง ของการ

วเคราะห และออกแบบ ระบบคอมพวเตอร เชงวตถ

34

Page 35: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

หลกการออกแบบ และวเคราะหระบบ เชง OOA โดยใช

เครองมอ Deployment Diagram

• การวเคราะหและออกแบบระบบดวยหลกการ Object Oriented Analysis and Design นน จะถอวาทกๆ สวนประกอบของระบบนนเปน Object ตวหนงเสมอ ซง Object นน ไมไดหมายถงเฉพาะสวนทอยใน Application หรอ Software เทานน แตยงหมายรวมถง เครองคอมพวเตอร หรอ Hardware ซงถอเปนขอไดเปรยบของการออกแบบระบบดวย Object Oriented Analysis and Design เพราะเราสามารถทจะออกแบบ Software และ Hardware โดยไมตองเปลยนหลกการทใชเพอการออกแบบ (เพราะทง Hardware และ Software ตางกถอเปน Object เหมอนกน) การออกแบบในสวนของ Hardware ของระบบนน เรยกวา System Architecture Design

35

Page 36: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

หลกการออกแบบ และวเคราะหระบบ เชง OOA โดยใช

เครองมอ Deployment Diagram

• เครองมอทใชในการทา System Architecture Design นนเรยกวา

Deployment Diagram ซง Deployment Diagram เปน Diagram ท

มลกษณะเหมอนกบ Class Diagram โดย สวนประกอบทาง Hardware

(Hardware Module) ตวหนงๆ ใน Deployment Diagram กจะ

เปรยบเทยบไดกบ Class หนง ใน Class Diagram นนเอง

36

Page 37: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

หลกการออกแบบ และวเคราะหระบบ เชง OOA โดยใช

เครองมอ Deployment Diagram

• ขอกาหนด

การทา System Architecture Design หรอการออกแบบระบบ Hardware

ดวย Deployment Diagram นน ตองมความสมพนธกบ Application Architecture

Design ซงออกแบบดวย Component Diagram คอ แตละ Software Component

ตองอยภายใน Hardware Module ใด Module หนงเสมอจะตองไมม Software

Component ใดขาดหายไป

ดงนนเมอสราง Deployment Diagram สงทตองทาไปพรอมๆ กนกคอ

พจารณาวาจะนา Software Component ไปไวใน Hardware Module ตวใด และ

ตองพจารณาดวยวา เทคโนโลยหรอรปแบบของ Hardware หรอระบบ Network ทจะ

ใชนน เหมาะสมกบระบบงานทเราจะสรางหรอไม

37

Page 38: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

องคประกอบหลก ในการออกแบบระบบ ดวย

Deployment Diagram

Soft ware

1. Data Stored แหลงเกบขอมล

2. Data Access Logical

3. Application Logical

Hardware

1. Server Computer

2. Client Computer

3. Connecting Network

38

Page 39: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

เครองมอทใชในการทา System Architecture Design นนเรยกวา

Deployment Diagram ซง Deployment Diagram เปน Diagram ทมลกษณะ

เหมอนกบ Class Diagram โดย สวนประกอบทาง Hardware (Hardware

Module) ตวหนงๆ ใน Deployment Diagram กจะเปรยบเทยบไดกบ Class หนง

ใน Class Diagram นนเอง

สญลกษณทใชใน Deployment Diagram จะประกอบดวย 3 สญลกษณ

1. สญลกษณสเหลยมลกบาศก หรอสเหลยม 3 มต (Cubic, Raised

Rectangle) ใชแทนสวนของHardware ทสามารถทจะม Software บรรจอยภายใน

หรอสวนของ Hardware ทเปน Network หลกของระบบอาทเชน เครอง File

Server, เครอง Database Server, เครอง Web Server, เครอง Client และ

Backbone Network เปนตน สงทเขยนบรรยายอยภายในสญลกษณนจะเปนชอและ

หนาทของ Hardware Module นนๆ

Page 40: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

<<Processor>>Application Server

Deployshttp.exerting.exe

รป Hardware Module ใน Deployment Diagram

ห ล ก ก า ร ใ น ก า ร เ ข ย น

Hardware Module นน ใหแบงเปน 2

สวนคอ สวนบนใหระบประเภทของ

Hardware นนโดยระบในเครองหมาย

<< >> และเขยนชอของ Hardware นน

ไวในบรรทดถดไป

ในสวนลาง (จะมหรอไมกได) ใหระบวา Hardware นนม Software

Component ใดอยบาง ซง Software Component ทจะระบใน Hardware Module ได

นน ไดจากขนตอนการทา Application Architecture Design นนเอง เมอพจารณา

ตวอยางจากรป จะพบวา Hardware Module ตวนมประเภทเปน Processor (หนวย

ประมวลผล) ซงมชอเรยกวา Application Server โดย Software Component ทอย

ภายในประกอบไปดวย http.exe และ rting.exe ซงทงสองถอเปน Executable

Software

Page 41: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

2 . เสนทใชเ ชอมลกบาศกหรอสเหลยม 3 มตเขาดวยกน เปน

สญลกษณทใชแทนการเชอมตอตางๆ (Connections) โดยสงทระบหรออธบาย

เสนเหลาน จะหมายถง Protocol หรอขอตกลงเบองตน (อาจจะไมระบกได ถา

ยงตดสนใจไมไดวาจะใช Protocol ใด) ทใชเพอการสอสารกนระหวาง

Hardware Module ทงสองขาง จากรปตอไปน

<<TCP/IP>>

Page 42: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

3. สญลกษณอนๆ บางครงการสราง Deployment Diagram อาจม

สญลกษณอนๆ เพมเตมเขามา เชน เมอระบบตองใชระบบ Internet ดวย อาจ

ตองมสญลกษณเฉพาะเพอใชแทนเครอขาย Internet (ปกตเปนรปเมฆ) เปนตน

ซงสญลกษณทเพมเขามาใหมน มกจะมเพมขนตลอดเวลาตามการพฒนาของ

เทคโนโลยInternet

Modem

Printe

r

Server

Scanne

r

Telephone &

FaxCD Drive

Monito

r

MousePC

Floppy

Disk

Hub

Page 43: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

เมอเปรยบเทยบ Deployment Diagram กบ Class Diagram นน จะม

ความคลายคลงกน เพราะเมอพจารณา Connections ใน Deployment Diagrams

จะมลกษณะและหนาทเหมอนกนกบ Association Relationship และสญลกษณ

อนๆ ทถกเชอมตอโดย Connection กคอ Class นนเอง

หลกการทา System Architecture Design โดย Deployment Diagram

การทา System Architecture Design หรอการออกแบบระบบ Hardware

ดวย Deployment Diagram นน ตองมความสมพนธกบ Application Architecture

Design ซงออกแบบดวย Component Diagram คอ แตละ Software Component ตอง

อยภายใน Hardware Module ใด Module หนงเสมอจะตองไมม Software

Component ใดขาดหายไป

Page 44: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

ดงนนเมอสราง Deployment Diagram สงทตองทาไปพรอมๆ กนกคอ

พจารณาวาจะนา Software Component ไปไวใน Hardware Module ตวใด และ

ตองพจารณาดวยวา เทคโนโลยหรอรปแบบของ Hardware หรอระบบ

Network ทจะใชนน เหมาะสมกบระบบงานทเราจะสรางหรอไม

ขอพงตระหนกทสาคญทสดในการทา System Architecture Design ก

คอ การออกแบบระบบ Hardware เปนการออกแบบทไมควรเกดขอผดพลาด

หรอถาเกดกควรนอยทสด เพราะถงแมวาจะยดถอหลกการวเคราะหและ

ออกแบบระบบแบบ Spiral Process Model แตการแกไข

ระบบ Hardware ยอมหมายถงการซอหรอเปลยนอปกรณ Hardware ซงในบาง

กรณตองใชการลงทนทมมลคาสง

คออะไร….?

Page 45: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

ตวอยาง ของการออกแบบระบบ Hardware ของระบบทมสถาปตยกรรมแตกตางกนไดแก Embedded System, Client/Server System และ Distributed

System

ตวอยางแบบจาลองของระบบคอมพวเตอรชนดตางๆ

Embedded System (Stand-alone System)

Embedded System หรอ Stand-alone System คอระบบทรวมเอา

Software Component ทงหมดมาไวท Processor หรอ CPU เพยงตวเดยวโดยไม

มการตดตอสอสารกบ CPU อนใด และทสาคญจะเปนระบบทยนยอมใหม

ผใชไดเพยงคนเดยวเทานน ภาพของ Embedded System แสดงไดดวย

Deployment Diagram ดงน

Page 46: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

<<CPU>>

Pentium II

Printer

Monito

r

MouseCD Drive

Hard Disk

รป Deployment Diagram แสดง Embedded System

Page 47: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Client/Server System

Client/Server System เปนระบบทมการประมวลผลทมลกษณะ

คลายคลงกบ Embedded System ในบางสวนในขณะเดยวกนกมขอแตกตาง

หลายสวนเชนกน ขอคลายคลงคอ ในการประมวลผลนนจะมการประมวลผล

เพยงทเดยว คอท Application Server แต Client/Server System จะม Processor

บางตวแยกตางหากททาหนาทในการชวยเหลอดานอนๆ เชน Database Server

ซงทาหนาทจดการเกยวกบการจดเกบขอมล และอาจจะม Caching Server ท

ชวยในการจดลาดบงานตางๆ ทเขามาเพอรอการประมวลผล ขอแตกตางท

สาคญอกประการหนงคอ Client/Server เปนระบบทยนยอมใหมผใชงาน

พรอมๆ กนไดหลายคน

Page 48: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

จากรปตอไปน แสดงใหเหนความสมพนธระหวาง Application

Architecture Design และ System Architecture Design กลาวคอ ทกๆ Component

ใน Presentation Logic Subsystem และ Working Logic Subsystem จะถกเกบไวใน

Application Server และทกๆ Component ใน Database Logic Subsystem จะถกเกบ

ไวใน Database Server

<<Processor>

> Caching Server<<Processor>

>Application Server

Deploysevery components in

Presentation and

Working Logic

Subsystems

<<Processor>

>Database Server

Deploysevery components in

Database Logic

Subsystems

Laptop Workstation

Desktop

Workstation

<<IPX/SPX>>

<<TCP/IP>>

รป Deployment Diagram แสดง Client/Server

System

Page 49: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

3 Distributed System

Distributed System เปนระบบทมความคลายคลงกบ Client/Server System

ในบางประการ แตกมขอแตกตางกนบางอยางเชนกน ขอคลายคลงคอ เปน

ระบบทยนยอมใหมผใชงานไดพรอมกนหลายๆ คนและม Processor ทชวยเหลอ

งานในดานอนๆ ทไมใชการประมวลผลเหมอนกน แตขอแตกตางคอ Distributed

System จะม CPU หรอ Processor ทใชประมวลผลจรงๆ มากกวา 1 ตว เพอ

ชวยเหลอกนและกนในการประมวลผลงานทมขนาดใหญมากๆ

Page 50: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

จากรปตอไปน จะพบวา Processor ทมหนาทประมวลผลมอยดวยกน

4 ตว ไดแก Regional Server (Server ประจาทองถน) 3 ตว และ Country Server

(Server ของประเทศ) 1 ตว นอกจากนยงม Server เพองานอนๆ ดวยคอ Logging

Server เพอตรวจสอบสทธการเขามาสระบบของผใชงาน ถาสงเกตใหดจะ

พบวาในระบบน Server แตละตวจะสามารถตงอยในพนททหางไกลกนมากๆ

ได เพราะระบบนใชเครอขาย Internet ซงเปนเครอขายทครอบคลมทวโลก เปน

เครอขายกลางทใชเพอการตดตอสอสารระหวาง Server ประจาทองถน

Page 51: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Internet

<<Processor>>

Regional Server

<<Processor>>

Regional Server

<<Processor>>

Regional Server

Database

<<Processor>>

Country Server

<<Processor>>

Logging Server

Desktop

Workstation

Desktop

Workstation

รป Deployment Diagram แสดง Distributed System

Page 52: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

52

Page 53: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

บรษท แหงหนง ตองการวางระบบ การจดการเรองการดเอกสาร ผาน

ระบบ Network ภายในบรษท(Intranet) เพอแกปญหา การเรยกด

เอกสาร จากสวนกลาง เพราะตองคอย สง e-mail รองขอไปยง

สวนกลาง จงตองการ สรางระบบ การเรยกดเอกสาร แบบเครอขาย

ขนมา

โดยไดกาหนดรายละเอยด ดงน

1. ระบบ ตองสามารถเชอมตอ เปนเครอขายผาน web browser

2. Web Application ใช PHP, JSP , ASP, JAVA Script/ java server page : JSP

3. OS เปน Windows Server

4. Server stored IBM

5. ระบบ Database ใช SQL Server

Cast Study ตวอยางท 1

53

Page 54: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

วเคราะหระบบระบบทตองการ เปนแบบ Network โดยมศนยกลาง เครอขายทตอง

เปนผใหบรการขอมล แก User เฉพาะภายในองคกรเทาน น จงตองใชเครอขาย แบบ LAN Network (IPX/ SPX) และใช ระบบ Intranet ในการเชอมตอ ผานระบบ Web Browser ผานการเชอมตอแบบ Protocol และตองมผใหบรการ ( Server IBM ) เปนผใหบรการ โดยการเรยกดขอมล ใน SQL Server เพอดงขอมล ใหกบ User ทรองขอ ผาน web application โดยใช JAVA Script เปน Software ในการเชอมตอ กบ User

ในสวนของการเชอมตอกบ ฐานขอมล ใชลกษณะการเชอมตอแบบ Protocol โดยใช ODBC ( Open Database Connectivity ) ซงเปน สวนทสามารถ ตดตอกบผใชไดอยางมประสทธภาพ โดยผานมมมองของ web application สวนภายใน Database Server จะประกอบไปดวยสวนทเปน System ทาหนาทจดระบบการทางาน และสวนทเปน พนทในการเกบขอมล

Cast Study ตวอยางท 2

54

Page 55: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Cast Study ตวอยางท 2

55

Page 56: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

อธบาย Diagram

- Node ซายมอ หมายถง กลมของ เคร อง pc user ซ งไมไดจากดปรมาณ ไว ( User ..n ) เช อมตอเครอขาย ไปยง Server โดยวธ Link แบบ Protocol ผาน web browser ไปยง Server IBM

- ภายใน Server IBM จะประกอบไปดวย ระบบการจดการ OS SQL Server โดยม Component web Application ซ งใช Java Servlet/ JSP เปน Software เปนตวดาเนนการ เช อมตอไปยง ฐานขอมล Database Server โดยใช Link Protocol ดวยวธ เช อมตอ Database ดวย ODBC Service

- Database Server ภายในจะ แบงเปน 2 สวน คอ สวนทเปน System และ สวนทเปน Data Documents โดย DB System จะก าหนด address และ ขอมลท Client รองขอ ผาน web application ไปยง ตวขอมล เพ อดงขอมล สงกลบไปยง User

Cast Study ตวอยางท 1

56

Page 57: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

บรษท ประกนชวต แหงหนง ตองการใช เทคโนโลย การสอสารแบบไรสาย เพออานวยความสะดวก ใหกบตวแทนฝายขาย จง

ตอง สรางระบบ การขาย ผานอปกรณ Tablet PC เพออานวยความสะดวกใหกบลกคา และตวแทน โดยมขอกาหนดดงน

1 ใชอปกรณไรสาย ( Tablet ) ในการบนทกขอมลการขายของลกคา เพอสงขอมลมายง สานกงานใหญ

2 ระบบ ตองรองรบการใชงาน แบบ ไรสาย และ การสอสารแบบ Real time

3 ระบบฐานขอมล ใช SQL Server

Cast Study ตวอยางท 2

57

Page 58: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

วเคราะหระบบ

เนองจากความตองการในการเชอมตอระบบ เปน อปกรณ ไรสาย และ

User อยนอกพนท จงตองวางระบบเครอขาย เปนแบบ Internet โดยใช

อปกรณไรสาย Tablet ในการตดตอสอสารขอมล ผาน Web

Application โดยการสงสญญาณ ผานจดใหบรการเครอขาย Internet

สงผานขอมลไปยง Server ผาน Protocol เพอเชอมตอไปยงฐานขอมล

Cast Study ตวอยางท 2

58

Page 59: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Cast Study ตวอยางท 2

59

Page 60: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

อธบาย Diagram

- Node Tablet PC ( ซงเปน อปกรณ สาหรบตวแทน หรอ นายหนา ) ใช Log in เขาระบบ โดยผานเครอขายไรสาย เพอ

เชอมตอ Internet เพอ Link ไปยง IBM Server โดยภายใน Tablet จะมสวนของ Interface web application

- ภายใน Server IBM จะประกอบไปดวย ระบบการจดการ OS SQL Server โดยม Component web Application ซงใช Java

Script เปน Software เปนตวดาเนนการ เชอมตอไปยง ฐานขอมล Database Server โดยใช Link Protocol ดวยวธ เชอมตอ Database

ดวย ODBC Service เพอทาการ บนทกขอมลลกคา เขาไปเกบไวยง ฐานขอมล

Cast Study ตวอยางท 2

60

Page 61: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Cast Study ตวอยางท 3

บรษท แหงหนง ตองการประหยด คาใชจายในการสงซอกระดาษ เพอใชพมพงานเอกสารตางๆ เนองจาก ในแตละ

หนวยงาน จะมเครอง

Printer อยหลายเครอง ทาใหเสยคาใชจายในการบารงรกษา อปกรณ ผาหมก มากมาย จงตองการสรางระบบ Printer

pool เพอ ลดคาใช

จายตางๆ ลง โดยใชเครอง printer แบบ Multi Function คอเปนทงเครองถายเอกสาร และ Printer ในตวเดยวกน

61

Page 62: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

วเคราะหระบบ

จากความตองการของระบบ เปนแบบ ภายในองคกร จงตองมการวางระบบเครอขายแบบ LAN เพราะเสยคาใชจายนอย

และจะตองม

Printer Server เพอจดระบบ การสงงานพมพ ผานเครอขาย จาก User PC โดยใช Link LAN IP address เปนตวบง

บอก เครองททา

การเชอมตอ ซงสามารถ ออกแบบ Diagram ไดดงน

Cast Study ตวอยางท 3

62

Page 63: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Cast Study ตวอยางท 3

63

Page 64: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

อธบาย Diagram

- จากภาพ เปนการเชอมตอแบบ LAN Network โดยใชการ Link แบบ TCP/IP

เปนตวกาหนด Address ของเครอขายลก โดยเชอมโยงไปยง Switching HUB เพอ

ทาการจดการควสญญาณ เพอสงตอไปยง Print Server

- Print Server ภายในประกอบไปดวย OS Windows โดยม Application FX

Document Centre เปนซอฟแวรควบคม การทางานเพอสงงาน พมพ ไปยง

เครองพมพ Fuji ซงเปนแบบ Multi Function

Cast Study ตวอยางท 3

64

Page 65: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

บรษท Ticket Master ตองการสรางระบบการจองตวชมการแสดง ผานระบบ

Internet โดยมความตองการเบองตน ดงน

- ระบบการจอง ตองเปนเครอขาย Internet

- กรณ มผใชจานวนมาก ระบบ ตองมการปองกน ใหสามารถ ใชงานไดตลอด

วเคราะหระบบ

ลกษณะการเชอมตอเครอขาย เปนแบบ Internet และจะตองม Server

2 Node เพอเปนการปองกน ระบบ ลมในกรณทมการเขาใชใน

เวลาใกลเคยงกน เปนจานวนมาก ซงจะใชระบบ Sub System server

เพอเปนตวตดสนใจทจะใชการตดตอสอสารกบ Server เพอรองรบในกรณผใช ม

จานวนมาก

Cast Study ตวอยางท 4

65

Page 66: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

Cast Study ตวอยางท 4

66

Page 67: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

อธบาย Diagram

- Customer User Node เชอมตอ Internet ผานระบบ Protocol Link มายง

Server subsystem

- Node Subsystem ทาหนาทชวยตดสนใจ เพอเลอก Server No.1 หรอ

Server No.2 วา Server ใด มการเขาใชงานนอยกวา หรอ ในกรณ server ใด

server หนง ลม กจะทาการเลอก Server อกตวหนง ใชงานแทน

- Server No 1 และ 2 ภายในบรรจ web application เพอเปน Interface กบ

User ในการจองตว แลวนาขอมลไปเกบไวใน ฐานขอมล

Database Server

67

Page 68: -Component Diagram -Deployment Diagramsiam2dev.net/E_Learning/OOAD/Lec11_OOAD_Application... · 2018. 2. 10. · Deployment Diagramซึ่ง Deployment Diagram เป น Diagram

คาถามทายบทจากเงอนไขทกาหนดใหตอไปน แบบจาลองของระบบคอมพวเตอร

ควรเปนแบบใด (Stand-alone System หรอ Client/Server System หรอ Distributed

System) ก. ระบบเอกสารในรานรบพมพเอกสาร

ข. ระบบเอกสารในสานกงานขนาดใหญ

ค. ระบบเอกสารสาหรบเครอขายองคการบรหารสวนตาบลทว

ประเทศ

ง. ระบบการแลกเปลยนความรระหวางประเทศ

จ. ระบบใหบรการ Internet

ฉ. ระบบคอมพวเตอรชวยสอนสวนบคคล