58

AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30 Break

  • Upload
    maxine

  • View
    35

  • Download
    0

Embed Size (px)

DESCRIPTION

AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30 Break 11.30 - 12.30 Integration Patterns 12.30 - 13.30 Lunch 13.30 - 14.30Showcase 14.30 - 15.00 Break 15.00 - 16.00 Web Services: Interoperability and Integration 16.00 - 16.15Summary - PowerPoint PPT Presentation

Citation preview

Page 1: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break
Page 2: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AGENDA:

10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30 Break 11.30 - 12.30 Integration Patterns 12.30 - 13.30 Lunch 13.30 - 14.30 Showcase 14.30 - 15.00 Break 15.00 - 16.00 Web Services: Interoperability and Integration 16.00 - 16.15 Summary

- The book ? Questions ? Visual Studio 2005 Beta ? Review form ?

AGENDA:

10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30 Break 11.30 - 12.30 Integration Patterns 12.30 - 13.30 Lunch 13.30 - 14.30 Showcase 14.30 - 15.00 Break 15.00 - 16.00 Web Services: Interoperability and Integration 16.00 - 16.15 Summary

- The book ? Questions ? Visual Studio 2005 Beta ? Review form ?

Page 3: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AGENDA:

10.00 - 11.00 Patterns in the Enterprise Repeatable success in delivering complex enterprise systems depends on the ability to leverage experience from past systems. On an architectural level, direct reuse is usually not practical and blueprint architectures are often not flexible enough for complex systems. However, design patterns provide a middle-ground by describing idiomatic use of technologies and capturing the essence of successful designs.

AGENDA:

10.00 - 11.00 Patterns in the Enterprise Repeatable success in delivering complex enterprise systems depends on the ability to leverage experience from past systems. On an architectural level, direct reuse is usually not practical and blueprint architectures are often not flexible enough for complex systems. However, design patterns provide a middle-ground by describing idiomatic use of technologies and capturing the essence of successful designs.

Erik Doernenburg is a Senior Developer and Architect at ThoughtWorks, Inc. Coming from a background in enterprise applications and new media systems, Erik is currently exploring advanced patterns of enterprise integration and application architecture on the Microsoft .NET and J2EE platforms. Erik has been an advocate of domain-driven design and agile development for many years. Erik holds a degree in Informatics from the University of Dortmund. 

Erik Doernenburg is a Senior Developer and Architect at ThoughtWorks, Inc. Coming from a background in enterprise applications and new media systems, Erik is currently exploring advanced patterns of enterprise integration and application architecture on the Microsoft .NET and J2EE platforms. Erik has been an advocate of domain-driven design and agile development for many years. Erik holds a degree in Informatics from the University of Dortmund. 

Page 4: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AGENDA:

11.30 - 12.30 Integration Patterns Based on the Integration Patterns book from Microsoft's Patterns & Practices team, this session discusses how patterns can be used to describe an integration architecture from business to implementation.

AGENDA:

11.30 - 12.30 Integration Patterns Based on the Integration Patterns book from Microsoft's Patterns & Practices team, this session discusses how patterns can be used to describe an integration architecture from business to implementation.

Christopher Baldwin is an Architect with the Microsoft EMEA Developer and Platform Evangelism Group. With 25 years experience in software engineering across numerous environments, Christopher now helps enterprises leverage the Microsoft .NET platform. Prior to joining Microsoft 9 years ago, Christopher’s background was in the financial industry. Christopher’s latest studies are in the software factories area. Christopher holds a Bachelor of Science degree in Computer Science from Westminster College.  

Christopher Baldwin is an Architect with the Microsoft EMEA Developer and Platform Evangelism Group. With 25 years experience in software engineering across numerous environments, Christopher now helps enterprises leverage the Microsoft .NET platform. Prior to joining Microsoft 9 years ago, Christopher’s background was in the financial industry. Christopher’s latest studies are in the software factories area. Christopher holds a Bachelor of Science degree in Computer Science from Westminster College.  

