Posts Tagged ‘SOA

31
Dec
09

2009: The Year Cloud Computing Reached The Tipping Point

By most accounts, 2009 was a bad year.  For some, an awful year.  But for cloud computing, 2009 will be looked back on as the year the movement reached the tipping point.  I don’t necessarily want to run through a year-end wrap-up, but I do want to take some lessons learned from 2009 and apply them to what I believe we’ll see in the year ahead.

The Question Without an Answer

What exactly is “Cloud Computing?”  The term will probably never be fully fleshed out in terms of a common definition, and at the end of the day that’s fine with me. Yes, we need to put structure around the term and the industry, but as we noted earlier in the year with a post about cloud maturity models, we run the risk of painting ourselves into a corner if we try too hard to make things fit neatly into buckets that we can easily classify and categorize. Taxonomy will be key to understanding and adopting cloud computing, but I’ve become convinced that in order to truly embrace the cloud, we must…

Embrace the Abstract

I had the opportunity to speak at Interop Las Vegas this year with Rick Nucci of Boomi and R. “Ray” Wang of Forrester Research, and when I made the statement that “cloud computing is the technical manifestation of Service Oriented Architecture,” I realized that I had found the unifying principle of cloud-based solution design; unifying both in the sense that the promise of SOA finally has the technology behind it to transform it from philosophy to practical design pattern, as well as in the sense that the term “cloud computing” itself was being co-opted in much the same way that traditional software vendors co-opted the entire concept of Service Oriented Architecture to sell middleware throughout the decade.

Cloud computing may mean many things to many people, but in the end its full potential can only be realized if we stop trying to think of it in terms of the “known known” and embrace the the “known unknown.”  More importantly, when we think about the cloud and applying SOA design principles, we cannot continuously innovate and drive value if we are traversing connections inward to rationalize patterns and explain the abstract with the known; we must restructure our patterns and embrace the abstract in an attempt to forge new connections by moving outward beyond our comfort zones. The next generation of system design is less about creating code, and more about assembling services – innovation through extending value in what already exists rather than inventing new sources of value.  In terms of practical application, this means moving up the stack and…

Learning to Describe Rather Than Prescribe

An interesting pattern that I observed throughout 2009 is the continuing tendency to try and reinvent the wheel despite the fact that not only has the wheel already been invented, but it’s right in front of our eyes and meets our needs 99 times out of 100.  I saw this over and over with Salesforce CRM and Force.com projects; the value of using Platform-as-a-Service is that someone else (or more accurately, thousands of other people) has already thought about just about everything you could possibly need in a data model, user interface, and business rules.  And not only have they published just about everything you could possibly want in an easily configurable platform, they host it and manage all of the operational details such as backups, upgrades, and security. Yet time and again I encountered teams that thought that their way of doing things was better, and would go down the path of trying to build Salesforce on Salesforce before realizing that the same outcomes could have been achieved by spending a little more time upfront optimizing business processes and making minor configuration changes than going down the path of creating complex custom workflows, classes, and user interfaces to achieve the same end.

Some case studies are extreme, such as the support manager that duplicated Contacts across multiple accounts and assigned multiple portal logins to customers – in one extreme case 101 times – rather than setting up sharing rules properly; I don’t have to tell you what a data quality nightmare that ended up being.  In other cases, it’s simply a matter of building rather than reusing what’s already there, resulting in hard-coding of attributes and logic that should be dynamic and extensible.

What I’ve come to realize is that there is a conceptual barrier that we need to overcome when it comes to metadata and other abstracted entities; because multitenancy architecture and SOA are reaching such a pervasive state, we must shift our thinking to describe what already exists rather than trying to recreate it.  Entities exist once and in perpetuity – for example, there is only one of you in the entire world and you cannot be recreated on demand – thus our ability to provide context necessarily requires us to describe the entity in a manner that provides value to the application; the ability to describe entities with deep domain knowledge and create relationships to other entities that enrich the value of the data set will become an important competitive differentiator.

This will take time and a great deal of trial-and-error until we get it right, but in the end it is the only way to leverage the tremendous potential of core cloud computing architecture patterns; our entire concept of producing and consuming services has to change, which leads me to the conclusion that…

SaaS is Dead…Long Live SaaS

Granted, the title of this blog predicates from the acronym for Software-as-a-Service, but as cloud services mature and the traditional technology stack gets blown up and reassembled, the entire concept of “software” shifts from the self-contained, monolithic packaged application to that of a delivery framework. Software was invented to make hardware useful; hardware is abstracted in the cloud and we no longer write code down to the kernel level – we assemble, configure, and code to the layer of abstraction of the specific cloud platform.  The term “software” will gradually fade from our lexicon.

This was the philosophy that drove the Java language and multi-platform virtual machine concept, and will continue to evolve with next generation rich Internet application frameworks such as Adobe Flex / AIR.  What we will see moving forward is the continuing shift from desktop software that interacts with the cloud, to ubiquitous frameworks that consume data and logic services from the cloud and leverage the processing capacity of the local machine to enhance the user experience.

