segunda-feira, 21 de maio de 2012

RUP para Concursos - Parte 1 - Características e Gráfico das Baleias

O RUP é um produto da IBM em formato de um framework de processos adaptável. Não devemos pegar este framework e aplicar tudo o que está escrito. É necessário entendê-lo e configurar a estrutura do RUP para adaptá-lo à realidade da sua organização.

RUP É um modelo prescritivo (diz como as coisas devem ser feitas) que fornece atividades, artefatos e guias que geralmente recomendam a utilizaçào de outros produtos da IBM e da linguagem de modelagem UML.

Em provas o RUP é tratadado como processo de desenvolvimento ou metodologia.

Características do RUP
Iterativo e Incremenntal
O ciclo de vida do produto é divido em iterações, que são passagens sequenciais pelas disciplinas de engenharia de software. O problema total a ser resolvido é dividido em partes menores e a cada incremento uma parte acabada do software é entregue.

Guiado por Casos de Uso
Os casos de uso são utilizados por todas as partes interessadas, inclusive os stakeholders. É o documento que conecta todas as fases e disciplinas do RUP de uma forma ou de outra.

Centrado na Arquitetura
É a macroestrutura que organiza os principais elementos do seu sistema, como classes, interfaces e componentes. A arquitetura evolui de acordo com as principais necessidades dos sistema. Essas necessidades estão maepadas nos casos de uso.

Orientado a Objetos
Os componentes são baseados em objetos e colaboram entre si para implementar (realizar) os casos de uso.

Planejado por Riscos
Os riscos são analisados a todo tempo e aqueles que MAIS CRÍTICOS são tratados prioritariamente. Os casos de uso arquiteturalmente significativos (os mais difíceis, nebulósos, críticos, arriscados, etc) são os primeiros a serem implementados.

Gráfico das Baleias
O RUP é compostos por 4 fases e 9 disciplinas.

No gráfico você percebe dois eixos. O eixo horizontal, a primeira dimensão ou a dimensão dinâmica representa o passar do tempo ao longo do projeto. Mostra os aspectos do ciclo de vida do processo a medida que o projeto se desenvolve.

Possui as 4 fases (Iniciação, Elaboração, Construção e Transição). Cada fase possui várias iterações e dá ênfase em determinadas disciplinas, cada disciplina possui mais importância em determinada fase e menor importância em outra fase. A iteração de uma fase passa por todas as disciplinas.


Ao final de cada fase existe um marco ou milestone. É um ponto do projeto e um determinado conjunto de artefatos que foi alcançado e estabilizado. Cada fase possui o seu marco. Determina o fim da fase.

O eixo vertical, segunda dimensão ou eixo estático, é onde são representadas as disciplinas (agrupamento das atividades de engenharia de software, por área de interesse ou natureza das atividades). É estático porque as atividades a serem executadas são sempre as mesmas, não variam de acordo com o tempo. Um determinada disciplina possui as mesmas atividades em todas as fases. Assim, o eixo estático não considera a passagem do tempo. O que varia é a ênfase em uma disciplina ou em outra de acordo com o tempo.

As disciplinas possuem atividades, papéis, artefatos e produtos de trabalho. São 9 disciplinas no total. 6 de engenharia (Modelagem de Negócios, Requisitos, Análise e Design, Implementação, Teste e Implantação) e 3 de suporte (Gerenciamento de Configuração e Mudança, Gerenciamento de Projeto e Ambiente)

No gráfico, quanto maior a área que uma disciplina ocupa em determinada fase, maior a ênfase naquela disciplina durante a fase. Todas as disciplinas são consideradas em todas as fases, mas algumas possuem maior atividade e outras possuem menor ou nenhuma atividade em determinado momento.

O RUP tem duas dimensões.

A primeira dimensão, eixo horizontal, representa o aspecto dinâmico do processo.
Expresso em fases, marcos e iterações.

A segunda dimensão, eixo vertical, representa o aspecto estático do processo.

Expresso em componentes, disciplinas, atividades, artefatos, papéis e etc.