0f4722ef8f1efd35b8f88bb9c7c474d5.ppt
- Количество слайдов: 58
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 ? EMEA
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 Thought. Works, 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 J 2 EE 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. EMEA
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. EMEA
AGENDA: 13. 30 - 14. 30 Showcase Know IT presents an integration solution in Microsoft Biz. Talk 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. Alan Smith is a Biz. Talk expert and the only Biz. Talk 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. EMEA
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 J 2 EE 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. EMEA
Theme Interoperability + Integration > open Interoperability w Able to operate in conjunction 1 Integration w Combining of diverse parts into a complex whole 1 Open w Open system, open source, open solution 1 Definition from Oxford Dictionary EMEA
Thought. Works at a Glance Company: > 600 employees > $80 M in revenue > Global WW Reach > Major corporations Industries: > Insurance > Asset Finance > Mortgage > Retail Expertise: > NET > Java > SOA > EAI > Open Source > Agile > DA < Thought. Works’ publications EMEA 8
Web Services: Interoperability + Integration Daniel Akenine Architect Evangelist dakenine@microsoft. com EMEA 10
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: w Host Integration Server, Biz. Talk, Identity Integration Server w Apple. Talk, Netware, Unix/Linux, C++, JAVA, Oracle, Sybase, DB 2, SAP, Siebel, SWIFT, HL 7, Use XML to get "Interoperability by Design“ w Office XML, WS-* EMEA
Agenda - Service Oriented Architecture - Web Services and Integration - Web Services and maturity - Services in the future EMEA
Agenda - Service Oriented Architecture - Web Services and Integration - Web Services and maturity - Services in the future EMEA
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 EMEA
No Application Is An Island Payment Systems and Card Mgmt Treasury / Forex 3 D Secure Trading / Back office Wealth Management Core Banking Branch Banking Internet Banking EAI Business Intelligence Straight through Processing CRM Aggregation Wireless ATM / POS EMEA
The “service oriented enterprise” Devices User interface Services Infrastructure EMEA
Services and Systems are not the same A service is a program you interact with via message exchanges w Services are built to last w Availability and stability are critical A system is a set of deployed services cooperating in a given task w Systems are built to change w Adapt to new services after deployment EMEA
What is Service Orientation (SO)? An approach to building systems using services which adhere to the 4 tenets of Service Orientation: w w Boundaries are Explicit Services are Autonomous Services share schema and contract, not class Service compatibility is determined based on policy EMEA
Understanding Tenet 1: Boundaries are Explicit Each Service interaction is a boundary crossing Crossing service boundaries may have costs Service Orientation makes interaction formal, intentional, and explicit Respect my Boundaries. EMEA
Understanding Tenet 2: Services are Autonomous Topology of a system evolves over time No presiding authority Services in a system are deployed, managed, versioned independently Don’t be Codependent. EMEA
Understanding Tenet 3: Services Share Schema and Contract, not Class 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. EMEA
Understanding Tenet 4: Service Compatibility is Determined Based 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. EMEA
Service-Oriented Architecture From Tightly Coupled Objects… Loosely Coupled Services To Your Partner You Programming Language Database Programming Language Agreements Object Model Contract Operating System Database Application Operating System Application Complexity EMEA
Architecting with Services Promoting Loose Coupling Service provider Service consumer How is it implemented? What does it do? How does it work? How to build it? Where to host it? Contract How to use it? Where to find it? How to publish it? EMEA
What kind of tools do we need to do SOA ? “A fool with a tool is still a fool : -)” - Old saying EMEA
Visual Studio Team System Visual Studio Team Architect Team Developer Team Test Application Modeling Dynamic Code Analyzer Load Testing Logical Infra. Modeling Static Code Analyzer Manual Testing Deployment Modeling Code Profiler Test Case Management Visual Studio Industry Partners Process and Architecture Guidance Visual Studio Unit Testing Code Coverage Class Modeling Visio and UML Modeling Team Foundation Client VS Pro Visual Studio Team Foundation Change Management Reporting Integration Services Build Server Work Item Tracking Project Site Project Management EMEA
Visual Studio Team System Visual Studio Team Architect Team Developer Team Test Application Modeling Dynamic Code Analyzer Logical Infra. Modeling Static Code Analyzer Deployment Modeling Code Profiler nt e pm lo ve : -) de ld st or be w he t ly in ab ol ob to Pr Visual Studio Industry Partners Process and Architecture Guidance Visual Studio Load Testing Manual Testing Test Case Management Unit Testing Code Coverage Class Modeling Visio and UML Modeling Team Foundation Client VS Pro Visual Studio Team Foundation Change Management Reporting Integration Services Build Server Work Item Tracking Project Site Project Management EMEA
Service-Oriented Architecture model Number 1 Application Designer Port Details editor EMEA
Logical Infrastructure Designer Number 2 Infrastructure Designer Services assigned to logical infrastructure Architecture validated against operational settings and constraints EMEA
Class Designer and two-way code synch And the last. Class designer EMEA
Agenda - Service Oriented Architecture - Web Services and Integration - Web Services and maturity - Services in the future EMEA
Web services is the only way to do integration ! "Every generalization is dangerous, especially this one. " — Mark Twain EMEA
A basic web service is not always OK ! Messaging Metadata Security Reliable Messaging Transactions • Encryption • Guaranteed delivery • Coordinated activity • Authentication • In order processing • Atomic transaction • Authorization • Idempotency • Business activity • Non-repudiation Reliable • Federation Security Transactions Messaging Transactions Reliable Security • Trust Messaging XML • Data • Schema • Interoperability XML Messaging • Functional data • Operational data • Address services & resources • Attach binary data Metadata • Service description • Policy • Discovery EMEA
Integration WS-I JVM Windows Linux J CA eb XM L J TA JM S Se c u r i ty Ad a p t e r s O r c h e st r a t i o n ES ES M SM Q Se c u r i ty J 2 EE CLR EMEA . NET
EMEA
Existing Client/Server Application Enterprise Integration? DCOM Database Client Application (VB 6, Delphi or Power. Builder) Server Components EMEA
C/S 1: Expose Database Enterprise Web Service Façade DCOM Database Client Application (VB 6, Delphi or Power. Builder) Server Components EMEA
C/S 2: Expose Server Enterprise Web Service Façade DCOM Database Client Application (VB 6, Delphi or Power. Builder) Server Components EMEA
C/S 3: Expose Client Web Service Façade Enterprise DCOM Database Client Application (VB 6, Delphi or Power. Builder) Server Components EMEA
Web Services: Messaging and more Web services provide the benefits of messaging w loose-coupling w service oriented And more w vendor neutral w suitable for access through Internet EMEA
Web Services: Tenets Boundaries are explicit Services are autonomous Services share schema and contract Service compatibility is based on policy Tenet conformance gives better Interoperability Better Interoperability means stronger Integration EMEA
Web Services: Active community Web Services are expected to become the default Messaging solution in the future WS-* standards are evolving rapidly, most important w WS-Security w WS-Policy w WS-Addressing WS-I defines profiles, sample applications and testing tools w Profiles are guidelines for using WS specifications w Use Basic profile 1. 1 to build interoperable solutions Further research on WS is being carried out EMEA
Why integrate through Web Services? To get w Messaging and more w Tenets w Active community Required for external integration Beneficial for internal integration EMEA
Building Interoperable Web Services EMEA
Agenda - Service Oriented Architecture - Web Services and Integration - Web Services and maturity - Services in the future EMEA
The Web Services Maturity Model Drivers Technical Business Enterprise Industry/ Ecosystem Service Perspective Technical Interface Business Capability Business Product Domain Standard Service Deployments Integrated Architected Measured and Managed Federated Collaborations Internal Limited External Virtual Business Anonymous Momentum Extended Momentum Reengineered Standardized Early Learning Integration Reengineering Maturity Service Process EMEA
Phase 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 EMEA
Phase 2 – Integration Business process oriented Project level implementation Mostly internal usage EMEA
Phase 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 EMEA
Phase 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 EMEA
Agenda - Service Oriented Architecture - Web Services and Integration - Web Services and maturity - Services in the future EMEA
Microsoft SOA Technology Today ASMX (aka ASP. NET Web Services) Windows XP, Server 2003, . NET Visual Studio 2003 WSE 2. 0 Office System 2003 Biz. Talk Server 2004 SQL Server 2000 Tomorrow ASMX (VS 2005 enhancements) WSE 3. 0 Indigo (Beta) Visual Studio 2005 Longhorn (Beta) SQL Server 2005 Future Indigo Longhorn Federation Server Visual Studio 2007? (Orcas) EMEA
SOA Technology Roadmap WSE 1 WSE 2 WSE-n Indigo ASMX Enterprise Services. NET Remoting Com(+) MSMQ EMEA
Road to Indigo Secure, Reliable, Transacted – ASP. NET class Entity. Service { } [Web. Method] public void Add. Entity( string entity ) { // Custom security X 509 Certificate. Collection collection = new X 509 Certificate. Collection(); Int. Ptr blob = Marshal. Alloc. HGlobal(Marshal. Size. Of( typeof(CRYPTOAPI_BLOB))); Int. Ptr data = (Int. Ptr)((int)blob + Marshal. Size. Of(typeof(CRYPTOAPI_BLOB))); . . . // Custom reliable messaging Seq. Ack. Range range = new Seq. Ackn. Range( id, low, high ); Seq. Ack. Range[] ranges = { range }; Reliable. Queue. Process. Acks( ranges ); . . . // Custom DTC transaction context hr = p. ITx. Dispenser->Begin. Transaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, p. ITx. Options, &p. ITransaction); . . . } EMEA
Road to Indigo Secure, Reliable, Transacted – WSE class Entity. Service { } [Web. Method] public void Add. Entity( string entity ) { // Integrated WS-Security support foreach ( Security. Token token in request. Context. Security. Tokens ) { X 509 Security. Token x 509 = token as X 509 Security. Token; . . . } // Custom reliable messaging Seq. Ack. Range range = new Seq. Ackn. Range( id, low, high ); Seq. Ack. Range[] ranges = { range }; Reliable. Queue. Process. Acks( ranges ); . . . // Custom DTC transaction context hr = p. ITx. Dispenser->Begin. Transaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, p. ITx. Options, &p. ITransaction); . . . } EMEA
Road to Indigo Secure, Reliable, Transacted – Indigo [Confidentiality] [Reliability( Guarantees. Exactly. Once | Guarantees. In. Order )] [Service] class Entity. Service { } [Transaction. Coupling( Transaction. Coupling. Options. Required )] [Service. Method] void Add. Entity( string entity ) {. . . } EMEA
More information www. microsoft. se/arkitekt www. microsoft. com/interoperability www. ws-i. org/ EMEA
Please complete your session feedback form THANK YOU