Page 5: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AGENDA:

13.30 - 14.30 Showcase

Know IT presents an integration solution in Microsoft BizTalk Server using integration patterns and a SOA based architecture.

AGENDA:

13.30 - 14.30 Showcase

Know IT presents an integration solution in Microsoft BizTalk Server using integration patterns and a SOA based architecture.

Anders Kingstedt has been active in the IT industry since the latter part of the 80’s, previously working as a developer and systems designer. Having worked in the web industry for a few years, Anders is currently employed as a consultancy manager at Know IT, focusing on integration solutions. Anders is also the Alliance Manager with Microsoft at Know IT.  

Anders Kingstedt has been active in the IT industry since the latter part of the 80’s, previously working as a developer and systems designer. Having worked in the web industry for a few years, Anders is currently employed as a consultancy manager at Know IT, focusing on integration solutions. Anders is also the Alliance Manager with Microsoft at Know IT.  Alan Smith is a BizTalk expert and the only BizTalk MVP in Sweden.Alan is form the north of England, and living in Stockholm Sweden, he has been working as a developer with Microsoft technologies since 1995.

Alan Smith is a BizTalk expert and the only BizTalk MVP in Sweden.Alan is form the north of England, and living in Stockholm Sweden, he has been working as a developer with Microsoft technologies since 1995.

Page 6: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AGENDA:

15.00 - 16.00 Web Services: Interoperability + Integration

This session addresses the use of web services to build highly interoperable solutions that fit into an enterprise integration architecture.

AGENDA:

15.00 - 16.00 Web Services: Interoperability + Integration

This session addresses the use of web services to build highly interoperable solutions that fit into an enterprise integration architecture.

Daniel Akenine is an Architect Evangelist at Microsoft. For the last five years he has been focusing on Enterprise Application Development – on both the J2EE and Microsoft platforms. Previously he has been working as a researcher at Karolinska Institutet, division IT-manager at the Karolinska Hospital and as a technical specialist and counsellor for a number of IT projects in the Stockholm Financial Sector – e.g. the OMX stock exchange. Daniel holds a M.Sc in Engineering Physics.

  

Daniel Akenine is an Architect Evangelist at Microsoft. For the last five years he has been focusing on Enterprise Application Development – on both the J2EE and Microsoft platforms. Previously he has been working as a researcher at Karolinska Institutet, division IT-manager at the Karolinska Hospital and as a technical specialist and counsellor for a number of IT projects in the Stockholm Financial Sector – e.g. the OMX stock exchange. Daniel holds a M.Sc in Engineering Physics.

  

Page 7: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

ThemeTheme

Interoperability + Integration > open

Interoperability Able to operate in conjunction1

Integration Combining of diverse parts into a complex whole1

Open Open system, open source, open solution

1 Definition from Oxford Dictionary1 Definition from Oxford Dictionary

Page 8: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

88

Industries:Industries:> Insurance Insurance> Asset Finance Asset Finance> Mortgage Mortgage> Retail Retail

Expertise:Expertise: > NET NET> Java Java> SOA SOA> EAI EAI> Open Source Open Source> Agile Agile> DA DA

Company:Company:> 600 employees 600 employees> $80M in revenue $80M in revenue> Global WW Reach> Major corporations

< ThoughtWorks’ < ThoughtWorks’ publicationspublications

ThoughtWorks at a Glance

Page 9: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break
Page 10: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

1010

Web Services:Web Services:Interoperability + IntegrationInteroperability + Integration

Daniel AkenineArchitect [email protected]

Page 11: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Are we serious ?Are we serious ?

3 feb – 2005: Bill Gates and interopability

“interoperability is a proven approach for dealing with the diversity and heterogeneity of the marketplace ..”

Our strategy:Work with what you got:

Host Integration Server, BizTalk, Identity Integration Server

AppleTalk, Netware, Unix/Linux, C++, JAVA, Oracle, Sybase, DB2, SAP, Siebel, SWIFT, HL7,

