ana maria m. moura anammmoura@gmail.com material em desenvolvimento

Post on 18-Apr-2015

110 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Ana Maria M. Mouraanammmoura@gmail.com

Material em

Desenvolvimento

• Problemas do Desenvolvimento de Software• Melhores Práticas do Desenvolvimento de

Software• Definição• Produto• Estrutura• Fases• Papéis• Disciplinas

• Incompreensão das necessidades do usuário final• Inabilidade para lidar com requisitos variáveis• Módulos que não se ajustam• Software difícil de manter ou estender• Descoberta tardia de imperfeições do projeto• Baixa qualidade do software• Desempenho inaceitável do software• Falta de controle de modificações feitas pelos

membros da equipe• Um processo de construção e lançamento indigno de

confiança

• Desenvolver software iterativamente• Gerenciar os requisitos• Usar arquiteturas baseadas em componente• Modelar o software visualmente• Verificar a qualidade do software

continuamente• Controlar mudanças do software

• O Rational Unified Process (RUP) é um processo de desenvolvimento de software. Ele fornece uma abordagem disciplina para assumir tarefas e responsabilidades dentro de uma organização de desenvolvimento.

• O RUP é composto por alguns produtos– Uma versão online do RUP• http://www.wthreex.com/rup/portugues/index.htm

– Um livro de introdução• KRUCHTEN, P. Introdução ao RUP. Addison Wesley,

2003.

A partir de uma perspectiva de gerenciamento, o ciclo de vida de software do Rational Unified Process (RUP) é dividido em quatro fases seqüenciais, cada uma concluída por um marco principal, ou seja, cada fase é basicamente um intervalo de tempo entre dois marcos principais. – Iniciação

– Elaboração

– Construção

– Transição

Em cada final de fase, é executada uma avaliação para determinar se os objetivos da fase foram alcançados. Uma avaliação satisfatória permite que o projeto passe para a próxima fase.

Iniciação Elaboração Construção Transição

Esforço 5% 20% 65% 10%

Tempo 10% 30% 50% 10%

É interessante que o tempo de cada iteração varie entre 2 a 6 semanas

• Objetivos– A meta dominante da fase de iniciação é atingir o consenso entre todos os

envolvidos sobre os objetivos do ciclo de vida do projeto.

• Os objetivos principais da fase de iniciação incluem: – Estabelecer o escopo do software do projeto e as condições limite, incluindo

uma visão operacional, critérios de aceitação e o que deve ou não estar no produto.

– Discriminar os casos de uso críticos do sistema, os principais cenários de operação e o que direcionará as principais trocas de design.

– Exibir, e talvez demonstrar, pelo menos uma opção de arquitetura para alguns cenários básicos.

– Estimar o custo geral e a programação para o projeto inteiro (e estimativas detalhadas para a fase de elaboração imediatamente a seguir).

– Estimar riscos em potencial (as origens de imprevistos).– Preparar o ambiente de suporte para o projeto.

• Artefatos– Visão– Lista de Riscos– Plano de Desenvolvimento (Plano de Projeto)– Plano de Iteração

• Nesta fase deve ser feito o planejamento da primeira iteração de elaboração detalhado. Para isto, considere a priorização dos riscos do projeto.

– Ferramentas– Glossário– Modelo de Caso de uso

• Diagrama de Casos de Uso• Descrição do fluxo principal dos principais casos de uso

– Documento de Regras de Negócio

• Objetivos– A meta da fase de elaboração é criar a baseline para a arquitetura do sistema a fim de

fornecer uma base estável para o esforço da fase de construção.

• Principais Objetivos– Assegurar que a arquitetura, os requisitos e os planos sejam estáveis o suficiente e que os

riscos sejam suficientemente diminuídos a fim de determinar com segurança o custo e a programação para a conclusão do desenvolvimento.

– Tratar todos os riscos significativos do ponto de vista da arquitetura do projeto.– Estabelecer uma arquitetura da baseline derivada do tratamento dos cenários significativos

do ponto de vista da arquitetura, que normalmente expõem os maiores riscos técnicos do projeto.

– Produzir um protótipo evolutivo dos componentes de qualidade de produção, assim como um ou mais protótipos descartados para diminuir riscos específicos como:

– Demonstrar que a arquitetura de baseline suportará os requisitos do sistema a um custo justo e em tempo justo.

– Estabelecer um ambiente de suporte.

• Protótipos• Lista de Riscos (Atualizada)• Documento de Arquitetura• Modelo de Design• Modelo de Dados• Visão (Atualizada)• Plano de Iteração para as Fases de Construção e

Transição• Modelo de Caso de Uso (80%)• Especificação Suplementar• Conjunto de Testes

• Sistema em versão executável• Plano de Implantação• Modelo de Implementação• Conjunto de Testes• Materiais de Treinamento• Plano de Iteração para a Fase de Transição• Modelo de Design (Atualizado)• Modelo de Dados (Atualizado)

• Produto final• Artefatos de Instalação• Material de Treinamento• Material de Suporte para o Usuário

• Os principais papéis são:– Analistas– Desenvolvedores– Testadores – Gerentes

• Modelagem de Negócios• Requisitos• Análise e Design• Implementação• Teste• Implantação• Gerência de Configuração e Mudança• Gerência de Projeto• Ambiente

• A IBM Rational disponibilizou um artigo com dicas para aplicar algumas técnicas da metodologia ágil Scrum ao RUP.

• Este artigo pode ser encontrado em:– http://www.ibm.com/developerworks/rational/

library/feb05/krebs/

top related