slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
SOA 를 구현하기 위한 개발 및 적용 방안 PowerPoint Presentation
Download Presentation
SOA 를 구현하기 위한 개발 및 적용 방안

Loading in 2 Seconds...

play fullscreen
1 / 80

SOA 를 구현하기 위한 개발 및 적용 방안 - PowerPoint PPT Presentation


  • 347 Views
  • Uploaded on

SOA 를 구현하기 위한 개발 및 적용 방안 . 한국마이크로소프트 개발자 플랫폼 비즈니스 그룹 손정민 아키텍쳐 전도사 ( 부장 ). 목차. 서비스 지향 패러다임으로의 변화 서비스 지향 개발을 위한 WCF 업무 프로세스 개발을 위한 WF 결언. ERP 애플리케이션. .NET 애플리케이션. 패키지 애플리케이션 X. J2EE 애플리케이션 . Unix 애플리케이션 . AS/400 애플리케이션. CICS 애플리케이션. 패키지 애플리케이션 Y. 엔터프라이즈 IT 의 현실.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'SOA 를 구현하기 위한 개발 및 적용 방안' - truman


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide2

SOA를 구현하기 위한 개발 및 적용 방안

한국마이크로소프트

개발자 플랫폼 비즈니스 그룹

손정민 아키텍쳐 전도사(부장)

slide3
목차
  • 서비스 지향 패러다임으로의 변화
  • 서비스 지향 개발을 위한 WCF
  • 업무 프로세스 개발을 위한 WF
  • 결언
slide4

ERP 애플리케이션

.NET 애플리케이션

패키지 애플리케이션 X

J2EE 애플리케이션

Unix 애플리케이션

AS/400 애플리케이션

CICS 애플리케이션

패키지 애플리케이션 Y

엔터프라이즈 IT의 현실
slide5
안정적인 단일 수입원의 고갈

새로운 요소는 기존 요소를 필요로 함

기존 요소들 또한 새로운 요소를 필요로 함

여러 이질적인 시스템들이 혼재

일률적인 업그레이드가 어려움

단일 운영체제/하드웨어 플랫폼 선택의 난점

“빅뱅” 효과에 대한 대처

모든 플랫폼이 지속적으로 상호 이질화됨

모든 위치에서 데이터를 액세스/조작

새로운 도전
slide6
시스템 구성과 재사용 수단

여러 애플리케이션이 자유롭게 교차

여러 기관과 신뢰의 경계를 자유롭게 교차

구현에 얽매이지 않을 것

공개 표준에 기반을 둔 상호 작용

특정한 언어나 플랫폼에 의존하지 않을 것

동적인 그룹화 및 재 그룹화

비동기적 연산의 지원

도전 해결의 조건
slide7
엔터프라이즈 IT의 이상

ERP 애플리케이션

닷넷애플리케이션

패키지 애플리케이션 X

자바

애플리케이션

유닉스 애플리케이션

통합

커뮤니케이션

메커니즘

AS/400 애플리케이션

CICS 애플리케이션

패키지 애플리케이션 Y

slide8
아키텍처의 진화의 필요성

비즈니스

로직

메인프레임

터미널

데이터베이스

PCs

비즈니스

로직

비즈니스 로직

GUI

데이터베이스

클라이언트/서버

비즈니스

로직

멀티-티어

브라우저

데이터베이스

서비스

클라이언트

서비스 지향

비즈니스

로직

데이터베이스

비즈니스

로직

slide9
애플리케이션을 구성하는 기본 단위

위치, 플랫폼, 코드에 무관한 기능 블록으로 정의

항상 여러 플랫폼 간, 원격 사용을 가정

구현과 관련된 세부적 사항을 무시할 수 있어야 함

서비스는 플랫폼, 신뢰성 등의 경계가 있음

객체는 경계 내부에서만 사용하는 것이 바람직하며 서비스는 경계 내-외부에 공히 사용될 수 있음

경계는 서비스의 규모를 결정하는 요인임

서비스란 무엇인가?
slide10
객체 지향과 서비스 지향 비교

Object-oriented distributed solution

Service-oriented distributed solution

slide12

Applications

Operational

Requirements

State

composed of

enforce

manage

Policies

governed by

Services

bound by

exchange

have

Message Exchange

Pattern

Messages

Contracts

describe

is a set of

Schemas

define structure of

contain

