Strategic Sponsors Sponsors and Partners Gold Sponsors Silver Sponsors.

Slides:



Advertisements
Similar presentations
Connected Health Framework
Advertisements

Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
Database Architectures and the Web
Building an Operational Enterprise Architecture and Service Oriented Architecture Best Practices Presented by: Ajay Budhraja Copyright 2006 Ajay Budhraja,
Enterprise Integration Architecture IPMA Professional Development Seminar June 29, 2006 Scott Came Director, Enterprise Architecture Program Washington.
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. Workflow utilization in composition of complex applications based.
SOA with Progress Philipp Walther Consultant. © 2007 Progress Software Corporation2 Agenda  SOA  Enterprise Service Bus (ESB)  The Progress SOA Portfolio.
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Technical Architectures
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
CSC-8530: Distributed Systems Christopher Salembier 28-Oct-2009.
Enterprise Architecture The Arkansas Approach. Key Areas What is enterprise architecture? Why is it important? How you can participate Current status.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
JMS Java Message Service Instructor Professor: Charles Tappert By Student: Amr Fouda.
Discussion on Service API Design for Arena ChMS Jason Offutt Software Engineer Central Christian Church
SOA, EDA, ECM and more Discover a pragmatic architecture for an intelligent enterprise, to maximize impact on the business Patrice Bertrand Software Architect.
Web Services Michael Smith Alex Feldman. What is a Web Service? A Web service is a message-oriented software system designed to support inter-operable.
Distributed Architecture Philosophy Why asynchronous messaging?
Word Wide Cache Distributed Caching for the Distributed Enterprise.
Evaluating Centralized, Hierarchical, and Networked Architectures for Rule Systems Benjamin Craig University of New Brunswick Faculty of Computer Science.
Three Design Patterns for Secure Distributed Systems Alan H. Karp Kevin Smathers Hewlett-Packard Laboratories.
1 NETE4631 Mobile Cloud Computing Lecture Notes #10.
Web services: Why and How OOPSLA 2001 F. Curbera, W.Nagy, S.Weerawarana Nclab, Jungsook Kim.
Administrative Technology Services: Enterprise Applications
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Distributed Computing Systems CSCI 4780/6780. Geographical Scalability Challenges Synchronous communication –Waiting for a reply does not scale well!!
SOA-25: Data Distribution Solutions Using DataXtend ® Semantic Integrator for Sonic ™ ESB Users Jim Barton Solution Architect.
Distributed Databases
Computing and SE II Chapter 9: Design Methods and Design Models Er-Yu Ding Software Institute, NJU.
Enterprise Integration Patterns CS3300 Fall 2015.
CERN IT Department CH-1211 Geneva 23 Switzerland t GDB CERN, 4 th March 2008 James Casey A Strategy for WLCG Monitoring.
Service-Oriented Architecture: An Approach to Information Sharing Regional Information Sharing Conference San Diego, CA November 28, 2006 Scott Came SEARCH.
Java EE Patterns Dan Bugariu.  What is Java EE ?  What is a Pattern ?
STORAGE ARCHITECTURE/ MASTER): Where IP and FC Storage Fit in Your Enterprise Randy Kerns Senior Partner The Evaluator Group.
The best of WF 4.0 and AppFabric Damir Dobric MVP-Connected System Developer Microsoft Connected System Division Advisor Visual Studio Inner Circle member.
Couchbase for Mobile Couchbase Lite & Sync Gateway
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
NSERVICEBUS Inspired by: The course authored by Udi Dahan Oslo/Fagdag Espen Ekvang/Tomas Jansson 01/03/2013.
AMSA TO 4 Advanced Technology for Sensor Clouds 09 May 2012 Anabas Inc. Indiana University.
Activiti in an Event- driven architecture Robin Bramley Chief Scientific Officer, Ixxus.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Architecting Web Services
WEB SERVICES.
Chris Menegay Sr. Consultant TECHSYS Business Solutions
eGovernance Services Delivery Framework
SOA (Service Oriented Architecture)
A Framework for Object-Based Event Composition in Distributed Systems
Architecting Web Services
University of Technology
#01 Client/Server Computing
Software Testing and Maintenance Designing for Change
Protocol Architectures
Pragmatic Event-Driven Microservices
WEB API.
Inventory of Distributed Computing Concepts and Web services
Java Messaging Service (JMS)
The Application Lifecycle
Java Messaging Service (JMS)
Inventory of Distributed Computing Concepts
ARCH-1: Application Architecture made Simple
SOA-1: Fundamentals of Service-Oriented Architecture
Distributed Databases
Enterprise Infrastructure
An Introduction to Software Architecture
Enterprise Integration
Standards, APIs, and Applications
ISO Open system Requirements and IT Needs
#01 Client/Server Computing
Software Testing and Maintenance Designing for Change
Presentation transcript:

