soa-introduction
soa-introduction
Paul A. Strassmann
Professor of Information Sciences
Volgenau School of Information Technology and Engineering at George Mason University
http://www.strassmann.com/
Characteristics
Integration
● “mesh-up” of different services
– does a newspaper qualify as an SOA?
● an application
– various services linked together
– really an ad-hoc application
Scope
● narrowly focused
● services are simple and generally perform a single task
Characteristics
Dependency
● deployment
● execution
● usage
– need to know what a service expects and what it returns
Stateful vs. Statelessness
● ask the class??
Characteristics
Loose coupling
● service bindings can change whenever
– different but equivalent services can execute at different times
● interface definition does not change
Reusability
● desirable to have reusable services
Characteristics
Independent of
● Platform
● Implementation
Discoverable Service
Broker
● published Publish
Discover
● discovered via
discovery mechanisms Service Service
Consumer Provider
– UDDI – web services
service
service
– simple search client service
service
Ian Gorton, Essential Software Architecture
Considerations
Performance
● Computational penalties
– introduction of extra layers
– slower then native/binary RPC
– Do we need to use XML based RPC?
● Communication latency
Evolution
● how should we handle legacy systems
– wrap the legacy system in service wrappers
Considerations
Service granularity
● reuse vs. performance
Fault-Tolerance
● partial failure vs. complete failure
● idempotent request
Service agreement
● availability, cost,
● performance
Considerations
Governance
● increases in difficulty
– with an increase in diversely deployed services
– many service providers
● meta-data management
● trust