how to build an app deep dive into the capabilities of apps lessons learned

38

Upload: osborn-lee

Post on 12-Jan-2016

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: How to build an App Deep dive into the capabilities of Apps Lessons learned
Page 2: How to build an App Deep dive into the capabilities of Apps Lessons learned

Governance for SharePoint 2013 Customizations

Oleg Kofman, Jon EpsteinMicrosoft

SPC108

Page 3: How to build an App Deep dive into the capabilities of Apps Lessons learned

• Understand the new decisions IT Administrators will face with the new application development choices in SharePoint 2013

• Discuss architectural strategies related to the lifecycle of new types of SharePoint applications in the enterprise

• Begin to plan how to evolve existing governance

Session Objectives

Page 4: How to build an App Deep dive into the capabilities of Apps Lessons learned

What this talk is not

How to build an

App

Deep dive into the capabilities

of Apps

Lessons learned

Page 5: How to build an App Deep dive into the capabilities of Apps Lessons learned

SPC001 0 to 60 with Office and SharePoint 2013 apps using Napa and Visual Studio 2012

SPC133 Introduction to the Cloud App Model for Office and SharePoint 2013, Part 1

SPC134 Introduction to the Cloud App Model for Office and SharePoint 2013, Part 2

SPC097 Developing apps for SharePoint 2013 with Visual Studio 2012

SPC026 Apps for SharePoint in 60 seconds with Access 2013

SPC029 Building Autohosted apps for SharePoint

SPC242 Understanding OAuth, REST and OData

SPC212SharePoint 2013 Workflow development for Apps and Full-trust solutions for SharePoint 2013 with Visual Studio 2012

SPC010 An overview of developing SharePoint-hosted apps

SPC002 10 Tips for building great Apps

SPC204 Securing SharePoint Apps using OAuth in Office 365

SPC241 Understanding authentication for apps for SharePoint

SPC205 Securing SharePoint Apps using S2S High Trust in On-Premises Farms

SPC240 Understanding and maintaining SharePoint Apps for IT Professionals

SPC030 Building Cloud-hosted apps for SharePoint with PHP and node.JS

SPC118 How to write a cloud-hosted app for SharePoint with Ruby on Rails

SPC088 Developing hybrid apps for SharePoint: apps that work on-premises and in the cloud

Lots of Other Sessions

Page 6: How to build an App Deep dive into the capabilities of Apps Lessons learned

Agenda• What is SharePoint governance?• Who should be in the room?• What changed?• App Lifecycle Considerations• Review and Questions

Page 7: How to build an App Deep dive into the capabilities of Apps Lessons learned

Agenda• What is SharePoint governance?• Who should be in the room?• What changed?• App Lifecycle Considerations• Review and Questions

Page 8: How to build an App Deep dive into the capabilities of Apps Lessons learned

What is SharePoint Governance?

People ProcessTechnolo

gyPolicy

Governance is the set of policies, roles, responsibilities, and processes that guides, directs, and controls how an organization's business divisions and IT teams cooperate to achieve

business goals.

Page 9: How to build an App Deep dive into the capabilities of Apps Lessons learned

Agenda• What is SharePoint governance?• Who should be in the room?• What changed?• App Lifecycle Considerations• Review and Questions

Page 10: How to build an App Deep dive into the capabilities of Apps Lessons learned

Who should be in the room?• The UsersBusiness Folks

• SharePoint, Office, SocialCollaboration Gurus

• DNS, Bandwidth, Cloud integration

Network Guys (and Gals)

• Certificates, PermissionsSecurity Hacks

• Integration, 3rd Party Apps, SOAEnterprise Architects

• Licensing, complianceLegal

Page 11: How to build an App Deep dive into the capabilities of Apps Lessons learned

Governance Needs InfrastructureDivisionsDepartmentsTeamsUsers

Portal & Collab

Executive Steering

Funding Request

Vision &

Scope

Dept. Dev Team

Dept. Dev Team

OtherDev Teams

Portal and Collaboration Services

Technical Services

Windows Server Team

SQL ServerTeam

NetworkingTeam

StorageTeam

OLAs

SLAs

Operations Support

DevelopmentCoE

Training

Active Directory and ADFS

Portal & Collab Governance

Council

SharePoint Administrators

Community

SharePoint Business Analyst

Community

Policy

Page 12: How to build an App Deep dive into the capabilities of Apps Lessons learned

AgendaWhat is SharePoint governance?Who should be in the room?What Changed?App Lifecycle ConsiderationsReview and Questions