Strategic Sponsors Sponsors and Partners Gold Sponsors Silver Sponsors

Why Service Oriented Architecture? Sean Farmar @farmar

The Evolution Small monolith Success == growth == features ++ Scaling Maintenance nightmare == high risk So we end up with …

Big Ball of Mud

So I went to my master

Solve the problem you want? Coupling your problem is… Hmmmm SOA your solution will be

Why SOA? SOA's tenets are about reducing coupling.

Coupling Afferent (dependents) Efferent (depend on) Temporal (time, synchronous communication) Spatial (deployment, endpoint address) Platform (protocols, .Net Remoting)

Coupling: Afferent & Efferent Afferent (dependents) Efferent (depend on) Afferent & Efferent solutions: Attempt to minimize Zero coupling is not possible

Coupling: Temporal Temporal (time, synchronous communication) Temporal solutions: Asynchronous messaging Publish Subscribe

Coupling: Spatial Spatial (deployment, endpoint address) Spatial solutions: Delegate service location to the infrastructure, not in application code

Coupling: Platform Platform AKA Interoperability (protocols, .Net Remoting) Platform solutions: XML on the wire. Use standards based transfer protocol like http “Share contract and schema, not class or type”

Fallacies of Distributed Computing The network is reliable. (Bill Joy and Tom Lyon) Latency is zero. (Bill Joy and Tom Lyon) Bandwidth is infinite. (Bill Joy and Tom Lyon) The network is secure. (Bill Joy and Tom Lyon) Topology doesn’t change. (Peter Deutsch) There is one administrator. (Peter Deutsch) Transport cost is zero. (Peter Deutsch) The network is homogeneous. (James Gosling) The fallacies of distributed computing describe common assumptions that are made by developers and architects in distributed systems. In 1994 Peter Deutsch wrote down seven fallacies. In 1997 James Gosling added another fallacy. These fallacies are known as “The eight fallacies of distributed computing”. In the year 2006 Ted Neward added three more fallacies, which are not so widely known. The system is atomic/monolithic. (Ted Neward) The system is finished. (Ted Neward) Business logic can and should be centralized. (Ted Neward)

Fallacies of Distributed Computing Three more... The system is atomic/monolithic The system is finished Business logic can and should be centralized Ted Neward’s blog: http://blogs.tedneward.com/post/enterprise- computing-fallacies/ The fallacies of distributed computing describe common assumptions that are made by developers and architects in distributed systems. In 1994 Peter Deutsch wrote down seven fallacies. In 1997 James Gosling added another fallacy. These fallacies are known as “The eight fallacies of distributed computing”. In the year 2006 Ted Neward added three more fallacies, which are not so widely known.

The Fallacies EBook Go to: http://go.particular.net/developerdays16 1 min.

In practice

In practice Business domain decomposition (entity fields) Vertical Slicing Using asynchronous messaging for state changing operation Publish subscribe Explicit intentions [naming, context] Single Responsibility Command Query Separation “Clean Code” (Uncle Bob)

Monolith Tight Coupling Loose Coupling UI BL DAL DB

Referential Integrity Vertical Slicing Tight Coupling Loose Coupling UI BL DAL Sales Content CRM Ops DB Referential Integrity Re-introduces Coupling

Publish Subscribe [pub/sub]

Publish Subscribe [pub/sub]

Sales Marketing Customer Care Place Order Save status locally Save pricing locally Subscribe to Product Pricing Updated Subscribe to Customer Status Updated Publish Product Pricing Updated Publish Customer Status Updated Marketing Customer Care Publish Order Accepted

Summary SOA/Microservices not a cookie cutter Be Pragmatic, sometimes a monolith is a great solution Avoid all aspects of coupling NServiceBus Particular.net Just do it

Q&A Thank You! Sean Farmar twitter: @farmar Particular.net

Strategic Sponsors Sponsors and Partners Gold Sponsors Silver Sponsors