"In my early days in the software industry, one of the most awkward and
tense moments of a software project was integration. Modules that worked
individually were put together and the whole usually failed in ways
that were infuriatingly difficult to find. Yet in the last few years,
integration has largely vanished as a source of pain for projects,
diminishing to a nonevent.",
by Martin Fowler in "Continuous
Integration: Improving Software Quality and Reducing Risk".
Nos últimos anos, tem-se assistido a uma transformação nas práticas de desenvolvimento, no sentido de se integrar o software produzido com maior frequência, com excelentes resultados.
De forma sumária, pode-se definir o conceito de integração contínua como uma prática de desenvolvimento de software onde os membros de uma equipa integram o seu trabalho frequentemente, pelo menos uma vez por dia. Cada integração é verificada por um sistema automatizado (incluindo testes), permitindo detectar erros de integração mais rapidamente.
Um sistema de integração contínua não é apenas um sistema de geração de artefactos de software de forma regular ou contínua. Um verdadeiro sistema de integração contínua inclui, entre outros, aspectos como:
A Linkare acredita que um bom sistema de integração contínua permite:
Por estes motivos, a Linkare tem investido na aquisição de competências na customização e integração de aplicações para suporte a sistemas de integração contínua, testes e qualidade de software, incluindo entre outras as seguintes aplicações: integração contínua (Hudson), qualidade de software (SONAR), sistemas de controlo de versões (SVN, CVS, Mercurial), sistemas de build (Ant, Maven), gestão de não conformidades (Bugzilla) ...
Referências:
Em resultado deste investimento, a Linkare tem adoptado sistemas de integração contínua nos projectos a cargo da sua equipa interna, mas também nos clientes com equipas de desenvolvimento de software. Neste último caso, refira-se o Instituto de Informática da Segurança Social.