Fases do Iconix
ICONIX Process é um processo de desenvolvimento de software que vem evoluindo desde o início da década de 90, tendo Doug Rosenberg como principal idealizador. Muita coisa mudou no mundo da Engenharia de Software desde aquela época. A UML foi consolidada como linguagem de modelagem de sistemas orientados a objetos e o Processo Unificado (cuja mais famosa implementação é o RUP - Rational Unified Process), destaca-se como o principal processo de desenvolvimento de software a utilizar a UML.
No final da década de 90 e início dos anos 2000, um novo grupo de Metologias de Desenvolvimento de Software começou a surgir e em 2001, com a publicação do Manifesto Ágil, tais metodologias passaram a ser chamadas de Metodologias Ágeis. O ICONIX também evoluiu afim de incorporar características que o permitissem ser adaptado a projetos ágeis, ou seja, em um ciclo de vida iterativo e incremental.
Quando utilizado em um ciclo de vida iterativo e incremental, cada iteração do projeto a ser desenvolvido e que servirá de atualização ao incremento anterior, conterá as fases descritas abaixo.
Obs.: os processos são classificados como sendo dinânimcas como: diagramas de sequencia e estática como o diagrama de classe.
Requisitos
Como entrada para o processo, é necessário ter em mãos os requisitos funcionais do sistema a ser desenvolvido. O ICONIX não define claramente como os requisitos devem ser levantados ou documentados. Algumas abordagens utilizam a criação dos esboços das interfaces gráficas do sistema (storyboards) ou da iteração em questão. Outras abordagens utilizam descrição textual dos requisitos.
Com os requisitos em mãos, pode-se identificar o Modelo de Domínio, ou seja, um diagrama de classes sem atributos nem operações, apresentado as principais entidades que serão manipuladas pelo sistema.
Através dos requisitos também será possível identificar os casos de uso do sistema. os casos de uso constituirão a ponte entre os requisitos e a