SUGDC SharePoint Worst Practices - Setting the Stage for Disaster
SharePoint User Group DC (SUGDC)Dan UsherEdmond Avanesian13 October 2011
IntroductionsTypical situation at handBad Practices and Pain PointsProper ApproachesConclusions
Dan Usher Lead Associate at Booz Allen Hamilton, Inc. SharePoint Infrastructure Engineer and Architect MCITP, MCP, MCTS, Security+Edmond Avanesian Lead Associate at Booz Allen Hamilton, Inc. SharePoint Solutions Architect, Project Manager PMP, ITILv3, …Who are you?
SharePoint in the Wild SharePoint as a Collaboration and Development platform… Considerations for Frameworks and Governance What to avoid and what definitely doesn’t work Recovering from disaster…
It’s 8 AM on Wednesday morning and SharePoint seems to be a mess… Users can’t authenticate to the system… New software patches were pushed over the weekend through SUS… The development team pushed new software updates out onto the production servers from their dev laptop virtual machines… The Infrastructure team changed the switch port settings… DNS server IP addresses were changed…All this happened on one day?!?!
Did we have a plan in place? Anything for Development Guidelines? Anything for Architecture? Anything for Implementation? How about change management?Did you have a vision or business case for the use of SharePoint in place?Did you have a visioning group work to define needed capabilities and solutions?
Lack of Governance surrounding several key areas: Development Guidelines Infrastructure Processes Architecting for the future Deployment to the user community
Disposing of Objects improperly Features, what’s a feature?Solutions, let’s just deploy it all scattered Assembly Deployment (GAC vs. bin) CASSource Control PolicyTest Driven Development Nunit TypeMock
Zero documentation or implementation guidesWe don’t need no stinkin’ source controlMissing QA / Test / Staging Deploying Code directly to productionRealizing the difference between site definitions, templates and master pages…
IT Governance & Service Level AgreementSystem MaintenanceDisaster RecoveryContinuity of Operations RTO / RPO / RLO
Scheduled and Emergency/Unscheduled Maintenance TimeDeploying code without testing in a staging environmentDisaster Recovery
Not knowing your tool sets and how to use them… Stsadm Powershell SP Admin Toolkit PSConfig SQL Analyzer & Maintenance PlansPatching Approach… Is there one?
What’s the problem we’re trying to solve?Define the VisionProject MilestonesDefine Business Rules, Processes, and Requirements
Start off with the governance checklist… http://go.spdan.com/xeurdUse the sample project plans… http://go.spdan.com/hmewoFirm up your stakeholders and work to define solutions that meet their needs…Hire a SharePoint consultant to assist…
Vision… Use cases… Planning the enterprise taxonomy and logical architecture… Physical architecture?Source : http://bit.ly/sps‐ref‐wssLA http://go.spdan.com/kuouh
Remaining rigidly flexible for change…Planning for Data Partitions and Software Boundaries…Disaster Recovery ‐ both big and smallDefining governance and use of the system. Site Quotas MySites Site Creation Process User Permissions SharePoint Designer Disaster Recovery Plan
Recycle Bin MisconceptionsDisaster Recovery “Oops”Recovering across Domains
Roles and ResponsibilitiesBusiness Rules and PoliciesSoftware Development GuidelinesInfrastructure Implementation and Maintenance Processes ArchitectureSystem Usability and User AcceptanceChange ManagementTraining
Develop Use Cases to test against Regression Testing Plan – Test all cases you create QAUse the architecture planning documentation examples available from Microsoft ‐http://go.spdan.com/yfeqp
SharePoint Online development guide ‐http://go.spdan.com/cmzbmSharePoint App Dev Guidance ‐http://go.spdan.com/sp‐dev‐aug09Implementation Guides Communications Training Onboarding User Documentation
Making sure that stakeholders, users, designers and developers are going in the same direction Visioning Team Business Requirements and Solutions Development Change Control BoardProject Plan & Milestones
Figure out what the system will be doing before deployment… cast a vision and stick to it!Ensure process and governance are developed and used not only for Developers and Designers, but for the end user.Keep the user base informed, don’t expect them to go in the web part gallery on a regular basis ‐explain what’s new!