서비스 지향 패러다임의 개념도
slide13
차세대 시스템을 설계/구축하기 위한 방법을 정형화하는 기회 제공

극심한 상호 의존성의 최소화

독립성 증진

조립/통합 가능한 애플리케이션의 용이한 배급

높은 수준의 상호운용을 가능하게 함

현재 시스템의 핵심적 가정을 명확하게 함

특히 경계부와 국지적 정보

서비스 지향 패러다임의 중요성
slide14

SecurityWS-Security

WS-Trust

WS-Federation

ReliabilityWS-Reliable

Messaging

TransactionsWS-Transactions

WS-Coordination

WS-AtomicTranscation

Metadata

WSDL, WS-Policy,

WS-Discovery

Messaging SOAP, WS-Addressing, WS-Eventing

XML XML, XSD, XPath

Transports HTTP, TCP, SMTP

웹 서비스 표준 스택
slide15

WCF

.NET

Remoting

Enterprise

Services

WSE

MSMQ

ASMX

상호운용을 위한 웹 서비스

네이티브 .NET 커뮤니케이션

트랜잭션 표현과 처리

WS-* 스펙의 지원

비동기적 메시징

명시적 서비스 지향

커뮤니케이션 메커니즘 통합의 필요성
slide16
웹 서비스가 바람직한 미래이기는 하지만

Non-SOAP 서비스와의 연결,

비즈니스 프로세스를 형성하는 서비스 구축의 필요성이 그만큼 더 증대됨

비즈니스 프로세스를 구축, 관리, 감시하기 위한 프레임워크의 필요성

현재 환경에서의 직접적인 활용

서비스 지향적인 미래에도 여전히 유용함

서비스 지향 패러다임에 관한보다 현실적인 관점
slide17
목차
  • 서비스 지향 패러다임으로의 변화
  • 서비스 지향 개발을 위한 WCF
  • 업무 프로세스 개발을 위한 WF
  • 결언
what is wcf
What is WCF ?
  • Windows Communication Foundation
    • 차세대 닷넷 Communication 인프라
    • .NET Framework 3.0의 기능
    • Service Oriented Architecture 기반
    • Web Service (XML + SOAP) 기반
    • 다양한 Communication 프로토콜 지원

HTTP, TCP, Named Pipe, MSMQ, P2P

    • 다양한 웹 서비스 표준 지원

SOAP 1.2, WS-Addressing

WSDL, WS-Policy

WS-Security, WS-Trust, WS-SecureConversation

WS-ReliableMessaging

WS-AtomicTransaction, WS-Coordinate

slide19

Windows Communication Foundation

Namespaces And References

Namespace

System.ServiceModel

System.Runtime.Serialization

System.Security.Authorization

System.Transaction

Assembly Reference

System.ServiceModel.dll – Core Library

System.Runtime.Serialization.dll – Serialization Library

System.Secruity.Authorization – Security Library

System.Transactions.dll – Transaction Library

endpoints
Endpoints

Client

Service

Endpoint

Endpoint

Endpoint

Endpoint

address binding contract

A

A

A

B

B

B

C

C

C

C

B

A

Address, Binding, Contract

Client

Service

Address

Where?

Binding

How?

Contract

What?

Endpoint

creating endpoints

A

A

A

B

B

B

C

C

C

C

B

A

Creating Endpoints

ServiceHost

Client

Service

ClientChannel

channel
Channel
  • WCF 프로그램 간의 메시지 통로
    • 채널 타입(단순 입력, 단순 출력, 입-출력,
    • 요청-응답 메시지 패턴으로 구현)
    • 클라이언트 채널은 서비스 endpoint 제작
  • 클라이언트가 서비스로 처음 메시지를 전송하는 순간에 채널 확립
    • 최초 클라이언트 서비스 메시지 전송이 두 번째
    • 메시지 전송 보다 더 시간이 소요될 수 있음
service
Service
  • WCF 프로그램이 채널을 통한 메시지 송수신시 서비스 endpoint가 필요함

외부에서 본 Service 구조

service1
Service
  • WCF 프로그램이 채널을 통한 메시지 송수신시 서비스 endpoint가 필요함

내부에서 본 Service 구조

why wcf
Why WCF ?
  • Future Communication Infra
    • 웹 서비스 기반(XML + HTTP)
    • 서비스 지향 아키텍처(SOA)
    • Interoperability

