Eines per PHP

Packaging i/o deployment

Phing

  • basat en Apache ANT
  • fet amb PHP
    • fàcil d'extendre
  • es programa amb un pseudollenguatge fet amb XML
  • optimitzat pel framework de Zend
  • Usat a: propel, symfony2, xinc, etc.
  • Funcions:
    • configuring
    • testing
    • uploading
    • testing
    • build doc
    • svn
    • dbdeploy

PEAR

PHP Maven

  • Maven for building, reporting on and creating documentations of PHP projects
  • fet en Java
  • usa la seva estructura de projecte

Integració continua

Xinc

Hudson

  • fet i pensat per Java
  • GUI per configurar-lo, no cal tocar la config generada en XML tot i que es pot fer si es vol
  • CVS/Subversion
  • RSS/E-mail/IM per informar dels estats de les itnegracions
  • suporta plug-ins en múltiples llenguatges per extendre la seva funcionalitat

Cruise Control

  • escrit en Java
  • també és un framwork per crear build processes de forma continua
  • suporta un munt de plugins per usar diferents sistemes de:
    • source control
    • build: phing, NAnt, ANT, Rake, etc.
    • notification schemas
  • interficie WUI

PHP UnderControl

Analitzador de codi

PHP Depend

PHP CodeSniffer

  • PHP5 script that tokenises and “sniffs” PHP, JavaScript and CSS files to detect violations of a defined coding standard. It is an essential development tool that ensures your code remains clean and consistent. It can also help prevent some common semantic errors made by developers.

phpcpd

PHP Mess Detector

  • Possible bugs
  • Suboptimal code
  • Overcomplicated expressions
  • Unused parameters, methods, properties

Sonar

  • programat en Java
  • extensible via: PHP, Flex, etc.
  • demo: Nemo
  • control de qualitat a partir de:
    • arquitectura i disseny
    • duplications
    • unit test
    • complexity
    • pontential bugs
    • coding rules
    • comments

PHPLint

  • analyzer of PHP sources
  • independent scanner and parser
  • all the informations collected from the sources
  • used to generate the documentation
  • JSLint - JavaScript quality tool
  • xmllint program parses one or more XML files, specified on the command line as xmlfile. It prints various types of output, depending upon the options selected. It is useful for detecting errors both in XML code and in the XML parser itself.
  • Tidy - interesting and powerful HMTL validator

BBDD

dbdeploy

  • Database Change Management tool
  • for developers or DBAs
  • evolve their database design – or refactor their database:
    • simple
    • controlled
    • flexible
    • frequent manner

i18n

Pootle server

  • Also available online version
  • Example: using pootle with symfony: post of Sergio Viteri
  • Easy to install with many deployment options
  • Packaged for many distributions
  • Many supported file layouts and file formats, including pervasive support for XLIFF
  • Upload support with different merge strategies
  • Optional version control integration for both committing and updating cleanly
  • Keep people informed
    • Real-time statistics of strings, words, and errors
    • Highlights errors in translation
    • Event notifications using RSS feeds.
    • User submitted news items.
    • Upload files with different merge strategies
  • Real time content searching with many options
    • Easily search across all files in a project
    • Fast text indexing
  • Flexible permissions and authentication
    • Support user authentication and/or anonymous contribution
    • Support LDAP authentication
    • Separate suggestion permission enables wide contribution with proper review by others (ideal for bug reporting)
    • Assign permissions to various translators to perform different roles
  • Support for captchas to keep your server safe
  • Uses Unicode throughout so will work with any target language
  • Teams can set goals (not available in version 2.0)
  • Assign work to various translators (not available in version 2.0)

Eines d'Atlassian

JIRA: issues and projects

  • bug tracking
  • project tracking
  • software development
  • opensocial dashboards
  • custom workflow
  • reports and analysis
  • plugins and extensions

Confluence: Wikis and collaboration

  • intranet
  • documentation
  • konwledge management
  • office and sharepoing
  • plugins

Dev Tools

GreenHopper

  • agile development
  • SCRUM
  • kanban (optmize process)
  • Sprint and release planning
  • Task and time tracking
  • Charts and reporting

Crucible

  • collaborative reviews
  • asynchronous and online
  • review iteratively
  • JIRA integratrion
  • pre and post commit
  • high extensible

Clover

  • Java code metrics

IDE connectors

  • Eclipse
  • Visual Studio
  • IntelliJ IDEA

Fisheye

  • browsing version control
  • sharing
  • visibility
  • analysis
  • JIRA integration
  • plugins and API

Bamboo

  • instant continuous integration
  • easy adoption
  • JIRA integration
  • distributed builds
  • reports and analysis
  • plugins and extensions

Crowd

  • Single Sign-On
  • AD, LDAP and more
  • OpenID
  • Subversion
  • Apache
  • User management
  • connector for Google Apps