This document summarizes a presentation from the JiveWorld conference about integrating systems with Jive. It discusses:
1. Different integration patterns for Jive like adding new capabilities, displaying information, and aggregating streams.
2. Accenture's experience building a workflow tool as Jive plugins and lessons learned in moving to the tile model in Jive 7.
3. Tips for developers in using the Jive SDK like focusing tile content and interactions, managing activity stream data, and leveraging new Jive extension points.
3. Integration patterns
• Add capability to Jive that’s not out of the box
• Display and interact with salient information
• Create a holistic view of activity through stream aggregation
and federation
How to Move From Plugins to Cloud
Subbu Natarajan – Accenture
Effective System Integration Techniques
Patrick Li – AppFusions
Pick the Right Extension Points for Effectiveness
Nils Heuer – Pokeshot
4. Integration Patterns
How to move from plugins to cloud
Subbu Natarajan - Accenture
Effective system integration techniques
Patrick Li – AppFusions
Pick the right extension points for development effectiveness
Nils Heuer -- Pokeshot
Tiles &
StreamsApps
Tiles &
Streams
Apps
• Add capability to Jive that’s not out of the box
• Display & interact with salient information
• Create a holistic view of activity through stream aggregation & federation
6. Integration patterns
The before model: plugins
Workflow widgets
• Functionality: Business wants repeatable business process (templates) but that’s often
difficult within a social collaboration tool
• Asset: Accenture PMO solution provides ability to create workflow and content
templates to apply for reusable processes (e.g. PMO)
•
• Technical solution: Developed the solution as plugin
– Widget for workflow definition (data collection) – e.g. for PMO selection of project type, assigning
project roles, pointing alternate templates
– Workflow engine for state transition – creation of tasks based on progress of activities
– Widget for user actions – so user finishes workflow step
– Widget for exception handling
– Other UX widgets for overall dashboard and activity stream view
6
7. Accenture social workflow – widgets
7
Select Widgets from the solution
Create workflow Show summary steps Create tasks
Show key tasks/actions across all users Project status
9. Learnings
The after model in progress: Purposeful Places with tiles
Requirement Widget model Tile model Learning so far
Widget configuration 2-3 widgets need basic
configuration on container (e.g.
workflow is PMO type)
Purposeful place template
so tiles can be pre-
configured to retain those
values
Tiles are “group/context”
aware – unlike widgets.
During tile registration, the
tile needs to define itself
with right parameters
Project Status 2 widgets – one containing
completion gauge and another
containing pending actions
Gauge tile – with custom
JSON gives consistent
presentation
Tasks become Action Items
and can be used to capture
decisions as well
Workflow backend Widget calls REST API to know
what changed. Workflow engine
leverages meta model to create
tasks in Jive
During tile rendering, using
osapi.http.get, tile gets the
backend information and
then internally invokes Jive
calls via Jive core JS API
Have to work with the JS /
REST API set and what’s
enabled there
Widget templates in
group
Additional code to create group
and configure widgets
Captured in Purposeful
place template and default
widgets
Can create more default
project templates for pre-
defined project categories
10. Expanding further
• Insurance and Pharma solutions:
– Need is to build collaboration solutions on top of transaction platforms
(workflow tools like Pega in insurance or purpose-built clinical platforms)
– Need is to also work with the cloud so solution is available for a wider variety
of customers
– Apps market is great but purpose-built templates enhance user experience
significantly
• Summary:
– Early tests indicate superior adoption potential with Purposeful Places due to
need for minimized handling code (configuration) and seamless user
experience
– Limited dependency on upgrade paths
– Caution needs to be exercised to ensure all APIs are available via
REST/JS
10
11. Where to learn more
Come see us at the Partner Pavilion!
15. Jive-SDK using
• Tiles are much simpler to develop than gadgets (Jive 6); you only
need to worry about what data to send
• The Jive SDK takes care of many low level details, such as OAuth 2
support, allowing developers to focus on implementing business
needs, the fun part
• The SDK does not require the developers to have an in-depth
knowledge on some of the technologies used, such as OpenSocial
Gadget and Embedded Experience, lets you get up and running and
be productive in less than an hour, fast!
18. Integration before and after
Jive
(canvas,
gadgets)
JIRA
(activity stream,
etc….)
Jive
(presentation)
JIRA
(data)
Jive-SDK
(logic)
Pulling
Pushing
Pushing Pulling
19. Tips and lessons learned
• Use tiles to show only
the most relevant/useful
information, i.e.
summary view
19
20. Tips and lessons learned
• Use tile actions to
present additional
information and interact
with users/backend
system
• Use AJAX in your tile
actions to provide more
complete context about
the information
21. Tips and lessons learned
• Be conscious on the
amount of data sent to
activity stream. Use
techniques such as
throttle timer, data
filtering to control what
is sent
• Stay focused with your
activity stream, in context
of the purposeful place
23. Where to learn more
Come see us at the Partner Pavilion!
24. PICK THE RIGHT EXTENSION POINTS
FOR DEVELOPMENT EFFECTIVENESS
25. /// Overview
"
SmarterPath is a social learning management system (LMS) built
specifically for Jive
"
Brings support for building curriculums, eLearning trainings, webinars
and reporting to the Jive platform
"
Time to minimum viable product: 2 months with 2.5 developers
"
Targeted at Jive 6 and current Jive Cloud, but incorporating new Jive
capabilities as they become available
•
26. /// Technology
"
Jive 6 targeted App, currently available on the Jive Apps Market
"
Base frontend built dynamically on the server side using signed
proxied content, additional data retrieved via webservices (osapi.http)
and bound to UI using Knockout.js
"
Integrating Jive 7 extension points to
embed the functionality deeper into the Jive
UX, making SmarterPath feel less like a
separate app: “Liberate learning from
the LMS”
///////////!
28. /// Technology
"
Jive 7: Learners can access a large percentage of the functionality from the
places that they already frequent in Jive (groups, profiles, streams)
///////////!
29. /// Technology
"
Tiles are easy to use. We implemented tiles support in .Net within 3 days
"
Apps and Purposeful Places are great for business apps; do not rely on them for
technical integrations or customizations
"
Start leveraging new extension points early, since they do not affect existing customers
on earlier versions
"
Using Jive as a platform, you will be able to build
enterprise apps that blow other solutions out of the water
in terms of functionality and UX.
And you can do it with a fraction of the effort!
///////////!
30. /// Where to learn more
"
Visit Pokeshot at booth S12 in Gracia Commons
///////////!