Open Source ALM Environment

The development software lifecycle requires an ALM environment to manage and organize their future releases. This acronym ALM (Application Lifecycle Management) means the perfect marriage of software engineering with tools that integrate the process of analysis, modeling, implementation and testing of a product.

Those are the main benefits related:

  • Productivity: The development team is encouraged to use the best seamlessly development practices, such as: Technical requirements elicitation, development practices in parallel, reuse of test routines.
  • Interactivity: Improvements at collaboration and information flow, encouraging communication between the team players
  • Maintenance improvements: Reduces the maintenance time by synchronizing the new requirements with the old ones, and allowing automatic impact changes identification.

There are several ALM platforms available in the market but most of them are commercial. Below are some examples:

If you want to use an ALM platform at no cost, but with all support tools necessary for a good software management, here are some suggestions:

Redmine

Requirements management and software development lifecycle tool.

  • Issues management;
  • Project time tracking;
  • SCM integration;
  • Projects and sub-projects concept;
  • Forum, wiki, files, news, calendar, gantt chart e security system.

To get more detail about: http://www.redmine.org

Maven

Build automation and dependency management tool.

  • Unit testing execution.
  • Project site and documentation generation.
  • Project libraries dependency management;
  • Plugins support for custom features;
  • Code generation archetypes available.

To get more detail about: http://maven.apache.org

Jenkins

Continuous integration tool.

  • Easily installation and configuration;
  • Web based interface;
  • Distribute building support;
  • Unit testing reports;
  • Build states notifications;
  • Build breaks notifications;

To get more detail about: http://jenkins-ci.org

Sonar

Quality assurance management and code inspection tool.

  • Software quality dashboards and custom visualizations;
  • Software quality metrics support (code coverage, code lines, cyclomatic complexity, etc);
  • Maven integration;
  • Code style and inspection integration (Cobertura, Checkstyle, PMD, FindBugs);
  • Continuous integration support (Jenkins integration).

To get more detail about: http://www.sonarqube.org

Nexus

Software artefacts management and software release control tool.

  • Central maven repository support;
  • Software components and artefacts catalog;
  • Improves the software reuse;
  • Maven + Nexus = perfect choice !

To get more detail about: http://www.sonatype.org/nexus/

Leave a Reply

Your email address will not be published. Required fields are marked *

*
*
Website