표준 WS-* 스펙 구현

    • Next generation communication infra of Microsoft
  • Common Programming Model
    • Web Service, .NET Remoting, IPC, MSMQ 프로토콜에 관계 없이 하나의프로그래밍 모델 사용 가능
    • 단일 코드 베이스사용 가능
  • New feature
    • 트랜잭션, 신뢰할 수 있는 메시징, P2P, ……
    • 다양한 바인딩(프로토콜 지원)
wcf features 1
WCF Features (1)
  • Web Service Based
    • XML, HTTP, SOAP, WSDL 등 웹 서비스 스펙 준수
  • Security
    • WS-Security, WS-Trust 등 메시지 기반 보안 제공
    • HTTPS, 인증 기반의 TCP/IP 등 트랜스포트 수준의 보안 제공
  • Transaction
    • 분산 트랜잭션 지원

TCP 바인딩 사용 시 OLE Transaction 직접 사용

HTTP 바인딩 사용 시 WS-AT 를 통해 트랜잭션 전파

  • Reliability
    • 신뢰도 높은 메시징을 위해 WS-RM 프로토콜 구현
    • 세션 기능 제공 (ASP.NET의 세션과는 다른 개념)
  • P2P Networking
  • Rich Built-in Bindings
    • BasicHttp, WSHttp, WSDualHttp, NetTcp, NetMsmq, NetNamedPipe등
enterprise communication infra
Enterprise Communication Infra
  • Requirements
    • 개발 생산성(Productivity)
    • 성능(Performance)
    • 확장성(Scalability)
    • 기능성(Function)

트랜잭션(Transaction)

신뢰도(Reliability)

보안(Security)

    • 단일 프로그래밍 모델

기존 ASMX, Remoting, DCOM(Enterprise Services),

MSMQ 프로그래밍 모델을 통합하는 프로그래밍 모델

    • 상호운영성 (Interoperability)
    • 유연성(Flexibility)
legacy communication infra
Legacy Communication Infra
  • .NET Remoting
    • 성능적으로 우수함 (TCP Channel + Binary Formatter)
    • 상호운영성이 떨어짐
    • Proxy 객체 작성이 어려움 (Facade 어셈블리 참조 필요)
    • IIS 호스팅에 한계를 가짐(HTTP Channel 필수)
  • ASP.NET Web Service
    • 상호운영성이 우수함
    • 상대적으로 성능이 떨어짐
    • HTTP 만을 사용할 수 있음
    • 유연성이 떨어짐
  • Enterprise Services(DCOM)/MSMQ
    • 가장 다양한 기능 보유(트랜잭션, 보안, 객체 풀링, 인스턴스 모델)
    • 방화벽 통과가 어려움
    • 닷넷과 함께 사용시 성능 저하
    • 상호운영성이 크게 떨어짐
business service with legacy communication infra
Business Service withLegacy Communication Infra

Interoperability

Web Service

Interface

(ASMX + WSE)

XML Message

HTTP

Java client

Legacy application

Service

Performance

.NET Remoting

Interface

Binary Message

TCP Channel

.NET Client

Business

Logic

Reliability

MSMQ Message

WAN

MSMQ

Interface

DistributedTransaction

DCOM

MSMQ Client

Message

Queue

Other COM+ Component

Facade Layer

MSMQ Message

Off-line Messaging

PDA/Mobile

Client

wcf as enterprise communication infra
WCF as Enterprise Communication Infra
  • Advantage
    • 유연성

HTTP, TCP, Named Pipe, MSMQ, P2P 등 다양한 트랜스포트 지원

단일 프로그래밍 모델

선언적 서비스 종점(endpoint)

    • 성능

TCP 트랜스포트 + 바이너리 인코딩

TCP를 사용하면서도 IIS 7.0에호스팅 가능 (WAS)

    • 상호운영성

SOAP 기반의 메시지

WS-* 기반의 인터넷 표준 사용

    • 다양한 기능

보안, 트랜잭션, 신뢰할 수 있는 메시징 등

  • Disadvantage
    • 상대적으로 새로운 기술
    • 마이그레이션 필요
business service with wcf
Business Service with WCF

Interoperability

Security

Reliability

Transaction

WCF Service

Endpoint

Address #1

WCF Message

Contract

Java client

Legacy application

WSHttpBinding

Endpoint

Address #2

Business

Logic

Contract

WCF Message

NetTcpBinding

WCF Client

WCF Message

WAN

Endpoint

Address #3

WCF Client

