The concept of CI was first coined on 1991 by Grady Booch (American software engineer, best known for the development of UML together with Ivar Jacobson and James Rumbaugh). The Extreme Programming (XP) methodology adopted this term, making it very popular. According to Martin Fowler, CI is defined as follows:
Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible.
In CI systems, we can identify different parts. First, we need a source code repository, which is a file archive to host the source code of our software project, typically using a version control system. Nowadays, the preferred...