SlideShare ist ein Scribd-Unternehmen logo
1 von 46
The App Building Playbook for
SharePoint 2013 Marketplace
Jeremy Thake
Chief Architect, AvePoint Inc.
Jeremy Thake
Agenda
• The marketplace
• The new app model
• Submission process
• AvePoint Task & Calendar Sync
• AvePoint Meetings
The marketplace
Concerns
• Submission process approves SharePoint manifest
– No control over external changes
– Once App granted permissions
• App can do what it likes in that scope
• Trust element of vendor
– Will hurt small unknown companies
– Different to phone market – corporate data
The app model
SP App Design - A Choice of Three Approaches
App Web
(from .app)
Parent
Web
SharePoint-hosted App
Provision an isolated sub web
on a parent web
• Reuse web elements
(lists, files, out-of-box web
parts)
• No server code allowed;
use client JavaScript for
logic, UX
Azure Auto-
Provisioned App
Windows Azure + SQL Azure
provisioned invisibly as apps
are installed
Azure
(from
WebDeploy,
DacPac)
SharePoint
Web
Get remote
events from
SharePoint
Use CSOM/REST
+
OAuth to work
with SP
Cloud-based
Apps
Provider-Hosted App
“Bring your own server hosting
infrastructure”
Developers will need to isolate
tenants
SharePoint
Web
Your Hosted
Site
Architecture of Apps
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means,
without the prior written consent of AvePoint, Inc.
SharePoint
SharePoint Azure Web & Worker Roles
Web application
IIS Web Server
Site Collection
Root Site
App 1
SP Hosted
App 2
Azure
Hosted
App 3
Provider
Hosted
App 2
Web
App 2
SQL
App 3
Web
Sub Site
App 3
Provider
Hosted
Versioning
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means,
without the prior written consent of AvePoint, Inc.
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means,
without the prior written consent of AvePoint, Inc.
SharePoint
SharePoint Azure Web & Worker Roles
Web application
IIS Web Server
Site Collection
Root Site
App 1
V1.0
App 2
V1.0
App 3
V1.0
App 2
Web
V1.0
App 2
SQL
V1.0
App 3
Web
V1.0
Sub Site
App 3
V1.0
App 2
Web
V1.1
App 2
SQL
V1.1
App 2
Web
V2.0
App 2
SQL
V2.0
App 3
V1.1
App 3
Web
V1.1
App 2
V2.0
SP App upgrade process
Parent
Site
Child
Site A
Child
Site B
Child
Site C
Meetings
App
V1.0.0.0
Parent
Site
Child
Site A
Child
Site B
Child
Site C
Meetings
App
V1.0.0.0
Meetings
App
V1.0.0.0
Meetings
App
V2.0.0.0
Meetings
App
V2.0.0.0
App Trust
OAuth Token Example
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
SharePoint
SharePoint Azure Web & Worker Roles
Web application
IIS Web Server
Site Collection
Root Site
App 1 App 2 App 3
App 2
Web
App 2
SQL
App 3
Web
Site Collection
Root Site
App 3
App Scopes
• SPSite—site collection
• SPWeb—website
• SPList—list
• Tenancy—the 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!)
• Not customizable!
• If an app is granted permission to a scope
– the permission applies to all children of the
scope
Setting App Rights
• App rights are set when:
– An app is installed by an SPWeb administrator
– An app is explicitly granted permission by a tenant administrator or
SPWeb administrator
– An end user gives consent
– An app is removed
• Once provisioned, the rights for an app cannot
change – they can only be revoked in whole
– This ensures the app will not have to account for missing rights, i.e.
become broken after installation
Store Submission Process
Seller Dashboard
• Different from Windows 8, Windows Phone, …
• Pre-prepare submission…or just fill in and save as draft
• http://msdn.microsoft.com/en-us/library/jj220033.aspx
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
Validation policies
• Apps provide value to the Office store customer
• Can display ads
• In-app purchases
• Behave predictably
• Put the customer in control
• Appropriate for global audience
• Apps are easily identified and understood
• Updates must not decrease your apps functionality
• Refunds
• Utilize supported capabilities
• http://msdn.microsoft.com/en-us/library/jj220035.aspx
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
Validation Checklist
• Auto-hosted not supported in store
• No “Full Control” supported
• Locales not supported in SharePoint 2013
• http://msdn.microsoft.com/en-us/library/jj938162.aspx
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
Checks – app & submission
• Check your Client ID, Product ID and Version Numbers
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
Checks – browsers!
• 8 / 9 /10
• Latest
• Latest
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
Checks – graphic elements
• Icons: 96px x 96px
• Screen shots: 512px x 384px
– no videos like most stores
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
Checks – Test Steps
• Create a Test Document to walk the tester through how
to use the app
• Upload to SkyDrive
• Link to that in store submission
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
Checks - Releases
• Keep all your app packages, icons, screenshots in source
control
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
AvePoint Task & Calendar Sync
Syncing SharePoint Calendars with Exchange
Syncing SharePoint Tasks with Exchange
App Configuration
Exchange support
SharePoint 2007 and 2010 support
Architecture
Azure Worker role
Azure Web role
Azure SQL role
SharePoint 2013
App Package
AvePoint Meetings
Hard to track meetings
OneNote tracking
Meetings workspace deprecated
Planning meetings
In-meeting
Track progress
Unlimited Users
Support to have unlimited users accessing the app in real-time
Unlimited App instances
Add the AvePoint Meetings App to any SharePoint Site
Unlimited Meetings
Have as many meetings within your App as you like
One-off & Re-occurring meetings
Support forboth one-offmeetings and re-occurring meetings
Meeting timeline to see past tracked meetings
Track structured information
Support to track notes, actions and decisions
Architecture
Azure Web role
Azure SQL role
SharePoint 2013
App Package
Data Here
Provider Hosted
Our ownWindows Azure Web service tenant
To protect IP and also developers prefer over JavaScript
Meetings Data
Meetings data is stored in the Parent Site in SharePoint Lists
Online and On-premises
Want one app to work both online and on-premises
Licensing
Freemium/ Premium model
SignalR
Used SignalR for auto update on users browsers
Attachments
Add attachmentsto agenda items
Rich Text Editor
Have a richer experience when adding notes to agenda items
Search
Search across Meetings to find notes, decisions and actions
Reporting
Roll-call in meetings to track attendance
Printing
Print out the meeting minute notes
Q&A
Jeremy Thake
www.NothingButSharePoint.com
www.jeremythake.com
www.AvePoint.com
jeremy.thake@avepoint.com
@jthake
www.linkedin.com/in/jeremythake
References
Community
• Getting a SharePoint 2013 app submitted – Aidan
Garnish
http://www.aidangarnish.net/post/Getting-a-SharePoint-
2013-App-Submitted-to-the-Office-Store.aspx
© 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
http://sharepoint.microsoft.com/en-
us/preview/sharepoint.aspx
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
http://msdn.microsoft.com/en-
us/library/jj162979(v=office.15).aspx
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
http://technet.microsoft.com/en-
us/sharepoint/fp142366.aspx
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
http://delicious.com/jthake/%23sharepoint2013
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
https://www.nothingbutsharepoint.com
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.
https://www.yammer.com/spyam
© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior
written consent of AvePoint, Inc.

