SPCA2013 - Building a SharePoint Factory
Upcoming SlideShare
Loading in...5
×
 

SPCA2013 - Building a SharePoint Factory

on

  • 1,193 views

Building a SharePoint Factory

Building a SharePoint Factory

Statistics

Views

Total Views
1,193
Views on SlideShare
1,193
Embed Views
0

Actions

Likes
0
Downloads
33
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

SPCA2013 - Building a SharePoint Factory SPCA2013 - Building a SharePoint Factory Presentation Transcript

  • Building a SharePoint Factory Donald Hessing (@dhessing)
  • Who am I? Donald Hessing  Principal Consultant | Thought Leader SharePoint @Capgemini Netherlands  (Virtual) Technology Solution Professional for Microsoft  Work full time on SharePoint since 2007  donald.hessing@capgemini.com | @dhessing Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 3
  • Agenda 1. 2. 3. 4. 5. Considerations for building a SharePoint Factory? Standardization Code Analyses Performance Testing Deploy and Machine Provisioning Some Demos:  Code Validation  Content Generation  Load Testing Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 4
  • Boeing factory in Seattle
  • Goals  Improve the Quality, Cost and Delivery  Reducing Risks, Incidents and Project failures  Improve Responsiveness and Reliability  Improve Predictability and Repeatability of outcomes  Bring new solutions to customers faster with lower cost  Building trust and confidence to all stakeholders (internal and external) Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 6
  • Bring new solutions to customers faster with lower cost
  • Why standardization?  Users / Consumer      Easier to use Compatibility & Reusability Lower prices Better Quality Trust & Confidence  Products  Larger market with fewer varieties  Increase productivity & effectiveness  Increased competition  Industry / Process     Benchmarking against best practices Time efforts savings Gaining competitive advantages Assures better alignment Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 8
  • Standardized process Acceptance criteria Plan • • • • Build PID Templates • Design std • Infrastructure Intake • Coding std • Reference architecture Environment std • Storage calculator Test Test environment std • Test scenarios std • Deploy RollOut DTAP deployment std • Installation std • • Operations std Change mg std Training std Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 10
  • Define your maturity… Reusable Solutions (Streaming Video, People Directory, ..) Standard offerings (Intranet, Extranet, Records Management, …) One-off solutions Reusable Components (Logging, Data Access, Display Templates, ..) Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 11
  • Requires organizational change  At project start-up identify potential re-usable components  Architecture board for deviations from the reference architecture  Peer reviews Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 12
  • Standardize…. Create/Improve the standard Automate Process Automate standard Agree on the Standard (Adoption) Add review processes Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 13
  • …SharePoint Coding Standard Example Create the standard “Coding Standard for SP2013” Automate Review Process in Automated Builds (TFS) Automate Review (FXCop, SPCop) Agree on the Standard (Adoption) Add review processes Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 14
  • Code Analyses
  • Static versus Dynamic Testing Static: Testing by Reviews, Walkthroughs or inspection  Code Analyses inspection (Phoenix)  Reflection Dynamic Testing during execution of the programmed code  Code Coverage  Code Profiling Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 16
  • Enforce Code Conformance by Automation
  • Tools SharePoint 2013 SharePoint 2010  SPDisposeCheck.exe  MSOCAF 2010  FXContrib  SPCOP / SPCAF Foundation  FXCop  StyleCop  Visual Studio 2010 / 2012  MSOCAF 2013  SPCOP / SPCAF Foundation  FXCop – Custom Rules  StyleCop  Visual Studio 2012 / 2013 • • Only tool for SharePoint artefacts, metrics, feature dependency, managed code and C# analyses! Includes TFS and 3th Party integration (FXCop, JSLint,CAT.NET) Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 18
  • FXCop versus StyleCop Visual Studio 2012 Code Analyses - FXCop • Static Code Analyses on the MSIL • Code Safety • Performance • Type hierarchy • Analyses of database objects StyleCop – C# Only • Static Code Analyses on the Source Code • Naming (casing, use of prefixes / suffixes) • Ordering (where different members are defined in the context of a class) • Comments (where they should be placed and how they should be formatted) • Spacing • Custom Rules Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 19
  • FXCop “FxCop is a free static code analysis tool from Microsoft that checks .NET managed code assemblies for conformance to Design Guidelines” Source: http://en.wikipedia.org/wiki/FxCop Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 20
  • FXCop versions  FXCop (11.0) is integrated with the code analyses features of Visual Studio 2012  Premium  Ultimate  FXCop 10.0 - standalone application  Windows 7 / 8 SDK  How to download FXCop 10.0 http://codeblog.vurdalakov.net/2012/05/how-to-download-fxcop-100.html Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 21
  •  DEMO Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 22
  • Performance Testing
  • Types of testing Common testing types and levels for SharePoint: Type Description Unit Ensures the working of an individual unit or group Functional Ensures that the specified functionality in the system works Usability Ensures an effective GUI for the end-user Acceptance Ensures the delivered product meets the requirements Regression Ensure that the modification is working correctly Performance Ensures that the system responses within specified time System Ensures the system works in different environments Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 24
  • SharePoint Performance Testing
  • Valid testing data is essential for performance tests
  • SharePoint Search Duplicates Md5 Hash
  • Content generation What we did at Capgemini… Downloaded a copy of the wiki database  http://en.wikipedia.org/wiki/Wikipedia:Database_download#Englishlanguage_Wikipedia  English ~40GB XML Data  Dutch ~ 10GB XML Data  Wrote custom wiki parser for generating     MS – Word document MS – Excel documents MS – PowerPoint documents HTML documents  Getting started : http://code.msdn.microsoft.com/Bulk-Loader-Create-Unique-eeb2d084#content Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 28
  • What is important for SharePoint?  Unique FileRef and Title property  Language  Document Size  Document Type  Folder and nesting  Unique users, groups and permissions  Impacts:  Search Performance and Results  Content Database Size Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 29
  • DEMO Wiki based content generation Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 30
  • Performance Tests Type of Performance Tests Type of Test Description Smoke How your application performs under light load for short duration Stress How your application runs under heavy load Performance To determine how responsive the application runs under expected load Capacity How your application performs at various capacities Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 31
  • Visual Studio Load Testing Visual Studio 2010 Ultimate  Load testing was possible, but not optimized for SharePoint  SharePoint is using a lot of GUID’s and control values which needed to be extracted manually Visual Studio 2012 Ultimate – CTP Update 2  Load testing is made easier with out of the box extraction and validation rules  Extracts SiteName, ListID, Form Fields, REQUEST DIGEST, Webpart, Calender, Document Item  Coded web performance tests are not supported for SharePoint Applications http://msdn.microsoft.com/en-us/library/vstudio/jj710162.aspx Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 32
  • DEMO – Visual Studio 2012 Performance Test Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 33
  • Machine provisioning
  • Development Machine
  • Installation scripts  Consistent deployment of SharePoint machines though DTAP stages Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 36
  • SC - Virtual Machine Manager 2012 SP1 Virtual Machine Manager provides automation, configuration and management of Virtualization Host • Private Cloud • Provision Virtual Machines based on templates • Service Templates allows you to deploy a multi tier SharePoint environment in one click • Still requires scripts to configure SharePoint Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 37
  • SC – Orchestrator Azure Integration Pack Orchestrates Runbooks that can deploy Windows Azure Virtual Machines • Public Cloud • SP1 ships with Windows Azure Integration Pack • Integration pack allows you to deploy, deprovision and move Azure VM • Requires scripts to install and configure all components and software Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 38
  • “It works on my machine”
  • Key takeaways  The goal for building a SharePoint factory can be different for every organisation  Building a software factory also requires organisational change  Start with defining your standards – validation can also done manually  The quality of software can be validated with automated tools  Most existing tools are limited to Managed Code or C#  Performance tests require bulk load that can be generated out of Wikipedia  Automating the deployment of SharePoint environments is an essential part of the validation  Have a look at System Center 2012 SP1 and Visual Studio 2012 TFS Lab Manager for automation your deployments and Test integration Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 40
  • Thank You! 01010100 01101000 01100001 01101110 01101011 00100000 01011001 01101111 01110101 0100001 Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 41
  • Donald Hessing  Thought Leader SharePoint @Capgemini  Microsoft Certified Master for SharePoint  Contact me:  @dhessing  donald.hessing@capgemini.com  http://nl.linkedin.com/pub/donald-hessing/4/250/924 Presentation Title | Date Copyright © Capgemini 2012. All Rights Reserved 43