Business Ecology Initiative & Service-Oriented Solution

Michael Poulin

New SO principle - principle of Service Separation of Concerns, Part 3

user-pic
Vote 0 Votes

The first and commonly known case where the SO principle of Service Separation of Concerns shows up is design of service granularity. Then, it becomes very important in the design of service interfaces. Finally, this principle plays significant role in the construction of aggregate or composite services.

If we take business functionality as the concern, we can get a tip from the business model on how separate the concerns. Business model defines business services, business functions, business features and business processes operating on business services, functions and features. A combination of mentioned entities makes a sense only if it represents cohesive business functionality. The entities may be split into smaller functional entities until those smaller entities make business sense, i.e. visible from and valuable for the business model.

For example, assume we have a business process of calculation of cost and at one point of the process the calculation results have to be passed to a party that validates them. In this process, the 'pass' is implemented as manual filling of a spreadsheet, which is mailed to validating team by internal mail. On the sender and receiver sides the spreadsheet is registered in books. If we make the spreadsheet available on the computer, e.g., in Excel, and will be able to attach it to the e-mail, do we change the process? No, we do not. If we create a programme/application that performs Excel functions in the user interface and wires calculation results to the validation application, do we change the process? No, we do not. The business process does not care how the calculation results pass from calculation point to the validation point; all related activities are not business activities but one or another form of implementation. This means, that we should not split our business process further and represent a business sub-process of data transmission between the point of calculation and the point of validation; there is no business process in such transmission and there is no a business services correspondingly.

It is interesting to note that the principle of Service Separation of Concerns works differently from the business and from the technical perspectives. Let us take a business function of generating a business report. This function has a few features such as: a) generate report only; b) generate report and notify all interested parties about this event; c) generate report and produce a hard copy (print); d) generate report and distribute it to the subscribers. Described is the business perspective. Technical perspective would be having a report generation service and independent notification, printing and distribution services. The latter three services can perform their tasks on reports, on commands and on any types of files. From the business perspective, only report generation service is meaningful; business is not interested how notification, printing and distribution are implemented whilst their QoS are acceptable.

This line of logic leads us to, at least, two consequences from the principle of Service Separation of Concerns:

1) business functionality that cohesively address one business task and can be reused as is should not be split further even if it contains more than one concern. For example, from business perspective, a report on a paper makes sense while a printing capability is pure technicality because the same report may be printed, written by hand, photographed, painted, etc., on the paper
2) technical functionality that supports one business task and can be reused as is for another task (i.e. being business subject independent) can be separated as a concern and implemented as related technical service.

Talking about service-oriented business applications (or products), I would define such application as a composition of business services, whose concerns are separated based on the business model, and supporting technical services separated by technical capabilities. The efficiency of the business-technical solution, that the SO business application is based on, defines the efficiency of the SO business application. That is, the more flexible the business solution (service composition) is, the higher the efficiency of the SO business application is.

Since flexibility of the business services directly depends on the flexibility of the supporting technical services, any extra dependencies in the technical services area affect business efficiency. Here is another line of arguments leading to the same conclusion: the concept of business continuity demands that all business functions have to be accessible and available when needed; if a business function depends on a technical service, which is a single point of failure, there should be another combination of business-technical services available that can bypass the failure if it occurs and perform the business task as expected. Thus, if a business service generates business reports, it has to be sure that the technical data service would provide for the data for the report in spite of any problems with the data store or network. Where the data service gets the data from (whilst the data is correct), whether the data stores are clustered and redundant or data service caches the data - all these are not the concerns of the report generating service, i.e. the report generating service has to be separated from the data service.

One more conclusion may be made based on principle of Service Separation of Concerns. The services that implement processes or compositions-aggregations include two types of serving entities: the working entities that provide their results for the composition and the managing entities that provide logical decisions of which working entity should work next. Both entities may be implemented as services that may engage other services, i.e. represent other compositions in turn. The SO principle of Service Related Autonomy states that ownership relations between the composite service and the services engaged into the composition are contractual, i.e. they follow the general rule of 'services that serve my service are not my services'. The same rule is applied to the relationship between the service consumer and the service. In other words, the service consumer should not know and does not want to know what services are engaged by the service facing the consumer. This means that the composite service is fully responsible (accountable) to the consumers for all offered functionality, which is irrelevant to who factually provides it - service itself or the engaged services.

At the same time, the principle of Service Separation of Concerns narrows the ownership of the composite service to it's own functionality (relationships with other services are contract-based). The combination of expanded accountability joined with narrowed ownership constitutes new operational concept that significantly distinguishes service-oriented environment from application-oriented environment. I am talking here about not only technical relationships but also about managerial, human relationships as well.

Working with services under separation of concerns principle creates unique operational conditions in both business and technology. The accent of these conditions is on service-ability rather than on delivery. That is, the delivered results are valued only if they serve the business needs. The principle of Service Separation of Concerns facilitates dedication to the collective results versus individual ones and defeats perfection in one area of the business service organisation at the expense of the other areas.


Reference Lable.JPG

No TrackBacks

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

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