Skip to main content

Digital Transformation

SharePoint Custom Development

Microsoft ships SharePoint with a lot of out-of-the-box features.  However, no out-of-the-box portal is going to give you everything you want out-of-the-box.   So at some point in your implementation of SharePoint you are going to need to do some custom development.  Have you thought about your development strategies for SharePoint?

If not, Forrester has thought about that and on September 30, 2011 published a report titled “A SharePoint Custom-Development Strategy Is More Crucial Now Than Ever“, by John Rymer, Rob Koplowitz and others.  Like Forrester, we see a strong interest and adoption rate of SharePoint 2010.  With the latest release, SharePoint is bringing very good capabilities to build custom applications.  But there are still issues with custom applications that must be considered and addressed before you get too far into the development lifecycle.

Data from the Forrester report is based on the recent SharePoint survey (see my recent blog post: Forrester’s SharePoint Survey) so there is some repetitive data from the previous report.  There are three main points relative to custom coding that Forrester points out in this report:

  • Custom code raises migration risk – some interfaces in MOSS 2007 did not migrate to 2010, breaking some custom applications
  • Custom code slows application delivery – bad code can bring down an entire SharePoint farm and all the websites.  Extensive testing must be performed, which can delay implementation.
  • Custom code may not play well with others – Forrester reports that there are sometimes conflicts between custom modules that are hard to overcome, leading to greater complexity and potentially slowing down performance.
These issues point to the need to establish your custom development strategies early in the process.  Among other recommendations, Forrester says you need to define your application development strategy and SharePoint’s role in your overall development efforts.  Forrester suggests the following roles for SharePoint:
  1. Make SharePoint your “fast app delivery” platform – here consider using SharePoint where users would have previously built applications in Excel or Access.  Leave the heavy lifting to applications running on platforms intended for high volume transactions.
  2. Use SharePoint custom applications to improve major business processes – Use SharePoint’s strengths in collaboration to improve your business processes.  You can integrate SharePoint into your existing processes with some custom coding.  See Duet Enterprise for SharePoint and SAP as an example of extending business processes using SharePoint.
  3. Use SharePoint to improve analysis and reporting – SharePoint’s built-in tools provide a lot of features in the area of visual analysis.  Combine these features with SharePoint’s collaboration features and you have a winning combination.
When it comes to defining your SharePoint custom development strategy, make sure you also address these areas:
  • Design your SharePoint architecture for the long run.  Its easy enough to just plop down a SharePoint server and get started. However, you should avoid this temptation and plan the architecture appropriately.
  • Look for third party partners for custom development.  There are already lots of third party applications and web parts available for SharePoint.  Take advantage of them where you can.
  • Make sure you plan for integration testing whether you develop custom code or obtain it from third parties.  You should test third party applications in your environment (you’ll need a test environment in your long-term architecture) to ensure compatibility with your other SharePoint components.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Mark Polly

Mark Polly is Perficient's Chief Strategist for Customer Experience Platforms. He works to create great customer, partner, and employee experiences. Mark specializes in web content management, portal, search, CRM, marketing automation, customer service, collaboration, social networks, and more.

More from this Author

Follow Us
TwitterLinkedinFacebookYoutubeInstagram