advanced project tracking with arbit€¦ · advanced project tracking with arbit2 / 38 about me i...

64
Advanced project tracking with Arbit International PHP Conference 2010 Kore Nordmann <[email protected]> October 12, 2010

Upload: others

Post on 15-Aug-2020

16 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with ArbitInternational PHP Conference 2010

Kore Nordmann <[email protected]>

October 12, 2010

Page 2: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 2 / 38

About me

I Kore Nordmann (<[email protected]>, <[email protected]>,<[email protected]>)

I Each more than 10 years of professional PHP

I Open source enthusiasts

I Contributing to various FLOSS projectsI Founder of Qafoo GmbH

I Provides training & consulting on PHP software quality tools& processes

I Provides commercial support for Arbit

Page 3: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 3 / 38

Outline

Introduction

Motivation

Current state

Architectural gems

Sub-Projects

The future

QA

Page 4: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 4 / 38

What is arbit?

I An issue tracker on steroids.I A “project tracker”

Page 5: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 4 / 38

What is arbit?

I An issue tracker on steroids.I A “project tracker”

Page 6: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 5 / 38

Outline

Introduction

Motivation

Current state

Architectural gems

Sub-Projects

The future

QA

Page 7: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 6 / 38

Motivation

I Yet another issue tracker - why?I There are already so many out there. . .

I TracI RedmineI MantisI JiraI BugzillaI FlysprayI . . .

I So, why develop another one?I Anybody got an idea?I What do you hate most about them?

Page 8: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 6 / 38

Motivation

I Yet another issue tracker - why?I There are already so many out there. . .

I TracI RedmineI MantisI JiraI BugzillaI FlysprayI . . .

I So, why develop another one?I Anybody got an idea?I What do you hate most about them?

Page 9: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 6 / 38

Motivation

I Yet another issue tracker - why?I There are already so many out there. . .

I TracI RedmineI MantisI JiraI BugzillaI FlysprayI . . .

I So, why develop another one?I Anybody got an idea?I What do you hate most about them?

Page 10: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 6 / 38

Motivation

I Yet another issue tracker - why?I There are already so many out there. . .

I TracI RedmineI MantisI JiraI BugzillaI FlysprayI . . .

I So, why develop another one?I Anybody got an idea?I What do you hate most about them?

Page 11: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 7 / 38

Initial roadmap

I Started in Februrary 2008I Primary development goals

I Clean extensible PHP codeI Native, easy multi-project supportI Modularized, for custom extensions

I Originally planned feature setI Issue tracker, wiki, source browsing, notifications, . . .I Integrate Continuous Integration (CI) with issue tracking

Page 12: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 7 / 38

Initial roadmap

I Started in Februrary 2008I Primary development goals

I Clean extensible PHP codeI Native, easy multi-project supportI Modularized, for custom extensions

I Originally planned feature setI Issue tracker, wiki, source browsing, notifications, . . .I Integrate Continuous Integration (CI) with issue tracking

Page 13: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 7 / 38

Initial roadmap

I Started in Februrary 2008I Primary development goals

I Clean extensible PHP codeI Native, easy multi-project supportI Modularized, for custom extensions

I Originally planned feature setI Issue tracker, wiki, source browsing, notifications, . . .I Integrate Continuous Integration (CI) with issue tracking

Page 14: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 7 / 38

Initial roadmap

I Started in Februrary 2008I Primary development goals

I Clean extensible PHP codeI Native, easy multi-project supportI Modularized, for custom extensions

I Originally planned feature setI Issue tracker, wiki, source browsing, notifications, . . .I Integrate Continuous Integration (CI) with issue tracking

Page 15: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 7 / 38

Initial roadmap

I Started in Februrary 2008I Primary development goals

I Clean extensible PHP codeI Native, easy multi-project supportI Modularized, for custom extensions

I Originally planned feature setI Issue tracker, wiki, source browsing, notifications, . . .I Integrate Continuous Integration (CI) with issue tracking

Page 16: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 7 / 38

Initial roadmap

I Started in Februrary 2008I Primary development goals

I Clean extensible PHP codeI Native, easy multi-project supportI Modularized, for custom extensions