Use XML to get "Interoperability by Design“ Office XML, WS-*

Page 12: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AgendaAgendaAgendaAgenda

- Service Oriented Architecture

- Web Services and Integration

- Web Services and maturity

- Services in the future

Page 13: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AgendaAgendaAgendaAgenda

- Service Oriented Architecture

- Web Services and Integration

- Web Services and maturity

- Services in the future

Page 14: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Why are we talking about SOA today ?Why are we talking about SOA today ?Why are we talking about SOA today ?Why are we talking about SOA today ?

It is not the strongest of the species that survive, or the most intelligent, but the ones most responsive to

change.- Charles Darwin

Page 15: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Internet Internet BankingBanking

WirelessWireless

AggregationAggregation

Branch BankingBranch Banking

CRMCRM

Core BankingCore Banking

Wealth Wealth ManagementManagement

Treasury / Treasury / ForexForex

Trading / Back Trading / Back office office

Payment Systems and Card MgmtPayment Systems and Card Mgmt3D Secure3D Secure

Business Business IntelligenceIntelligence

EAIEAI

Straight through Straight through ProcessingProcessing

ATM / POSATM / POS

No Application Is An IslandNo Application Is An IslandNo Application Is An IslandNo Application Is An Island

Page 16: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

The “service oriented enterprise”The “service oriented enterprise”

Infrastructure

Services

User interface

Devices

Page 17: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Services and Systems are not the sameServices and Systems are not the sameServices and Systems are not the sameServices and Systems are not the same

A service is a program you interact with via message exchanges Services are built to last Availability and stability are critical

A system is a set of deployed services cooperating in a given task Systems are built to change Adapt to new services after deployment

Page 18: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

What is Service Orientation (SO)?What is Service Orientation (SO)?What is Service Orientation (SO)?What is Service Orientation (SO)?

An approach to building systems using services which adhere to the 4 tenets of Service Orientation:

Boundaries are Explicit Services are Autonomous Services share schema and contract, not class Service compatibility is determined based on

policy

Page 19: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Understanding Tenet 1: Understanding Tenet 1: Boundaries are ExplicitBoundaries are ExplicitUnderstanding Tenet 1: Understanding Tenet 1: Boundaries are ExplicitBoundaries are Explicit

Each Service interaction is a boundary crossing

Crossing service boundaries may have costsService Orientation makes interaction formal,

intentional, and explicit

Respect my Boundaries.

Page 20: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Understanding Tenet 2: Understanding Tenet 2: Services are AutonomousServices are AutonomousUnderstanding Tenet 2: Understanding Tenet 2: Services are AutonomousServices are AutonomousTopology of a system evolves over time No presiding authorityServices in a system are deployed, managed,

versioned independently

Don’t be Codependent.

Page 21: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Understanding Tenet 3: Understanding Tenet 3: Services Share Schema and Contract, not Services Share Schema and Contract, not ClassClass

Understanding Tenet 3: Understanding Tenet 3: Services Share Schema and Contract, not Services Share Schema and Contract, not ClassClass

Services interact solely on schemas for structures, contract for behaviors

Unlike OO classes, services do not combine structure and behavior

Contracts and schema remain stable over time

Don’t (expect me to) overshare.

Page 22: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Understanding Tenet 4: Understanding Tenet 4: Service Compatibility is Determined Based Service Compatibility is Determined Based on Policy on Policy

Understanding Tenet 4: Understanding Tenet 4: Service Compatibility is Determined Based Service Compatibility is Determined Based on Policy on Policy

Separates the interactions the service can have from the constraints on those interactions.

Service capabilities and requirements are expressed in terms of a policy expression

Assertions identified by stable, globally unique names

The fact that I can, doesn’t mean I will.

Page 23: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Service-Oriented ArchitectureService-Oriented Architecture

Contract

Agreements

ProgrammingLanguage

Object Model

Application

Database

OperatingSystem

Database

OperatingSystem

ProgrammingLanguage

Object Model

Application

You Your Partner

Complexity