2009 and its economic and sociopolitical malaise are now behind us, and by all accounts 2010 will be the year of the cloud. While the technology and the terminology of the cloud have permeated the mainstream, it will take significant shifts in thought processes and design patterns before the cloud can be fully leveraged.  Here’s to a great New Year and the hopes that the likes of Microsoft and other relics will accelerate their fade into obscurity and stop trying to steer the cloud discussion back into a box.  Until next time, here are some…

Other 2009 Wrap-ups and 2010 Predictions

Jeff Kaplan: Key Challenges Facing Cloud Computing in 2010 and Beyond
Phil Wainewright: Tips from 2009 for a prosperous 2010
Dave Barry’s year in review: 2009 (Humorous, non-cloud related)

07
May
09

Phil Wainewright: Hybrid cloud or half-hearted kludge?

Phil Wainewright: Hybrid cloud or half-hearted kludge?

Some really interesting things jumped out in Phil’s post, but what really stood out was the second paragraph.  The insight into the challenges of evolving to a cloud computing mindset is worth at least a few reads, as some of us that live in the Cloud tend to forget the seismic shift in thinking we have to go through when detaching from the ‘enterprise’ model.  One line in particular has me waxing philosophic about why SOA tends to be viewed as a software package or vendor offering rather than as a design principle:

“A constantly recurring theme in the evolution of SOA, cloud and the Web has been the misplaced imposition of trusted, existing structures onto emergent patterns of interaction.”

Specifically, I began to wonder whether SOA is inextricably linked to “web services” software just because  we tend to try to rationalize complex and unknown structures with what we already know and are comfortable with, or if my initial belief that SOA’s adoption (or even understanding for that matter) has been co-opted by traditional software vendors is more defensible.  Or is there really a difference between the two – i.e. are the blind leading the blind?

In any case, SOA and cloud computing are starting to be mentioned in the same breath by many of the visionaries in the space, so it will be interesting to see whether we can drive to a point of widespread mainstream adoption of the view of cloud computing as the technology manifestation of the SOA philosophy, or if the Cloud will also be co-opted by the traditional enterprise players with deep marketing pockets and short-sighted intentions.

07
Jan
09

Power in the Cloud: Situational Application Resource Center

Power in the Cloud: Situational Application Resource Center

Our friends at SilverTree Systems have introduced the Situational Application Resource Center, a collection of information that is dedicated to furthering a very compelling cloud computing technology that is being defined as ‘Situational Applications.’

Situational applications are essentially rapidly developed applications that are designed to immediately address a business challenge – i.e. solving a business process inefficiency, extending the functionality of enterprise systems such as CRM or ERP without having to customize the core application, or addressing market and customer opportunities as quickly as possible.  Situational applications also represent an opportunity for ISV’s to develop and market “Long Tail” applications to niche / “micro-vertical” markets that have traditionally been underserved by the broader software industry due to high development costs and prohibitive barriers to entry.  Delivered Innovation partnered with Coghead in early 2008 to take a number of situational applications to market, including the Marketing Lucidity Lead Model and Marketing Budget Management; we are also in the process of delivering the Lead Model and Marketing Budget Management on the Force.com “Platform-as-a-Service” (PaaS) by Salesforce.com.  These are applications that provide highly specific functions for marketing budget and lead generation planning that would not have been viable just two years ago due to the high costs of developing such applications…costs that would have been passed through to our customers and in turn priced out the very customers we built these applications for.

Cloud computing platforms such as Coghead and Force.com have set in motion a “virtuous cycle” for SaaS applications and situational applications targeted to business users and companies that traditionally would not have been in the market for such applications because of the costs and technology requirements involved.  Because we don’t have to purchase servers, software, and network infrastructure upfront, we can focus our capital on building very specific and highly robust application functionality.  Because the data model, user interface, and business rules / application logic are all provided as standardized components by the PaaS provider, our development time is slashed by almost 75%, which contributes to our ability to rapidly deliver new value to our customers at a significantly reduced price point.  Because our price point is significantly lower than it would be in a traditional ISV model, we can create new markets for our SaaS applications.  When customers are introduced to the concepts of cloud computing, SaaS, and situational applications, they in turn find innovative new ways to apply the technologies to their businesses, creating value far beyond what we had originally envisioned.  And the customers that understand the game-changing implications of these new technologies want to build new situational applications to accelerate improvement and growth in other areas of their businesses.  All of a sudden, we’re looking at the potential of Service Oriented Architecture (SOA) being fully realized, and companies are applying a building-block philosophy to technology and business processes.  It’s beautiful.

Please visit the Situational Application Resource Center today to contribute to the movement and find ways to deliver value to your customers and the community.

Reblog this post [with Zemanta]



Cloud computing application & service design by Delivered Innovation

Subscribe to Delivered Innovation with RSS  Follow Delivered Innovation on Twitter  Find Delivered Innovation on Facebook