Business Ecology Initiative & Service-Oriented Solution

Michael Poulin

Evolution of principles of Service Orientation: Service Statelessness, part 6

user-pic
Vote 0 Votes

Service Statelessness principle is one of the most ambiguous among SO principles. Actually, it is not the fault of the principle definition but rather an inherited 'understanding' of similar concepts from other technologies. Additionally, the initial definition of the principle - 'services are stateless'- has contributed to this problem.

I assume that aforementioned definition was read similarly to the definitions of stateless and stateful EJB. That is, services should not maintain consumer state between service invocations. At that time, the explanation of the statement 'services are stateless', given by T. Erl, talked about different meaning: 'This principle states that services should minimize the amount of state information they manage, as well as the duration for which they remain stateful. ... state information usually represents data specific to a current service activity. While a service is processing a message, for example, it is temporarily stateful'. The words 'services should minimize the amount of state information they manage' unmistakably show that service may be as stateful as needed because minimum amount of state information does not necessary mean no state information.

It is obvious that statelessness supports scalability of a SO solution. However, we should not forget that scalability is not the absolute requirement in all cases in the life, it depends on particular business needs and used technique. For example, if service body is implemented using asynchronous communication with service's parts, i.e. it releases original invocation almost immediately or becomes available for another consumer right away, can we insist that service should not maintain the consumer state?

Back to 2006, T. Erl said: 'For a service to retain as little state as possible, its underlying service logic needs to be designed with stateless processing considerations', which is crystal clear. Why, in this case, wrapping legacy systems with 'services' (more accurately, with Web Services) was considered as SOA implementation? It is more than less likely that the legacy system is not stateless, i.e. such wrapping can barely comply with 'services are stateless'...

Contemporary definition of this principle states: 'Services minimize resource consumption by deferring the management of state information when necessary' declares that services may be stateful or stateless 'when necessary'. According to the SOA: Principles of Service Design (by T. Erl) book, 'There are different levels of statelessness a service design can achieve, depending on the frequency of state deferral and the quantity of state data being deferred. These levels are usually specific to each service capability.' While I certainly agree with this conclusion, I find the current name of the principle - Statelessness - rather misleading.

I think so because SO principles are not the principles of technology or technical design only. Nowadays tendency extends Service Orientation and shifts it from a pure technical mechanism into a business-oriented concept. In other words, SO design reaches its maximum value when and only when it models real business services and processes. In the business world, there are no many stateless business services, functions, features and processes. Following this logic, corresponding SO principle may not promote one state model over another model, it has to be agnostic to the model to become flexible enough to address actual business needs. Thus, the name 'Service State Management' for the SO principle, dealing with the service state model, seems to me more suitable for the task.

(to be continued)

Thumbnail image for Speaking_Qcon_London_03.jpg

No TrackBacks

TrackBack URL: http://www.ebizq.net/MT4/mt-tb.cgi/15333

Leave a comment

Business and Technology ideas, concepts, methodologies and solutions leading to Service-Oriented Enterprise - the primary instrument for obtaining business objectives in fast changing environment

Michael Poulin

Michael Poulin is an enterprise-level solution architect working in the financial industry in the UK and USA.

He specializes in bridging between Business needs and Technology capabilities with orientation on business and technical efficiency, scalability, robustness and manageability. He writes about service orientation, application security and use of modern technologies for solving business problems. Michael contributes to OASIS SOA standards as an Independent Member; he is listed in International WHO's WHO of Information Technology (Historical Society) for 2001. View more

Subscribe

 Subscribe in a reader

Recently Commented On

Categories

Tag Cloud

'Navigating the SOA Standards Landscape, abstraction, active service, ADM, adopt changes, aggregate service, AIA, analysis, API, application, Application Integration Architecture, Architect, architect, architectural mission, architecture, Architecture, architercture, B-SOA, BAWG, BEI, Best Practice, bottom-up, BPEL, BPM, Busienss, busienss case, Business, business, Business Architect, Business architecture, business architecture, Business Architecture, Business Architecture Working Group, business concerns, business data, Business Ecology, business efficiency, business model, business operational model, business organisation, Business Platform Division, business process, Business Process Designer, Business Requirements, business risk, business service, Business service, Business SOA, business value, business view, business-centric, Business-IT problem, capability, CBDI, CBM, choreography, Cloud, Cloud Computing, COBA, collaboration, Collaboration, collaboreation, commodity, component, composition, concept, Conciliator, consumer, COSMIC, cost, cost estimate, cost of ounership, cost of ownership, crisis, CRUD, culture, Cutter Consortium, data ownership, data service, data store, DDD, decision logic, decomposition, demand, design, Design Pattern, development, domain, Domain, Domain Aggregate, Domain Events, Domain Service-Oriented Modelling, DOSOM, DOSOSM, driver, Dynamic Process Edition, EA, EDA, efficiency, end-to-end, Enterprise, Enterprise Architect, Enterprise Architectural Framework, enterprise architecture, Enterprise Architecture, ERP, ESB, event, Event, execution context, Execution Context, expertise, failure, feature, Flexibilit, flexibility, FPA, FSM, Full Functional Points, Functional Points, functionality model, future, Gartner, Governance, governance, granularity, harmonization, Healthcare, IBM, identiy credential, IEEE 1471, IFPUG, implementation, intangible value, Integration-Oriented Architecture, intent, interface, interface orientation, IOA, IT, IT Architect, IT Operation Support, IT organisation, IT without the IT Department, ITIL, Ladder to SOE, leasable Cloud, lease, Loose coupling, Lost in Translation, Management, Manifesto, market, MDA, Michrosoft, Mike Rosen, model, Model-Driven Approach, modelling, Navigating the SOA Standards Landscape Around Architecture, navigation, OASIS, OASIS SOA RA, OASIS SOA RAF, OASIS SOA Reference Architecture Foundation, OASIS SOA RM, ODBC, OMG, ONA, OO, Open Group, Oracle, orchestration, organizational change, participant, pattern, policy, principle, principle of separation of concerns, principles, priority, Private Cloud, Process, process, process-oriented, process-orineted, process-service, project, Provisioning, Pub/Sub, Public Cloud Busienss Requirements, QCon, RA, Real World Effect, Real World SOA, Referemce Architecture, Reference Architecture, Reference Architecture Foundation for SOA, Reference Model, Registry, rent, rentable Cloud, Repository, reuse, RIA, risk, RM, ROI, RPC, rules engine, RWE, SCA, scalability, security, service, Service, Service Autonomy, Service Composability, Service Contract, service contract, service description, Service Description, Service Discoverability, Service Execution Context, Service Orientation, service orientation, Service Oriented Enterprise, Service Relative Autonomy, Service Reusability, Service Separation of Concerns, Service State Management, Service Statelessness, service-oriented, service-oriented eco-system, service-oriented enterprise, Service-Oriented Enterprise, service-oriented environment, ServiceContract, seven properties that differentiate emergent architecture from the traditional approach to EA, situational, sizing, SLA, SO, SO environment, SO Principles, SOA, SOA Manifesto, SOA standard, SOA-RAF, SoaML, SOBA, social networking, SOE, SOEA, solution SOA, SOMA, Spring, standard, study, Summit, supply, T-SOA, tangible value, Technical Architect, Technical Architects, Technical Architecture, technical capabilities, Technology, technology, The Open Group, TOGAF, TOGAF 9.0, top-down, UI, UI Mediator, use, Value Chain, Value Network, Value Networks, view, view model, viewpoint, vision, VPEC-T, Web, Web Service, Web Services, WebSphere, WSDL, ZapFlash,

Monthly Archives

Blogs

ADVERTISEMENT