an agile development process for osgi projects

Post on 28-Jan-2015

106 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

The presentation describes an agile development process for OSGi projects that incorporates Scrum and XP best practices.

TRANSCRIPT

An Agile Development Processfor OSGi projects

Filippo Diotalevi <filippo@diotalevi.com>

Goal

Define a development process for OSGi projects,

incorporating Scrum and XP best practices

Project Lifecycle (Scrum)

Retrospective

Sprint Backlog

Product Backlog

Sprint

Sprint

Planning

Daily

Meeting

Sprint

Review

Coding

and

testing

Working

Software

Development Process Matrix

Wiki

Issue Tracker

BuildAutomation

IDE

Unit Tests

ContinuousIntegration

IntegrationTesting

FunctionalTests

AcceptanceTest

ReleaseAutomation

Documentation

Task Assignement

Bug Tracking

Project Management

Code development

Continuous QA

Code-Use Cases

alignement

Compatibility with

different sw versions

and OSGi frameworks

Final QA

Delivery

Monitoring

Deployment

Monitoringand

Management

Deploymentand

Provisioning

Wiki + Issue Tracker

Atlassian Jira + ConfluenceBest Choice

Runner-Up

Trac

Other: VQWiki, Redmine

www.atlassian.com

trac.edgewall.org

Build Automation

Maven (maven-bundle-plugin)Best Choice

Several other tools to structure and automate OSGi projects: - Pax Construct - Pax Runner

maven.apache.org

http://wiki.ops4j.org/display/ops4j/Pax

IDE

EclipseBest Choice

A plain Eclipse for JavaSE development would work. Possible enhancements (sometimes unstable): - m2clipse (maven 2 Eclipse plugin) - Apache Felix Sigil

http://www.eclipse.org

Unit Testing

JUnit 4Best Choice

Runner-Up

TestNG

http://www.junit.org

http://www.testng.org

Continuous Integration

HudsonBest Choice

https://hudson.dev.java.net/

Integration Testing

Pax ExamBest Choice

Runner-Up

Apache Felix JUnit4OSGi

http://wiki.ops4j.org/display/paxexam/Pax+Exam

http://felix.apache.org/site/apache-felix-ipojo-junit4osgi.html

Functional/Acceptance Testing

Selenium

FitnesseBest Choice

http://seleniumhq.org/

http://fitnesse.org/

Monitoring and Management

Best Choice

Apache Felix Web Consolehttp://felix.apache.org/site/apache-felix-web-console.html

Monitoring and Management (II)

Best Choice

Apache Felix Console (+ custom command)

JMX Components + VisualVM

https://visualvm.dev.java.net/

Deployment and provisioning

Experimental!

http://wiki.eclipse.org/Equinox_p2_Getting_Started

Eclipse P2

Apache ACE

http://incubator.apache.org/ace/

Images:http://www.sxc.hu/photo/1176209http://www.sxc.hu/photo/1068157http://www.sxc.hu/photo/1109004http://www.sxc.hu/photo/997219

Filippo Diotalevi <filippo@diotalevi.com>

Thanks! For any question:

top related