RUNNING IT ON THE BASIS OF YOUR BUSINESS GOALS AND CAPABILITIES
AN OVERVIEW ON THE "GOAL-DRIVEN SOA" DEVELOPMENT PROCESS FROM HIGH LEVEL BUSINESS REQUIREMENTS TOWARDS THE SOFTWARE IMPLEMENTATION LEVEL
by Birol Berkem - GooBiz (Paris / France)
This introduction to the Goal-Driven SOA (1) Development Process gives you a brief insight on how to link your business vision, goals (2), strategies, tactics as well as business rules (3) and processes according to BMM (4), then bridging the resulting business model toward IT components in order to run your IT according to your business goals and capabilities (5).
(1) Goal-Driven SOA : A Service Oriented Architecture that focus on the alignment of IT system components to changing business decisions where services are managed according to business capabilities.
(2) Business Goal : "A statement about a state or condition of the enterprise to be brought about or sustained through appropriate means" [BMM]. For instance, in the case of a WebSale System, tactical means like Motivate Visitors to Register and Turn visitors into buyers support to the business goal Beneficial WebSale System.
(3) Business rule : A business rule is a statement that defines or constrains some aspects of the business [BMM]. In [Business Rules vs. Business Requirements], it is defined as a "Statement that tell you whether you may or may not do something" whilst a business requirement is "what you need to do to enable the implementation of and compliance with a business rule".
(4) The Business Motivation Model [BMM] - Business Governance in a Volatile World voted by the OMG in September 2005.
(5) Business Capability : A particular ability or capacity that a business may possess or exchange to achieve a specific purpose or outcome. A business capability describes what the business does (outcomes and service levels) that creates value for customers - [Business-Oriented Foundation]
1 Introduction : wHY USE CASES ARE UNABLE TO BRIDGE IT TO BUSINESS NEEDS ?
Since the last few years, organisations try to develop their software systems with use case driven and object-oriented development processes. The current practice of use case driven software development presents efficient techniques to capture requirements on the basis of usage scenarios of the system and good foundations for preparing test cases.
But, it does not allow organizations to react to changes swiftly and coherently due to three main reasons :
- Business Use Cases are not aware of business goals, strategies and tactics ; so changes on these high-level decisions are not traceable to impact IT level components,
- There is no capitalization on the business capabilities to reuse these capabilities to align IT with changes,
- There is a lack of visibility on the business rules as they are mixed within actor/system interactions inside use cases,
Such a lack of visibility of the goals and rules as well as traceability issue till the software implementations become an important obstacle for aligning IT implementations with the changing company goals and related business rules.
As a consequence important maintenance effort is required in order to adapt IT applications to changes.
For the same reasons, emerging SOA approachs that try to determine services on the basis of business processes and use cases suffer from the same agility issues.
In order to allow organizations to increase their business agility, a business goal-driven development process becomes necessary.
Such an approach must help stakeholders to model their business architecture starting by their high-level business goals, looking for business capabilities and processes that have to support them until identifying appropriate SOA services and finally use cases that invoke these services to realize alignment of the IT system with changes.
The Business Motivation Model Diagram [BMM] referenced in the figure 1 below shows only the first goal-driven relationships. Its basic elements that are considered as primary by the Goal-Driven Development Process [Goobiz] are indicated using dashed circles. As shown in this figure, business goals as part of the ends drive strategies and tactics, as well as directives (rules and policies) till business processes.
Some examples from Goals toward Business Rules for a WebSale System are given at the right of the figure.
Figure 1 : The Business Motivation Model for the Business Governance in a Volatile World [BMM] of the Business Rules Group voted by the OMG in September 2005
2 EXPLANATION OF THE BUSINESS MOTIVATION MODEL on a CASE STUDY
According to the elements of the Business Motivation Model and their relationships (indicated using dashed circles from right to left), the following schema shows for a Profitable WebSale Company vision, a partial instantiation of the relationships from ENDS, throughout MEANS and DIRECTIVE until BUSINESS PROCESSES.
On the basis of the vision that is fixed to be "a profitable customer focused web sale company", the business goal and the objective that quantifies the goal are presented as part of the ENDS at the right.
MEANS that explain how to attain this goal with the objective are represented by the strategy and tactics. The strategy is fixed to "Turn Visitors into Buyers" while tactics are set to "Motivate Internet Visitors to Register" and "Encourage Sale Employees via a bonus program".Once sufficiently detailed, such a collection of tactics may also be used to form an action plan.
The bottom part of the model illustrates DIRECTIVES that govern Strategies and Tactics. For instance, the tactic "Motivate Internet Visitors to Register" is governed by an enforced business rule that obliges the Marketing Staff to "Keep visitors on the website of the company" in respect to the policy "Maximise elapsed time of the visitors on the website".
A detailed explanation is linked to the business rule in order to express lower-level rules that might help to keep visitors on the website. Visitors should be motivated to register while consulting promotions offered by the company. Secondly, as part of the registration process, if the abandon rate is over than 30 % while filling their questionnaire, the Marketing should receive an alert to review the questionnaire for enhancement purpose.
Finally, these rules are to be used by the business process Register Visitors that realises the tactic given above, that is to "Motivate internet visitors to Register" as part of implementing the strategy "Turn visitors into buyers".
The diagram below is elaborated using the BizModeler tool from Xactium.
Figure 2 : A Partial illustration of the Business Motivation Model for a "Beneficial WebSale Company" Vision using a BMM Modeling tool
On the basis of these elements and their relationships, the figure 3 below shows an hierarchical view and detailed contents for the business goal, strategy and tactics that support this goal, till requirements that guide business processes.
It illustrates dependencies between these items from the business goal "Beneficial WebSale System " until strategies and underlying tactics (G1,G3, G4) that control processes.
Items that are labeled G1, G3 and G4 correspond to tactics that implement the strategy "Turn Visitors into buyers" .
At the right of the figure, the project browser shows underlying requirements for these items.
Figure 3 : List of the business goals, strategies, tactics and business processes as well as requirements that guide these processes
On the basis of these specifications, below we present steps of the Goal-Driven SOA Process from business goals through business processes until services and use cases that support their realization.
The section below gives a summary on these steps of the Goal-Driven SOA Development Process.
3 Steps for running I.T on the basis of BUSINESS GOALS AND DIRECTIVES
On the basis of descriptions provided in the previous section, the figure 4 below shows steps of the Goal-Driven Development Process that aim at running business on the basis of goals and directives guiding software developers in the implementation stage of IT components.
The Goal-Driven SOA Development Process is constituted of six steps. A very high-level overview of these steps is given by the snapshot below.
Figure 4 : Steps of the Goal-Driven SOA Development Process on the basis of BMM and business capabilities
The role of each step may be summarized as follows :
- Step 1 focuses on the description of business strategies, tactics, capabilities and processes on the basis of business goals
- Step 2 models business processes that realize business capabilities
- Step 3 describes how use cases invoke business capabilities
- Step 4 elaborates a first draft of the Goal-Driven SOA backbone, by transforming functional specifications of the business analysts related to step 1 to 3 into corresponding service-oriented software components.
- Step 5 describes underlying behaviours of software components toward their implementation
- Step 6 integrates behaviours of these software components into Goal-Driven SOA backbone as pluggable components
An application of these steps to our case study is given below using the Enterprise Architect (EA) case tool.
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License