Skip to content

Four Ways to Reduce Cost of Change Over Time in SharePoint 2010

by on August 3, 2012
  1. Use custom code to build on a SharePoint base, rather than approaching it as a green field  or “from scratch” project – create code “Band-Aids”. You went with SharePoint for a reason, use the out of the box features first. Become familiar with what is available in the different versions to see where your money is best spent – don’t implement expensive custom code based on a single user, even if that user is the CEO – require that a case is made for these changes at the broadest level with real ROI. If you decide to go with customization, make sure to get documentation.
  2. Minimize manual steps and non-code artifact creation, capture them in feature upgrades/activation solutions instead. The initial investment will be higher, but over time you will see a reduction in cost.
  3. Automate deployment steps with PowerShell, feature receivers, etc. rather than notes and documentation. The initial investment will be higher, but over time you will see a reduction in cost. Again, the initial investment will be higher, but over time you will see a reduction in cost.
  4. Try to manage customer and client choices that can impact agility, though this cannot be controlled from a technical angle. Rather you can try to reign in the client with a good project manager by explaining to them that certain processes will affect the bottom line. Be up front with them and let them make the call.

Some Development Terms to Understand

COTS – Commercial Off The Shelf, out of the box and ready to go, no customizations needed, as is on purchase/install with a solution built upon it.

OOTB – Similar to COTS, Out Of The Box, the way a piece of software is when first purchased/installed without any third party or custom solutions or additions.

Green Field – created from scratch, field of dev is wide open, clean slate project.

Agile – Software development method based on iterative and incremental development with collaboration and adaptation in response to changing needs

SCRUM – a type of agile development, challeges conventional Project Management ideas by focusing on feedback and rapid development with frequent and consistant short structured daily meetings – originally  called the “rugby approach” as the process is performed by a cross-functional team across overlapping phases while “passing the ball back and forth”.

Test-driven Development – development process that relies of repeating a short development cycle, requiring creation of a test case which fails and producing the code to pass, then refactoring the code. Related to extreme programming.

Extreme Programming – an agile development process which improves software quality and faster response to consumer requirements requiring frequent releases and short time cycles.

Paired Programming – agile development technique where two programmers work intensively at a single computer, the driver writes code while the observer/navigator reviews the cod – the participants switch roles frequently. This has been shown to reduce the defect rate of code between 15%-50% and often produce simpler, more maintainable design at a faster speed.

Automated Builds – using automation to complete tasks in a much faster manner, such as deployment, compilation, packaging, documentation, testing

Artifacts – items which are created directly in a content database – SharePoint Designer (workflows, etc.), InfoPath forms – may or may not have source control. While many companies do not want to pay for branding as a solution, as it increases cost, if you are getting into custom master pages, page layouts, etc., you should have this deployed as a solution so that versioning in maintained and controlled in Visual Studio.

Solution – a piece of executable code which may install and activate a number of features.

Feature – a specific part of a solution, such as a custom web part.

WSP – SharePoint solution which contains features which get activated by the solution.

Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: