Posts Tagged ‘Salesforce.com

11
Feb
10

Salesforce ERD: Visio VSD Diagram of Spring ‘10 Service Cloud Support Objects

Delivered Innovation has noticed a number of requests for entity relationship diagrams (ERD) for standard Salesforce objects within the Force.com developer community, and we have started a program to create these ERD documents in Visio / VSD format.  The first ERD document that we are publishing is for the Spring ‘10 Service Cloud.  Subsequent documents will be published for Sales Objects, Task and Event Objects, Process Objects, and other objects within the Salesforce CRM and Force.com environments.

Please download and provide us with your feedback.

Salesforce ERD: Spring '10 Service Cloud 2 Support Objects in Visio VSD format

Visio Diagram by Delivered Innovation is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.

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)

24
Nov
09

Quick Thoughts on Dreamforce 2009

We headed out to San Francisco last week for Dreamforce, the annual salesforce.com user conference. While the primary objective was to learn about the future direction of Salesforce CRM and the Force.com platform, I also wanted to put my finger on the pulse of cloud computing in the enterprise and validate my optimism for 2010 and beyond. With over 15,000 people attending Dreamforce, and a party scene reminiscent of the Dot Com days, I came home with great enthusiasm and little doubt that “the cloud” has reached the tipping point, and combined with an economic recovery will create a perfect storm scenario in the coming year that will make the innovations of the Dot Com era pale in comparison to what we’re about to see with cloud computing.  Some thoughts:

  • The “big announcement” revealed during Marc Benioff’s first of several lengthy keynotes was Salesforce Chatter, a social platform designed to drive collaboration within the Salesforce CRM environment. I can’t say I was all that excited about Chatter until I went to the salesforce.com area of the Expo Hall and got a first-hand look at it. Even though we won’t see it generally available until mid or late 2010, the deep-dive demo that I got helped me to understand the business value of Chatter and how Delivered Innovation will be able to design next generation Salesforce and Force.com systems around a real-time social and collaborative paradigm.
  • The session that I was most looking forward to was the discussion on integrating Google Wave with Salesforce.  Unfortunately the Google Product Manager was unavailable, and despite the best efforts of his replacement the session was a disappointment. I’m still trying to wrap my head around whether Wave will be able to provide business value or if it’s just a new toy with a lot of buzz around it.
  • The best session that I attended gave a sneak peek of new packaging and patch management tools for commercial applications.  Today, any customer that downloads a package from the AppExchange has to explicitly download and install updated packages in order to upgrade a commercial application; in the near future it will be possible to push patches and version upgrades to customers directly and instantaneously.  The other impressive feature that I did not realize was already available was the ability to apply conditional logic within Apex classes to create branching based on the installed package version in a customer Salesforce org…for all intents and purposes this creates an in-line code branching solution that avoids the complexity of managing multiple class instances within a package.  But for when a situation does call for a code branch to address critical issues and distribute patches, salesforce.com has created a paradigm of parallel development orgs that can be used to branch code and merge it back into the core code base of the original development org for version releases.
  • I will chalk it up to growing pains and West Coast time management, but almost nothing ran on schedule during Dreamforce, and I found that to be frustrating at times. Lesson learned – leave some flexibility in your itinerary and be prepared to make choices regarding sessions because Dreamforce was pretty chaotic at times.  And if you’re planning on grabbing some food from a sponsored lunch, get there early.
  • I realize that events are huge marketing opportunities, but I walked out of a couple of sessions because I felt like I was being hard sold on messaging that I had long bought into. There may be a fine line between education and indoctrination, but let people drink the Kool Aid by choice…not brute force.
  • My biggest takeaway was the genuine enthusiasm that I got from current and potential Salesforce customers that had “found religion” in cloud computing.  It was very exciting to have the opportunity to talk to so many people that had made the conceptual leap and understood the importance of the cloud.

In a broader context, the energy that I felt in San Francisco last week was like nothing that I had experienced since I lived and worked there almost ten years ago.  There were times when I felt as if I had stuck my finger directly into an electrical outlet and kept it there until I boarded the plane home. 2010 is going to be an explosive year, and whether it was Dreamforce itself or just the timing of the event, many of us will look back at this week in San Francisco as the start of a golden era of technology.

28
Sep
09

Delivered Innovation Founder to Present at October 16 ‘Day of Cloud’ Event in Chicago

Delivered Innovation founder Michael Topalovich will be presenting with SilverTree Systems CEO Jonathan Sapir at the Day of Cloud event, to be held October 16 at the Illinois Technology Association in Chicago.  Michael and Jonathan will be discussing the Force.com cloud computing platform from salesforce.com and its impact on application development and delivery processes.

