For a complete list of the co-authors and contributors, see the end of the
The following section demonstrates the creation of a simple "Hello World"
service in a Windows Azure hosted application.
Note: If you are carrying out the upcoming steps with Visual Studio 2008, you
will need to be in an elevated mode (such as Administrator). A convenient way
of determining whether the mode setting is correct is to press the F5 key in
order to enter debug mode. If you receive an error stating "the development
fabric must be run elevated," then you will need to restart Visual Studio as
Also, ensure the following on your SQL Express setup:
SQL Server Express Edition 2008 must be running under the ‘.\SQLEXPRESS'
instance Your Windows account must have a login in .\SQLEXPRESS Your login
account is a member of the sysadmin role
If SQL Express isn't confi... (more)
A service inventory is a living body of services that individually will need
the freedom to evolve independently over time. What we learned when
documenting the SOA design pattern catalog is that there are patterns that
emerged not only at design-time but also during this post-implementation
evolutionary stage in a service's lifecycle.
There is one common scenario that repeatedly surfaced in many projects:
When we model and design services during early stages of SOA adoption we are
constrained by current infrastructure and technology. These constraints
require that we limit the s... (more)
One of the fundamental goals when designing service-oriented solutions is to
attain a reduced degree of coupling between services, thereby increasing the
freedom and flexibility with which services can be individually evolved.
Achieving the right level of coupling "looseness" is most often considered a
design issue that revolves around the service contract and the consumer
programs that form dependencies upon it.
However, for the service architect there are opportunities to establish
intermediate layers of abstraction within the service implementation that
further foster reduced... (more)
Should a service only be considered a service if it's reusable? The answer to
this question, as asserted by this pattern, is a firm "no." While agnostic
services (services providing multi-purpose logic with reuse potential, as per
the Agnostic Context pattern), receive the most attention during service
modeling and design phases, it can often be short-sighted to focus only on
agnostic service logic.
Non-agnostic logic represents any type of functionality that is unique to a
given business process or task. In other words, non-agnostic logic is
single-purpose in nature and therefo... (more)
Enterprise-wide harmonization is a desirable and ideal target state that
fully supports pretty much everything SOA and service-orientation stand for.
For those that have achieved such a state, bless your standardized hearts.
You have accomplished something that has eluded many others. However, not
attaining this state does not mean you cannot successfully adopt SOA.
In some circles it has become common to view an SOA initiative as an
all-or-nothing proposition that demands an uncompromising commitment to an
enterprise-wide transformation effort. For those that subscribe to this vi... (more)