> For the complete documentation index, see [llms.txt](https://davidjosearaujo.gitbook.io/notes-miect/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://davidjosearaujo.gitbook.io/notes-miect/analise-de-sistemas/integracao-continua-and-entrega-continua-ci-cd/desenvolvimento-iterativo.md).

# Desenvolvimento iterativo

Cada iteração envolve escolher um pequeno subconjunto dos requisitos, para projetar/desenhar, implementar e testar.

* Desenvolvimento em ciclos curtos
* Cada ciclo dá um incremento executável (parcial)
* Cada incremento é testado e integrado
* O feedback de cada iteração leva ao refinamento e adaptação da próxima.

## Continuously integrating the “units”

The essence of it lies in the simple practice of everyone on the team integrating frequently.

CI makes the development process smoother and less risky.

![](https://884188904-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FAPIfOVukdecb0ZLyZJ58%2Fuploads%2FgeZD9omyBcr4aCsvwe2E%2Fa.png?alt=media\&token=4c4b96cc-7bb9-4dd7-9c3f-7c0c47f1929e)

CI involves triggering a (remote) build when a change gets committed to the code repository, which includes: fetching the code from source code repository, compiling code, running automated tests and creating build out of it.

## Suggested development workflow

1. Update from shared SCM
2. Code a new feature (tests + code) in a dedicate feature branch
3. Run automated build on local machine
   1. Repeat #2 and #3 till tests pass
4. Commit (integrate with “central”)
   1. Pull requests advised (with peer code review)
5. Run a build on a clean machine
   1. Update artifacts, update build status (feedback)
   2. Immediately fix bugs and integration issues

## The build process

A build has several stages.

A successful build implies success in code correctness and quality checks.

Automatic build tools run quality checks (e.g.: unit testing, code inspections).

![](https://884188904-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FAPIfOVukdecb0ZLyZJ58%2Fuploads%2FJK7VcDxfM05nPPHKqV94%2Fa.png?alt=media\&token=40112077-89f8-4d8a-ba06-bbe19be83eda)
