Saturday, September 18, 2010

The “All in One” SharePoint Guru does not exist – so stop looking and focus on plan B (Part 3 of 3)

This article is a continuation of Part 2 - Please read that article first.

Phase 3: Development
In the development phase, the solution is built according to the specifications defined by the architect (As defined in Part 2). 

 The development phase requires 2 key players, the SharePoint Administrator and the SharePoint Developer.  Yes - this is two different roles with two different skill sets. 

You may want to add SharePoint data-capturer to the list so basic tasks like deploying a taxonomy and site population can be completed by a cheaper resource, allowing the higher skilled resources to spend time on more complex requirements.

The SharePoint Administrator

The SharePoint Administrator focus is on the setting up, configuration and management of services running on SharePoint.  Anything available "out of the box" from SharePoint can be deployed by the SharePoint Administrator, which should be at least 80% of the entire solution.  (If anything less than 80% of the requirements is "out of the box" - chances are, SharePoint was not the right solution, and you may be creating a maintenance nightmare).

The SharePoint Administrator is skilled to action the following:

  • Create new sites and lists
  • Install and configure web parts
  • Create BDC connections
  • Manage the SSP (Configuring Audiences for example)
  • Creating InfoPath forms
  • Creating and management of governance policies and permission groups
  • Management of the Central Administration
  • Use of the SharePoint Command line tool (STSadm)
  • Good understanding of IIS and Active Directory
  • Create and manage standard workflows
  • Configure and manage the backup strategy
  • Restore deleted content from Recycle Bin
  • Configure site usage statistics reports
  • Configure Search (including managing Best Bets)
  • Configure Security
  • Configure Navigation

To the SP Administrator, its all about providing what SharePoint can do OOTB (out of the box).  The SharePoint administrator must provide what is required via configuration made in the Central Administration, Shared Service Provider, Site Collection or in a specific sub site.  In some cases, SharePoint designer is used for more advanced configuration and reporting, but this tool is usually reserved for the SharePoint Developers.

The SharePoint Developer

The SharePoint Developer is the resource that is used to complete the other 20% of the project.   The SP Developer is focused on custom development and has strong knowledge on how to use the SharePoint API.  There delivery is usually focused around the following

  • Custom Web Parts
  • Complex workflows
  • Event Handlers and Receivers
  • Custom coding SQL
  • XML/XSLT Development

The SharePoint developer is skilled in IIS, .NET 2/3, SQL Querying, windows workflow foundation, C#/VB and how to apply these skills to the SharePoint API. 

Strong HTML/CSS/JavaScript skills is required when applying a brand.  Understanding how SharePoint applies a theme is needed so it can be manipulated and also knowledge on changing the master page and site definition page is extremely valuable.

Skills in ASP.NET infrastructure is needed as a SharePoint Developer is required to edit web.config files and work with code-behind pages.

To the SharePoint Developer, its about providing what the user requires that cannot be provided OOTB, but providing a solution that uses as much of SharePoint as possible.  The tool available is SharePoint Designer and Visual Studio.  Strong SharePoint Developers usually started off there career as ASP.NET Developers.

Phase 4 and 5 : Stabilisation and Close

After the solution is built, it is tested and corrected.  Training manuals are created and administrators are trained.  Acceptance documents are signed, and the solution is launched.  The site is supported and the project is concluded.

At these phases a SharePoint project requires the same resources needed in any other type of IT project.  These phases are managed and controlled by the Project Manager.  Resources used in the previous phases, i.e. Business Analyst and Architect can be used to QA the solution to ensure the business requirements are met, the SP administrators and developers can be used to correct the solution, and the business will do the final testing and sign off.  A SharePoint Trainer may be added to the resource set to focus on providing training material and holding training session to train the administrators.

At this point the support team are educated on how to maintain the current solution and the next phase is envisioned and then we are back to [Part 1] of this article.


Every IT project is split into phases, and each phase has a specific purpose, with a specific set of skills.  Why are we not applying this structure to SharePoint deployment?  In short, the following resources are the minimum requirements:

  • Envision
    • Project Manager
    • Business Analyst
  • Planning
    • Project Manager
    • SharePoint Architect  
  • Development
    • Project Manager
    • SharePoint Administrator
    • SharePoint Developer
  • Stabilising
    • Project Manager
    • Business Analyst
    • SharePoint Architect
    • SharePoint Administrator
    • SharePoint Developer
    • SharePoint Trainer
  • Close
    • Project Manager
Anything less is expecting too much from your existing resources which will affect the quality and prolong the date of delivery.

Saturday, September 04, 2010

The “All in One” SharePoint Guru does not exist – so stop looking and focus on plan B (Part 2 of 3)

This article is a continuation of Part 1 - Please read that article first. 

Phase 2: Planning

After the Envision Phase is completed, the Planning Phase starts, that requires a different set of skills.

If the Envision Phase is all about "What the Organisation wants", then the Planning Phase is about  "How are we going to give them what they want".

Successful projects (SharePoint or otherwise) places a lot of time into planning, on average, 20% of your entire project should be placed in the planning phase, if you get that right, the future phases is just about applying the plan.
The experts needed for this phase are as follows:
  • Project Manager
  • Business Analyst
  • SharePoint Architect
  • Infrastructure/network administrator
  • Database administrator
  • SharePoint Designer
  • Steering Committee
From the last phase, the Business Analyst would have defined the scope and document what the organisation wants.  

In this phase, the SharePoint Architect is the key player.  The SharePoint Architect has a strong technical understanding of SharePoint and a strong understanding on how the business operate and what is required to meet the business needs. He/She understands how SharePoint can satisfy the user requirements, what configuration options are available and with that knowledge, define an approach.

With the assistance of the infrastructure/network administrator, database administrator, SharePoint Designer and a few other experts, the SP Architect will review the requirements and will define a detailed approach on how its going to get done.  The following analysis will take place:

  • Define what existing infrastructure is available (i.e. Mail Server; Database Server)
  • Define what infrastructure is required is meet the expected capacity (i.e. Traffic; hard disk space)
  • Define quota’s, storage limits and file restrictions to control capacity
  • Define approach for connecting via internet (if required)
  • Design Site Topology needed to meet user requirements (i.e. # of SSP’s, Site Collections, Sub Sites required and the structure)
  • Design Content and Navigation Structure
  • Define branding requirements (need the assistance of a SharePoint Designer)
  • Define the purpose of each site component in the topology and define what features are required
    • Define what Data Topology is needed
    • Define custom development requirements
    • Define Content Type requirements
    • Define Page Layout
    • Define Brand and Brand Consistency
    • Define Audience requirements
    • Define Security configurations (Who needs what access to what)
    • Define data view requirements
  • Define what Search configuration is required
    • What iFilters needs to be installed
    • What content needs to be indexed
    • Define Search Scopes
  • Define Development and Test environment
  • Plan for Change Management
    • Awareness campaign
    • Demonstrations
    • Training approach
  • Define Governance Plan
  • Define integration approach (BDC, Excel Services, may need to communicate with Product Expert for integration options)
  • Define Migration Approach
  • Define Maintenance Plan
That’s a lot of information, once the SharePoint Architect has defined the approach, documented it and received acceptance from the stakeholders the Development Phase starts.

 Phase 3: Development

Article continues here