Select Page

Reasons to practice Continuous Integration

Why apply continuous integration, goal of current development teams is plan, code, test and deliver a usable piece of software every two to three weeks. To get it, we automate a good part of the software process by Continuous Integration (IC), so that the team can repeat the code delivery iteratively, but unloading the heavy work on a Continuous Integration server (“CI server”). This is how we manage to deliver large software development projects.

Why apply continuous integration

Cycle development

Continuous Integration server automates various steps in the software lifecycle. You cannot help us with business or design requirements, but you can take care of packaging, deployment, inspection and automated software testing. And it does it tirelessly, consistently, robustly and cheaply.

By automating part of the software production process, the Continuous integration It definitely contributes to accelerating the time to market (“time-to-market”) in organizations based on Information Technology (IT).

What are the organizations based on Information Technology? They are those businesses in which Information Technology is critical for the operation. Banks, parcel companies or Internet-based sales channels, for example, are IT-based. Improving your IT plumbing means improving your internal communications, your marketing strategy, and your production costs. That is, they are companies that achieve competitive advantages with the use of technology., without it being exclusive whether or not they sell technology.

Thanks to the promotion of initiatives such as Agile or eXtreme Programming, among others, the Continuous integration Available are numerous: Bamboo, CruiseControl, Jenkins, Team Foundation Server or Solano for example.

However, applying Continuous Integration (CI) is a painful and demanding process that requires a CHANGE IN THE CULTURE of software construction. Constantly we will finally manage to reduce packaging times, increase the number of parallel versions and the robustness of deliveries.

Well, it's going to hurt. But , How can we help you?

  • In the first instance it is necessary to verify the Culture from the development team. Usually it is necessary to generate a process of adaptation, enrichment, in which resistance to change is minimized thanks to a gradual improvement approach, based on Lean principles.
    • Applying early definition.
    • Ensuring communication channels.
  • We will also work on defining the Processes which will allow maximize the yield obtained:
    • Establishing the lines of automation.
    • Determining the "causes" to control.
    • Defining execution policies.
    • Implementing the information radiators (measurement indicators).
  • Finally, use the suite of Tools The most appropriate among the different technological alternatives will be our final contribution.
Continuous Integration in Ancient Egypt

Continuous Integration in Ancient Egypt

La Continuous integration it is a means, not an end.
The goal remains maximize the delivered value.

An interesting space for reflection is provided by the frequency. Although we speak of Continuous Integration, it is not a practice that forces a daily integration process. Frequency is an open question and must be defined according to the objectives to be achieved. Thus, in Continuous Integration, the rhythm is set by the «Cause -> Effect» relationships to be controlled.

We can't finish without recopilar the reasons, in the form of benefits, which motivate the application of this demanding practice of Software Engineering:

  1. Technological risk reduction thanks to a predictable, feedback and transparent construction process. Thus, for example, we can predict the integration time since it is something that is done continuously.
  2. Minimize anomalies in the final product thanks to the early feedback. By performing frequent automatic tests we enable early detection and correction of anomalies.
  3. Quality from the beginning and adaptation to change. As it is possible to have a demo environment with any version of the application, it is feasible to show the latest changes frequently. Thus, we seek user acceptance of the new features added to the project and return information to the work team quickly.
  4. Responsibility and visibility. The software product life cycle becomes explicit, common, independent, and public. Thus, the entire team has accurate information on the actual status of the project, which eases monitoring tasks, fosters a sense of collective ownership of the code and guarantees the transparency of the process.

Without a doubt, an intense journey to a wonderful world in which to delight ourselves observing herds of beautiful unicorns ...

Wow! A Unicorn Bug!

Wow! A Unicorn Bug!

… Is it possible?


Panel Testing - Center of Excellence

Panel Testing - Center of Excellence

Our Center of Excellence in SQA & Testing (CEST) is responsible for ensuring the Quality of the Software in the projects we develop, as well as for evolving our Know How in this activity. If you want to know us better, visit us at this page, or contact us via e-mail at this address.

Leave us your comment


Trackbacks / Pingbacks

  1. #SoftwareQA - How much does a bug bite us? - […] applying practices such as Continuous Software Integration we will have mechanisms to establish cause-effect relationships on…
  2. # JelaConMAD15 DevOps in the clouds and with Containers - […] / PaaS) have taken off with force. These services culminate the natural evolution from the suffered Continuous Integration towards the ...
  3. Software Quality: How much does a bug bite us? - Panel Sistemas - […] applying practices such as Continuous Software Integration we will have mechanisms to establish cause-effect relationships on…
  4. Automation of software functional tests is safe business - […] And here we are presented with a new teaching that reminds us that it is essential to use suitable test environments…

Send a comment

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

Share This