Additional speakers will discuss cloud computing technologies such as: Google App Engine, Microsoft Azure, and Amazon Web Services.

For more information, visit http://www.dayofcloud.com

10
Sep
09

AppExchange Service Listing Live for Delivered Innovation

Salesforce.com recently introduced AppExchange Service Listings for partners.  Check out the Delivered Innovation listing:

http://sites.force.com/appexchange/listingDetail?listingId=a0N30000001gnjSEAQ

04
Sep
09

Marketing Budget Management Live on the salesforce.com AppExchange

Marketing Budget Management, the second app that Delivered Innovation has designed and developed for our friends at Marketing Lucidity, has passed security review and is now available for download on the salesforce.com AppExchange as a Force.com native application.

Marketing Lucidity’s Marketing Budget Management application for Salesforce CRM integrates seamlessly into the Salesforce Marketing suite, enabling marketing users to establish enterprise-class marketing budgets, expense tracking, and partner marketing funds.

Check out Marketing Budget Management today on the AppExchange:

http://sites.force.com/appexchange/listingDetail?listingId=a0N30000001e80SEAQ

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’

09
Aug
09

Force.com Tip: ‘New’ Button Override to Assign VisualForce Page to Specific Record Type Using Native Apex Code

* Updated 8.14.09 with a link to a similar post by Jeff Douglas and refactored code that is more applicable to a broader audience using Apex PageReference methods rather than the original string concatenation that was used for human (non-Salesforce developer) readability

You’ve probably come across this before…you need to create a custom VisualForce page for a specific Record Type, but overriding the ‘New’ or ‘Edit’ button seems to be an all-or-nothing proposition (i.e. you can do a single VisualForce page and embed the Page Layout using Apex:Detail, but you can’t mix custom pages with standard Page Layouts). We came across this recently at Delivered Innovation, and we want to share our solution with the community. This specific example involves the Saleforce Case object, but can be applied to any Standard or Custom Object.

Use Case: Client has multiple call centers supporting various product lines; support team ‘A’ requires a custom Wizard to rapidly search for and collect details for the Case record that the standard Salesforce search interface cannot provide.

Solution: While you can assign a specific Page Layout to a specific Record Type and embed VisualForce pages in the object Detail view, currently salesforce.com does not support embedded VisualForce Pages in the Edit view of a Page Layout; likewise, salesforce.com does not support custom VisualForce pages for specific Record Types.  The solution is to “intercept” the command to create a new record in an Object before Salesforce processes it, and this is accomplished with a 1-line VisualForce page and a StandardController extension that pulls and analyzes certain URL parameters to enhance the out-of-the-box process routing capabilities of Salesforce.

Continue reading ‘Force.com Tip: ‘New’ Button Override to Assign VisualForce Page to Specific Record Type Using Native Apex Code’

18
May
09

Interop Panel Discussion Preview: Honeymoon and Divorce: Changing SaaS Providers

Interop is here, and based on the preparatory discussions that I’ve had with fellow panelists on the ‘Honeymoon and Divorce: Changing SaaS Providers‘ session, I am excited about the topics we will be covering and the insight that Jerry Smith (Symphony Services), Rick Nucci (Boomi), and R “Ray” Wang (Forrester) will be bringing to the table.  I will be approaching the topic of migrating both data and SaaS code / logic from PaaS providers with a service-oriented mindset, giving real world examples of migrating applications from the now-defunct Coghead platform to the Force.com platform by salesforce.com.  Delivered Innovation migrated both customer apps and our own strategic marketing suite of applications to Force.com over a period of several months with great success.  I am confident that the panel will provide a great deal of value to attendees, as the topic of SaaS / PaaS “lock-in” is becoming more relevant with the proliferation of cloud computing services.

Please stop by if you are attending Interop.  We’re scheduled to present at 4:00PM on Tuesday, May 19 in “Breakers L” at the Mandalay Bay conference center.  I will also be attending CloudCamp this evening, let’s talk about ‘The Cloud’ over beers.

Michael Topalovich / blog @ deliveredinnovation.com

16
Mar
09

salesforce.com: What is Cloud Computing?

salesforce.com: What is Cloud Computing?

Excellent cloud computing primer for executives.  Explains the concept, the technology, and the business value of cloud computing in a concise three-minute video.

[youtube=http://www.youtube.com/watch?v=ae_DKNwK_ms]