Académique Documents
Professionnel Documents
Culture Documents
July 2014
Agenda
Intro to the app model
Apps for SharePoint
Apps for Office
Getting started
Documents
Search
Social
Calendar
People
Contextual apps
Surface your apps in the Office 365 platform
In context of your business users productivity
activities
In Office Client, Office Online, and modern apps
Expense
calculator
Vacation
request
Event
planning
Help-desk
support
Learning
management
Risk
management
demo
ADDING YOUR FIRST APPS
Architecture of apps
SharePoint
Azure
Web application
App 2
web
Site collection
Root site
App 1
SP hosted
App 2
mySQL
App 2
worker
Aphache
App 2
provider
hosted
App 3
provider
hosted
Sub site
App 3
provider
hosted
App 4
provider
hosted
App 3
web
App 3
mySQL
App 3
worker
App 4
SQL
App 4
Windows
service
Client-side pattern
SharePoint environment
Site collection
Host web
App web
Lists
Site pages
CSS files
JavaScript
files
Server-side pattern
SharePoint
environment
ASP.NET environment
SQL server
On-premises data
Site collection
Host web
IFrame
App web
ASP.NET
page
Managed code
C# or VB
ASP.NET
page
Managed code
C# or VB
IFrame
Client-side object model calls
SQL server
Cloud-based data
Hybrid pattern
SharePoint
environment
ASP.NET environment
SQL server
On-premises data
Site collection
Host web
Custom
JavaScrip
t
App web
Custom
JavaScrip
t
ASP.NET
web service
Managed code
C# or VB
ASP.NET
web service
Managed code
C# or VB
SQL server
Cloud-based data
Application isolation
When apps are provisioned, new SPWeb
(AppWeb) created within hosting SPWeb
Each app resides within its own SPWeb for isolation
Special DNS address configured by administrators
App SPWebs live in separate domain (DNS)
APPNAME
Name of SPWeb under where app is
installed
APIs
Client-side APIs
REST
CSOM (.NET, JavaScript, Silverlight)
App scoping
Web scope
Can register and use resources
in parent site, site collection
Tenant scope
Can register start page, custom
actions
Tenant admins can filter-enable on
sites
By site collection, managed path,
template type
(SharePoint-hosted tenant-scope
apps not available)
https://*.contosoapps.com
4
https://intranet.contoso.com/sites/tea
m
Root
https://intranet.contoso.com/sites/grou
px
Sub site
Root
News
Organization
Teams
Search
AppWe
b
AppWeb
app
2
https://intranet.contoso.com/sites/catalo
g
https://*.contosoapps.com
Root
Root
https://intranet.contoso.com/sites/t
eam
AppWeb
Sub site
https://intranet.contoso.com/sites/orgZ
Root
News
Organization
Teams
Search
AppWe
b
AppWeb
Publishing apps
Office Store
App catalogs
Authentication
SharePoint
Azure
Web application
App 2
web
Site collection
Root site
App 1
SP hosted
App 2
mySQL
App 2
worker
Aphache
App 2
provider
hosted
App 3
provider
hosted
Sub site
App 3
provider
hosted
App 4
provider
hosted
App 3
web
App 3
mySQL
App 3
worker
App 4
SQL
App 4
Windows
service
Versioning
SharePoint
Azure
Web application
App 2
Web
V3.0.0.0
V2.0.0.0
V1.0.0.0
Site collection
Root site
App 1
V1.0.0.0
V2.0.0.0
V3.0.0.0
App 2
SQL
V1.0.0.0
V3.0.0.0
V2.0.0.0
Aphache
App 2
V1.0.0.0
V2.0.0.0
V3.0.0.0
App 3
V2.0.0.0
V1.0.0.0
V3.0.0.0
Sub site
App 2
V1.0.0.0
V2.0.0.0
App 3
V1.0.0.0
App 2
Web
V1.0.0.0
V2.0.0.0
App 2
SQL
V1.0.0.0
V2.0.0.0
App 3
SQL
V2.0.0.0
V3.0.0.0
V1.0.0.0
App 3
worker
V2.0.0.0
V3.0.0.0
V1.0.0.0
Meetings
app
V1.0.0.0
V2.0.0.0
App
1.0.0.0
1.0.1.0
Meetings
app
V1.0.0.0
V2.0.0.0
Parent
site
Child
Site A
Child
Site B
Child
Site C
App scopes
SPSitesite collection
SPWebwebsite
SPListlist
Tenancythe tenancy scope is at
http://<sharepointserver>/<content>/<tenant>/
performing search queries, accessing taxonomy
data,
user profiles, etc.
App rights
Rights
Read-only
Write
Manage
Full control (not supported in Store)
Parts
Create app parts that can interact with the
SharePoint experience
UI command
extensions
Add new commands to the ribbon and item
Parts
Create app parts that can interact with the
SharePoint experience
UI command
extensions
Parts
UI command
extensions
demo
APPS FOR SHAREPOINT SAMPLES
Pre-Office 2013
Office 2013
Extending
Office
ribbon
COM add-in
Extending
Office
ribbon
COM add-in
App for
Office
Macro
VSTO
Macro
VSTO
Document
template
App for
SharePoint
desktop apps
web apps
Extending Office
ribbon
Content app
COM add-in
Content app
Mail app
Macro
Mail app
VSTO
Data visualization,
analysis and
mashups
Reference tools
YouTube video
and photo
gallery
Maps, custom
charts, and
lookups
Content
authoring and
publishing
Contextual
content and
services
Translation, definitions,
dictionary, help,
research
Doc builders
and print
services
Business data lookup
(CRM), contextual
forms (surveys)
Workflow and
collaboration
Project tracking,
coauthoring
App for
Office
Content
authoring
Resumes and
contracts
Business processes
Dashboards
Data analysis
and data
mashups
Team collaboration
Forms and
reports
Legal forms
and financial
reports
Workflow
Sales and
marketing,
finance, and HR
Content and
project management
Document
approval and
expenses
Document template
Document template
App for
Office
App for
Office
App for
Office
App for
Office
App for
Office
App for
Office
App for
Office
App for
Office
APIs
Office.js
Content
App in the body of the document
Content
Mail
Inline pane on an email or appointment item
Content
Office Store or
SharePoint app
catalog
demo
APPS FOR OFFICE SAMPLES
Getting started
Environment
Office 365 developer tenant
Office 365 individual developer site collection
On-premises SharePoint server
demo
BUILDING YOUR FIRST APP FOR OFFICE
demo
BUILDING YOUR FIRST APP FOR SHAREPOINT
Conclusion
Surface your business solutions in Office 365 user
interface
Leverage the building blocks of the platform
Dev.Office
.com
Calls to action
Explore our MSDN library
http://dev.office.com
Get answers
http://aka.ms/AskSharePoint
http://aka.ms/AskOffice
Give feedback
Drive our roadmap
http://aka.ms/OfficeDevFeedback
aka.ms/OfficeAMS
Patterns and practices
Providing App Model Patterns for common
Full Trust Code scenarios
Branding
Site provisioning
Remote event receivers
Large file support
Taxonomy driven navigation
And much more
Contribute
2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics 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.