Complexity

To Loosely Coupled ServicesFrom Tightly Coupled Objects…From Tightly Coupled Objects…

Page 24: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Architecting with ServicesArchitecting with ServicesPromoting Loose CouplingPromoting Loose CouplingArchitecting with ServicesArchitecting with ServicesPromoting Loose CouplingPromoting Loose Coupling

Contract

How is it implemented?

How to build it?

How to publish it?

How does it work?

Where to host it?

How to use it?

What does it do?

Where to find it?

Service provider Service consumer

Page 25: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

What kind of tools do we need to do SOA ?What kind of tools do we need to do SOA ?What kind of tools do we need to do SOA ?What kind of tools do we need to do SOA ?

“A fool with a tool is still a fool :-)” - Old saying

Page 26: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Visual Studio Team SystemVisual Studio Team System

Change Management

Work Item Tracking

Reporting

Project Site

Visual Studio

Team Foundation Integration Services

Project Management

Pro

cess

an

d A

rch

itect

ure

Pro

cess

an

d A

rch

itect

ure

G

uid

an

ceG

uid

an

ce

Dynamic Code Analyzer

Visual Studio

Team Architect

Static Code Analyzer

Code Profiler

Unit Testing

Code Coverage

Visio and UML Modeling

Team Foundation Client

VS Pro

Class Modeling

Load Testing

Manual Testing

Test Case Management

Application Modeling

Logical Infra. Modeling

Deployment Modeling

Visual Studio

Team DeveloperVisual Studio

Team Test

Vis

ual S

tud

io In

du

stry

V

isu

al S

tud

io In

du

stry

Part

ners

Part

ners

Build Server

Page 27: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Visual Studio Team SystemVisual Studio Team System

Change Management

Work Item Tracking

Reporting

Project Site

Visual Studio

Team Foundation Integration Services

Project Management

Pro

cess

an

d A

rch

itect

ure

Pro

cess

an

d A

rch

itect

ure

G

uid

an

ceG

uid

an

ce

Dynamic Code Analyzer

Visual Studio

Team Architect

Static Code Analyzer

Code Profiler

Unit Testing

Code Coverage

Visio and UML Modeling

Team Foundation Client

VS Pro

Load Testing

Manual Testing

Test Case Management

Application Modeling

Logical Infra. Modeling

Deployment Modeling

Visual Studio

Team DeveloperVisual Studio

Team Test

Vis

ual S

tud

io In

du

stry

V

isu

al S

tud

io In

du

stry

Part

ners

Part

ners

Application Modeling

Logical Infra. Modeling

Deployment Modeling

Class Modeling

Build Server

Probably th

e best

development tool in

the

world :-)

Page 28: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Number 1Application Designer

Service-OrientedArchitecture modelService-Oriented

Architecture model

Port Details editorPort Details editor

Page 29: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Number 2Infrastructure Designer

Logical Infrastructure DesignerLogical Infrastructure Designer

Services assignedto logical infrastructure

Services assignedto logical infrastructure

Architecture validatedagainst operational

settings and constraints

Architecture validatedagainst operational

settings and constraints

Page 30: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

And the last.Class designer

Class DesignerClass Designer

Class Designerand

two-way code synch

Class Designerand

two-way code synch

Page 31: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AgendaAgendaAgendaAgenda

- Service Oriented Architecture

- Web Services and Integration

- Web Services and maturity

- Services in the future

Page 32: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Web services is the only way to do integration !

"Every generalization is dangerous, especially "Every generalization is dangerous, especially this one." this one." — Mark Twain— Mark Twain

Page 33: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

A basic web service is not always OK !A basic web service is not always OK !

Security ReliableMessaging

Transactions

Messaging

Meta

data

XML

Security ReliableMessaging

Transactions

Messaging

XML

Meta

data

Metadata• Service description• Policy• Discovery

Metadata• Service description• Policy• Discovery

XML• Data• Schema• Interoperability

XML• Data• Schema• Interoperability

