jasforge : the collaborative agile project
DESCRIPTION
JasForge is a collaborative platform which aim si to create an agile ecosystem using a plugin and OSGI mecanism. This presentation was made during Eclipse Summit 2010 Europe in Ludwigsburg (Germany). If you want some further informations, write us to [email protected] or go to the official community website www.jasforge.com.TRANSCRIPT
![Page 1: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/1.jpg)
JasForge:The Collaborative and Agile Project
Eclipse Summit EuropeWednesday, Nov. 3, 2010 Ludwigsburg (Germany)
By Mr Karim Djafaar
CO and Technical JEE Evangelist of
JASMINE CONSEIL ©
http://www.jasmineconseil.com
![Page 2: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/2.jpg)
Page 2
1
2
Jasforge Project
Brief Recall of Continuous Integration
Presentation Plan
Page 2
3 What is JasForge ?
4 Simple Scenarios
5 JasForge Architecture
6 JasForge Features in detail
7 Some View of existing JasForge Tools
![Page 3: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/3.jpg)
Page 3
Continuous Integration Principles
![Page 4: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/4.jpg)
Page 4
Today Problem with software integration
10%10%
20%
20%
45% Define requirement
Analyze the needs
Conception
Coding
Integration/Test
http://www.info.ucl.ac.be/Enseignement/Cours/INGI2255/notes/chap1.pdf
Continuous IntegrationContinuous Integration
![Page 5: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/5.jpg)
Page 5
What is Continuous Integration (wikipedia definition) ?
« In software engineering, continuous integration (CI) implements continuous processes of applying quality control - small pieces of effort, applied frequently.
Continuous integration aims to improve the quality of software, and to reduce the time taken to deliver it, by replacing the traditional practice of applying quality control after completing all development.”
![Page 6: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/6.jpg)
Page 6
CI Architecture and JasForge Open Source project
CI RepositoryCI Server Deployment
Platform
Build Manager
Feedbackmecanism
1.Checkout: get all existing source from the repository1.Checkout: get all existing source from the repository
12
2.Commit: commit all local modifications in the repository2.Commit: commit all local modifications in the repository
3
3.Pool: See if there is a commit in the repository3.Pool: See if there is a commit in the repository
4
4.Build: Build construction in the JEE lifecycle.4.Build: Build construction in the JEE lifecycle.
5
5.Deploy: Artefact deployment in a target platform5.Deploy: Artefact deployment in a target platform
6
6.Feedback: feedback mecanism like email notification and groupware.6.Feedback: feedback mecanism like email notification and groupware.Jasforge : Agile and Open Source Solution for building a custom Continuous Process
Jasforge : Agile and Open Source Solution for building a custom Continuous Process
![Page 7: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/7.jpg)
Page 7
What is JasForge ?
![Page 8: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/8.jpg)
Page 8
What is JasForge ?
An agile Platform to manage Continuous Integration Process
Help development team to better collaborate and be efficient in their daily task (project creation, development, tests, integration, deployment ...)
A central platform for the creation and managing of middle to complex projects, from the inception to the deployment
Available in two edition:
– Community Edition (Eclipse Public Licence)
– Entreprise Edition
![Page 9: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/9.jpg)
Page 9
JasForge Predefined Actors
![Page 10: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/10.jpg)
Page 10
JasForge monitoring Tools
JASFORGE AgentJASFORGE Agent
maven
Nexus
JasForge: A customized and
Agile collaborative solutionYour ToolYour Tool
![Page 11: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/11.jpg)
Page 11
JasForge particularities vs other existing Software Factories
Ext
ensi
bilit
yE
asy InstallationJasforge
Follow the CI Concept
![Page 12: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/12.jpg)
Page 12
Open to other standard Agile tool
With JasForge, you can tailor your build process to your specific need by choosing your specific standard tool:
– SVN, CVS for source code Management
– Maven based compilation, test (Junit) and release
– Continuous Integration Management with Hudson/Cruise Control
– Bug Tracking by JIRA (default)
– Quality Metrics with Sonar, PMD, Checkstyle
– Directory Management and role based with OpenLDAP
– Server Management and Monitoring (Tomcat/Jetty, JBoss, and WebSphere available only in the JasForge Entreprise Edition)
– Eclipse IDE integration using the ECF framework and SOAP based API (Entreprise Edition)
![Page 13: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/13.jpg)
Page 13
SCM SUPPORT
Simple scenarios:
![Page 14: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/14.jpg)
Page 14
Sample scenarios: Project creation with JasForge
maven
authentificationProject Creation
Maven archetype Creation
SVN repository creation
Monitoring and Managing Tools CI project management
with Hudson
![Page 15: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/15.jpg)
Page 15
JasForge Architecture
![Page 16: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/16.jpg)
Page 16
Jasforge Project: a layered and standardized Architecture
![Page 17: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/17.jpg)
Page 17
JasForge : An Extensible Architecture
A factory of beans which manage all the tools to be monitored in the JasForge monitoring tool
A dedicated agent which instrument and monitor all the specific tool used in the infrastructure
You declare your tool as spring service in a dedicated jasforge-service.xml descriptor using our JasForge SDK
![Page 18: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/18.jpg)
Page 18
Jasforge: An Agile ecosystem in is own
Page 18
![Page 19: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/19.jpg)
Page 19
JasForge Features in details
![Page 20: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/20.jpg)
Page 20
LDAP Based and specific roles for each tool
openLDAPopenLDAP
AuthentificationAuthentification
Security RealmsSecurity Realms
JNDI RealmsJNDI Realms
Page 20
![Page 21: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/21.jpg)
Page 21
SVN synchronization
SubversionSubversion
Synchronization with SVN operations (checkin, ..)Synchronization with SVN operations (checkin, ..)
SVN ConnectorSVN Connector
Page 21
![Page 22: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/22.jpg)
Page 22
Full SCM support with Subversion
SubversionSubversion
SVN Managment using Access RightSVN Managment using Access Right
AgentAgent
JNDIManager
JNDIManager
Svnserve
Svnserve.conf
Stratégie d’auth
passwd
Users & pwd
Authz
Groupes & Accès
Page 22
![Page 23: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/23.jpg)
Page 23
Tools are injected exposed as web services using SOA and REST Protocol
The tools are services using Dependency Injection :
– Each tool is managed as a bean and transparently « injected » in the JasForge application as a service
JasForge tools are exposed as Forge manage all web services using Simple Object Access Protocol (SOAP) and REST-style services
![Page 24: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/24.jpg)
Page 24
Full CI support with Hudson Tool using SOAP/REST Support
HudsonHudson
No
tic
eN
oti
ce
is managed by LDAP Authentification inside Hudson
is managed by LDAP Authentification inside Hudson
Page 24
SOAP/REST-createBuildService
- ……
SOAP/REST-createBuildService
- ……
HTTP XML/RPC
![Page 25: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/25.jpg)
Page 25
Demo: JasForge center of control
![Page 26: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/26.jpg)
Page 26
Some view of existing JasForge Tools integration …
![Page 27: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/27.jpg)
Page 27
Hudson Integration
Page 27
![Page 28: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/28.jpg)
Page 28
Tools Monitoring Infrastructure
![Page 29: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/29.jpg)
Page 29
JIRA Integration
![Page 30: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/30.jpg)
Page 30
Future Evolution
![Page 31: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/31.jpg)
Page 31
OSGI compliant and Update Managment
Tools will be available as bundles in a OSGI container
You will easily monitor your tools as services and enhance the monitoring of the overal infrastructure thanks to OSGI specification supported by Eclipse Equinox
An update installer which facilitate the localization and update of your tools will be also available
![Page 32: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/32.jpg)
Page 32
Conclusion
JasForge is an Agile and Open Source Platform for managing all the life cycle of your Agile JEE project.
Based on Standard and Open Source tools Based on Standard and Open Source tools
Collaborative Platform for agile teamCollaborative Platform for agile team
Plugable and extensible Software FactoryPlugable and extensible Software Factory
Cover all the life cycle of a JEE ProjectCover all the life cycle of a JEE Project
![Page 33: Jasforge : The Collaborative Agile Project](https://reader036.vdocument.in/reader036/viewer/2022062703/5552f580b4c90584028b4db4/html5/thumbnails/33.jpg)
Page 3333
JasForge: A Jasmine Conseil concept
http://www.jasmineconseil.com
Need More information ?
Download the Presentation:
http://moneclipse.com:8010/jasforge/resources/cms/documents/
JasForgeEclipseSummit2010.ppt
Thank you for your Attention