Contract

Message

Queue

NetMsmqBinding

WCF Message

Disconnected Client

enterprise communication infra reliability
Enterprise Communication Infra:Reliability
  • Reliable Messaging in WCF
    • 네트워크 상의 중간 매개체의 메시지 전송 문제 해결
    • 메시지 전달에 대한 보장 (End-to-End Reliability)

메시지에 대한 ACK(acknowledge) 사용

메시지 재전송 메커니즘

메시지의 순차적인 전송

    • WS-ReliableMessaging 표준 준수

Reliable Session 사용

WSHttpBinding, WSDualHttpBinding, NetTcpBinding 사용

  • Using MSMQ Transport
    • 네트워크 뿐만 아니라 서비스가 다운된 상황에서도 메시지 전송
    • Off-line 시나리오
    • NetMsmqBinding 사용
enterprise communication infra point to point reliability
Enterprise Communication Infra:Point-to-Point Reliability

Proxy, Firewall, Router, ……

UnknownChannel

Transport

Channel

Intermediate

Servers

Transport Channel

Transport level Reliability

UnknownChannel

Service

Client

Transport

Channel

UnknownChannel

Intermediate

Servers

Point-to-Point

Cache server, Firewall, Router, …..

Point-to-Point

Point-to-Point

enterprise communication infra end to end reliability
Enterprise Communication Infra:End-to-End Reliability

Proxy, Firewall, Router, ……

Message Received

And Send ACK

Intermediate

Servers

Down

Message with

ID

Retransmit !!!

Service

Client

Message withID

Intermediate

Servers

Cache server, Firewall, Router, …..

End-to-End

enterprise communication infra reliability with msmq
Enterprise Communication Infra:Reliability with MSMQ

Proxy, Firewall, Router, ……

Offline

Intermediate

Servers

Online!

Down

MSMQSend Queue

MSMQReceive Queue

UP!

Message

Queued

Service

Client

Intermediate

Servers

Cache server, Firewall, Router, …..

enterprise communication infra distributed transaction
Enterprise Communication Infra:Distributed Transaction
  • 서비스/클라이언트의 분산 트랜잭션
    • Enterprise Services에 의해서만 지원되던 기능

COM+ 서버 어플리케이션 타입만이 지원

    • MSDTC와 OLE Transaction 프로토콜, DCOM에 의해 제공
    • 다양한 제약 사항 존재

방화벽 통과가 어려움

닷넷 환경에서 성능이 떨어짐

  • Transaction in WCF
    • HTTP, TCP, Named Pipe 트랜스포트 지원

HTTP 사용시 방화벽 통과가 상대적으로 용이함

    • OLE Transaction 및 WS-AtomicTransaction프로토콜 사용

상호운영성이 향상됨

    • System.Transactions네임스페이스 기반

TransactionScope객체를 통한 트랜잭션 지원

enterprise communication infra transaction scenario
Enterprise Communication Infra:Transaction Scenario

Distributed/Atomic Transaction

클라이언트

주문 처리 서비스

재고

데이터베이스

SOAP+HTTP

주문처리컴포넌트

재고관리컴포넌트

SOAP+HTTP

카드 승인 웹 서비스

배송 요청 웹 서비스

enterprise communication infra transaction and msdtc
Enterprise Communication Infra:Transaction and MSDTC

Distributed/Atomic Transaction

클라이언트

주문 처리 서비스

재고

데이터베이스

SOAP+HTTP

주문처리컴포넌트

재고관리컴포넌트

MSDTC

SOAP+HTTP

WS-AT and

other standards

MSDTC

MSDTC

Other TM

카드 승인 웹 서비스

배송 요청 웹 서비스

enterprise communication infra peer to peer
Enterprise Communication Infra:Peer-to-Peer

Partially Connected Mesh

  • P2P in Enterprise Environment
    • 사내 메신저
    • 서버 콘텐트 동기화
  • P2P in WCF
    • 메쉬(mesh) 기반의 P2P 지원

부분 연결된 메쉬

    • TCP 트랜스포트 기반
    • NetPeerTcpBinding 지원
    • 단일 프로그래밍 모델
    • 지원하는 P2P 인프라

PNRP

(Peer Name Resolution Protocol)

Custom Resolver

Server

Server

Server

Server

Server

Server

enterprise communication infra p2p scenario 1
Enterprise Communication Infra:P2P Scenario (1)

Centralized

