koen vosters improving-yoursp_solutiondesign-spsbe13

20
Koen Vosters Improving your SharePoint Solution Design – Experiences from the Field #spsbe13

Upload: biwug

Post on 24-Jun-2015

290 views

Category:

Technology


1 download

DESCRIPTION

SharePoint 2010 can be a complex beast. As a developer there is an extensive API that you have to master, lots of xml, code, files and configurations. All of that needs to be deployed to your SharePoint farm in a proper way. In the worst case scenario your deployment will be done by someone who hasn’t a clue about SharePoint development and would rather not have your solution on their farm as it will increase the risk of downtime. This session is about designing SharePoint solutions that will enable future solutions to be built besides or on top of it. Even if there are guidelines on the best practices to write SharePoint code, this specific topic will not be our main focus during the session.It will give you a real life example of how combination of several projects done by multiple parties can be successfully deployed simultaneously. As a result of this approach we were able to build different public internet sites and put them into production at the exact same moment.This session aims to create awareness that you, as a developer, are required to build a solution which will be deployed on a shared environment. Showing how these projects were designed and managed and what lessons we learned during the process will help you to reduce the risks of the deployments.

TRANSCRIPT

Page 1: Koen vosters improving-yoursp_solutiondesign-spsbe13

Koen Vosters

Improving your SharePoint Solution Design – Experiences from the Field

#spsbe13

Page 2: Koen vosters improving-yoursp_solutiondesign-spsbe13

SponsorsVenue Sponsor

Platinum Sponsors

Gold Premium Sponsors

Gold Sponsors

Page 3: Koen vosters improving-yoursp_solutiondesign-spsbe13

About me• Consultant at Microsoft Services

• 12 years of experience

• Visual Basic

• .net

• SharePoint

• Focus on Collaborative end-to-end solutions, coaching and QA for SharePoint customization projects

• Blog: http://blogs.msdn.com/b/kvosters

• Twitter: @koenvosters

Page 4: Koen vosters improving-yoursp_solutiondesign-spsbe13

Agenda• Situation

• Architecture

• Building the solution structure

• Deploying Solutions

• Upgrading Solutions

• Q/A

Page 5: Koen vosters improving-yoursp_solutiondesign-spsbe13

Situation (do we know the situation)

WHO?

WHEN? WHERE?

WHAT?WHY?

HOW?

Creating a solution design without knowing the current and future situation is only useful to get to know the current and the future situation

Page 6: Koen vosters improving-yoursp_solutiondesign-spsbe13

Situation (Project Organization)• 1 customer / multiple worldwide divisions• Multiple simultaneous customization projects (+- 20)

• Deployed on prem and in the cloud• Company wide and division specific content/customizations

• Provide services to • Internal users• External users• Anonymous users

• Part of a larger Program• International team of partners (Europe) • Outsourcing to India

Page 7: Koen vosters improving-yoursp_solutiondesign-spsbe13

Key Points of the Design• Reusable Platform – SharePoint Architecture

• Reusable Customizations (Solutions, UI Components...)

• Easy to deploy, taking into account the different ownerships

• Performance

• Take into consideration

• Business

• IT

• Governance

• Customization / Maintenance

Page 8: Koen vosters improving-yoursp_solutiondesign-spsbe13

Architecture – Reusable Platform

Extranets – ProdOn Premises

Daily build

Internet – Prod AOn Premises

Integration testing

TFS

Intranet – Pre-ProdCloud

Intranet – ProductionCloud

DMZ

CorporateExtranets – Prod

On Premises Internet – Prod BOn Premises

11

10

Intranet – QAOn Premises 6

5

4

1

12

3

2

FIM / RMS

8

Intranet – ProdOn Premises

7

Extranets – ProdOn Premises

15

Internet 2 – Prod AOn Premises

Internet 2 – Prod BOn Premises1413

MSOCAF

9

Page 9: Koen vosters improving-yoursp_solutiondesign-spsbe13

Solutions – Reusable Solutions and UI Elements

Page 10: Koen vosters improving-yoursp_solutiondesign-spsbe13

Performance• Performance testing using Visual Studio Load Testing

• Impact on design

• Third Party Solutions

• Long Running Processes (IIS Timeout)

Page 11: Koen vosters improving-yoursp_solutiondesign-spsbe13

Tools• Visual Studio 2010

• Team Foundation Server 2010

• Community Kit for SharePoint

• SPDisposeChecker

• MSOCAF

• Lync

Page 12: Koen vosters improving-yoursp_solutiondesign-spsbe13

Demo

Building the Visual Studio Solution

Tools

Page 13: Koen vosters improving-yoursp_solutiondesign-spsbe13

Deploying Solutions• PowerShell scripts• Installation Guidance• Site Creation Scripts• Feature Activation Scripts• Don’t forget your mobile users• KNOW YOUR ARCHITECTURE!• Not only SharePoint!

• AD• UAG• FIM

Page 14: Koen vosters improving-yoursp_solutiondesign-spsbe13

Rolling Release (High Availability)

Server A

Server B

Server C

Server D

Server E & F Server G & H

http://www.contoso.comRouted to servers A & Bhttp://www.contoso.comRouted to servers C & D

http://internetRouted to servers E & Fhttp://internetRouted to servers G & H

QAQAProduction Production

Routing to servers managed using scripted DNS updates

Page 15: Koen vosters improving-yoursp_solutiondesign-spsbe13

Did you get it?• New Solution

• Webparts

• Termsets

• Publishing Pages

• Entering the switch for first time

• Preparing Content Databases on QA before switch (2 weeks)

• Will this work?

Page 16: Koen vosters improving-yoursp_solutiondesign-spsbe13

Upgrading Solutions• Granular approach

• Different versions on different sites

• Provisioning list instances in an upgrade

• Upgrading solutions for Sandbox Solutions is different

Page 17: Koen vosters improving-yoursp_solutiondesign-spsbe13

Demo

Upgrading Solutions

Page 18: Koen vosters improving-yoursp_solutiondesign-spsbe13

Conclusion• Architecture and application design ALWAYS start with the

business needs

• Make sure you know why you are building a solution and how it can be considered a success, technology is the enabler, not the goal

• Solutions are more than just a file in Visual Studio

• Which architecture do we provide

• Which solution structure do we use

• What deployment strategy do we use

• Which dependencies do we need to sort

Page 19: Koen vosters improving-yoursp_solutiondesign-spsbe13

References• Deploying Solutions to SharePoint 2010 with PowerShell

• http://msdn.microsoft.com/en-us/library/aa544500.aspx

• Upgrading Solutions

• http://msdn.microsoft.com/en-us/library/aa543659.aspx

• http://msdn.microsoft.com/en-us/library/ee537575.aspx

• Switch Architecture and How-To

• http://technet.microsoft.com/en-us/library/hh495476.aspx

Page 20: Koen vosters improving-yoursp_solutiondesign-spsbe13

Questions?