Focus topic: Scrum and Continuous Integration

Continuous integration is a procedure in agile software development. It describes a process in which the entire code base is regularly built and tested in order to obtain feedback on the integration of new application components.

Continuous integration requires a rethink

Introducing a build server alone is not enough to be successful with CI. It is important that developers check in their code daily so that it can be built and tested. If the build breaks down, no excuses should be made, but the errors should be rectified immediately so that the build is green again. Many companies have found it positive to use information for the CI status to make the status of projects in the company more transparent.

Continuous integration requires agile practices

You can't just install a CI server and start doing continuous integration. For example, you also need a source control system in which the sources are checked in centrally and a build system such as Maven or Ant to be able to build the project and its components. In addition to the build for compile and unit testing, it is also advisable to have extended builds in the CI that, for example, automatically execute the functional test or check the code quality.

Continuous Integration Build Server

There are now many continuous integration build servers. The best known in the open source area are

  • Jenkins CI
  • Hudson CI
  • Cruise Control

There are also some commercial servers that are very popular:

  • Atlassian Bamboo
  • JetBrains Teamcity