Page 13: How to build an App Deep dive into the capabilities of Apps Lessons learned

What Changed?Developers and the Three Bears

Farm• Full trust solutions• Customizations to

file system• Classic model from

2007

Sandbox• Declarative

elements• Partially trusted

code service still included

• Deprecated

SP Apps• New Apps model• Deployed from App

Catalog or SharePoint Store

• Manage permissions and licenses

Page 14: How to build an App Deep dive into the capabilities of Apps Lessons learned

What Changed?

• Sandboxed solutions are deprecated• Plan to eventually convert Sandboxed solutions

• App for SharePoint have arrived• Best option in multi-tenant Office 365• Easier to deploy• Easier to maintain• Easier to reuse• No server side code

Page 15: How to build an App Deep dive into the capabilities of Apps Lessons learned

AgendaWhat is SharePoint governance?Who should be in the room?What Changed?App Lifecycle ConsiderationsQuestions

Page 16: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsOverview

Plan

Develop

Publish

Operate

Page 17: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsOverview

Plan

Develop

Publish

Operate

Page 18: How to build an App Deep dive into the capabilities of Apps Lessons learned

Choices, Choices, Choices

Page 19: How to build an App Deep dive into the capabilities of Apps Lessons learned

Research

• Check Enterprise Catalog(s)• Can it be done without code?

Buy

• Check SharePoint Store• Check with third party vendors

Build

• Will it require server side code?• Will it require extra infrastructure?• Will it save time?• Who owns/maintains?

Publish

• Who can add from the Enterprise Catalog?• Should this App be published to the public SharePoint

Store?

To App or Not To App

Page 20: How to build an App Deep dive into the capabilities of Apps Lessons learned

Demo

App Acquisition

Page 21: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsPlan: Hosting Models

SharePoint-hostedProvisions an isolated subwebNo server-side code

Provider-hosted“Bring your own server hosting infrastructure”

AutohostedWindows Azure Web Site and SQL Azure Database provisioned automatically when app is installed

Hybrid

Page 22: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsOverview

Plan

Develop

Publish

Operate

Page 23: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsDevelop: Developer Environments

Shared Farm/Site

One Farm/Site Per Project

One Farm Per Dev

AppsFarm

Solutions

Page 24: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsOverview

Plan

Develop

Publish

Operate

Page 25: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsPublish: App Scopes

• One Site Per InstanceWeb Scope

• One Site Per TenantTenant Scope

Page 26: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsPublish: App Permissions

• Publish evaluation criteria ahead of time Consider different criteria for different service offerings Consider the hosting model

• High Trust Apps require more scrutiny• Upgraded apps may request different

permissions

Page 27: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsPublish: Clean, secure, consistent app Catalog

Plan who adds, prunes and highlights apps (business) Plan SLAs for App Requests

Plan who reviews apps (technical) Who reviews third party hosted apps? Who reviews Office Apps? Who owns maintenance of Apps? Publish objective criteria for App reviews

Develop strategy for multiple web apps and farms

Page 28: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsOverview

Plan

Develop

Publish

Operate

Page 29: How to build an App Deep dive into the capabilities of Apps Lessons learned

App Lifecycle ConsiderationsOperate: Checklist

• Watch for errors• Monitor usage• Monitor Licensing• Manage the App Catalog(s) and App Requests

Page 30: How to build an App Deep dive into the capabilities of Apps Lessons learned
Page 31: How to build an App Deep dive into the capabilities of Apps Lessons learned
Page 32: How to build an App Deep dive into the capabilities of Apps Lessons learned
Page 33: How to build an App Deep dive into the capabilities of Apps Lessons learned
Page 34: How to build an App Deep dive into the capabilities of Apps Lessons learned

AgendaWhat is SharePoint governance?Who should be in the room?What Changed?App Lifecycle ConsiderationsReview and Questions

Page 35: How to build an App Deep dive into the capabilities of Apps Lessons learned

• Understand the new decisions IT Administrators will face with the new application development choices in SharePoint 2013

• Discuss architectural strategies related to the lifecycle of new types of SharePoint applications in the enterprise

• Begin to plan how to evolve existing governance

Session Objectives

Page 36: How to build an App Deep dive into the capabilities of Apps Lessons learned

Questions

Page 37: How to build an App Deep dive into the capabilities of Apps Lessons learned

Evaluate this session now on MySPC using your laptop or mobile device: http://myspc.sharepointconference.com

MySPC

Page 38: How to build an App Deep dive into the capabilities of Apps Lessons learned

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.