marketplace atlascampeurope2012final

89

Upload: atlassian

Post on 27-Jun-2015

516 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Marketplace atlascampeurope2012final
Page 2: Marketplace atlascampeurope2012final

Ben WoskowAtlassianDeveloper, Ecosystem Team

Licensed to Sell: How to use Atlassian's new Licensing APIto Sell your Plugin on the Atlassian Marketplace

2

Page 3: Marketplace atlascampeurope2012final

• Licensing Introduction• Plugin Licensing API• Quick Start Guide• Under The Hood• The Bright Future• UPM 2 Awesomeness

3

Overview

Page 4: Marketplace atlascampeurope2012final

4

Licensing Introduction

Page 5: Marketplace atlascampeurope2012final

The Dark Ages: Vendors

5

Page 6: Marketplace atlascampeurope2012final

Re-implement.

The Dark Ages: Vendors

5

Page 7: Marketplace atlascampeurope2012final

Re-implement.

The Dark Ages: Vendors

5

Re-test.

Page 8: Marketplace atlascampeurope2012final

Re-implement.

The Dark Ages: Vendors

5

Re-test. Re-invent.

Page 9: Marketplace atlascampeurope2012final

Re-implement.

The Dark Ages: Vendors

5

Write a lot of code.

Re-test. Re-invent.

Page 10: Marketplace atlascampeurope2012final

Re-implement.

The Dark Ages: Vendors

5

Write a lot of code.

Re-test. Re-invent.HARD

Page 11: Marketplace atlascampeurope2012final

Re-implement.

The Dark Ages: Vendors

6

Write a lot of code.

Re-test. Re-invent.HARD

Page 12: Marketplace atlascampeurope2012final

Re-implement.

The Dark Ages: Vendors

6

Write a lot of code.

Re-test. Re-invent.HARD

Page 13: Marketplace atlascampeurope2012final

• Cheaper, faster, and easier to develop against• Increases plugin discoverability• Better experience for your customers• Improves sales flow

7

The Atlassian Marketplace In-App Experience

Page 14: Marketplace atlascampeurope2012final

8

Plugin Licensing API

Page 15: Marketplace atlascampeurope2012final

• Validation• Storage and retrieval• Encoding and decoding• Flexible enforcement

9

Features

Page 16: Marketplace atlascampeurope2012final

10

Page 17: Marketplace atlascampeurope2012final

