Upload
valterprimo
View
224
Download
0
Embed Size (px)
Citation preview
1
Profa. Msc. Elizabeth B. Llamosas Gomes
Análise e Modelagem de Sistemas II
Introdução
2
INTRODUÇÃO
O Cenário Atual
3
INTRODUÇÃO – Qual é o Cenário Atual ?
1– Levantamento de Requisitos:
Usuário
Arquiteto
Falta ou má comunicação
geram grandes erros!
4
INTRODUÇÃO – Qual é o Cenário Atual ?
1– Levantamento de Requisitos:
UsuárioArquiteto
Solução: É preciso uma forma única de comunicação
5
INTRODUÇÃO – Qual é o Cenário Atual ?
Preciso deAAA BBB CCC...
1– Levantamento de Requisitos:
Ele quer
AAB BBC CCA
Entendimento inicial com falhas!
6
INTRODUÇÃO – Qual é o Cenário Atual ?
Quais são suas necessidades para
o sistema?
Preciso de um sistema que
controle todas as vendas de meus
produtos...
1– Levantamento de Requisitos:
7
O que modelamos tem que ser legível
para a equipe e para o usuário.
INTRODUÇÃO – Qual é o Cenário Atual ?
2– Análise:
8
INTRODUÇÃO – Qual é o Cenário Atual ?
O Usuário não validade acordo, pois nãocompreende o que foimodelado.
3– Validação com o Usuário:
9
INTRODUÇÃO – Qual é o Cenário Atual ?
Excesso de documentação ou nenhuma.
4– Desenvolvimento:
10
INTRODUÇÃO – Qual é o Cenário Atual ?
Técnica Utilizada: “Program and Pray”or
“Quick and Dirty”
4– Desenvolvimento:
11
INTRODUÇÃO – Qual é o Cenário Atual ?
Cronograma apertado Prazo estourado
4– Desenvolvimento:
12
INTRODUÇÃO – Qual é o Cenário Atual ?
Cliente insatisfeito.
Horas infindáveis de manutenção corretiva,
etc...
5– Entrega Final:
13
INTRODUÇÃO
O que concluir até o momento?
14
INTRODUÇÃO
... Crise do Software ...
Prazos ultrapassados
Custos acima do previsto
Não atendimento dos requisitos do Usuário
Elevado custo de manutenção
1/3 dos projetos são cancelados
2/3 dos projetos extrapolam o orçamento
15
INTRODUÇÃO
... Crise do Software ...
Custos hardware X software
1970 = 8:2
1991 = 2:8
hoje = 1:9
Tempo Manutenção > Tempo Desenvolvimento
16
INTRODUÇÃO
O que as Empresas esperam...
17
INTRODUÇÃO
O que as Empresas esperam ...
Melhor Flexibilidade e Adaptabilidade
possibilitando satisfazer novos requisitos de negócios rapidamente e facilmente
Melhor Manutenibilidade
possibilitando atualizar uma aplicação, mas minimizando o impacto da maioria das mudanças
Melhor Reusabilidade
possibilitando rapidamente montar aplicações únicas e dinâmicas
18
INTRODUÇÃO
O que as Empresas esperam ...
Melhor Aproveitamento do legado
possibilitando o aproveitamento do legado corporativo
Não queremos jogar fora o que a empresa já tem!
Melhor Escalabilidade
possibilitando distribuir e configurar a execução da aplicação para satisfazer vários volumes de transação
Melhor robustez
possibilitando ter soluções com menos defeitos
19
Melhor Interoperabilidade
possibilitando integrar 2 aplicações executando em plataformas diferentes
Menor tempo de desenvolvimento
possibilitando viver “on Internet time” e com baixo orçamento
Menor risco
possibilitando tudo que falamos acima e ainda não se arriscar a ter projetos fracassados
O que as Empresas esperam ...
INTRODUÇÃO
20
INTRODUÇÃO
Então ... O que devemos fazer?
Estudar novas metodologias de desenvolvimento de software!
Quais são elas e quais são as melhores??
21
Fábrica de Software
Extreme Programming
CMM
RUP
Frameworks
Tendências ...
INTRODUÇÃO
22
Métricas para estimativas de esforço
Automatização de Testes
Software baseado em Componentes
Design Patterns
Controle de Versões de Software
Reutilização de Código
UML
Ferramentas de Workflow
Tendências ...
INTRODUÇÃO
23
Análise e Projeto de Sistemas Orientados a Objetos
24
O que é Análise?
O que é Projeto?
Análise e Projeto de Sistemas Orientados a Objetos
25
Análise X Projeto
A Análise modela o problema e consiste das atividadesnecessárias para entender o domínio do problema (o que deve ser feito). É uma atividade de investigação.
1ª Alternativa:
O Projeto modela a solução e consiste das atividades de criação (como pode ser feito)
Análise Projeto
Modelagemdo problema (entender)
Modelagemda solução
(criar)
26
Análise X Projeto
A Análise consiste de todas as atividades feitas com oupara o conhecimento do Cliente. A informação produzidaé aquela que o Cliente deve discutir e aprovar.
2ª Alternativa:
O Projeto inclui as atividades que resultam em informação que interessa apenas ao programador.
A análise invade um pouco o “lado da solução”, pois o Cliente deve discutir alguns tipos de interações que ocorrerão na interface do usuário, etc.
27
Análise X Projeto
2ª Alternativa:
Análise Projeto
Análise = informação importante
para o Cliente
discutir e aprovar
Projeto =informação importante
para o programador
apenas
28
APOO X APOFunçõesAs abstrações podem corresponder aos conceitos presentes no domínio do problema.
O nível é mais natural.
É mais fácil se comunicar com o usuário ou domain expert na linguagem dele.
APOODecomposição por objeto
ou conceito
AP EstruturadosDecomposição por função
ou processo
Sistema
CadastraEmpréstimos
AdicionarRecursos
InformarMultas
Bibliotecário
Biblioteca
Catálogo
Livro
O Sistema de Informação de Biblioteca
29
Fases de Desenvolvimento
Clássico (década de 1960)
30
Fases de Desenvolvimento
Iterativo e Incremental (1990)Funcionalidade
Tempo
Business
caseRequisitos
Análise
inicialProjeto
arquiteturalPriorização
Elaboração
Incremento1
Incremento2
Detalha
requisitosAnálise
Refina
Projeto
arqu.
Projeto
Baixo
nível
Codificação Testes Transição
Detalhamento Implementação