SharePoint Saturday Redmond - Building solutions with the future in mind
-
Upload
chris-johnson -
Category
Technology
-
view
2.059 -
download
1
Transcript of SharePoint Saturday Redmond - Building solutions with the future in mind
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
P R E S E N T E D B Y …
Designing and Building solutions with the future in mind
Chris JohnsonGeneral Manager, Provoke Solutions, Seattle
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
whoami?
• Blog: www.looselytyped.net
• @LoungeFlyZ
• Ex-10yr Microsoftie, SharePoint Product Management,
Program Management and Consulting Services
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Agenda…
What’s new in 2013 for solutions
How does it work?
What does al l this mean?
Designing for tomorrow
Wrap-up
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
What changed?
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
SharePoint Process(IIS w3wp.exe)
Farm solutions aka “Full Trust”
WSP
ResourcesXML/Features/Files
Code (DLL)
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Sandbox Code Process(SPUCWorkerprocess.exe)
SharePoint Process(IIS w3wp.exe)
Sandbox solutions
WSP
ResourcesXML/Features/Files
Code (DLL)
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Overview of the SharePoint App Model
• Office 365 and in on-premises farms• Code never runs in SharePoint host environment• APIs to talk to SharePoint• Calls have controlled authorization• Apps can have permissions independent of user permissions• Apps deployed to private catalogs or online Store
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
App Types
• SharePoint-Hosted Apps– All assets are in SharePoint– No server code
• Cloud-Hosted Apps– Provider Hosted– Auto Hosted
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
App Installation Scopes
• Site-Scoped Installation– App is installed in a specific site– App is launched from same site– This site is known as host web
• Tenancy-Scoped Installation– App installed > app catalog site– App available many host webs– Host webs access one app instance– Centralizes app management
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
SharePoint App Architecture
• SharePoint-Hosted Apps– App resources added to SharePoint host– Stored in child site known as app web– App can have client-side code– App cannot have server-side code
• Cloud-Hosted Apps– App resources deployed on remote server– Remote site known as remote web– App can have client-side code– App can have server-side code
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
App Catalog Site
• Private / enterprise marketplace for organizations– No certification process– Seen only by that company
• Enables license management & gateway for app procurement• Office 365 - 1:1 App Catalog per Tenant• On-Premises - 1:1 + optionally have App catalog per Web Application
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
What is my personal opinion?
• I like the “Plumbing” … a lot– UI - integration– Data – Remote APIs– Events
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Full Trust App Model
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Chris, you are talking like a crazy person…
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
What’s covered?
Component Apps FarmWeb parts XApp parts X ASP.Net server controls XASP.Net user controls XList and library templates X XContent types X XEvent handlers XRemote event receivers X Pages and page layouts XFiles X XMaster pages XRibbon and list actions X XWorkflows XApps for Office X Custom JavaScript list view renderings
X
Custom JS column renderings
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
I do X today, how do I do Y tomorrow?
Richard diZerega
“App Approaches to Common SharePoint Customizations”
http://blogs.msdn.com/b/richard_dizeregas_blog
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Where you don’t want to be
In a corner with no way out.
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Don’t be cornered…
• Decouple where possible• Don’t be a typical developer• Light touch first, Deep only if needed• Pragmatic, but forward thinking
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Chris, this really is totally different!?!?
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Sandbox Code Process(SPUCWorkerprocess.exe)
SharePoint Process(IIS w3wp.exe)
Sandbox solutions
WSP
XML/Features/Files Code (DLL)
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
SharePoint Site
Provider Hosted apps
App Package
App Resources Code (DLL)
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Some options today…
1. App Model on Prem (2013 only)1. High Trust on-prem aka S2S 2. Low Trust on-prem (Hybrid only)
2. Client JavaScript whenever possiblea) WebPartsb) Pagesc) JS CSOM
3. Externalize code + Web Services e.g. event receivers
4. Aim for Office 365 even if you aren't moving
5. Be very vigilant on nice to have features
DOs (at least consider)
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Some options today…
1. Use Farm Solutions by defaulta) Make sure architects/developers thinkb) Might be more costly, but will pay dividends
2. Tie into other systems without considering how to loosely couple
3. Asdf
DON’Ts (at least consider)
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
There is no “Wrong”
… yet
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
“It’s going to be messy for a while.”
C h r i s J o h n s o n
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Q&A• TIME FOR YOUR QUESTIONS
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
Get in touch
w w w. p r o v o ke s o l u t i o n s . c o m
C h r i s . J o h n s o n@ p r o v o k e s o l u t i o n s . c o m
w w w. l o o s e l y t y p e d . n e t@ L o u n g e F l y Z
P R O V O K E S O L U T I O N SA U C K L A N D M A N I L A S E A T T L E S I N G A P O R E W E L L I N G T O N
THANK YOU
F O R T H E O P P O RT U N I T Y