Content Server

Congestion !!!

Region A

Clients

Region B

Clients

Region C

Clients

enterprise communication infra p2p scenario 2
Enterprise Communication Infra:P2P Scenario (2)

Centralized

Content Server

P2P Network

Local

Content Server

Local

Content Server

Local

Content Server

Region A

Clients

Region B

Clients

Region C

Clients

enterprise communication infra other features
Enterprise Communication Infra:Other Features
  • Callback
    • 클라이언트에 대한 통지(notification)

배치 작업 종료

공지 사항

  • Performance + Reliability + Management
    • WAS(Windows Activation Service) with IIS 7.0

TCP 트랜스포트 + 바이너리 인코딩

IIS의 강력한 안정성

        • Recycling, Web Garden, Health Monitoring, ......
  • Efficient Messaging
    • 대용량 메시지 전송

MTOM, Binary 메시지 인코딩

Message Streaming

    • Message Compression Channel

SOAP 메시지 압축

Windows SDK Sample 참조

net framework 3 5 vs 2008 wcf
.NET Framework 3.5 & VS 2008:WCF 새로운 기능
  • WCF Web Programming Model
    • Support REST(Representational State Transfer)

Non-SOAP 메시지 송수신(JSON, XML, Other Binary Stream)

HTTP GET/POST/PUT/..... 지원

    • ASP.NET AJAX에서 WCF 서비스 호출 가능
  • WCF Syndication
    • WCF 서비스를 통해 RSS 2.0 및 ATOM 1.0 기능 제공
    • Syndication을 위한 객체 모델 제공

SyndicationFeed, SyndicationItem, SyndicationLink,

SyndicationPerson, SyndicationCategory, SyndicationContent등

  • WCF Support in VS 2008
    • 프로젝트 템플릿 통합
    • 새로운 UI의 “서비스 참조”

다양한 프록시 생성 옵션 제공

slide51

WCF 적용 사례

Firewall

Firewall

PC Game Rooms

Game Development

Company

국내 C 게임사

5000 TX/Sec.

0.3 Sec/Response Time

Billing

Server

Billing

Server

Game

Server

TCP/IP

TCP/IP

WCF

WCF

C/C++

Window 2003

Window 2003

.

.

.

Game

Client

(Written in C)

Game

Client

(Written in C)

Window2K

.

.

.

Billing DB

SQL

Log Info

.

.

.

L4 Switch

(NLB)

.

.

.

MSMQ

.

TCP/IP

.

.

.

.

.

.

Log Info

Transaction

Handling in SP

Game

Server

H/W Spec.

4 CPU +

8 Core +

8 Giga

TCP/IP

C/C++

WCF Handling Biz Logic

Linux

Bandwidth

100 bps

H/W Spec.

Dual 2 CPU

slide52

SSAS(Samsung Automation System)

IAS의 일종으로 선박 운항시스템의 제어 콘솔 내의 감시, 제어 및 엔지니어링을 목적으로 하는 S/W

1. 선박 운항관련 주요 장비들의 상태 감시를 위한 MMI 모듈.

2. 소프트웨어 엔지니어링을 위한 Control Logic Designer 모듈.

3. 각종 이력 및 환경 데이터 관리를 위한 Database 모듈.

4. 각 WS간의 안정적 네트워킹을 위한 통신I/F 모듈.

key factor
Key Factor
  • World-first .NET Adoption for IAS Market
  • World-first Implementation for IEC 61131-6(Standard XML Schema)
  • Real-world WCF Adoption for Factory Automation
    • Very heavy load & High frequency
    • Require Reliability
  • Case-study for Pattern & Practice’s CAB(Composite UI)
  • Best Practice for ALM
    • SHI decide to change their Standard Methodology to MSF-based Methodology
    • TFS used widely in organization
slide56
목차
  • 서비스 지향 패러다임으로의 변화
  • 서비스 지향 개발을 위한 WCF
  • 업무 프로세스 개발을 위한 WF
  • 결언
workflow
어플리케이션의 Workflow ?

모든 “IF” 구문들

모든 웹 페이지들 간의 이동(Navigation)

어플리케이션이 복잡해 지는 가장 큰 요인

Workflow ?
windows workflow foundation
윈도우를 위한 워크플로우 기술

마이크로소프트 제품들과 파트너 솔루션들을 위한기반

사용자와 시스템간의 워크플로우 시나리오를 위한 기술

