project portal for sharepoint, talk at norwegian sharepoint community

Tags:

Post on 15-Jun-2015

216 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Project portal for SharePoint, talk at Norwegian SharePoint Community 2nd of October 2014. Speakers were Geir Graff, Ole Kristian Mørch-Storstein and Tarjei Ormestøyl. Read more about the project at GitHub: https://github.com/prosjektstotte/sp-prosjektportal

TRANSCRIPT

SharePoint Project Portal

Norwegian SharePoint Community, 02.10.2014

Who are we?• Geir Graff, Portfolio Manager for strategic projects,

P3O, Innovation strategist at Asker kommune• Tarjei E. Ormestøyl, Senior Consultant, Puzzlepart• Ole Kristian Mørch-Storstein, Senior Consultant,

Puzzlepart

Agenda• About the project• Demo• Architecture• Solution model• Deployment• Sherpa• Site creation

• Wrap up

About the Project• Asker Kommune and KommIT• Project management in SharePoint• Prosjektveiviseren (DIFI, based on PRINCE2)• Portfolio of project sites

• SharePoint Online and SharePoint 2013 (on-prem)• Low threshold / Easy to install and use• Sharing is caring Distributed freely• As out of the box as possible

DemoSharePoint Project Portal

Architecture

Decision #1: Solution modelSharePoint-hosted app?Provider-hosted app?

Sandboxed solution?

Solution model• SharePoint hosted app

• On-premises is not configured for apps by default• App-web not suitable for storing business data• Write permissions outside of host web disqualifies from app

store• Anything not configured declaratively must be configured via

JSOM

• Provider hosted app• On-premises is not configured for apps by default• Dependency on external service that must be supported • Configuring trust between on-prem environment and provider is

a complicating factor

Solution model• Sandboxed solution• Only server side code is deprecated in the sandbox!• Can be used to deploy Web Templates and other artifacts

that are declarative• Supported as default both on-premises and O365• Anything not configured declaratively must be configured

via JSOM or CSOM

Choice #1: Sandboxed solution

Decision #2: Deployment model

Configuration?

PowerShell?

CSOM?

Deployment - requirements• Requirement: Repeatable, consistent and easy deployment• Requirement: Create fields and content types

• Vesku: “FTC to CAM – Stop creating content types and site columns declaratively” (http://blogs.msdn.com/b/vesku/archive/2013/11/06/ftc-to-cam-stop-creating-content-types-and-site-columns-declaratively.aspx)

• Should be created managed with JSOM/CSOM (although other options are still valid)

• Requirement: Create taxonomy fields• Needs SspId to connect field to term store• Needs term set id to connect field to term set

• Requirement: Activate features, modify quick launch, modify property bag

Deployment – What we knew• Take away ESPC 2014: Chris O’Brien• “Developer Decisions, Tips and Tricks - Lessons Learnt from

Office 365 Projects”• Experiences from a real case

• Customer could not decide between SharePoint Online or On-premises.

• Needed to support both scenarios

• PowerShell with CSOM and Sandboxed WSPs

Deployment - What we had• CSOM support• Client Side SharePoint PowerShell @ Codeplex• Not intended for a dual deployment scenario• Didn’t cover all requirements

• PowerShell-support vastly different

Deployment – Writing CSOM• Alternative #1: Write CSOM in PowerShell• No compiling!, but• No compile time checking• Difficult to test• Poorer development experience

• Alternative #2: Write .NET libraries• Testable• Great tooling• Can be called from PowerShell

Choice #2: Managed CSOM

aka Sherpahttps://github.com/sharepoint-sherpa/

+Library Console

Application

Sherpa.Library Sherpa.Installer

In the package

Sherpa Features• Supports SPO and SP2013• Configure, deploy, maintain and export taxonomy • with known GUIDs

• Deploy and maintain fields and content types• Use content type hub if you like

• Upload (and upgrade) sandboxed solutions• Auto-configure sites• Enable features, Modify quick launch, Set properties, Create

lists, etc.

Sherpa Philosophy• Sherpa Library lets you • Create PowerShell cmdlets • Create your own UI / installer• Use Sherpa features in remote

event receivers and provided hosted apps

• Command line application is the reference implementation and can be used as-is out of the box • Included sample config showcases

features

Decision #3: Site creation

Configured in UI?

Web template?

Provider-hosted?

Site creation• Requirement: Create lookup-fields «on-the-fly»• Requirement: Copy default documents from central

repo• Requirement: Create lists and libraries• Requirement: Configure site pages• Requirement: Configure list views and list web part

views

Choice #3: Web Templates and JSOM

Web Templates and JSOM• Web template• Lists• Pages• Content type bindings• Other artefacts like CSS & JS

• JSOM setup-script• Create lookup-fields in new site• Copy documents from central repo• Add and modify views• Challenge: In client’s browser

Wrap-up

Discoveries and gotcha’s• Trial tenants are nice

• Full ‘integration test’ with each new tenant• Use for development, not test environments

• Some issues with search in SPO• Feature activation using CSOM is… interesting• Site collection features are auto-activated on sandbox activation• SharePoint rewrites URL’s in provisioned html files (bug?)• SPO != On-Premises

• Patch level• Different .js files loaded• Search

Slightly unusual challenges• Open source –really?• Sharing the good stuff• Sharing the bad stuff

• How to handle• Questions and support• Maintenance and further development• Contributions

Resources• Prosjektportal for SharePoint @ GitHub• https://github.com/prosjektstotte/sp-prosjektportal/

• SharePoint Sherpa @ GitHub • https://github.com/sharepoint-sherpa/sherpa

• Prosjektveiviseren• http://www.prosjektveiviseren.no/

• Chris O’Brien : “Developer Decisions, Tips and Tricks - Lessons Learnt from Office 365 Projects”• http://www.slideshare.net/chrisobrien/chris-o-brien-office-365-decisions-ti

ps-and-tricks-with-screenshots or http://is.gd/dev365

Questions?

top related