IBM Rational OSLC Adapter for Atlassian JIRA

Similar documents
OSLC Overview. Michael Fiedler, IBM , ARTEMIS Technology Conference ARTEMIS Joint Undertaking

OSLC ALM-PLM Interoperability Proof of Concept. Mike Loeffler Systems Engineering IT Specialist General Motors Company

enterprise IBM Rational Team Concert 2 Essentials

Living Architectures - from eclipse to jazz

Requirements Management im Kontext von DevOps

IBM Rational DOORS Next Generation

Agile Development with Jazz and Rational Team Concert

Competing and Integrating with Open Source Technologies

Lyo OSLC4J, Oauth Library and OSLC Test Suite 1.1 Release and Graduation Review

FAQ. CloudOne. Frequently Asked Doors Next Generation Questions. Do what you do best. We ll do the rest.

Application Lifecycle Management: Marriage of Business Management with Software Engineering

QA & Test Management. Overview.

DevOps Best Practices for Mobile Apps. Sanjeev Sharma IBM Software Group

Solutions for Quality Management in a Agile and Mobile World

SMART Apps. Rob Tweed M/Gateway Developments

IBM Rational Asset Manager

Agile Scaling Model: Be as Agile as You Need to Be

2015 IBM Continuous Engineering Open Labs Target to better LEARNING

IBM Rational Software

DevOps Course Content

Realtests.M questions M IBM Rational IT Sales Mastery Test v2

Core J2EE Patterns, Frameworks and Micro Architectures

Building Your EDI Modernization Roadmap

Near Future of Automated Software Testing

Intelligence. Productivity. Mobility. Unified Service. Predictive analytics: Offline mobile: Self, assisted & field service

An Oracle White Paper September Oracle Team Productivity Center

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

WEB SERVICES. Revised 9/29/2015

Converting Java EE Applications into OSGi Applications

MicroStrategy Course Catalog

Using Git with Rational Team Concert and Rational ClearCase in enterprise environments

Collaborative DevOps Learn the magic of Continuous Delivery. Saurabh Agarwal Product Engineering, DevOps Solutions

ITS. Java WebService. ITS Data-Solutions Pvt Ltd BENEFITS OF ATTENDANCE:

Modern SOA Testing. A Practitioners Guide to. July 2011

CMDB Federation. DMTF Standards for Federating CMDBs and other Management Data Repositories

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

FUSE-ESB4 An open-source OSGi based platform for EAI and SOA

Tools and Methods to Address Complexity at Scale

Requirements Management

Open source, commercial software or a coexistence strategy?

Fidelity National Financial Drives Improvements in Software Development and Reuse with IBM Rational Software Development Platform and Flashline

Performance Testing Web 2.0

Harnessing the power of software-driven innovation. Martin Nally IBM Rational CTO IBM Fellow and VP

Amplify Service Integration Developer Productivity with Oracle SOA Suite 12c

Open Source SOA with Service Component Architecture and Apache Tuscany. Jean-Sebastien Delfino Mario Antollini Raymond Feng

A new approach to automotive electric/electronic engineering life-cycle management

REST API Development. B. Mason Netapp E-Series

Impact CM: Model-Based Software Change and Configuration Management

In ediscovery and Litigation Support Repositories MPeterson, June 2009

1 What Are Web Services?

Managed File Transfer

About the Speakers: Rainer Ersch, Research Engineer, Siemens Corporate Research and Technologies. Pascal Vera, Product Manager Siemens TEAMCENTERT

OSLC Primer Learning the concepts of OSLC

Apache Sling A REST-based Web Application Framework Carsten Ziegeler cziegeler@apache.org ApacheCon NA 2014

Understanding and Addressing Architectural Challenges of Cloud- Based Systems

BUILDING FLEXIBLE ENTERPRISE PROCESSES USING ORACLE BUSINESS RULES AND BPEL PROCESS MANAGER. An Oracle White Paper Jan 2005

Service Oriented Architecture

Tool support for Collaborative Software Quality Management

Software Lifecycle Integration. A Quality Management Discipline

Lightweight Data Integration using the WebComposition Data Grid Service

Enterprise Application Designs In Relation to ERP and SOA

automated acceptance testing of mobile apps

JVA-561. Developing SOAP Web Services in Java

BUSINESS PROCESS AND EBXML - WEB SERVICES INTEGRATION PLATFORM, REQUIREMENTS, ARCHITECTURES, SECURITY

Developing Java Web Services

Web Service Implementation Methodology

Long Term Record Retention and XAM

The Rise of Telecom Development Frameworks

Lotus Sametime Unified Telephony

IBM WebSphere Application Server

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

Modernizing enterprise application development with integrated change, build and release management.

PRIVACY AWARE ACCESS CONTROL FOR CLOUD-BASED DATA PLATFORMS

Avoiding Web Services Chaos with WebSphere Service Registry and Repository

Software change and release management White paper June Extending open source tools for more effective software delivery.

Mitra Innovation Leverages WSO2's Open Source Middleware to Build BIM Exchange Platform

Improving IT Agility with Rational Collaborative Lifecycle Management

