Managing ALM with Jasforge OSLC Solution · 2017-12-06 · Tools Carried in JasForge Version...

Preview:

Citation preview

Managing your Agile ALM Process with

JasForge OSLC Forge and Lyo SDK

DJAAFAR Karim

CO of Jasmine Conseil

http://www.jasmineconseil.com

Overview

Background and Intro

Agile ALM at a glance

ALM in Agile Project

JasForge, The Agile Dashborad in your ALM process

A Little Demo

Questions

35:00 Minutes

Background and Introduction

Who am I ?

Team Leader of Jasmine Conseil, a French

Consulting Company in Open Source Software

A JEE Evangelist working on “Agile ALM Project”

Chief Committer of JasForge Project, a

collaborative Agile Open Source project

dedicated to federate Open Source Tools in one

Dashboard Web Application

This project was first presented to EclipseConf

2010 at Ludwigsburg (Germany)

Agile ALM at a glance

ALM, what is ?

“ALM describes the coordination of development lifecycle disciplines, including the management of requirements, changes, configurations, integrations, releases, and tests…”

Application Lifecycle

Management

ALM bridges the development disciplines and

phases of requirements definition, design, code,

test, and run.

To resume, …

In summary, Agile ALM consists of the following

four major fundamentals: Collaboration — All team members are aware of what others

are doing

Integration — Achieving business targets requires an

enterprise infrastructure to integrate roles, teams, workflows,

and repositories into a responsive software delivery chain

Automation — The streamlining of the full lifecycle is heavily

based on end-to-end automation

Continuous improvement — You can improve only what you

can see and measure, so building and delivering software that

minimizes manual work is a requirement for easily identifying

where you are in your process.

ALM in Agile Project

Managing efficiently your build process:

a required step in Java complex project

Today, managing and taking control of your software process is a major challenge for maintaining is capacity to be innovative and competitive

We must manage the quality of our software development en meet the requirements and delays in a predictive mode

Each Team with each role in each project use different conventions and code quality metrics and reporting are not done systematically, or not at all

We need some orchestration solution which can manage all this constraints

Managing your own build process Choosing the right tool in your Agile Process

How to Integrate is own

Tool ?

how can we integrate those tools efficiently

across different vendor products to provide

services for the customer ?

The constraints

Traditional Tool Integration…

Closed APIs

Vendor Lock in

Tight Coupling

Dependences on internal structures

Versions incompatibilities

Using Open Standards with The Open Services

for Lifecycle Collaboration (OSLC)

OSLC, (http://open-services.net ) is a community-driven effort,

mainly sponsored by IBM, to improve the integration of lifecycle

between tools (requirements, build Tool, defects, ...)

Core specifications V2

The OSLC program established special interest groups working

on individual ALM areas, including change management,

requirement management, and software configuration

management, providing public descriptions of interfaces for

integrating these features.

The interfaces are specified in a REST web service style.

Eclipse Lyo is the Reference Implementation for OSLC

About the OSLC-CM

specifications

OSLC-CM is a specification that seeks to

standardise bugtracker (or more precisely

Change Management applications) interfaces in

order to provide features like :

Linking DATA via http and REST APIs (JAX-RS)

ServiceProvider, enabling tools to expose there

resources and allowing consumers to navigate to all

of the resources and create new ones using

Adapters

RDF based resource description (Catalog

RDF/XML)

Service Description and Discovery (Ex: Bugzilla OSLC connector)

<oslc:ServiceProviderCatalog rdf:about="http://localhost:8282/bugz/catalog">

<dcterms:title>OSLC-CM Adapter/Bugzilla Service Provider Catalog</dcterms:title>

<oslc:domain rdf:resource="http://open-services.net/ns/cm#" />

<oslc:serviceProvider>

<oslc:ServiceProvider

rdf:about="http://localhost:8282/bugz/provider?productId=1">

<dcterms:title>TestProduct</dcterms:title>

</oslc:ServiceProvider>

</oslc:serviceProvider>

<oslc:serviceProvider>

<oslc:ServiceProvider rdf:about="http://localhost:8282/bugz/provider?productId=3">

<dcterms:title>FakePortal</dcterms:title>

</oslc:ServiceProvider>

</oslc:serviceProvider>

</oslc:ServiceProviderCatalog>

JasForge: The Agile Dashboard in your ALM process

A single repository for all the ALM

Tools

A PaaS Architecture JasForge thanks is pluggable Architecture provide a referential of

all the required tools used in your Agile team

JasForge is a PAAS infrastructure (Platform As A Service) for all the

registered Tools qualified to work in your Forge using a dedicated

installer

JasForge, the Agile Platform

JasForge is a unique collaborative platform for service

and Agile tools

JasForge is specifically adapted for projects which

want to personalize their development process

JasForge is composed of:

A bundle of Agile Tools focused on each part of

the development process (inception tool,

collaborative tool, build tool, CI tool, Project

Management Tool, Eclipse Maven Archetype…)

JasForge support OSLC specifications using

Eclipse Lyo SDK (see demo)

JasForge Core which manage and orchestrates

the selected tools and OSLC compatible connectors

Tools Carried in JasForge Version Control

Subversion, Git

Build Tool

Maven with dedicated Archetypes, and dedicated plugins

Continuous Integration

Jenkins, Hudson

Repositoty Manager

Nexus (required)

Ldap Registry

Open LDAP

Bug Tracking

JIRA, Bugzilla

Agile Planning and Project Management

Green Hopper, Redmine

Wiki

Confluence

Quality Managment

Sonar, Checkstyle

OSLC JasForge Implementation

How to register a Tool using OSLC mecanisms in

JasForge Solution

Project

Task

JIRA Issue

OSLC

Atlassian JIRA

Registration

JasForge Studio: the customized

installer Pack

JasForge Studio Installer Pack

Jasforge: Agile Tool on Demand

An Agile Tools Platform on demand You can customize easily your forge using an update installer

and thanks to JasForge pluggable architecture, you chosse

what tool you need to use in your project :

Project Management

All the project created using JasForge are

managed inside Nexus repository Manager :

Project are managed using

Maven Archetypes

Complete Integration of Maven

Tasks

Users Management All the team members are managed using an

LDAP directory using dedicated role (Administrator,

Project Manager, Developer, Deployer):

Quality Management with Sonar

Demo

Demonstration of the JasForge OSLC Adapter

for Atlassian JIRA Start the Lab Environment

Understand the Project Structure

See Lyo code implementation in JasForge

Run the JIRA Adapter in JasForge

The JasForge Team

Thank You

Please Visit the Official Web Site

http://www.jasforge.com

For further information contact us :

infos@jasforge.com

Recommended