• MyAtlassian (http://my.atlassian.com)• Communication with license management

• Try, Buy, Renew, and Upgrade workflows

11

Fully IntegratedBilling System

Page 18: Marketplace atlascampeurope2012final

12

Confluence 3.1 Dec 2009 27 months

JIRA 4.1 April 2010 23 months

Bamboo 2.6 June 2010 20 months

Fisheye / Crucible 2.4 October 2010 16 months

Compatibility

Page 19: Marketplace atlascampeurope2012final

13

Page 20: Marketplace atlascampeurope2012final

• License administration screen allows:• Updating and removing license• Viewing license details• Acquiring a new license from MyAtlassian

• Consistency: all your licensed plugins can have the same user interface

14

License Administration UI

Page 21: Marketplace atlascampeurope2012final

15

Putting the Pieces Together

Page 22: Marketplace atlascampeurope2012final

15

Putting the Pieces Together

License

Utilities

Page 23: Marketplace atlascampeurope2012final

15

Putting the Pieces Together

License

UtilitiesCompatibility

Page 24: Marketplace atlascampeurope2012final

15

Putting the Pieces Together

License

UtilitiesCompatibility

Billing System

Page 25: Marketplace atlascampeurope2012final

15

Putting the Pieces Together

License

UtilitiesCompatibility

Billing SystemLicense

Admin UI

Page 26: Marketplace atlascampeurope2012final

15

Putting the Pieces Together

License

UtilitiesCompatibility

Billing SystemLicense

Admin UI

License Enforcement

Page 27: Marketplace atlascampeurope2012final

16

Page 28: Marketplace atlascampeurope2012final

17

Quick Start Guide

Page 29: Marketplace atlascampeurope2012final

• Decide how to enforce your license• License enforcement at all plugin entry points• Use SDK 3.9+: Atlassian-Build-Date

18

Before You Start

Page 30: Marketplace atlascampeurope2012final

1. Code generation (SDK 3.9+)• atlas-create-jira-plugin-module • “Licensing API Support” module

2. Programmatically enforce your license3. Go eat some chocolate!

19

Licensing Your Plugin

Page 31: Marketplace atlascampeurope2012final

20

• Maven dependencies• OSGi bundle instructions• Uses maven-dependency-plugin

• atlassian-licensing-enabled in plugin-info• Components and component-imports• License management servlet• Sample license enforcement code (optional)

Generated Code

Page 32: Marketplace atlascampeurope2012final

21

Under The Hood

Page 33: Marketplace atlascampeurope2012final

22

Page 34: Marketplace atlascampeurope2012final

23

Licensing Architecture

Page 35: Marketplace atlascampeurope2012final

23

Licensing Architecture

Page 36: Marketplace atlascampeurope2012final

23

Licensing Architecture

Page 37: Marketplace atlascampeurope2012final

23

Licensing Architecture

Page 38: Marketplace atlascampeurope2012final

24

Licensing Architecture

Page 39: Marketplace atlascampeurope2012final

24

Licensing Architecture

Page 40: Marketplace atlascampeurope2012final

25

Page 41: Marketplace atlascampeurope2012final

25

Page 42: Marketplace atlascampeurope2012final

26

Enforcing a Plugin License

Page 43: Marketplace atlascampeurope2012final

27

Enforcing a Plugin License

Page 44: Marketplace atlascampeurope2012final

28

Page 45: Marketplace atlascampeurope2012final

28

Page 46: Marketplace atlascampeurope2012final

29

Driving In-App Sales

Page 47: Marketplace atlascampeurope2012final

30

Driving In-App Sales

Page 48: Marketplace atlascampeurope2012final

31

Page 49: Marketplace atlascampeurope2012final

31

Page 50: Marketplace atlascampeurope2012final

31

EASY

Page 51: Marketplace atlascampeurope2012final

32

The Bright Future

Page 52: Marketplace atlascampeurope2012final

33

Page 53: Marketplace atlascampeurope2012final

34

Upgrade Path to UPM 2

Page 54: Marketplace atlascampeurope2012final

35

Upgrade Path to UPM 2

Page 55: Marketplace atlascampeurope2012final

35

Upgrade Path to UPM 2

Page 56: Marketplace atlascampeurope2012final

36

Page 57: Marketplace atlascampeurope2012final

• Without UPM 2:• Manage each license on own license

administration screen• With UPM 2:

• Manage all licenses within Plugin Manager

37

User Experience

Page 58: Marketplace atlascampeurope2012final

38

UPM 2 Awesomeness

Page 59: Marketplace atlascampeurope2012final

39

Page 60: Marketplace atlascampeurope2012final

40

Page 61: Marketplace atlascampeurope2012final

41

Page 62: Marketplace atlascampeurope2012final

41

Simple Purchase Path.

Page 63: Marketplace atlascampeurope2012final

41

Consistent License Management.

Simple Purchase Path.

Page 64: Marketplace atlascampeurope2012final

42

Page 65: Marketplace atlascampeurope2012final

42

Page 66: Marketplace atlascampeurope2012final

42

Page 67: Marketplace atlascampeurope2012final

43

Page 68: Marketplace atlascampeurope2012final

43

Page 69: Marketplace atlascampeurope2012final

44

Page 70: Marketplace atlascampeurope2012final

45

Page 71: Marketplace atlascampeurope2012final

45

Useful Notifications.

Page 72: Marketplace atlascampeurope2012final

• Expired & nearly expired evaluations• Maintenance expired & nearly maintenance expired• User mismatch• Plugin update available

46

Notifications

Page 73: Marketplace atlascampeurope2012final

47

Page 74: Marketplace atlascampeurope2012final

Plugin Branding:UPM Install Tab

Page 75: Marketplace atlascampeurope2012final

Plugin Branding:UPM Install Tab

Page 76: Marketplace atlascampeurope2012final
Page 77: Marketplace atlascampeurope2012final
Page 78: Marketplace atlascampeurope2012final

50

Page 79: Marketplace atlascampeurope2012final

50

Increased Plugin Discoverability.

Page 80: Marketplace atlascampeurope2012final

• Carousel of Marketplace-enabled plugin banners• Customized branding• Improved search capabilities

51

Plugin Discoverability

Page 81: Marketplace atlascampeurope2012final

• “Install Plugins” tab• Plugin Exchange

• “Manage My Plugins” tab• Plugin artifact (JAR)

52

Plugin Branding

Page 82: Marketplace atlascampeurope2012final

53

Page 83: Marketplace atlascampeurope2012final

53

Page 84: Marketplace atlascampeurope2012final

54

Page 85: Marketplace atlascampeurope2012final

• Simple purchase path• Consistent license management• Useful notifications• Increased plugin discoverability

55

Awesomeness

Page 86: Marketplace atlascampeurope2012final

56

• Licensing Introduction• Plugin Licensing API• Quick Start Guide• Under The Hood• The Bright Future• UPM 2 Awesomeness

Recap

Page 87: Marketplace atlascampeurope2012final

• Where: Paris (across the hall)• When: Today and tomorrow

57

Workshop

Page 88: Marketplace atlascampeurope2012final

• Documentation and tutorials: http://atlss.in/z6X2EW• Marketplace Workshop• Ask questions to myself, Jonathan, Daniel, or John

58

Additional Information

Page 89: Marketplace atlascampeurope2012final

Thank you!