What Drives SOA, Business or IT?
Join the DZone community and get the full member experience.
Join For FreeMuch like the chicken and egg dilemma, in the SOA industry, there is
often a debate over which should come first -- business needs or
technology needs. That largely depends on the problem you are trying to
solve and whether it is a tactical or strategic solution that is
desired. Today's businesses are seeking real solutions to real problems
and the IT group is tasked with coming up with creative solutions that
actually provide value. Users are putting new demands on IT and
companies are experiencing a culture shift where IT and business
managers need to collaborate in order to effectively implement new
solutions. In addition, SOA deployments oftentimes don't move past the
initial pilot phase because further IT tools and infrastructure
spending required to grow such projects cannot be justified under the
umbrella of overall business strategy.
If the business wants a point solution to a specific problem then an
SOA doesn't make sense. For this type of problem, the IT team should
implement a tactical solution, whether it is a point-solution or a
home-grown application. This provides the least amount of risk and a
clear implementation path. However, if the business needs a solution to
help solve problems they have today as well as problems they don't even
know they have yet, then SOA is a valid solution and only the business
can make that determination. In this case, the business must drive an SOA.
One could argue that any organization should stop, take a step back,
and figure out what its real problems are first. That should result in
a strategic approach which would ultimately obviate all of the tactical
issues. Ultimately, the organization needs to determine if it wants to
solve its problems or just keep implementing short term solutions. This article authored by Peter Woodhull
and published at SOA Magazine on April 2009.
Introduction
The predominance of SOA has risen to the point where the industry is
now debating its demise. Articles and blog posts are declaring SOA to
be dead and are prognosticating the next computing paradigm that will
take the reins. However, this line of thinking is both myopic and
misdirected. Service-oriented architecture is neither dead nor is it
even on the way out. In fact, SOA has quite possibly just reached a
point where the more popular stance is to disseminate shortcomings
rather than discuss actual merits. As we have seen with other IT
strategies, this is typical when technologies and architectures reach a
plateau in the implementation and acceptance curve. The reality of
SOA's long-term viability has brought to light two important truths: 1)
SOA is no panacea, and 2) failures attributed to SOA are most often the
result of implementation methodology and design flaws.
A successful SOA requires an emphasis not on "web service," but simply
"service." SOA has the capability of enabling and providing services
when the architecture is implemented with the understanding that
serving is an inherently dynamic activity. A service provider may have
a particular domain of expertise, but the level, quality, quantity, and
intricacies of the service provided are largely dependent upon the
given customer. As such, a successful SOA implementation must be
focused upon a vision of customer-centric services that leverage
standardized capabilities in a dynamic and evolutionary manner.
However,
the technology architecture cannot be the only thing oriented toward
service. The IT group, the business group, and the organization as a
whole must be service-oriented. Service-orientation is a philosophy; it
is not a silver bullet. In fact, service-orientation can actually make
life harder. It is much easier to say that the current system cannot do
something therefore we (the company) cannot do it either. By
comparison, successful SOA implementations enable companies to say that
although we do not possess a capability today, we can have that
functionality in a few weeks if it will increase the value of the
service we are providing to our clients.
The
IT group must be a service provider to the organization as a whole.
This means recognizing its role as an enabler of the mission critical
processes of the business. There is no place in today's business market
for an IT group that limits the success of its host business under the
auspices of technical complexity, return on investment, or security. It
is the responsibility of the IT group to find a way to serve the
business.
The
business side of the equation must focus on the services it provides
its customers. It must then identify the functionality and features
necessary to provide better service. Then business can explain to IT
what it needs. However, business must own the responsibility for the
new functionality. It is no longer acceptable to throw business
requirements over the wall into IT and expect them to meet needs.
Business
needs to consider not only pure features such as integration points,
algorithms, and calculations, but also the processes it uses to provide
service. These processes must be discovered and/or captured so that
they can be documented and implemented. Those processes thereby become
artifacts of the organization and can be managed and controlled just
like any other IT asset.
So,
who should drive an SOA implementation? Historically, the IT group
would claim responsibility and the business executives were all too
eager to agree. Unfortunately, this has been the reason for innumerable
failed SOA projects. The reality is that business is the appropriate
driving force behind SOA, for only the business users have an
understanding of the core capabilities and strategic goals of the
organization.
IT as Profit Center
Which came first, the business or the IT group? Admittedly, at this
point in time there are many cases in which the IT group was there at
the onset of a new business. In fact, many current businesses only
provide technology capabilities and services. However, even in these
businesses, technology is just a means to an end - it is simply a
product sold to a customer to support a business. All successful
businesses provide a service to customers and ultimately satisfying
those customers takes precedence over everything else. Over the last
few decades, technology has played an increasingly important role in
that equation. However, the IT group has almost always been considered
a cost center rather than a strategic corporate resource. This is
because companies have had to expend more money on their IT
organizations, including both computer systems (hardware and software)
as well as human resources, than those IT organizations have
generated... or at least that is, to a great extent, the common
perception.
Over the last decade, however, we've seen a convergence of capabilities
that are set to propel IT groups to the forefront of business as
potential profit centers. At the very least, the status of IT as a
considerable cost center will diminish significantly. Seven technical
capabilities that are contributing to this trend are:
1. Moore's Law
the
cost of computing power has diminished to the point where computing
resources have become commodities and relatively inexpensive business
expenses
2. The Internet
the
Internet and its infrastructure have grown to the point where any
computer connected to the network can be accessed from anywhere in the
world
3. Server Virtualization
the
proliferation of virtualization stands to significantly diminish the
financial and human costs associated with the administration and
ownership of corporate server infrastructures
4. Cloud Computing
computing in the cloud enables any organization to harness the resources of a virtually limitless computing infrastructure
5. Legacy Systems (technology & logic)
legacy
computer systems that codify critical business logic and processes
already exist in many corporate environments - the new challenge is
orchestrating the capabilities these systems provide into new and
meaningful services
6. Handheld Devices
cellular
handheld computing platforms are now powerful enough to satisfy the
computing needs of an increasingly significant portion of the
population
7. Computer Savvy Human Resources
clients
and users have grown significantly savvier regarding their computing
and communication capabilities - many users are now able to administer
their own computers and customers are demanding higher levels of
service from the companies and organizations with which they interact
This
list of seven factors is by no means comprehensive, but it is exemplary
of the advances in computing that have combined to produce a technical
atmosphere within which all information should be accessible and
potentially incorporated into any transaction. Additionally, the speed
of technology adoption continues to accelerate at a break neck pace.
Accordingly, customers are demanding new and improved capabilities from
service providers. More importantly, the capabilities being demanded
are inherently technology oriented. Customers want anytime, anyplace
access to their information and expect service providers to make this
information accessible regardless of where it is stored or what type of
system it is stored on.
These types of customer services can only be met by better utilization
of technology. This means that the IT group within any organization
that wants to succeed in the future needs to focus upon becoming
service-oriented itself. The business and IT teams must start
collaborating to identify opportunities to provide new and better
services to customers. This is how the IT group will start to transform
itself into a profit center.
For example, Google provides an incredibly powerful and important
service, yet when was the last time you heard of anyone calling Google
to get support, ask a question, or check on the status of something?
This almost never happens because Google understands that its business
model relies on the ability to provide simple, intuitive, accurate
services and that all the technical magic must be hidden from the
customer. Google excels at this type of customer service because it
recognized very early that the only way to properly utilize technology
in the current environment was to make it part of the strategic plan
for the organization.
IT
must be part of any successful organization's strategy for success in
the next decade. Increased computing power, increased connectivity,
better educated users, and a global business environment are all
contributors to a new business paradigm in which success will only be
achieved via the strategic utilization of technology.
No Strategy... No SOA
SOA
is an inherently strategic approach to computing. Service-orientation
is a means by which distributed systems are designed, developed, and
implemented. Why do organizations create distributed systems? They do
it because they want to build robust, scalable, and extensible
solutions to problems that exist today and in the future.
Thomas Erl popularized the seven strategic goals of service-oriented computing in his books [REF-1]:
- Increased Interoperability
- Increased Federation
- Increased Vendor Diversification
- Increased Business and IT Alignment
- Increased Return on Investment
- Increased Organizational Agility
- Reduced IT Burden
All seven of these strategic goals are things that any corporate
executive should consider legitimate and valuable. Of course, all
organizations would like to find a way to achieve these seven goals;
but, how many are willing to work and pay for them? This is the hidden
dilemma of a good strategy... it is difficult and expensive.
At this point, most corporate executives recognize the significance of
the seven technical advances discussed in the previous section.
Additionally, all organizations want to leverage their technology
resources better. However, not proceeding with a SOA project properly
can be extremely costly and frustrating. The underlying requirement for
a successful SOA implementation is a solid business strategy that has
the resources and financial backing of the organization.
The first step for any organization that wishes to implement an SOA is
to step back and consider the goals of the organization. The business
group and the IT group must actively engage in a constructive
conversation during which the business explains what services it would
like to provide customers and the IT group subsequently explains how
those services can be facilitated via modern computing capabilities.
Additionally, new customer facing services will often emerge from this
conversation as IT explains what is possible and business incorporates
those capabilities into its service offerings. Ultimately, the most
significant artifacts derived from this exercise should be a
universally understood set of business goals, a concrete technical
strategy with which the organization expects to meet those goals, and a
legitimate understanding of the costs and resources necessary to
implement that strategy.
In organizations where the conversation between business and IT evolves
into a consistent dialog focused on creatively meeting customer needs,
there often develops an environment in which IT starts to transform
into a pseudo-profit center. This happens because the IT group now has
a clear understanding of what the business group is trying to
accomplish and they can provide informed support as well as creative
solutions to both legacy and emerging customer requirements. This is an
environment within which an organization can implement and deploy a
service-oriented architecture that will provide the benefits of Erl's
seven strategic goals of SOA.
Not
all organizations, however, are able to start at the strategy table to
identify the needs for an SOA. Fewer still are able to honestly
quantify the cost and effort required to implement service-oriented
solutions to their strategic goals. More often than not, the IT group
proposes an SOA as a purely technical approach to meeting current
concrete software requirements. In this scenario, IT instantly becomes
responsible for the construction, implementation, marketing, sales,
support, and financing of the SOA. This is where most failed SOA
implementations fall apart because the IT group is not professionally
equipped to be successful with this type of effort.
For organizations that do not consider SOA a strategic initiative, an
SOA implementation could be fairly risky. In particular, an SOA
implementation will be risky for the IT group as they will be the sole
responsible party expected to produce all the benefits of an SOA while
avoiding or mitigating all the risks. Additionally, the IT group will
be responsible for paying for the implementation. This is not the
environment into which any organization should embark on an SOA
implementation. Under these circumstances, a conscious decision should
be made to leverage more traditional technology solutions. There is
nothing wrong with identifying a single problem or problem domain and
purchasing a point solution to solve it. Similarly, there are
situations where building a custom application either in-house or
out-sourced is the best option. These tactical solutions to specific
problems are as valid today as they ever have been. In fact, in light
of the current business and economic situation, companies should be
increasingly focused upon leveraging these tactics when appropriate.
These tactical solutions can and should be utilized within the
strategic vision of an SOA implementation and they are critically
important if there is no strategic vision for a service-oriented
architecture.
All Strategy is Business Strategy
As
stated previously, SOA is not a silver bullet. It is also not something
that can be bought. Service-orientation is a philosophy and
service-oriented architectures are complex systems that take
significant time and effort to evolve. Accordingly, a successful SOA
implementation requires a substantial commitment on the part of the
organization as a whole; a commitment of time, resource, and finances.
A service-oriented architecture enables organizations to provide
services to both internal and external customers. Additionally, it
allows organizations to solve current business problems and properly
positions them to be able to react to changing business and customer
demands. In turn, a SOA also facilitates the creation and
implementation of client-facing services which provide new and enhanced
capabilities. For these reasons, SOA is an inherently strategic
endeavor. Additionally, all of these reasons coincide with common
business goals associated with any successful business. These benefits
should be part of any successful business strategy and accordingly a
service-oriented architecture clearly falls within the purview of this
business strategy.
All
of this points to the realization that SOA is a strategic solution to
proper utilization of technology resources. Strategic solutions within
an organization cannot be successfully owned and implemented by a
single organizational group. More importantly, they cannot be owned and
implemented by an IT group that is a pure cost center and only provides
static solutions to internal customers. Such a solution must be owned
by the business group and managed as a mission critical business
process that impacts everything else the organization does. Considering
the amount of customer interaction most organizations do today
electronically it is really a wonder that most have not already made
this transition.
Simple point solutions are still absolutely requisite for most
organizations. Such solutions have very clear implementation paths,
they are cost constrained, functionally bounded, and have very well
understood impacts on both internal and external customers. However,
these types of solutions can be purchased and implemented out of the
box only because of their limited scope and capabilities. Commercial
software products and custom built applications are undeniably the
responsibility of the IT group. These are tools that provide limited
capabilities to customers and need maintenance and administration. But
that is for the most part the extent of the management necessary; hence
their status as tactical solutions.
This is clearly contrary to the scale and strategic nature of an SOA.
For this very reason, to be successful, an SOA project must be owned
and managed by the business group of an organization. The very people
who are responsible for the strategic vision and goals of the
organization must also be responsible for the service-oriented
architecture. This is the only way that the necessary resources and
costs of an SOA can be accurately incorporated into long term plans.
Conclusion
Can an organization successfully complete an effective SOA project that
is driven by the IT department? Certainly there are examples where this
is the case. There must be, but they are not widely publicized which
would imply that their success is somewhat limited. However,
organizations that embrace service-oriented architecture as a core
component of their strategic plans find that business should be the
driving force behind an implementation. This brings both business and
IT into the strategic planning activities which helps to build a
stronger organization and facilitate the real value proposition of SOA.
Additionally, it fosters an environment in which business and IT can
work together to enhance current customer services and identify new
services that can only be provided via proper utilization of
technology. Ultimately though, all organizations that want to be
successful with SOA must come to the realization that IT is neither
equipped nor empowered to properly deliver on the promises of SOA
without the appropriate support and mandate from business.
References
REF-1 - Prentice Hall Service-Oriented Computing Series from Thomas Erl, Upper Saddle River, NJ, Prentice Hall.
This article was originally published in The SOA Magazine (www.soamag.com), a publication officially associated with "The Prentice Hall Service-Oriented Computing Series from Thomas Erl" (www.soabooks.com). Copyright ©SOA Systems Inc. (www.soasystems.com)
Opinions expressed by DZone contributors are their own.
Comments