I Originally planned feature setI Issue tracker, wiki, source browsing, notifications, . . .I Integrate Continuous Integration (CI) with issue tracking

Page 17: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 7 / 38

Initial roadmap

I Started in Februrary 2008I Primary development goals

I Clean extensible PHP codeI Native, easy multi-project supportI Modularized, for custom extensions

I Originally planned feature setI Issue tracker, wiki, source browsing, notifications, . . .I Integrate Continuous Integration (CI) with issue tracking

Page 18: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 8 / 38

Integrating CI

I What does CI mean?I Running tests on each commit / every hourI Analyze source code for defectsI Build releases on build successI Report failures

I Implementation pending

I We got all of this in Hudson, phpUnderControl, . . .I Benefits of integration with issue trackers

I Combine knowledge about bug statistics with source metricsI Get a good overview of a project in one tool

Page 19: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 8 / 38

Integrating CI

I What does CI mean?I Running tests on each commit / every hourI Analyze source code for defectsI Build releases on build successI Report failures

I Implementation pending

I We got all of this in Hudson, phpUnderControl, . . .I Benefits of integration with issue trackers

I Combine knowledge about bug statistics with source metricsI Get a good overview of a project in one tool

Page 20: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 8 / 38

Integrating CI

I What does CI mean?I Running tests on each commit / every hourI Analyze source code for defectsI Build releases on build successI Report failures

I Implementation pending

I We got all of this in Hudson, phpUnderControl, . . .I Benefits of integration with issue trackers

I Combine knowledge about bug statistics with source metricsI Get a good overview of a project in one tool

Page 21: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 8 / 38

Integrating CI

I What does CI mean?I Running tests on each commit / every hourI Analyze source code for defectsI Build releases on build successI Report failures

I Implementation pending

I We got all of this in Hudson, phpUnderControl, . . .I Benefits of integration with issue trackers

I Combine knowledge about bug statistics with source metricsI Get a good overview of a project in one tool

Page 22: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 8 / 38

Integrating CI

I What does CI mean?I Running tests on each commit / every hourI Analyze source code for defectsI Build releases on build successI Report failures

I Implementation pending

I We got all of this in Hudson, phpUnderControl, . . .I Benefits of integration with issue trackers

I Combine knowledge about bug statistics with source metricsI Get a good overview of a project in one tool

Page 23: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 8 / 38

Integrating CI

I What does CI mean?I Running tests on each commit / every hourI Analyze source code for defectsI Build releases on build successI Report failures

I Implementation pending

I We got all of this in Hudson, phpUnderControl, . . .I Benefits of integration with issue trackers

I Combine knowledge about bug statistics with source metricsI Get a good overview of a project in one tool

Page 24: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 8 / 38

Integrating CI

I What does CI mean?I Running tests on each commit / every hourI Analyze source code for defectsI Build releases on build successI Report failures

I Implementation pending

I We got all of this in Hudson, phpUnderControl, . . .I Benefits of integration with issue trackers

I Combine knowledge about bug statistics with source metricsI Get a good overview of a project in one tool

Page 25: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 9 / 38

Dashboard

Page 26: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 10 / 38

CI in Arbit

Page 27: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 11 / 38

Outline

Introduction

Motivation

Current state

Architectural gems

Sub-Projects

The future

QA

Page 28: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 12 / 38

Dependencies

I PHP ≥ 5.3I CouchDB ≥ 0.9

I Alternative RDBMS backend (MySQL, PostgreSQL, . . . ) isbeing worked on

I Will probably use Doctrine 2

I InstallationI Download PHAR or archive

I Only for testing, not recommened for production

I Installation instructions: http://tracker.arbitracker.

org/arbit/documentation/view/InstallationGuide

Page 29: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 12 / 38

Dependencies

I PHP ≥ 5.3I CouchDB ≥ 0.9

I Alternative RDBMS backend (MySQL, PostgreSQL, . . . ) isbeing worked on

I Will probably use Doctrine 2

I InstallationI Download PHAR or archive

I Only for testing, not recommened for production

I Installation instructions: http://tracker.arbitracker.

org/arbit/documentation/view/InstallationGuide

