Automation

Relieve developers, save time and increase the quality of the product with automation tools.

Software development can often be characterized by repetitive tasks such as managing dependencies and configurations, testing functionality and security, and making changes to target systems. Automation tools support you by independently taking over some of the tasks that would otherwise needed to be done by developers. This can save time in development, but also increase the quality of the product, as compliance with code styles and standards can be checked and maintained independently of the developer. 

The tools listed below are relevant at different times in the development process and perform various tasks. 

Ansible is an Open Source automation tool for configuring and administering servers to automate repetitive tasks. Regardless of whether it is a single system or many: It is available as Open Source software under the GNU General Public License for DevOps around the world. Ansible is characterized by the following features:

  • Agentless 
  • Python
  • SSH 
  • Infrastructure as a code
  • Push architecture

Jenkins is the leading Open Source automation server supported by a wide range of developers, testers, designers, and others interested in continuous integration and deployment and modern software delivery practices. Based on Java Virtual Machine (JVM), it provides more than 1,500 plugins that let you extend Jenkins for automation with virtually any technology that software development teams work with. In 2019, Jenkins surpassed 200,000 known installations, making it the most widely deployed automation server.

TIMETOACT uses Jenkins at customer HOCHBAHN as a build and deployment server and for performance testing based on Gatling.


Maven helps developers get an overview of the state and dependencies of a Java project in a short time. Although developers still need to understand the basic mechanics of the project, Maven takes the burden of managing many of the details off their shoulders. Maven builds a project using its Project Object Model (POM) and a set of plugins. Once you know how a Maven project works, you can apply that knowledge to all Maven projects. Which, in sum, saves a lot of time.

Maven provides useful project information. Some of these are taken from your POM and some are generated from your project's sources. This can be for example:

  • Change log generated directly from source control
  • Sources cross-referenced
  • Mailing lists managed by the project
  • Dependencies used by the project
  • Unit test reports including coverage
  • Third-party code analysis products also provide Maven plugins that add their reports to the standard information provided by Maven

Maven aims to collect current principles for developing best practices and make it easy to steer a project in that direction. For example, specifying, running, and reporting unit tests are part of the normal build cycle with Maven. 

Our references on Automation