Eng de software
Modelos clássicos para desenvolvimento de software Modelos clássicos para desenvolvimento de software
Ciclo de vida do software
Antes de iniciarmos o estudo sobre ciclo de vida do software, é importante notar a diferença entre processo de software e ciclo de vida, conforme definição de Sommerville (2003):
Processo de software refere-se a todas as atividades, tais como artefatos, ferramentas, papéis, controles etc., necessárias para construir, entregar e manter um produto de software. Já o ciclo de vida apresenta uma representação alto nível do processo de software executado (processo de software real) ou como deveria ser executado, ou seja, normalmente, ciclos de vida determinam as fases e o relacionamento entre as fases.
Um processo de software é um conjunto de atividades e resultados associados que levam à produção de um produto de software. Esse processo pode envolver o desenvolvimento de software desde o início, embora, cada vez mais, ocorra o caso de um software novo ser desenvolvido mediante a expansão e a modificação de sistemas já existentes. Embora existam muitos processos de software diferentes, há atividades fundamentais comuns a todos eles, como especificação de software, projeto e implementação de software, validação de software e evolução de software (SOMMERVILLE,
2003).
Lembre-se: ciclo de vida do software
MÉTODOS + FERRAMENTAS + PROCEDIMENTOS =
CICLO DE VIDA DE SOFTWARE
(representação alto nível do processo de software executado)
Os modelos de processo de software existentes possuem diferentes graus de sofisticação e complexidade. Não há um processo ideal, e diferentes organizações desenvolvem abordagens distintas para o desenvolvimento de software. Os processos evoluíram para explorar a
2
Engenharia de software – Modelos clássicos para desenvolvimento de
Software
capacidade das pessoas em uma organização, assim como as características específicas dos sistemas que estão sendo