Skip to main content

Microsoft SharePoint and Agility

SharePoint is a becoming natural choice for enabling key capabilities of an Enterprise such as Collaboration, Social Computing, BI, Web Content Management, Document Management, Portals / web applications targeting both intranet & internet users etc. . Perception on SharePoint is gradually changing from a simple COTS product to very flexible platform. Especially the custom development & integration capabilities of SharePoint platform is a door opener for lots of opportunities. In fact, in some of the Enterprises, SharePoint is becoming the default development platform.

Recent research report from Forrester highlights that SharePoint is gaining very wide adoption in large organizations. Given that the capabilities of SharePoint can address most of the needs of an Enterprise, Enterprises which are planning to leverage the full potential of the SharePoint platform may end up in an IT portfolio where major portion will be solutions based on SharePoint. Hence, Enterprise Agility of those Enterprises will have more dependency on SharePoint.

Enterprise Agility of an Enterprise depends on its IT Portfolio. If the IT portfolio is based on the home grown solutions and COTS products which do not support agility, then Enterprise agility will be affected. Investments in COTS products can be maximized only if those products are customizable / supports wider custom development. Based on how “Testable” the “Customizable” parts of the COTS products of an IT portfolio, Enterprise will have impact on Maintainability, TCO and Agility.

True agility is considered to be achieved only when a change in business / functional requirement is achievable with minimal time – when you have a piece of code developed and if an automated unit testing capability can be leveraged to test that piece of code, then your overall time for development , testing & deployment will decrease.

Testability & loose coupling are 2 key paths to Agility. In SharePoint, when it comes to custom development, Web Parts are predominantly used to address business / functional needs. These Web Parts are “Testable” when they are built based on MVP pattern. These web parts can leverage Automated Unit Testing capabilities. These MVP based web parts are de-coupled from the environment, data source & UI. Hence they are unit testable through Mock objects

A combination of Microsoft’s PEX & Moles framework & VSTS 2010 can be used for performing automated unit tests on MVP based (Testable) web parts.

Loose coupling can be achieved through Service Locator pattern provided by SharePoint guidance from Microsoft Patterns & Practices – compass for the best practices adoption in SharePoint based development. When there is a change is the actual service provider, we can deploy that as a separate assembly and change can be enabled in the main application without re-compilation

So, the conclusion here is - Once a SharePoint based development is planned with these 2 things in mind – Testable & Loose coupling through MVP pattern based web parts to leverage Automated Unit Testing framework and Service Locator pattern respectively, time required to respond to changing business requirements will decrease and hence will have a positive impact on Enterprise Agility !

Comments

Popular posts from this blog

Heterogeneous Cloud Integration

Heterogeneous integration is common scenario in the Enterprises where their IT portfolio is based on heterogeneous platforms. Various solution approaches such as message broker, messaging middleware, SOA – service based integration were employed to address heterogeneous integration challenges.

These solution approaches were good when the integration happens on premise, with in the data centers of an Enterprise. Problem here is non-availability of “elasticity”.

With the Enterprises started leveraging cloud platforms extensively for various solution aspects such as elastic computing, storage, it opens new capabilities that can be leveraged for heterogeneous integration. Also, similar to existing on premise scenario, Enterprises are also leveraging multiple cloud platforms to address their business needs. This scenario will pose same integration challenges as those that were faced within on premise datacenters

Within datacenters / on premise, integration products were expected to comply wi…

Blockchain for a "Secured" AADHAAR

AADHAAR is gradually becoming the “Most Important” digital identity (like a social security number in US) for the citizens of India. It is considered to be more important than any other identities such as Passport, Driving License, PAN card etc. as it is being recognized as the “Mandatory” proof for the authenticity of an Indian citizen, for all the Govt. as well as private transactions, starting from availing the subsidized residential gas benefits  to operating a trading account or even getting a Passport. Because of this, the secured accessibility & immutability of that digital identity is very critical. The AADHAR card once issued to a citizen should not be subjected to change especially in terms of AADHAAR number, name of the person etc.; Any compromise on AADHAR can lead to problems related to mistaken identity. Storing AADHAAR information in a Blockchain platform is a natural choice , as Blockchain offers "Cryptographically" secured decentralized storage and facilit…

SharePoint 2013 Architectural Trade-Offs

When planning for deploying SharePoint 2013 based Enterprise workloads, it should be done with the consideration / awareness of impact of various architectural decisions what we make. As SharePoint 2013 is a flexible platform providing lots of options in terms of configuration of the existing OOB features and development of custom development solutions to address specific business functional needs, care should be taken when making a particular decision and its impact on overall solution. Even though SharePoint is a matured product, the effectiveness of various business capabilities such as Enterprise Social, Enterprise Search, BI, Document Management, Web Content Management, and Enterprise Content Management that will be delivered based on it, in terms of addressing the business requirements depends on architecture planning. Effectiveness here means performance, security, up-time and other architectural qualities like Scalability, Reliability etc. more ...