Weitere ähnliche Inhalte

Mehr von Jeremy Thake

Application lifecycle management in SharePoint
Application lifecycle management in SharePointApplication lifecycle management in SharePoint
Application lifecycle management in SharePoint
Jeremy Thake
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
Jeremy Thake
 
Getting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentGetting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online development
Jeremy Thake
 
Presenting SharePoint as a service back to your organization
Presenting SharePoint as a service back to your organizationPresenting SharePoint as a service back to your organization
Presenting SharePoint as a service back to your organization
Jeremy Thake
 
The future of social collaboration in SharePoint
The future of social collaboration in SharePointThe future of social collaboration in SharePoint
The future of social collaboration in SharePoint
Jeremy Thake
 
Deep dive into feature versioning in SharePoint 2010
Deep dive into feature versioning in SharePoint 2010Deep dive into feature versioning in SharePoint 2010
Deep dive into feature versioning in SharePoint 2010
Jeremy Thake
 
How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010
Jeremy Thake
 
Governance enforcement with out of the box SharePoint
Governance enforcement with out of the box SharePointGovernance enforcement with out of the box SharePoint
Governance enforcement with out of the box SharePoint
Jeremy Thake
 
Deep dive into feature versioning and upgrade support in SharePoint 2010
Deep dive into feature versioning and upgrade support in SharePoint 2010Deep dive into feature versioning and upgrade support in SharePoint 2010
Deep dive into feature versioning and upgrade support in SharePoint 2010
Jeremy Thake
 
Do's and Don'ts for SharePoint developers
Do's and Don'ts for SharePoint developersDo's and Don'ts for SharePoint developers
Do's and Don'ts for SharePoint developers
Jeremy Thake
 