Page 30: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 13 / 38

Projects using arbit

I PHP Depend (http://tracker.pdepend.org/pdepend)

I PHPMD(http://tracker.pdepend.org/php_mess_detector)

I Dwoo (http://bugs.dwoo.org/)

I Arbit (http://tracker.arbitracker.org)

I Different companies for their customers

Page 31: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 14 / 38

Contribute

I Already contributing:I Kore Nordmann (kore)I Jordi Boggiano (seldaek)I Manuel Pichler (mapi)I Arne Nordmann (norro)I Jakob Westhoff (jakob)I Hans-Christian Otto (hco)I Tobias Schlitt (toby)I Tobias Tom (tobias)I . . . more contributors in sub projects like VCS-Wrapper

I We would love to welcome you in the community around arbit:http://arbitracker.org/arbit/participate.html

Page 32: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 15 / 38

Already working

I Issue tracker

I Wiki

I Source browser

I Source metrics rendering (phpDepend)

I API documentation renderingI Continuous Integration (CI) (experimental)

I PHPUnitI PHPCodeSnifferI phploc

I Demo!

Page 33: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 15 / 38

Already working

I Issue tracker

I Wiki

I Source browser

I Source metrics rendering (phpDepend)

I API documentation renderingI Continuous Integration (CI) (experimental)

I PHPUnitI PHPCodeSnifferI phploc

I Demo!

Page 34: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 16 / 38

Outline

Introduction

Motivation

Current state

Architectural gems

Sub-Projects

The future

QA

Page 35: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 17 / 38

Arbit basic architecture

Dispatcher

Request Parser

Controller

View

Filter

View Model

Page 36: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 18 / 38

Arbit basic architecture

Dispatcher

Request Parser

Controller

View

Filter

View Model

HTTP

CLI

Page 37: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 19 / 38

Arbit basic architecture

Dispatcher

Request Parser

Controller

View

Filter

View Model

HTTP

CLI

Persistent Login

Page 38: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 20 / 38

Arbit basic architecture

Dispatcher

Request Parser

Controller

View

Filter

View Model

HTTP

CLI

Persistent Login

Issue Model

Wiki Model

Page 39: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 21 / 38

Arbit basic architecture

Dispatcher

Request Parser

Controller

View

Filter

View Model

HTTP

CLI

Persistent Login

Issue Model

Wiki Model

Facade

CouchDB

RDBMS

PHPillow

Doctrine 2

Page 40: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 22 / 38

Arbit basic architecture

Dispatcher

Request Parser

Controller

View

Filter

View Model

HTTP

CLI

Persistent Login

Issue Model

Wiki Model

Facade

CouchDB

RDBMS

PHPillow

Doctrine 2

HTML

EMail

XML

JSON

Page 41: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 23 / 38

Module communication

I How can modules communicate?I No hard dependencies.I New modules should be able to interact with existing ones.

I Signal Slot

Page 42: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 23 / 38

Module communication

I How can modules communicate?I No hard dependencies.I New modules should be able to interact with existing ones.

I Signal Slot

Page 43: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 24 / 38

Signal slot

1 <?php23 $hand l e r = new a r b i t S i g n a l S l o t ( ) ;45 $hand l e r−>r e g i s t e r ( ’ s i g n a lA ’ , ’myModule : : h a n d l e S i g n a l ’ ) ;6 $hand l e r−>r e g i s t e r ( ’ s i g n a lA ’ , ’ yourModule : : h a n d l e S i g n a l ’ ) ;78 // I n module c9 $hand l e r−>emit ( ’ s i g n a lA ’ , a r r a y ( /∗ data ∗/ ) ) ;

1011 // Now a l l modules r e g i s t e r d f o r t h i s s i g n a l a r e c a l l e d wi th the p r o v i d ed data1213 ?>

Page 44: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 25 / 38

Practical example

I Inform other modules about source code updates

1 // modules / s ou r c e / c l a s s e s / c o n t r o l l e r . php +3002 i f ( $checkout−>update ( /∗ . . . ∗/ ) )3 {4 // . . .5 a r b i t S i g n a l S l o t : : emit (6 ’ sourceUpdated ’ ,7 new a rb i t Sou r c eUpda t edS t r u c t ( $checkout )8 ) ;9 }

Page 45: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 26 / 38

Practical example

I Other modules can specify signals to listen for

1 // modules / phpun i t / d e f i n i t i o n . php2 c l a s s a r b i tModu l ePhpun i tDe f i n t i o n ex t end s a r b i tModu l eDe f i n t i o n3 {4 // . . .5 p r o t e c t e d $ p r o p e r t i e s = a r r a y (6 // . . .7 ’ s l o t s ’ => a r r a y (8 ’ sourceUpdated ’ => ’ a r b i tModu l ePhpun i tCon t r o l l e r : : sourceUpdated ’ ,9 ) ,

10 // . . .11 ) ;

I All signals can also be converted into notifications (mail,jabber, ...)

I Signals are sent for “everything”

Page 46: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 26 / 38

Practical example

I Other modules can specify signals to listen for

1 // modules / phpun i t / d e f i n i t i o n . php2 c l a s s a r b i tModu l ePhpun i tDe f i n t i o n ex t end s a r b i tModu l eDe f i n t i o n3 {4 // . . .5 p r o t e c t e d $ p r o p e r t i e s = a r r a y (6 // . . .7 ’ s l o t s ’ => a r r a y (8 ’ sourceUpdated ’ => ’ a r b i tModu l ePhpun i tCon t r o l l e r : : sourceUpdated ’ ,9 ) ,

10 // . . .11 ) ;

I All signals can also be converted into notifications (mail,jabber, ...)

I Signals are sent for “everything”

Page 47: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 26 / 38

Practical example

I Other modules can specify signals to listen for

1 // modules / phpun i t / d e f i n i t i o n . php2 c l a s s a r b i tModu l ePhpun i tDe f i n t i o n ex t end s a r b i tModu l eDe f i n t i o n3 {4 // . . .5 p r o t e c t e d $ p r o p e r t i e s = a r r a y (6 // . . .7 ’ s l o t s ’ => a r r a y (8 ’ sourceUpdated ’ => ’ a r b i tModu l ePhpun i tCon t r o l l e r : : sourceUpdated ’ ,9 ) ,

10 // . . .11 ) ;

I All signals can also be converted into notifications (mail,jabber, ...)

I Signals are sent for “everything”

Page 48: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 27 / 38

Signal handling of the CI moduleCron Sourcecall

update

CI

update

Cron CIcall

rebuildNewSource

Build $mod

rebuildNewSource

Cron Buildcall $mod

report buildFail

CI

reportbuildFail

(rebuild_on_update = true)

Cron CIcall

source:update

ci:trigger

$mod:trigger

ci:finished

rNS

Legend

Direct call from cron runner

Signal sent through singnal-slot-mechanism

Not shown:Signal ci:forceRebuild, which forces a rebuild in eachmodule without a build failure or source update.

Just any module interes-ted in source updates,if not already triggeredby the build module.

Continuous Integration

Manages and displaysmodule results.

General build module.Executes a ant / phingtasks and reportsaggregated results.

Source management,checking the VCS forsource updates.

Page 49: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 28 / 38

Outline

Introduction

Motivation

Current state

Architectural gems

Sub-Projects

The future

QA

Page 50: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 29 / 38

Periodic

I Task runner implemented in PHPI Can parse cron-tables (vixie-cron dialect)I Can handle parallel running cron tasks

I Design document:http://arbitracker.org/periodic/design.html

I Website: http://arbitracker.org/periodic.html

Page 51: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 30 / 38

VCS-Wrapper

I Abstraction layer for version control system (VCS) read access

I Implements support for: SVN, CVS, Git, Mercurial, Bazaar,(Archives)

I Interfaces reflect which features are supported in which VCSI Supports: History, diffs, blaming, listings, . . .I Even works on Windows! (except for CVS)

I Website: http://arbitracker.org/vcs_wrapper.html

Page 52: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 31 / 38

PHPillow

I Lightweight PHP CouchDB libraryI Features

I Simple document validation constraintsI Automatic synchronization of viewsI Automatic versioning of documentsI couchdb-python compatible tool for dump and import

I Different connection handlersI PHP HTTP stream wrapperI Custom HTTP protocol implementation

I Website: http://arbitracker.org/phpillow.html

Page 53: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 31 / 38

PHPillow

I Lightweight PHP CouchDB libraryI Features

I Simple document validation constraintsI Automatic synchronization of viewsI Automatic versioning of documentsI couchdb-python compatible tool for dump and import

I Different connection handlersI PHP HTTP stream wrapperI Custom HTTP protocol implementation

I Website: http://arbitracker.org/phpillow.html

Page 54: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 31 / 38

PHPillow

I Lightweight PHP CouchDB libraryI Features

I Simple document validation constraintsI Automatic synchronization of viewsI Automatic versioning of documentsI couchdb-python compatible tool for dump and import

I Different connection handlersI PHP HTTP stream wrapperI Custom HTTP protocol implementation

I Website: http://arbitracker.org/phpillow.html

Page 55: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 32 / 38

Arbit installer

I Web installer for PHP projectsI Design phase finished

I Results at: http://tracker.arbitracker.org/arbit/

development_wiki/view/InstallerI Please verify that it would work for your applicationI Proof of concept in implementation phase

svn://arbitracker.org/arbit/projects/installer/trunk

I Major feature of next arbit release

Page 56: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 33 / 38

Outline

Introduction

Motivation

Current state

Architectural gems

Sub-Projects

The future

QA

Page 57: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 34 / 38

The future

I Current developmentI DIC branch of arbit:

http://github.com/kore/arbit-dic-branch

I Next important tasksI Implement easy-to-use web installerI Refactor and stabilize CI related modulesI Implement a RDBMS backend

I Current roadmap: http://tracker.arbitracker.org/

arbit/issue_tracker/roadmap

I Qafoo provides commercial support / consulting / training forarbit

I Will always still stay a fully cummunity-driven Open-Sourceproject

Page 58: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 34 / 38

The future

I Current developmentI DIC branch of arbit:

http://github.com/kore/arbit-dic-branch

I Next important tasksI Implement easy-to-use web installerI Refactor and stabilize CI related modulesI Implement a RDBMS backend

I Current roadmap: http://tracker.arbitracker.org/

arbit/issue_tracker/roadmap

I Qafoo provides commercial support / consulting / training forarbit

I Will always still stay a fully cummunity-driven Open-Sourceproject

Page 59: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 34 / 38

The future

I Current developmentI DIC branch of arbit:

http://github.com/kore/arbit-dic-branch

I Next important tasksI Implement easy-to-use web installerI Refactor and stabilize CI related modulesI Implement a RDBMS backend

I Current roadmap: http://tracker.arbitracker.org/

arbit/issue_tracker/roadmap

I Qafoo provides commercial support / consulting / training forarbit

I Will always still stay a fully cummunity-driven Open-Sourceproject

Page 60: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 34 / 38

The future

I Current developmentI DIC branch of arbit:

http://github.com/kore/arbit-dic-branch

I Next important tasksI Implement easy-to-use web installerI Refactor and stabilize CI related modulesI Implement a RDBMS backend

I Current roadmap: http://tracker.arbitracker.org/

arbit/issue_tracker/roadmap

I Qafoo provides commercial support / consulting / training forarbit

I Will always still stay a fully cummunity-driven Open-Sourceproject

Page 61: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 35 / 38

Arbit feedback

I What would you like to see in arbit?I Special requirementsI Important features

Page 62: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 36 / 38

Outline

Introduction

Motivation

Current state

Architectural gems

Sub-Projects

The future

QA

Page 63: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 37 / 38

Resources

I Website: http://arbitracker.org/news.html

I Issue tracker: http://tracker.arbitracker.org/

I CI: http://tracker.arbitracker.org/arbit/ci

Page 64: Advanced project tracking with Arbit€¦ · Advanced project tracking with Arbit2 / 38 About me I Kore Nordmann (, , )

Advanced project tracking with Arbit 38 / 38

The end

I Open questions?

I Further remarks?I Contact

I Mail: <[email protected]>I Web: http://kore-nordmann.de / http://qafoo.comI Twitter: @koredn / @qafoo