Messaging• Functional data• Operational data• Address services & resources• Attach binary data

Messaging• Functional data• Operational data• Address services & resources• Attach binary data

Reliable Messaging• Guaranteed delivery• In order processing• Idempotency

Reliable Messaging• Guaranteed delivery• In order processing• Idempotency

Security• Encryption• Authentication• Authorization• Non-repudiation• Federation• Trust

Security• Encryption• Authentication• Authorization• Non-repudiation• Federation• Trust

Transactions• Coordinated activity• Atomic transaction• Business activity

Transactions• Coordinated activity• Atomic transaction• Business activity

Page 34: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

IntegrationIntegration

WindowWindowss

CLRCLR

.NET .NET

Secu

ritS

ecu

rityy

Ad

ap

ter

Ad

ap

ter

ssO

rchestra

tioO

rchestra

tionnEESS

MS

MM

SM

QQ

LinuxLinux

JVMJVM

J2EE J2EE

Secu

ritS

ecu

rityy JCJCAA

eb

XM

eb

XM

LLJTJTAAJMJMSS

WS-IWS-I

Page 35: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Page 36: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Existing Client/Server ApplicationExisting Client/Server ApplicationExisting Client/Server ApplicationExisting Client/Server Application

Client Application(VB6, Delphi or PowerBuilder)

Server Components

DCOM

Database

EnterpriseEnterprise

Integration?Integration?

Page 37: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

EnterpriseEnterprise

C/S 1: Expose DatabaseC/S 1: Expose DatabaseC/S 1: Expose DatabaseC/S 1: Expose Database

Client Application(VB6, Delphi or PowerBuilder)

Server Components

DCOM

Database

WebServiceFaçade

Page 38: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

EnterpriseEnterprise

C/S 2: Expose ServerC/S 2: Expose ServerC/S 2: Expose ServerC/S 2: Expose Server

Client Application(VB6, Delphi or PowerBuilder)

Server Components

DCOM

Database

WebServiceFaçade

Page 39: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

EnterpriseEnterprise

C/S 3: Expose ClientC/S 3: Expose ClientC/S 3: Expose ClientC/S 3: Expose Client

Client Application(VB6, Delphi or PowerBuilder)

Server Components

DCOM

Database

WebServiceFaçade

Page 40: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Web Services: Messaging and moreWeb Services: Messaging and moreWeb Services: Messaging and moreWeb Services: Messaging and more

Web services provide the benefits of messaging loose-coupling service oriented

And more vendor neutral suitable for access through Internet

Page 41: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Web Services: TenetsWeb Services: TenetsWeb Services: TenetsWeb Services: Tenets

Boundaries are explicitServices are autonomousServices share schema and contractService compatibility is based on policy

Tenet conformance gives better Interoperability

Better Interoperability means stronger Integration

Page 42: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Web Services: Active communityWeb Services: Active communityWeb Services: Active communityWeb Services: Active community

Web Services are expected to become the default Messaging solution in the future

WS-* standards are evolving rapidly, most important WS-Security WS-Policy WS-Addressing

WS-I defines profiles, sample applications and testing tools Profiles are guidelines for using WS specifications Use Basic profile 1.1 to build interoperable solutions

Further research on WS is being carried out

Page 43: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Why integrate through Web Services?Why integrate through Web Services?Why integrate through Web Services?Why integrate through Web Services?

To get Messaging and more Tenets Active community

Required for external integrationBeneficial for internal integration

Page 44: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Building Interoperable Web ServicesBuilding Interoperable Web ServicesBuilding Interoperable Web ServicesBuilding Interoperable Web Services

Page 45: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AgendaAgendaAgendaAgenda

- Service Oriented Architecture

- Web Services and Integration

- Web Services and maturity

- Services in the future

Page 46: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

The Web Services Maturity Model The Web Services Maturity Model

Early Learning Integration Reengineering Maturity

Integrated Architected Measured

and Managed

FederatedService

Deployments

TechnicalInterface

BusinessCapability