Oracle Identity Analytics Architecture. An Oracle White Paper July 2010

Global Delivery Excellence Best Practices for Improving Software Process and Tools Adoption. Sunil Shah Technical Lead IBM Rational

1 What Are Web Services?

Java Web Services Training

Requirement Traceability in Practice

ebay : How is it a hit

HP Systinet. Software Version: Windows and Linux Operating Systems. Concepts Guide

Take full advantage of IBM s IDEs for end- to- end mobile development

Max Parker IBM Rational Quality Management Specialist. Focus on: Testing and Virtualisation in a complex world

S609. RDz and Source Control Management Systems

Community Systems Management Open Source COSMOS Creation Review

SOFTWARE TESTING TRAINING COURSES CONTENTS

Agile Software Development & Application Life Cycle Management

Leveraging Rational Team Concert's build capabilities for Continuous Integration

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

A Comprehensive Solution for API Management

Codeless Test Automation for Web Apps

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

White Paper: Why Upgrade from WebSphere Application Server (WAS) v7 to v8.x?

Protecting Database Centric Web Services against SQL/XPath Injection Attacks

Transcription:

Jozef de Vries & Joseph Leong IBM Rational Integrations Gearbox Team IBM Rational OSLC Adapter for Atlassian JIRA

Topics Rational s strategy for 3 rd party integrations Demo of the Rational OSLC adapter for Atlassian JIRA Development design and strategy for the adapter 1

Lifecycle tool environments are becoming increasingly heterogeneous Role of in-house developed tools # of commercial lifecycle tool vendors Almost all are managing 3 or more lifecycle tool vendors Source: Rational Voice of the Customer Event, November 2010 Almost 90% of customers are dealing with in-house developed lifecycle tools Role of open source lifecycle tools What resources do you use to develop and maintain lifecycle tool integrations? Almost all are dealing with open source lifecycle tools, but 2/3 say not very well Vast majority supplement vendor-provided integrations with in-house effort 2

Rational Integrations and OSLC COMMUNITY Transparent collaboration and exchange of ideas Adapter Non Lyo based Adapter 3 rd Party Product 3 rd Party Product RATIONAL PRODUCTS Application lifecycle tools that leverage the Jazz platform PLATFORM Open Services for Lifecycle Collaboration and Integration Services Lyo: SDK as baseline for adapters Adapter 3 rd Party Product Application frameworks and toolkits Adapter Adapter 3 rd Party Product 3 rd Party Product OSLC as the base technology that enables integrations within, and beyond Jazz Jazz provides an integration platform Project Lyo provides an OSLC SDK Adapters are built in-house, by partners, by community, and as service assets 3

Rational s vision - integrate tools in the entire lifecycle whether they are from Rational, third-parties or home-grown Any lifecycle tool Legacy Rational products New Rational products CLM products 4

Rational Integrations Gearbox 3rd party integrations Work with Product Mgt on governance and models Build adaptors/integrations/assets Act as dev-side in partner engagements Develop multi-product scenarios OSLC assets Reference implementation across final specs Test suites Sample code Tutorials/primers/best practices In tight concert w/ OSLC team around evangelizing community Integration assets Examine existing integrations to improve use cases for customers Determine based on pain pts or strategy where to bolster w/ assets Shape future requirements for nextgen versions of integrations Leverage ISSR, support, sales, JS, ULL OSLC Jazz Integration Services Dedicated Development organization focused on 3 rd party Integrations 5

Typical customer situations that we want to address RTC seems interesting, but I have a large investment in HPQC: How do I manage traceability? Where do I manage defects We would like to use RRC for requirements, but need to ensure that our testers in HP QC can provide test coverage for all the requirements in a release We contract out component development to teams that track defects with JIRA how can I connect my RQM testing efforts to these groups? I have a large pool of users using GIT, and we re interested in using RTC for CM activities. How can I ensure proper governance over code changes? 6

Rational OSLC Adapter for JIRA - Demo JIRA in place of, or in addition to the CM component in RTC/Jazz Foundation 7

Development design and strategy for the adapter 8

What are the fundamental tools involved? Rational solution for Collaborative Lifecycle Management (CLM) Rational Team Concert (RTC) CM, Planning, SCM, Build Automation Rational Quality Manager (RQM) - QM Rational Requirements Composer (RRC) - RM Atlassian JIRA Issue tracking system Change management system 9

What is the objective of our development? Rational CLM Products ß --- Integration ---à Atlassian JIRA Ex 1: RTC Work Item à Create/Link à JIRA Issue Ex 2: RQM Test Execution Record à Create/Link à JIRA Issue Ex 3: RRC Requirement à Create/Link à JIRA Issue How do we go about this integration? Let s use a specification that describes what we are trying to communicate 10

OSLC Provider & Consumer Roles that describe how an application interacts with the OSLC specification OSLC specifications provide a principle to describe data in different domains Domain Examples: Change Management, Requirements, and Quality Management Association with each other Linked data model An OSLC provider is responsible for exposing domain data in accordance with the OSLC specification that creates exposure to creating, updating and querying linked data An OSLC consumer is responsible for consuming the OSLC provider services so that it can manifest access to the domain data through delegated interfaces and service calls 11

