Upload
noreen-gardner
View
214
Download
0
Embed Size (px)
Citation preview
Enterprise SOA at New Zealand Transport Agency. Thomas Erl and the Microsoft technology stack: A recipe for success
Peter Davies, Pat Ryan, Kiri Brown, Joel Guevara
ARC310
Introductions and this Session
Getting Business
Sponsorship
SO Delivery Strategy
Why Erl’s Methodolog
yPeter Davies – CTO for New Zealand Transport Agency
Pat Ryan – Strategy and Architecture Practice Lead for Resultex
Joel Guevara – Development Practice Lead for Inov8
Kiri Brown – Solution Architect and business SME (New Zealand Transport Agency)
Erl and Service Oriented Architecture
The source of the
Architectural Challenge
Erl’s Approach
Who is Thomas Erl?
Thomas Erl
“Before jumping into cloud, learn from the SOA experience”
http://www.zdnet.com/blog/service-oriented/before-jumping-into-cloud-learn-from-the-soa-experience/8438
Why Erl?He answers some really important questions:
What types of services do you need?
How do you “discover” services?
Where do you start?
The one big challenge with Erl
Educating the team
Read the Erl books
Workshops and coaching
Homework… and then lots of coffee and sugar!
The source of the first big opportunity!Both of these key self-service business processes include stand-alone payment logic somewhere in the process…
TollingRUC
By User:AlbertHerring (CC-BY-3.0 (http://creativecommons.org/licenses/by/3.0),via Wikimedia CommonsImage Copyright Sandy Gemmill. This work is licensed under the Creative Commons Attribution-Share Alike 2.0 Generic Licence.
Uncovering current functionality
By User:AlbertHerring (CC-BY-3.0 (http://creativecommons.org/licenses/by/3.0),via Wikimedia Commons
RUC has complex payments-related requirements
It has its own implementation for:
Payment processing
GL reconciliation and disbursement
Multiple bank accounts
Special legal requirements
Uncovering current functionality
Tolling has its own implementation for:
Payment processing
GL reconciliation and disbursement
Penalties
legal requirements …Image Copyright Sandy Gemmill. This work is licensed under the Creative Commons Attribution-Share Alike 2.0 Generic Licence.
Uncovering current functionality
And 14 other systems (that we know of) have used different approaches…
© Copyright Stephen Charles and licensed for reuse under Creative Commons Licence
And the proposed solution…
A new shared service that hides all the complexity and handles multiple types of payment items in a single request
Walterdale Bridge concept art. City of Edmonton handout
The SO Delivery Strategy
What the approach looks like
The principles used to guide the approach
Approach to adoption of
Service Orientation
(SO)
How the Agency approached SOBy understanding that:
The benefits will grow incrementally along the way
The journey will bring change for people, process and technology
The Agency are embarking on a journey
The principles behind the approach
Focus on quality first
Manage the growth and maturity
Take small incremental steps that are well planned
Some words from Gartner
“Ambitious, large-scale SOA projects will fail unless they're preceded by smaller projects that establish understanding, policies and best practices for SOA development.”
Applied SOA: Transforming Fundamental Principles into Best Practices, Gartner, 2007
What NZTA’s approach looks like
Services Strategy
ConceptIntegration
Strategy
Pilot
Foundation
Emerging SOA
Mature SOA
Pat and Joel Guevara
“Joel can field deep technical questions and demonstrate the tools and techniques we used outside this session if you would like to dig a bit deeper”
The Technology Challenges
Ongoing Challenges
The Critical Success Factor
Designing and Building the Services
In our Microsoft ecosystem we learned ... how to design and build the services:
How to model and then generate contracts
How to unit and system test services
How to approach Production deployment
How to prepare for the journey to “the cloud”
Web service standards we adopted•WS-I Basic Profile 1.2•WS-I Basic Security Profile 1.1•Simple Object Access Protocol (SOAP) 1.1•WSDL 1.1•XML 1.0•XSD 1.1
The number one critical success factor … is Business Domain Modelling … BUT
We often had:
Too many parties
Too many points of view
… leading to steadily increasing complexity
Further challenges we are facing
Controlling the versioning of contracts/code
Maintaining service levels over time
Security concerns (PCI)
Line-of-sight EDM -> Contract
Key design considerations
Contract first ,stateless, interoperable and platform agnostic services
Transaction management
Complex service compositions
Asynchronous processing and pub-sub
Getting Business Sponsorship
What did we learn?
Demonstrating capability
and commitment
Where did we start from?
Where did we start from?
Enterprise Service Bus project
Technology lead project
Business not engaged in project
Where did we start from?
Enterprise Service Bus project
Technology lead project
Business not engaged in project
2 projects with SO delivery
SO delivery funding
Demonstrating Capability and Commitment
Created a production ready service
Demonstrating integration to legacy systems
Demonstrated a solution to a business problem
SOA Project Watch-Points
Service Orientated delivery is like digging a mine
Projects Quality
Get involved in planning of business projects with SO delivery
“Don’t call it SOA” – call it something else, e.g. Reusable Services
Questions and Discussion
P.S. The initial Pilot produced comprehensive documents describing the technology, the technical methods and processes, the governance model and the business strategy for SOA
Our Microsoft EcosystemInfrastructure
Business Layer
Presentation Layer
Service Layer
Data Layer
UI Components
HTML5, CSS3
Core Client Side Framework
AngularJS 1.2
Core Server Side Framework
ASP.NET MVC 5
Cross-cutting
Presentation Logic
ASP.NET Web API,.NET Classes
Service Interfaces
Windows Communication Foundation 4.5
Object Relational Mapper
Entity Framework 6
Core Library
.NET Framework 4.5
Logging
Log4Net 1.2.13
Dependency Injection
Ninject 3.2
Service Contracts
WSDL 1.1, XSD 1.0
Business Entities
.NET Classes
Business Logic
.NET Classes
Message Security
WS-SecurityX.509 Certificate
Operational Management
Windows Server AppFabric 1.1
Server Operating System
Windows Server 2012
Web Server
Internet Information Services 8
Data Sources
Virtualisation
VMWare ESX 5
Database Server
Microsoft SQL Server 2012
Load Balancing
F5 BIG-IP
Development Tools
IDE
Visual Studio 2013
Build Server
TeamCity 8.1
Unit Testing
Visual Studio Unit Testing
Mocking
Moq
Source Control and Defect Management
Team Foundation Server
Resources
TechNet & MSDN FlashSubscribe to our fortnightly newsletter
http://aka.ms/technetnz http://aka.ms/msdnnz
TechNet Virtual LabsFree Virtual Hands-on Labs
http://aka.ms/ch9nz
Microsoft Virtual AcademyFree Online Learning
http://aka.ms/mva http://aka.ms/technetlabs
Sessions on Demand