BusinessProduct

Domain Standard

Service Perspective

Technical Business Enterprise Industry/

Ecosystem

Drivers

Internal Limited

External

Virtual

Business

Anonymous Collaborations

Momentum Extended Momentum

Reengineered StandardizedService

Process

Page 47: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Phase 1 - Early LearningPhase 1 - Early Learning

In this phase the predominant service deployments will be:

Mostly internal Low-risk external Using existing security mechanisms Not mission critical Focused on better application

integration

Page 48: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Phase 2 – IntegrationPhase 2 – Integration

Business process oriented Project level implementation Mostly internal usage

Page 49: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Phase 3 – ReengineeringPhase 3 – Reengineering

Enterprise level, with common services used right across organizations

Services implemented as an integral part of business products

Supported by guarantees and standards based measurement and monitoring systems

Page 50: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Phase 4 – MaturityPhase 4 – Maturity

Services are ubiquitous

Federated services collaborate and create complex products with individual services provided from potentially many providers

Services are designed to support the consumer in their ecosystem, not in a company specific system or service

Page 51: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

AgendaAgendaAgendaAgenda

- Service Oriented Architecture

- Web Services and Integration

- Web Services and maturity

- Services in the future

Page 52: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Future

IndigoLonghornFederation

ServerVisual Studio

2007? (Orcas)

Tomorrow

ASMX (VS2005 enhancements)

WSE 3.0Indigo (Beta)Visual Studio

2005 Longhorn (Beta)SQL Server 2005

Today

Microsoft SOA Technology Microsoft SOA Technology

ASMX (aka ASP.NET Web Services)

Windows XP, Server 2003, .NET

Visual Studio 2003WSE 2.0Office System

2003BizTalk Server

2004SQL Server 2000

Page 53: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

SOA Technology RoadmapSOA Technology Roadmap

Indigo

ASMX

Enterprise Services

.NET Remoting

Com(+)

MSMQ

ASMX

WSE1

WSE2

WSE-n

Page 54: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Road to Indigo Road to Indigo Secure, Reliable, Transacted – ASP.NETSecure, Reliable, Transacted – ASP.NETclass EntityService { [WebMethod] public void AddEntity( string entity ) { // Custom security X509CertificateCollection collection = new X509CertificateCollection(); IntPtr blob = Marshal.AllocHGlobal(Marshal.SizeOf( typeof(CRYPTOAPI_BLOB))); IntPtr data = (IntPtr)((int)blob + Marshal.SizeOf(typeof(CRYPTOAPI_BLOB))); . . . // Custom reliable messaging SeqAckRange range = new SeqAcknRange( id, low, high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); . . . // Custom DTC transaction context hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); . . . }}

Page 55: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Road to Indigo Road to Indigo Secure, Reliable, Transacted – WSESecure, Reliable, Transacted – WSEclass EntityService { [WebMethod] public void AddEntity( string entity ) { // Integrated WS-Security support foreach ( SecurityToken token in requestContext.Security.Tokens ) { X509SecurityToken x509 = token as X509SecurityToken; . . . } // Custom reliable messaging SeqAckRange range = new SeqAcknRange( id, low, high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); . . . // Custom DTC transaction context hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); . . . }}

Page 56: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

Road to IndigoRoad to IndigoSecure, Reliable, Transacted – IndigoSecure, Reliable, Transacted – Indigo[Confidentiality][Reliability( Guarantees.ExactlyOnce | Guarantees.InOrder )][Service]class EntityService { [TransactionCoupling( TransactionCouplingOptions.Required )] [ServiceMethod] void AddEntity( string entity ) { . . . }}

Page 57: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

EMEAEMEA

More informationMore information

www.microsoft.se/arkitekt

www.microsoft.com/interoperability

www.ws-i.org/

Page 58: AGENDA: 10.00 - 11.00 Patterns in the Enterprise 11.00 - 11.30  Break

Please complete your sessionfeedback form

THANK YOU

Please complete your sessionfeedback form

THANK YOU