어플리케이션에 워크플로우를 탑재하기 위한 프레임워크

탑재를 위한 프레임워크 – 어플리케이션 혹은 서버가 아님

.NET FX 3.5를 통해 개발자들 이용 가능

.NET 개발의 중심에 Workflow 개념을 도입시키게 함

Workflow 의 패러다임을 어플리케이션 개발에 도입

Windows Workflow Foundation
windows workflow foundation1
핵심 개념Windows Workflow Foundation

Visual Designer

AWorkflow

  • Workflow란 Activity 들의 집합이다
  • Workflow는 어떤 어플리케이션 혹은 서버상의 Host Process상에서 구동될 수 있다

AnActivity

  • 개발자들은 자신들만의 Custom Activity Library들을 추가할 수 있다

Custom Activity Library

Windows

Workflow Foundation

구성요소들

Base Activity Library

  • Base Activity Library:기본 Activity들에 대한 라이브러리

Runtime Engine

  • Runtime Engine:Workflow 실행과 관리
  • Runtime Services:Workflow 호스팅

Runtime Services

  • Visual Designer:그래픽, 코드를 통한 비주얼 한 디자인 지원

Host Process

activities
Activity 는 workflow의 각각의 단계

workflow코드을 이용해서 속성들과 이벤트들을 가지고 프로그램을 할 수 있음

workflow 런타임에서 메서더를(예, Execute) 호출할 수 있음

Forms & Controls에 비유

Activity == Controls

Workflows == Forms

Activities는 크게 2가지 범주로 나뉨

Basic –“업무 수행” 절차들

Composite – child activities의 모임을 관리함

Activities는 무엇인가 ?
activities1

Compliance

CRM

Extend

activity

Compose

activities

RosettaNet

Author new

activity

IT Mgmt

Activities: 확장 모델

Domain-SpecificWorkflow Packages

Custom ActivityLibraries

Base Activity

Library

Base Activity

Library

  • OOB activities,workflow types,base types
  • General-purpose
  • Activity libraries define workflow constructs
  • Create/Extend/Compose activities
  • App-specificbuilding blocks
  • First-class citizens
  • Vertical-specificactivities & workflows
  • Best-practice IP &Knowledge
base activity library
WF 에서 제공하는 핵심 Activity

디자인

컨트롤 흐름 제어 모델링

커뮤니케이션 모델링

IfElse, Delay, While, State, etc.

InvokeWebService, CallExternalMethod, etc.

개발자들에게 동일한 API 형태의 구성되어 제공됨

Base Activity Library
workflow1

State1

State2

유연한 Workflow 제어

State Machine Workflow

Sequential Workflow

순차적 구조

처리 순서를 사전에 기술

외부 이벤트가 처리 순서를 결정 지음

Step1

Event

Step2

Event

  • 사전 기술, 일반적
  • 자동화 시나리오
  • Flowchart
  • 이벤트 중심
  • Skip/re-work, exception handling

Rules-driven Activities

Rule1

Step1

역할 + 데이터 상태가

프로세스 순서를 결정

Data

Step2

Rule2

  • 데이터 중심
  • 단순 상태, 복잡한 정책들
  • 규정된 Activity Group
slide67
호스트와 워크플로우 값 전달

Workflow

파라미터

이벤트

메서드

HOST Process

custom activities
원도우 어플리케이션이나

웹 어플리케이션에서

사용자 정의 컨트롤을 만드는 것과

같이 워크플로 입장에서 재사용

가능한 컴포넌트

Custom activity 예들

SendEmail, FileSystemEvent, PurchaseOrderCreated, AssignTask, ForEach, etc.

Custom Activities

워크플로우 실행 로직

Simplicity

Code Activity

InvokeWebService Activity

CallExternalMethod &

HandleExternalEvent

Custom Activities

Flexibility

slide71
엔터프라이즈 프로세스 플로우 자동화

엔터프라이즈 영역의 프로세스 제어 및 자동화

EAI 및 엔터프라이즈 어플리케이션 간의

프로세스 연동 및 자동화 기능 제공

BizTalk Server 2006

업무 프로세스

  • 기존 레거시 자원을 서비스로
  • 모듈화 시키고 비즈니스
  • Capability 자원으로 재활용함

Service

Service

Service

Service

Service

대단위 업무 시스템

biztalk wf
BizTalk과 WF-어플리케이션 프로세스 오케스트레이션

