19
Análise e Projeto de Software álise e Desenvolvimento de Softwa Profº. Henrique Vila Nova 1

Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Embed Size (px)

Citation preview

Page 1: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Análise e Projeto de Software

Análise e Desenvolvimento de Software

Profº. Henrique Vila Nova

1

Page 2: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Fase de Elaboração

2

Page 3: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Fase de Elaboração

Construindo a Arquitetura

Page 4: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Fase de Elaboração

Page 5: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Objetivos

Capturar a maioria dos requisitos (90%) Construir a arquitetura do sistema

– Na forma de um Executável– Que demonstre a capacidade de esta arquitetura acomodar

o resto do sistema Produzir protótipos evolucionários ou descartáveis que

eliminam riscos de– Requisitos ou projeto– Reusabilidade de componentes– Viabilidade técnica

Page 6: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Objetivos(parte 2)

Implantar o ambiente de suporte Detalhar o Planejamento

Page 7: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Início

Planejar a fase de Elaboração– Eventualmente, o planejamento feito na fase de

concepção pode não ter sido detalhado o suficiente

Formar equipe de elaboração– A equipe é um pouco maior que a equipe da

Concepção– Novas habilidades são necessárias nesta fase,

como por exemplo, pessoas com conhecimento em componentes reusáveis

Page 8: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

InícioDefinir os critérios de avaliação da fase

Objetivo : Levantamento de Requisitos– Os Atores e casso de uso necessários para

Projetar a arquitetura Identificar riscos importantes Justificar o estudo de Viabilidade Justificar planejamento

Foram descobertos?

Page 9: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

InícioDefinir os critérios de avaliação da fase

Objetivo: Estabelecer a arquitetura– A arquitetura executável satisfaz os requisitos

formalmente levantados?– A arquitetura parede ser robusta o suficiente para

acomodar o sistema atual, além de requisitos futuros?

A arquitetura acomoda requisitos de hoje e do futuro?

Page 10: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

InícioDefinir os critérios de avaliação da fase

Objetivo: Atenuar os principais riscos– Os riscos críticos foram atenuados? Ou seja, foram

eliminados ou possuem um plano de contingência?– Os Riscos críticos foram identificados?– Os riscos foram investigados o suficiente para que se

possa continuar investindo o projeto? Você continuaria apostando no projeto?

– Os riscos ainda existentes podem ser eliminados de forma relativamente simples e conhecida na fase de construção?

Page 11: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

InícioDefinir os critérios de avaliação da fase

Objetivo: Validar o planejamento– O projeto está suficientemente bem definido em termos de

cronograma, orçamento e níveis de qualidade?– È Provável que o projeto forneça o retorno ao investimento

como descrito no estudo de viabilidade?– Estamos prontos para fechar o contrato?

O RUP aconselha o fechamento de contrato ao final da fase de Elaboração

– Mas, quem financia o projeto até então?– Na prática, as empresas desenvolvedoras fecham contrato ao

final da concepção.

Page 12: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Fase de ElaboraçãoProjeto da arquitetura

Capturar, analisar, projetar, implementar e testar apenas requisitos arquiteturalmente interessantes

– Detalhes irrelevantes para a arquitetura são ignorados Ao final, Construímos o “esqueleto” do sistema

– O “ sistema não terá muita funcionalidade – apenas alguns cenários– Porém, estes cenários irão ilustrar ou provar a viabilidade de

arquitetura Deve-se levantar pelo menos 80% dos requisitos

– A arquitetura é projetada a partir de uma visão global do sistema– Porém , usualmente apenas 10% dos casso de uso têm importância

arquitetural

Page 13: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Ênfase de ElaboraçãoFluxo de Requisitos

Levantar os atores e pelo menos 90% dos Casos de uso

Não é preciso detalhar os 90% dos casos de uso, mas apenas a parte arquiteturalmente relevante ou que envolva um risco crítico

Page 14: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Ênfase de ElaboraçãoFluxo de Análise e Projeto

Apesar de um modelo inicial da arquitetura (um candidato) ter sido feito na concepção

– Este modelo tinha como objetivo demonstrar a viabilidade da arquitetura– Eventualmente, tal modelo será descartado

A análise e projeto na Elaboração tem como objetivo uma arquitetura executável que suporte todo o sistema

A análise e projeto é feito para aproximadamente 10% dos casos de uso

Além de casos de uso, o Arquiteto tem que ser preocupar com:– Camadas de aplicação– Subsistemas (módulos) e suas interfaces– Nós de Rede e suas configurações

Page 15: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Ênfase de ElaboraçãoFluxo de implementação e Teste

A implementação da Arquitetura da Arquitetura envolve– A Implementação dos componentes, Subsistemas, classes

essenciais– A Distribuição destes elementos nos nós de rede (deployment)

A arquitetura é uma primeira versão do sistema com pouca funcionalidade ligada ao domínio da aplicação

– Porém, com a infra-estrutura funcionamento e integrada com sistema operacional, Banco de dados, sistemas legados, middleware (CORBA, J2EE, .NET, Etc), rede, Etc.

Os Testes garantem o funcionamento da integração– Distribuição, armazenamento, persistência, concorrência,

desempenho, escalabilidade, Etc.

Page 16: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Ênfase de ElaboraçãoFluxo de Planejamento e Gerenciamento

O estudo de viabilidade é muito vago e impreciso ao final de concepção e deve ser refinado

Ao Final da elaboração, já existe informação suficiente para se definir o orçamento da construção e transição e, eventualmente, fechar contrato

– A arquitetura é uma fonte de informação para se estimar o tamanho do sistema

O retorno sobre o investimento também deve ser avaliado

Page 17: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Avaliação da Fase

Segue de acordo com os critérios definidos no início

Em caso de objetivos não atingidos, deve-se planejar novamente as próximas iterações– Eventualmente, o término da fase e estendido

A avaliação convence os stakeholders que os riscos mais sérios foram atacados e a arquitetura está estável

Page 18: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Planejamento da Fase de Construção

O número de iterações necessárias para construir o sistema depende de seu tamanho e complexidade

Os riscos restantes da elaboração devem ser atacados o quanto antes– Preferencialmente, por ordem de magnitude

Page 19: Análise e Projeto de Software Análise e Desenvolvimento de Software Profº. Henrique Vila Nova 1

Resumo

Um arquitetura estável deve ser criada– Um Subconjunto dos modelos e código são

desenvolvidos com respeito aos aspectos arquiteturalmente interessantes

– A arquitetura executável prova que pode acomodar o resto do sistema