220 likes | 387 Views
CA Blue R0 G132 B201. CA Green R51 G158 B53. CA Gray R106 G105 B100. CA Dark Blue R0 G132 B201. CA Dark Green R51 G158 B53. CA Tint Gray 30 R218 G218 B203. CA Light Blue R0 G132 B201. CA Light Green R51 G158 B53. CA Tint Gray 10 R246 G246 B246.
E N D
CA Blue R0 G132 B201 CA Green R51 G158 B53 CA Gray R106 G105 B100 CA Dark Blue R0 G132 B201 CA Dark Green R51 G158 B53 CA Tint Gray 30 R218 G218 B203 CA Light Blue R0 G132 B201 CA Light Green R51 G158 B53 CA Tint Gray 10 R246 G246 B246 5CThe Plex SOA Strategy Daniel LeighDevelopment Director, CA Rob LayzellArchitect, CA
Agenda • SOA Overview • What is Service-Oriented Architecture? • SOA and Plex • What’s in the Plex SOA “Toolkit” today? • New Plex SOA Capabilities • Creating WCF Services with Plex • WCF Defined • WCF Service Generation • Questions & Answers
What is Service Oriented Architecture? • SOA stands for Service Oriented Architecture • At least everyone agrees about that! • No single definition • More a methodology than a technology • An evolution of component-based approaches
What is Service-Oriented Architecture? • Attributes of SOA: • Emphasizes reuse of existing applications • Incremental, built on current investments • Services can be “orchestrated” to build new applications or address new requirements • Expose interfaces to applications • Implementation should be hidden from consumers of the service. • Standards-based
What is Service Oriented Architecture? • Attributes of SOA • Services aim to be loosely-coupled • Independent of specific program languages or platform • Resilient to change • Limited dependencies between services • Services support distributed computing • Web Services represent the most common technology • WSDL, XML • .NET and Java are the most common platforms for delivering web services • But web services is not the only technology
Service Orchestration & BPM Tools ERP Business Applications Eclipse Clients Visual Studio .NET Web Client The World Outside Plex! Web Services Layer Plex Server Application (.NET, Java, System i) Plex Clients . Oracle SQL Server DB2 SOA and Plex Plex Application Layer Plex Database Layer
Web Services . Oracle SQL Server DB2 SOA and Plex Plex Application Layer Plex Server Application Plex Server Application Plex Application Layer Plex Server Application (.NET, Java, System i) Plex Clients Plex Database Layer
What’s in the Plex SOA toolbox today? • Plex is already capable of delivering web services and SOA • Model-based design environment • Encourages abstraction and interface-based design • Java and .NET generators • The “de facto” standard platforms for SOA implementations • Rich set of service APIs • COM and EJB Connector generation • Websydian TransacXML • XML document handling • Web service creation and consumption
New Plex SOA Capabilities • CA Plex r6.1 is currently in development • Planned to include a new service creation feature • Based on Microsoft’s Windows Communication Foundation (WCF) • What is WCF? • Let’s find out – over to Rob!
Windows Communication FoundationDefined Windows Communication Foundation (WCF) Enterprise Services ASMX WSE MSMQ .NET Remoting
Windows Communication FoundationRuntime Local Client Machine Client Proxy NetTcpBinding NetNamedPipesBinding NetMsmqBinding Service Host WCF Service BasicHttpBinding WsDualHttpBinding Internet Client Machine Client Proxy
Windows Communication FoundationEndpoints • Endpoint consists of three parts: • Address: Where is the service located? • Contract: What does the service offer? • Binding: How do we communicate with the service?
Windows Communication FoundationObject Model Plex Object Model WCF Object Model Code Library VS Project Package Namespace Component WCF Class Contract Interface Interface Contract Method Method Function Data Contract
Windows Communication FoundationInterface Contracts namespaceProductService { [ServiceContract(SessionMode = SessionMode.Required)] public interface IProduct { [OperationContract(Name="RunStockCheck")] ProductRunStockCheck_OutputRunStockCheck(ProductRunStockCheck_Input input); } }
Windows Communication FoundationData Contracts [DataContract()] public class ProductRunStockCheck_Input: PlexVariableGroup { [DataContract()] public class _StockCheckDetails { [DataMember()] public string StockCheckName; } [DataMember()] public_StockCheckDetailsStockCheckDetails; }
Windows Communication FoundationConfiguration • Default Plex .NET Runtime copied into WCF Service • Edit using .NET Management Console
Windows Communication FoundationDevelopment Workflow (1) Model (2) Generate (3) Build (4) Deploy Start Writing Clients!
Page based on Title and Text from Slide Layout palette. Design is 2_Default Design Slide Master Title text for Title or Divider pages should be either 40 pt for short titles /28 pt for subtitles or 32 pts for longer titles /24 pt for subtitles No DATE on divider pages. Questions &feedback? To reapply Master on Divider pages ONLY, [Format > Slide Design > Apply a design template: > (choose Design 1, 2, or 3) > Apply to Selected Slides]