Share Point Development With Unit Testing
Share Point Development With Unit TestingShare Point Development With Unit Testing
Share Point Development With Unit Testing
Jeremy Thake
 
How Asp.Net Developers Can Leverage Share Point
How Asp.Net Developers Can Leverage Share PointHow Asp.Net Developers Can Leverage Share Point
How Asp.Net Developers Can Leverage Share Point
Jeremy Thake
 
Share Point Best Practices
Share Point Best PracticesShare Point Best Practices
Share Point Best Practices
Jeremy Thake
 

Mehr von Jeremy Thake (20)

Application lifecycle management in SharePoint
Application lifecycle management in SharePointApplication lifecycle management in SharePoint
Application lifecycle management in SharePoint
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
 
Getting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentGetting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online development
 
Presenting SharePoint as a service back to your organization
Presenting SharePoint as a service back to your organizationPresenting SharePoint as a service back to your organization
Presenting SharePoint as a service back to your organization
 
The future of social collaboration in SharePoint
The future of social collaboration in SharePointThe future of social collaboration in SharePoint
The future of social collaboration in SharePoint
 
Introducing the new SharePoint 2013 app model
Introducing the new SharePoint 2013 app modelIntroducing the new SharePoint 2013 app model
Introducing the new SharePoint 2013 app model
 
SharePoint 2013 overview jeremy thake
SharePoint 2013 overview   jeremy thakeSharePoint 2013 overview   jeremy thake
SharePoint 2013 overview jeremy thake
 
Getting started with Office 365 SharePoint 2010 online development
Getting started with Office 365 SharePoint 2010 online developmentGetting started with Office 365 SharePoint 2010 online development
Getting started with Office 365 SharePoint 2010 online development
 
How to create a secure efficient extranet user experience
How to create a secure efficient extranet user experienceHow to create a secure efficient extranet user experience
How to create a secure efficient extranet user experience
 
Deep dive into feature versioning in SharePoint 2010
Deep dive into feature versioning in SharePoint 2010Deep dive into feature versioning in SharePoint 2010
Deep dive into feature versioning in SharePoint 2010
 
How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010
 
Governance enforcement with out of the box SharePoint
Governance enforcement with out of the box SharePointGovernance enforcement with out of the box SharePoint
Governance enforcement with out of the box SharePoint
 
Deep dive into feature versioning and upgrade support in SharePoint 2010
Deep dive into feature versioning and upgrade support in SharePoint 2010Deep dive into feature versioning and upgrade support in SharePoint 2010
Deep dive into feature versioning and upgrade support in SharePoint 2010
 
AUSPC 2011: How we did it: NothingButSharePoint.com
AUSPC 2011: How we did it: NothingButSharePoint.comAUSPC 2011: How we did it: NothingButSharePoint.com
AUSPC 2011: How we did it: NothingButSharePoint.com
 
Do's and Don'ts for SharePoint developers
Do's and Don'ts for SharePoint developersDo's and Don'ts for SharePoint developers
Do's and Don'ts for SharePoint developers
 
