Welcome!

Microservices Expo Authors: Liz McMillan, Pat Romanski, Elizabeth White, Mehdi Daoudi, Yeshim Deniz

Related Topics: Microservices Expo

Microservices Expo: Article

SOA Web Services Editorial — Development Blues

Nothing is more enlightening for a technologist than to observe development in progress

Nothing is more enlightening for a technologist than to observe development in progress. We're faced constantly with a bewildering array of choices and tools. We see specifications on paper that then become something completely different when we actually get to see them implemented in actual software that we then configure to meet our needs, or at least we hope.

I've been spending some time working with a team doing an SOA proof-of-concept test and it's reminded me of what an open book the world of SOA is, and how few pages have really been written in it. The migration of ideas to specifications, and then their transformation within software is a strange process.

Given that SOA has so many optional parts, it's not hard to understand how difficult it is for a vendor to put together a product that actually guides developers in the development process. In what may be the biggest irony of SOA, the technology that we use to enable interoperability is really a set of standalone software, distinct and separate from one another.

If you think about it, there is a logical progression of development for SOA, but because so much of SOA is about enabling communications with existing software rather than creating new services from scratch, there is no one typical development path. This is unfortunate, because the current situation is very similar to a least-common denominator approach, one where each aspect of development is distinct and isolated. You have one console for creating UDDI registry entries, another tool for creating WSDL and other documents, yet another tool for the actual coding of a service, and still another, different place for defining security entitlements. None of which are aware of one another. This makes development a fragmented, disjointed process.

Some may argue that it has to be this way for a toolset to support the broadest range of capabilities. I would agree, but I also think it's possible to create an SOA-focused development tool in the same way that folks like Borland created a Java editor that understood the environments in which it was used. In the same way that code editors today can understand the differences between BEA WebLogic and IBM WebSphere, there is a need for a development environment that understands the various standards as well as the concrete implementations of those standards and how to interface with them to make a development process seamless.

I am well aware this is not as trivial as it sounds. Just keeping an environment in synch with the various levels of specifications is not trivial. Supporting the latest is never enough - think about what would happen if the actual deployment environment is behind in revisions and needs a previous version. Now add to that differing implementations of standards by various vendors and you can begin to imagine the scope and depth of this problem. A good number of vendors have shied away from even contemplating a solution to the issue, preferring to believe there is no solution.

That's a problem, and an opportunity. SOA is too complex to be implemented piecemeal by cobbling together a set of tools. There is a strong need for a product to manage the complexity and variety of the process in a structured fashion. While XML editors such as XML Spy are very good at what they do, what's really needed is a more structured approach to creating services that removes the need to edit XML at all in favor of a more integrated approach that allows the developer to see into the whole process. Simple services are easy enough, but once we start to build complex, composite services that use things like WS Transactions or WS Orchestration, there needs to be a holistic view of the entire process, including the documents and descriptions that go along with service deployment.

This issue focuses on development tools, techniques and practices. We'll show you how to do SOA now, and let you think about how it should be done better in the future.

More Stories By Sean Rhody

Sean Rhody is the founding-editor (1999) and editor-in-chief of SOA World Magazine. He is a respected industry expert on SOA and Web Services and a consultant with a leading consulting services company. Most recently, Sean served as the tech chair of SOA World Conference & Expo 2007 East.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Microservices Articles
The explosion of new web/cloud/IoT-based applications and the data they generate are transforming our world right before our eyes. In this rush to adopt these new technologies, organizations are often ignoring fundamental questions concerning who owns the data and failing to ask for permission to conduct invasive surveillance of their customers. Organizations that are not transparent about how their systems gather data telemetry without offering shared data ownership risk product rejection, regu...
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple cloud provider environments. Yet, despite this portability promise, developers may include configuration and application definitions that constrain or even eliminate application portability. In this session we'll describe best practices for "configuration as code" in a Kubernetes environment. We will demonstrate how a properly constructed containerized app can be deployed to both Amazon and Azure ...
DevOps is often described as a combination of technology and culture. Without both, DevOps isn't complete. However, applying the culture to outdated technology is a recipe for disaster; as response times grow and connections between teams are delayed by technology, the culture will die. A Nutanix Enterprise Cloud has many benefits that provide the needed base for a true DevOps paradigm. In their Day 3 Keynote at 20th Cloud Expo, Chris Brown, a Solutions Marketing Manager at Nutanix, and Mark Lav...
The now mainstream platform changes stemming from the first Internet boom brought many changes but didn’t really change the basic relationship between servers and the applications running on them. In fact, that was sort of the point. In his session at 18th Cloud Expo, Gordon Haff, senior cloud strategy marketing and evangelism manager at Red Hat, will discuss how today’s workloads require a new model and a new platform for development and execution. The platform must handle a wide range of rec...
The Internet of Things is clearly many things: data collection and analytics, wearables, Smart Grids and Smart Cities, the Industrial Internet, and more. Cool platforms like Arduino, Raspberry Pi, Intel's Galileo and Edison, and a diverse world of sensors are making the IoT a great toy box for developers in all these areas. In this Power Panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists discussed what things are the most important, which will have the most profound e...
If your cloud deployment is on AWS with predictable workloads, Reserved Instances (RIs) can provide your business substantial savings compared to pay-as-you-go, on-demand services alone. Continuous monitoring of cloud usage and active management of Elastic Compute Cloud (EC2), Relational Database Service (RDS) and ElastiCache through RIs will optimize performance. Learn how you can purchase and apply the right Reserved Instances for optimum utilization and increased ROI.
TCP (Transmission Control Protocol) is a common and reliable transmission protocol on the Internet. TCP was introduced in the 70s by Stanford University for US Defense to establish connectivity between distributed systems to maintain a backup of defense information. At the time, TCP was introduced to communicate amongst a selected set of devices for a smaller dataset over shorter distances. As the Internet evolved, however, the number of applications and users, and the types of data accessed and...
Consumer-driven contracts are an essential part of a mature microservice testing portfolio enabling independent service deployments. In this presentation we'll provide an overview of the tools, patterns and pain points we've seen when implementing contract testing in large development organizations.
In his session at 19th Cloud Expo, Claude Remillard, Principal Program Manager in Developer Division at Microsoft, contrasted how his team used config as code and immutable patterns for continuous delivery of microservices and apps to the cloud. He showed how the immutable patterns helps developers do away with most of the complexity of config as code-enabling scenarios such as rollback, zero downtime upgrades with far greater simplicity. He also demoed building immutable pipelines in the cloud ...
You have great SaaS business app ideas. You want to turn your idea quickly into a functional and engaging proof of concept. You need to be able to modify it to meet customers' needs, and you need to deliver a complete and secure SaaS application. How could you achieve all the above and yet avoid unforeseen IT requirements that add unnecessary cost and complexity? You also want your app to be responsive in any device at any time. In his session at 19th Cloud Expo, Mark Allen, General Manager of...