What Roles are the Products Playing? OSLC CM Provider: In a nutshell, hosts the CM Data and surfaces it through the specification OSLC CM Consumer: Again, in a nutshell, provides a way to get at the CM Data through the specification Rational CLM is an OSLC CM Consumer Get this for free because Rational CLM already implements this Atlassian JIRA is an OSLC CM Provider In other words, the objective of the integration is to implement an OSLC CM Provider in JIRA! 12

Specifications Basically a set of expectations you and I understand Example: Tell me about a car you want to sell (English, Car Vocabulary, ) How to go about creating the Rational CLM and Atlassian JIRA integration? The integration point between the two products is creating and accessing Change Management (CM) domain data What is Change Management data? Rational CLM products, as a whole, consume CM data Atlassian JIRA produces CM data (Such as Bugs, Tasks, New Features ) Leverage OSLC Change Management Specification Provides a set of expectations for how to describe CM data 13

Delegated Interfaces / Services Some concrete examples of the OSLC CM Specification (Recall from the Demo) Creation Dialog / Selection Dialog Specification provided the location to access this UI Preview Specification provided the consumer the understanding of this capability Backlinks in JIRA back to CLM Service layer underneath Allow REST calls for discovery / creation / updates 14

Recap OSLC technology is the basis to enable this integration through providers and consumers Objective: Integrate Rational CLM with Atlassian JIRA Ability for Rational CLM to create and access CM data in Atlassian JIRA Leverage OSLC Change Management Specification to set the expectation for what the communication of CM data between products will look like Questions? 15

Design Decisions Not going to cover the OSLC CM spec itself Details of the attributes and shape of the data can be found at http://open-services.net Focus on Design Decisions that materialized the integration Outline Embodiment of this implementation Mechanisms to surface the OSLC CM Provider data Data representation Security Specification Validation / Compliance Level Retrospective and Improvements (LYO) 16

Embodiment of Implementation Embedded Atlassian JIRA Plugin or Standalone Server Integration? Embedded Plugin + Closer to JIRA data (aggregate data / computations locally, less HTTP overhead) + Ability to extend and manipulate the JIRA web interface (backlinks) + A much richer API (reuse query language, leverage existing security mechanism) Standalone Server + Creating a more reusable OSLC CM provider architecture for other integrations + Working with JIRA REST API is a lot less complex + Potentially less admin access is required Conclusion: Embedded Plugin approach, primarily because of the need to access a richer API and extend the web interface 17

Embodiment of Implementation Embedded Plugin! 18

Surfacing the OSLC CM Provider data How to handle serving all the different web contexts and services? OSLC is a RESTful service JAX-RS Great to delegate serving different contexts and routing different HTTP verbs driven requests Utilizes JAX-RS framework Jersey, which also serves their JIRA REST API No additional binary footprint to get this because Jersey was already included in JIRA 19

Data Representation Example artifacts of the specification Service Catalog Service Provider ChangeRequest etc Created POJOs to represent our change management domain data Created a base set of POJOs to model the OSLC CM resources Extended base POJOs to capture additional data JIRA Issues provide High frequency of converting POJOs to various data formats Leverage an automated process JAXB XML Marshalling / Unmarshalling of POJOs (Annotations to describe XML) JSON Marshalling / Unmarshalling of POJOs 20

Security Who is allowed to access a JIRA issue? Who is allowed to access a Change Management resource? Delegate security to respective product + OAuth CLM Users must login to access their resources (nothing new) When attempting to create/link artifacts in JIRA Ex: Surface dialogs from JIRA (Creation / Selection) Invoke JIRA Form Login to produce session Ex: When CLM is updating backlinks in JIRA Use pre-established OAuth friendship JIRA Permission manager to authenticate requests in a session 21

Specification Validation / Compliance Level How to validate your OSLC implementation? Lyo Test Suite Assesses the level of compliance your implementation offers Can be used in conjunction with build testing Generates compliance reports Available on eclipse project site Compliance Reports and Levels Different levels of integrations (MUST / SHOULD / MAY etc ) For example, Rational CLM products tend to implement more parts of the specification Provide richer integrations (Ex: OAuth, RDF/XML Data representations, etc..) The compliance report helps assess these compliance levels Generated graph for quick view Summary Break down of validation tests 22

Retrospective and Improvements (LYO) Previously, only took advantage of OSLC Constants, Basic POJOs, Test Suite Good News! Lyo SDK now has provided a lot more to help facilitate implementations OAuth Provider framework Annotations schema on top of POJOs to generate OSLC documents Out of the box JSON / RDF+XML marshalling / unmarshalling of OSLC documents RDF storage utilities to persist global metadata More underway Eclipse Lyo project roadmap Get involved to help us understand what you need 23

Questions? 24

Resources Rational OSLC adapter for JIRA: https://jazz.net/library/article/766 Open Services: http://open-services.net/ OSLC CM V2 Specifications: http://open-services.net/bin/view/main/cmhome?sortcol=table;up=#2_0_finalized Eclipse LYO OSLC SDK / Test Suite: http://www.eclipse.org/lyo/ 25