Jeremy thake introducing alm to share point development implementations (ap...
Jeremy thake   introducing alm to share point development implementations (ap...Jeremy thake   introducing alm to share point development implementations (ap...
Jeremy thake introducing alm to share point development implementations (ap...
 
Share Point Development With Unit Testing
Share Point Development With Unit TestingShare Point Development With Unit Testing
Share Point Development With Unit Testing
 
How Asp.Net Developers Can Leverage Share Point
How Asp.Net Developers Can Leverage Share PointHow Asp.Net Developers Can Leverage Share Point
How Asp.Net Developers Can Leverage Share Point
 
Share Point Best Practices
Share Point Best PracticesShare Point Best Practices
Share Point Best Practices
 
Jeremy Thake Perth Share Point Ug Sp2010 How Will Be Affect Me
Jeremy Thake  Perth Share Point Ug   Sp2010 How Will Be Affect MeJeremy Thake  Perth Share Point Ug   Sp2010 How Will Be Affect Me
Jeremy Thake Perth Share Point Ug Sp2010 How Will Be Affect Me
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

The app building playbook for SharePoint 2013 marketplace

  • 1. The App Building Playbook for SharePoint 2013 Marketplace Jeremy Thake Chief Architect, AvePoint Inc.
  • 3. Agenda • The marketplace • The new app model • Submission process • AvePoint Task & Calendar Sync • AvePoint Meetings
  • 5. Concerns • Submission process approves SharePoint manifest – No control over external changes – Once App granted permissions • App can do what it likes in that scope • Trust element of vendor – Will hurt small unknown companies – Different to phone market – corporate data
  • 7. SP App Design - A Choice of Three Approaches App Web (from .app) Parent Web SharePoint-hosted App Provision an isolated sub web on a parent web • Reuse web elements (lists, files, out-of-box web parts) • No server code allowed; use client JavaScript for logic, UX Azure Auto- Provisioned App Windows Azure + SQL Azure provisioned invisibly as apps are installed Azure (from WebDeploy, DacPac) SharePoint Web Get remote events from SharePoint Use CSOM/REST + OAuth to work with SP Cloud-based Apps Provider-Hosted App “Bring your own server hosting infrastructure” Developers will need to isolate tenants SharePoint Web Your Hosted Site
  • 8. Architecture of Apps © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc. SharePoint SharePoint Azure Web & Worker Roles Web application IIS Web Server Site Collection Root Site App 1 SP Hosted App 2 Azure Hosted App 3 Provider Hosted App 2 Web App 2 SQL App 3 Web Sub Site App 3 Provider Hosted
  • 9. Versioning © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc. SharePoint SharePoint Azure Web & Worker Roles Web application IIS Web Server Site Collection Root Site App 1 V1.0 App 2 V1.0 App 3 V1.0 App 2 Web V1.0 App 2 SQL V1.0 App 3 Web V1.0 Sub Site App 3 V1.0 App 2 Web V1.1 App 2 SQL V1.1 App 2 Web V2.0 App 2 SQL V2.0 App 3 V1.1 App 3 Web V1.1 App 2 V2.0
  • 10. SP App upgrade process Parent Site Child Site A Child Site B Child Site C Meetings App V1.0.0.0 Parent Site Child Site A Child Site B Child Site C Meetings App V1.0.0.0 Meetings App V1.0.0.0 Meetings App V2.0.0.0 Meetings App V2.0.0.0
  • 12. OAuth Token Example © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc. SharePoint SharePoint Azure Web & Worker Roles Web application IIS Web Server Site Collection Root Site App 1 App 2 App 3 App 2 Web App 2 SQL App 3 Web Site Collection Root Site App 3
  • 13. App Scopes • SPSite—site collection • SPWeb—website • SPList—list • Tenancy—the tenancy scope is at http://<sharepointserver>/<content>/<tenant>/ • performing search queries, accessing taxonomy data, user profiles, etc.
  • 14. App Rights • Rights: – Read-Only – Write – Manage – Full Control (not supported in Store!) • Not customizable! • If an app is granted permission to a scope – the permission applies to all children of the scope
  • 15. Setting App Rights • App rights are set when: – An app is installed by an SPWeb administrator – An app is explicitly granted permission by a tenant administrator or SPWeb administrator – An end user gives consent – An app is removed • Once provisioned, the rights for an app cannot change – they can only be revoked in whole – This ensures the app will not have to account for missing rights, i.e. become broken after installation
  • 17. Seller Dashboard • Different from Windows 8, Windows Phone, … • Pre-prepare submission…or just fill in and save as draft • http://msdn.microsoft.com/en-us/library/jj220033.aspx © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 18. Validation policies • Apps provide value to the Office store customer • Can display ads • In-app purchases • Behave predictably • Put the customer in control • Appropriate for global audience • Apps are easily identified and understood • Updates must not decrease your apps functionality • Refunds • Utilize supported capabilities • http://msdn.microsoft.com/en-us/library/jj220035.aspx © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 19. Validation Checklist • Auto-hosted not supported in store • No “Full Control” supported • Locales not supported in SharePoint 2013 • http://msdn.microsoft.com/en-us/library/jj938162.aspx © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 20. Checks – app & submission • Check your Client ID, Product ID and Version Numbers © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 21. Checks – browsers! • 8 / 9 /10 • Latest • Latest © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 22. Checks – graphic elements • Icons: 96px x 96px • Screen shots: 512px x 384px – no videos like most stores © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 23. Checks – Test Steps • Create a Test Document to walk the tester through how to use the app • Upload to SkyDrive • Link to that in store submission © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 24. Checks - Releases • Keep all your app packages, icons, screenshots in source control © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 25. AvePoint Task & Calendar Sync
  • 26. Syncing SharePoint Calendars with Exchange Syncing SharePoint Tasks with Exchange
  • 28. Architecture Azure Worker role Azure Web role Azure SQL role SharePoint 2013 App Package
  • 30. Hard to track meetings OneNote tracking Meetings workspace deprecated
  • 32. Unlimited Users Support to have unlimited users accessing the app in real-time Unlimited App instances Add the AvePoint Meetings App to any SharePoint Site Unlimited Meetings Have as many meetings within your App as you like One-off & Re-occurring meetings Support forboth one-offmeetings and re-occurring meetings Meeting timeline to see past tracked meetings Track structured information Support to track notes, actions and decisions
  • 33. Architecture Azure Web role Azure SQL role SharePoint 2013 App Package Data Here
  • 34. Provider Hosted Our ownWindows Azure Web service tenant To protect IP and also developers prefer over JavaScript Meetings Data Meetings data is stored in the Parent Site in SharePoint Lists Online and On-premises Want one app to work both online and on-premises Licensing Freemium/ Premium model SignalR Used SignalR for auto update on users browsers
  • 35.
  • 36. Attachments Add attachmentsto agenda items Rich Text Editor Have a richer experience when adding notes to agenda items Search Search across Meetings to find notes, decisions and actions Reporting Roll-call in meetings to track attendance Printing Print out the meeting minute notes
  • 37.
  • 40. Community • Getting a SharePoint 2013 app submitted – Aidan Garnish http://www.aidangarnish.net/post/Getting-a-SharePoint- 2013-App-Submitted-to-the-Office-Store.aspx © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 41. http://sharepoint.microsoft.com/en- us/preview/sharepoint.aspx © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 42. http://msdn.microsoft.com/en- us/library/jj162979(v=office.15).aspx © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 43. http://technet.microsoft.com/en- us/sharepoint/fp142366.aspx © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 44. http://delicious.com/jthake/%23sharepoint2013 © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 45. https://www.nothingbutsharepoint.com © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 46. https://www.yammer.com/spyam © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.

Hinweis der Redaktion

  1.  The App Building Playbook for the SharePoint 2013 MarketplaceDevelopment – Level 200Jeremy Thake, SharePoint MVP and AvePoint Chief Architect, will give you a first-hand look into AvePoint Labs’ journey to build an app for the SharePoint 2013 Marketplace. Jeremy will discuss the details of the technical decisions made throughout the entire process – from idea inception through to delivery into the marketplace. If you’re thinking of building an app for the SharePoint 2013 Marketplace, this is the one session you don’t want to miss. Demonstrations on how to get started and what resources on your journey will be discussed. Attendees will leave this session with a better understanding of:• Utilizing the new SharePoint App model to bring your products to the Marketplace• How Windows Azure can be leveraged in SharePoint apps, showcasing the oAuth and auto provisioning features• When to use the SharePoint 2013 app model compared to the legacy approaches
  2. PagesHome.aspxMain page of the appWeb Part PageScript and Style referencesElements.xmlInstalls home page to the isolated app siteScriptsApp.jsTemplate script fileElements.xmlInstalls script file to isolated app siteStylesApp.cssTemplate style sheetElements.xmlInstalls css to isolated app siteApp ManifestAppManifest.xmlProductID, Version, TitleTile and StartPageUrlsAppEventUrls: Installed, Uninstalling, UpgradedApp Permission requests
  3. OAuthallows users to authorize SharePoint to provide access tokens to apps that can be used to retrieve data from SharePointEach token can be used to access:A specific siteA specific resource (for example, documents from a folder)For a defined duration (for example, 30 minutes)No need to share username and password
  4. An app uses permission requests to specify the permissions that it needsThe requests specify both the rights and scope which are neededScopes indicate where in the SharePoint hierarchy a permission request applies. SharePoint supports four different content scopes:SPSite—site collectionSPWeb—websiteSPList—listTenancy—the tenancy scope is at http://&lt;sharepointserver&gt;/&lt;content&gt;/&lt;tenant&gt;/There are also scopes for things like performing search queries, accessing taxonomy data, user profiles, etc.
  5. Permission rights indicate what an app is permitted to do within a scope. SharePoint supports four rights levels for content (there are others for things like search, term store, etc.):Read-OnlyWriteManageFull ControlUnlike SharePoint user roles, these rights levels are not customizableIf an app is granted permission to a scope, the permission applies to all children of the scopeIf an app is granted perms to an SPWeb, the app is also granted perms to each SPList in the SPWeb, and all SPListItems in each list, but NOT each subweb