Archive for the 'Platform as a Service' Category

27
May
10

Joel Dietz: VMForce – Battling for the Cloud

Joel Dietz: VMForce – Battling for the Cloud

I just came across a nice post from a Force.com developer on his blog, d3developer.com,  that touches on many of the concerns that are being felt throughout the salesforce.com partner and developer ecosystem regarding the company’s recent VMForce announcement.

Three key points:

(VMForce) raises the question of just who Salesforce is competing with.

Salesforce can no longer simply compete with Oracle business applications, can it realistically think to match Amazon or Google to be a leader in a PaaS (Platform as Service) race?

(Salesforce needs to) Articulate more clearly the gameplan to the developer community.

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)

30
Aug
09

Force.com and its Implications for Technology Service Delivery Models

How Force.com enables an analyst-driven approach to development projects

Michael W. Topalovich, CTO
Delivered Innovation

For years, the rallying cry for the CIO has been to align IT with “The Business.”  This presupposes that there is a wall between IT and other functions and processes within an organization, which of course we know to be the case. While nearly every business function that lives in its own silo has challenges integrating with other functions within the organization, IT has been particularly challenged because of the technology-centric reality of its world; while other functions may not necessarily have a direct impact on the value chain, IT is often viewed as being completely disconnected from it in many organizations.

Technology vendors have long targeted the CIO with messaging that implies an understanding of ITs alignment pain, and they have offered myriad remedies for closing the gap between IT and the underlying business processes that create value in an organization. Everything from enterprise applications to network management tools have promised to lead beleagured CIOs to the Shangri-La of “IT-Business-Alignment.”  Ironically, the technology with the most promise for bridging the IT-business divide has been right here under our noses, but only a relative handful of visionary organizations have embraced it to drive business value.

Continue reading ‘Force.com and its Implications for Technology Service Delivery Models’

07
Aug
09

How Force.com Changes System & Software Testing Processes

It’s evident by this point that cloud computing technologies such as Software-as-a-Service (SaaS) and Platform-as-a-Service (PaaS) have changed the way applications are developed.  The interesting thing that we are finding with our customer engagements is that the rapid and iterative nature of designing and developing apps on Force.com has created an entirely new set of challenges with how the apps are tested prior to deployment to production environments.  The ability to demonstrate application features and functionality to project stakeholders in near-real time is more of a double-edged sword than most people realize; on the one hand, being able to show progress and continuously incorporate feedback has fundamentally changed the concept of application development and delivery.  On the other hand, if expectations are not managed properly, the ability to visually represent system designs and demonstrate prototypes in such a rapid timeframe could potentially trivialize the importance of testing, code refactoring and optimization, and change management.

Continue reading ‘How Force.com Changes System & Software Testing Processes’

20
May
09

Excerpts from discussion with Jon Sapir on the impact Force.com has on IT service delivery

I tend to have very spirited philosophical discussions with Jon Sapir from Power in the Cloud / SilverTree Systems, and as much as he tries to get me to blog about some of this stuff, I tend to put it off indefinitely.  Just came across this thread and thought there were some important thoughts to build off of:

The old / traditional approach had a lot more players involved…I always envision enterprise IT as two funnels connected at the most narrow point, with one funnel being IT and the other being “the business.”  On the IT side, the fat part of the funnel is web programmers, platform programmers, DBA’s, etc.; the connection to the business side is the program manager, who takes specs from the business program manager and hands it off to a lead architect, who then disseminates pieces to platform / application / database architects, who then give specs to the relevant coders, who are then checked by a parallel QA organization that is segmented similarly by function.  On the business side, the program manager is connected with a business process architect who assembles requirements from lead business analysts representing the business functions involved with the system, who then fan out to all of the end users of the specific functions / departments to gather feature / function / interface requirements / feedback.  And scattered throughout is about a dozen project managers, each running their own project schedule for their piece of the world.

Force.com disconnects the business users from the stack, eliminating the direct involvement of IT and changing IT’s role to one of data / process governance + management.  In some organizations IT may still provide the programmer, but in many cases the business architect will directly design the system, and the analysts will configure the system to the specific needs of their constituents.

The future piece further abstracts the business from IT, pushing governance to the periphery of the business where it is managed by analysts and designed by the business architect to overlay horizontal, end-to-end processes rather than a vertical / function-driven organizational structure.  IT may provide technical services, but the internal IT organization, for all intents and purposes, is just one of many service providers that the business provisions IT services from.  In the most likely scenario, IT manages the connectivity to the cloud, data/information security policies and overall governance, and potentially manages the service delivery / financial relationships with cloud providers.

Does this sound like a reasonable description of most enterprise service delivery processes?  Is management and governance the role that IT will take on?  Will IT simply become a service provisioned directly by business process owners?  Does SaaS / PaaS / cloud computing really make such a significant impact on organizational and business process structure?  For every answer we come up with, there are about five new questions.




Cloud computing application & service design by Delivered Innovation

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