세분화된 어플리케이션 영역의 프로세스 제어

BizTalk Server 2006

업무 프로세스

어플리케이션 범위

내에서 프로세스 플로우를

동적으로 제어함

오케스트레이션 기능 제공

WinFX - WF

업무 프로세스 플로우

업무 프로세스 플로우

업무 프로세스 플로우

  • 기존 레거시 자원을 서비스로
  • 모듈화 시키고 비즈니스
  • Capability 자원으로 재활용함

Service

Service

Service

Legacy System

Legacy System

Legacy System

Data Source

Data Source

Data Source

Windows

M/F

Unix/Linux

단위 업무 시스템

단위 업무 시스템

단위 업무 시스템

slide74
목차
  • 서비스 지향 패러다임으로의 변화
  • 서비스 지향 개발을 위한 WCF
  • 업무 프로세스 개발을 위한 WF
  • 결언
slide75

.NET Framework 3.5 구조

.NET Framework 3.5

CLR Add-in

Framework

LINQ

ASP.NET 3.5

Additional Enhancements

.NET Framework 3.0 + SP1

Windows Presentation Foundation

Windows Communication Foundation

Windows Workflow Foundation

Windows CardSpace

.NET Framework 2.0 + SP1

ms new soa technologies
MS의 New SOA Technologies

SOA 개념을 지원하기 위한

신개념 웹서비스 개발 플랫폼

WinFX - WCF

Windows Communication Foundation

WinFX -WF

Windows Workflow Foundation

BizTalk Server 2006

SOA의 어플리케이션

프로세스 오케스트레이션을

위한 개발 플랫폼

SOA의 엔터프라이즈

프로세스 자동화를

위한 개발 및 실행 플랫폼

ms soa soa
MS SOA 솔루션을 통한 SOA 실현 방안

SOA 방법론

비즈니스 모델링 및

Capability 정의

Microsoft

BizTalk Server

2006

EAI

Message Mapping

Process Automation

MS Motion 방법론

Enterprise Application

자동화

XML Script 기반의

플로우 오케스트레이션

Dynamic Control

MS CSF

Microsoft

Windows Workflow

Foundation

프로세스 플로우

오케스트레이션

프로세스 & Capability

Mapping

Microsoft

Windows Communication

Foundation

Service Contract

Data Contract

Message Contract

Contract 기반 서비스

어플리케이션

Authenification

Logging

Data Access

Enterprise 라이브러리

Microsoft

Enterprise Library

ms soa
MS SOA 솔루션 구현 개념

Process

Automation

Messaging

Mapping

Start

End

EAI

Enterprise

Process Automation

Enterprise Process Automation (BizTalk Server 2006)

BizTalk Server

2006

Application

모듈화

Application

Block

Application

Block

Application

Block

Service Orchestration

Process Flow

(WWF)

Process Flow

(WWF)

Process Flow

(WWF)

Process Flow

(WWF)

MS WWF

ASP.Net

Process

Orchestration

Dynamic

Connecting

Dynamic Service

Connecting

Dynamic Connecting

Dynamic Connecting

Dynamic Connecting

Dynamic Connecting

MS CSF

Contract based

Service Application

(ASP.Net)

Contract based

Service Application

(ASP.Net)

Contract based

Service Application

(ASP.Net)

Contract based

Service Application

(ASP.Net)

Service Application

Service

모듈화

MS WCF

ASP.Net

MS Enterprise Library

MS Enterprise Library

MS Enterprise Library

MS Enterprise Library

Service Library

IIS / Windows

Server 2003

IIS / Windows

Server 2003

IIS / Windows

Server 2003

IIS / Windows

Server 2003

MS Enterprise

Library

SQL Server 2005

SQL Server 2005

SQL Server 2005

SQL Server 2005

slide79
결언
  • WCF 는 SOA 통합 개발 모델이면서 차세대 통신 인프라를 제공해줌
    • 웹 서비스 기반(XML + HTTP)
    • 서비스 지향 아키텍처(SOA)
    • Interoperability

표준 WS-* 스펙 구현

    • Next generation communication infra of Microsoft
  • WF는 원도우 기반에서 워크플로우를 빠르고 쉽게 구축할 수 있게 해줌
    • 프로그램 모델, 엔진 및 도구 제공
    • 확장 가능한 모델을 제공해서 최종 사용자 또는 다중 프로젝트에

재사용 가능한 워크플로우 기능 제공