SlideShare une entreprise Scribd logo
1  sur  38
Modelagem de Sistemas
 Orientada a Objetos
                     Aula 2

   Interativo, Evolutivo e Ágil


      Prof. Leandro Rezende C. de Mendonça, MSc.
Objetivos


Definir um processo ágil e interativo.

Definir os conceitos fudamentais do
processo unificado.
Unified Process
Unified Process
UP (Unified Process): Processo muito
utilizado para o desenvolvimento
interativo de sistemas orientados a
objeto.

Flexível e aberto, permitindo a
aplicação de outros métodos
interativos como: Scrum, XP, Lean
Development, DSDM, Feature-Driven
Development, Adaptive Software
Development etc.
Rational Unified
     Process
Rational Unified
      Process

RUP (Rational Unified Process): É um
refinamento do processo unificado
(UP).

Não seja dogmático dizendo que:
“Meu método é melhor que esse.”
Unified Process
Unified Process

Combina as práticas mais aceitáveis:

  Ciclos interativos.

  Risco controlado.

  Processo coeso e bem documentado.
Desenvolvimeto
Interativo e Evolutivo
Desenvolvimeto
Interativo e Evolutivo

O desenvolvimento é organizado em uma
série de projetos curtos (mini-
projetos) chamados de interações. A
duração recomendada para cada
interação é entre 2 a 6 semanas.

Cada interação possui sua fase de
análise de requisitos, design,
implementação e teste.
Desenvolvimeto
Interativo e Evolutivo
Desenvolvimeto
Interativo e Evolutivo
Desenvolvimeto
Interativo e Evolutivo

 O que é observado nos dois pontos
     de um processo interativo?
Benefícios do desenvolvimeto
   Interativo e Evolutivo
Benefícios do desenvolvimeto
   Interativo e Evolutivo

  Minimiza as falhas em um projeto.

  Minimiza riscos (técnicos,
  requisitos, escopo, usabilidade
  etc.).

  Progresso visível desde o início de
  um projeto.
Benefícios do desenvolvimeto
   Interativo e Evolutivo
Benefícios do desenvolvimeto
   Interativo e Evolutivo

  Usuários engajados no projeto.

  A equipe não sofre pela “paralisia da
  análise”.

  Convergência do sistema de encontro
  as necessidades do usuário.
Desenvolvimeto
Cascata x Interativo
Desenvolvimeto
Cascata x Interativo


Não tente criar inicialmente
especificações muito abrangentes e
detalhadas sobre um projeto, pois
assim, o raciocínio em cascata
invadiu o projeto e isso não é
saudável.
Desenvolvimeto
    Cascata
Desenvolvimeto
         Cascata
Muito utilizado na década de 60-70.

Altas taxas de falhas.

Menor produtividade.

Na média 45% dos requisitos em
cascata nunca são usados.

 Cronogramas e orçamentos iniciais
variam até em 400%.
Desenvolvimeto
    Cascata
Desenvolvimeto
         Cascata
Erros doentios comumente utilizados:

  “Vamos detalhar todos os casos de
  uso antes de começar a programar”.

  “Vamos criar vários modelos UML,
  depois começamos a programar”.
Mudanças de requisitos
      em um projeto
Qual o percentual de mudanças de requisitos
em um projeto?
Mudanças de requisitos
      em um projeto
Qual o percentual de mudanças de requisitos
em um projeto?




       Fonte: Jones, J., 1997.Applied Software Measurement. NY, McGraw-Hill
O Manifesto Ágil
O Manifesto Ágil

Indivíduos e interações vem antes de
processos e ferramentas;

Software funcionando vem antes de
documentação abrangente;

Colaboração do cliente vem antes de
negociação de contrato;

Resposta a modificação vem antes de um
plano em andamento;
Os princípios ágeis
Os princípios ágeis

1) Nossa prioridade mais alta é satisfazer
o cliente por meio de entrega pronta e
contínua de software de valor;

2) Acolher modificação de requisitos, mesmo
no final do desenvolvimento. Processos
ágeis valorizam a modificação para a
vantagem competitiva do cliente;

3) Entregar software funcionando com
frequência, preferencialmente usando uma
escala de tempo menor;
Os princípios ágeis
Os princípios ágeis

4) O pessoal do negócio e os
desenvolvedores devem trabalhar juntos
diariamente ao longo do projeto;

5) Construir projetos em volta de
indivíduos motivados. Dê a eles o ambiente
e o apoio que necessitam e confie que eles
vão fazer o serviço;

6) O método mais eficiente e efetivo para
levantar informação para uma equipe de
desenvolvimento é a conversa face a face;
Os princípios ágeis
Os princípios ágeis

7) Software funcionando é a principal
medida de progresso;

8) Processos ágeis promovem desenvolvimento
sustentável;

9) Patrocinadores, desenvolvedores e
usuários devem manter um ritmo constante;

10) Atenção contínua para a excelência
técnica e para um bom projeto aumenta a
agilidade;
Os princípios ágeis
Os princípios ágeis

11) Simplicidade - a arte de maximizar a
quantidade de trabalho não realizada - é
essencial;

12) As melhores arquiteturas, requisitos e
projetos surgem de equipes auto-
organizadas;

13) Em intervalos regulares, a equipe
reflete sobre como se tornar mais efetiva,
depois sintoniza e ajusta o seu
comportamento;
O que é modelagem ágil?
O que é modelagem ágil?



A finalidade da modelagem (diagramas em
UML,...) é principalmente entender o
problema, e não documentar ou entregar uma
série de diagramas para o desenvolvedor.
Fim


Dúvidas?

Sugestões?

Curiosidades?

Contenu connexe

Tendances

Engenharia De Software Baseada Em Componentes
Engenharia De Software Baseada Em ComponentesEngenharia De Software Baseada Em Componentes
Engenharia De Software Baseada Em Componentesigordsm
 
Processo de Desenvolvimento de Software - Prototipação
Processo de Desenvolvimento de Software - PrototipaçãoProcesso de Desenvolvimento de Software - Prototipação
Processo de Desenvolvimento de Software - PrototipaçãoNatanael Simões
 
Protótipos de papel
Protótipos de papelProtótipos de papel
Protótipos de papelRobson Santos
 
Processo de Desenvolvimento de Software - Fase de Definição
Processo de Desenvolvimento de Software - Fase de DefiniçãoProcesso de Desenvolvimento de Software - Fase de Definição
Processo de Desenvolvimento de Software - Fase de DefiniçãoNatanael Simões
 
Prototipação de software
Prototipação de softwarePrototipação de software
Prototipação de softwareleopp
 
IHC - Trabalho de Prototipação - Eduardo Bertolucci e Colegas e Classe - UNOP...
IHC - Trabalho de Prototipação - Eduardo Bertolucci e Colegas e Classe - UNOP...IHC - Trabalho de Prototipação - Eduardo Bertolucci e Colegas e Classe - UNOP...
IHC - Trabalho de Prototipação - Eduardo Bertolucci e Colegas e Classe - UNOP...Eduardo Bertolucci
 
Prototipos de Baixa e Alta Fidelidade
Prototipos de Baixa e Alta FidelidadePrototipos de Baixa e Alta Fidelidade
Prototipos de Baixa e Alta FidelidadeErico Fileno
 
Protótipos em Papel
Protótipos em PapelProtótipos em Papel
Protótipos em Papelelliando dias
 
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 4º PERÍODO ANÁLISE E PROJET...
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 4º PERÍODO ANÁLISE E PROJET...CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 4º PERÍODO ANÁLISE E PROJET...
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 4º PERÍODO ANÁLISE E PROJET...Os Fantasmas !
 
Aplicando conceitos gerais de gerenciamento de projetos à engenharia de software
Aplicando conceitos gerais de gerenciamento de projetos à engenharia de softwareAplicando conceitos gerais de gerenciamento de projetos à engenharia de software
Aplicando conceitos gerais de gerenciamento de projetos à engenharia de softwareNatanael Simões
 
Engenharia de Software II - Aula 9
Engenharia de Software II - Aula 9Engenharia de Software II - Aula 9
Engenharia de Software II - Aula 9Alessandro Almeida
 
Avaliação de interfaces com o usuário atraves de prototipação
Avaliação de interfaces com o usuário atraves de prototipaçãoAvaliação de interfaces com o usuário atraves de prototipação
Avaliação de interfaces com o usuário atraves de prototipaçãoLivia Gabos
 
Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Cláudio Amaral
 
Design Thinking - Prototipação
Design Thinking  - PrototipaçãoDesign Thinking  - Prototipação
Design Thinking - PrototipaçãoUFPA
 
O uso da prototipagem e fabricação digital no ambiente fab lab
O uso da prototipagem e fabricação digital no ambiente fab labO uso da prototipagem e fabricação digital no ambiente fab lab
O uso da prototipagem e fabricação digital no ambiente fab labDiego Jucá
 

Tendances (20)

Engenharia De Software Baseada Em Componentes
Engenharia De Software Baseada Em ComponentesEngenharia De Software Baseada Em Componentes
Engenharia De Software Baseada Em Componentes
 
Processo de Desenvolvimento de Software - Prototipação
Processo de Desenvolvimento de Software - PrototipaçãoProcesso de Desenvolvimento de Software - Prototipação
Processo de Desenvolvimento de Software - Prototipação
 
Iconix
IconixIconix
Iconix
 
Protótipos de papel
Protótipos de papelProtótipos de papel
Protótipos de papel
 
Processo de Desenvolvimento de Software - Fase de Definição
Processo de Desenvolvimento de Software - Fase de DefiniçãoProcesso de Desenvolvimento de Software - Fase de Definição
Processo de Desenvolvimento de Software - Fase de Definição
 
Prototipação de software
Prototipação de softwarePrototipação de software
Prototipação de software
 
IHC - Trabalho de Prototipação - Eduardo Bertolucci e Colegas e Classe - UNOP...
IHC - Trabalho de Prototipação - Eduardo Bertolucci e Colegas e Classe - UNOP...IHC - Trabalho de Prototipação - Eduardo Bertolucci e Colegas e Classe - UNOP...
IHC - Trabalho de Prototipação - Eduardo Bertolucci e Colegas e Classe - UNOP...
 
Prototipos de Baixa e Alta Fidelidade
Prototipos de Baixa e Alta FidelidadePrototipos de Baixa e Alta Fidelidade
Prototipos de Baixa e Alta Fidelidade
 
Protótipos em Papel
Protótipos em PapelProtótipos em Papel
Protótipos em Papel
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Prototipação
PrototipaçãoPrototipação
Prototipação
 
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 4º PERÍODO ANÁLISE E PROJET...
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 4º PERÍODO ANÁLISE E PROJET...CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 4º PERÍODO ANÁLISE E PROJET...
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 4º PERÍODO ANÁLISE E PROJET...
 
Aplicando conceitos gerais de gerenciamento de projetos à engenharia de software
Aplicando conceitos gerais de gerenciamento de projetos à engenharia de softwareAplicando conceitos gerais de gerenciamento de projetos à engenharia de software
Aplicando conceitos gerais de gerenciamento de projetos à engenharia de software
 
Engenharia de software - Prototipo
Engenharia de software - PrototipoEngenharia de software - Prototipo
Engenharia de software - Prototipo
 
Engenharia de Software II - Aula 9
Engenharia de Software II - Aula 9Engenharia de Software II - Aula 9
Engenharia de Software II - Aula 9
 
Prototipação
PrototipaçãoPrototipação
Prototipação
 
Avaliação de interfaces com o usuário atraves de prototipação
Avaliação de interfaces com o usuário atraves de prototipaçãoAvaliação de interfaces com o usuário atraves de prototipação
Avaliação de interfaces com o usuário atraves de prototipação
 
Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002
 
Design Thinking - Prototipação
Design Thinking  - PrototipaçãoDesign Thinking  - Prototipação
Design Thinking - Prototipação
 
O uso da prototipagem e fabricação digital no ambiente fab lab
O uso da prototipagem e fabricação digital no ambiente fab labO uso da prototipagem e fabricação digital no ambiente fab lab
O uso da prototipagem e fabricação digital no ambiente fab lab
 

Similaire à Modelos ágeis em

Exercicio 1 engenharia de software.
Exercicio 1 engenharia de software.Exercicio 1 engenharia de software.
Exercicio 1 engenharia de software.Renato Breaking
 
O uso de metodos ageis no desenvolvimento de software
O uso de metodos ageis no desenvolvimento de softwareO uso de metodos ageis no desenvolvimento de software
O uso de metodos ageis no desenvolvimento de softwareEverton vitor
 
O que é um Processo Ágil? | BRUNO FERNANDES CHIMIESKI
O que é um Processo Ágil? | BRUNO FERNANDES CHIMIESKIO que é um Processo Ágil? | BRUNO FERNANDES CHIMIESKI
O que é um Processo Ágil? | BRUNO FERNANDES CHIMIESKIBruno Fernandes Chimieski
 
Desenvolvimento ágil de software
Desenvolvimento ágil de softwareDesenvolvimento ágil de software
Desenvolvimento ágil de softwarediogenes.araujo
 
Open Up – Gerenciando Projetos Sob Principios Ágeis
Open Up – Gerenciando Projetos Sob Principios ÁgeisOpen Up – Gerenciando Projetos Sob Principios Ágeis
Open Up – Gerenciando Projetos Sob Principios Ágeisjeanstreleski
 
Sua Gestão é Ágil?
Sua Gestão é Ágil?Sua Gestão é Ágil?
Sua Gestão é Ágil?Teresa Maciel
 
Feature driven development
Feature driven developmentFeature driven development
Feature driven developmentIzabel Rodrigues
 
Metodologia ágil das Desenvolvimento Adaptativo Software
Metodologia ágil das   Desenvolvimento Adaptativo SoftwareMetodologia ágil das   Desenvolvimento Adaptativo Software
Metodologia ágil das Desenvolvimento Adaptativo SoftwareMarilainny Martins da Silva
 
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoMétodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoClaudia Hofart Guzzo
 
Palestra Métodos Ágeis SERPRO
Palestra Métodos Ágeis SERPROPalestra Métodos Ágeis SERPRO
Palestra Métodos Ágeis SERPROWildtech
 
Desenvolvimento ágil de software: análise sintética a partir de KANBAN
Desenvolvimento ágil de software: análise sintética a partir de KANBANDesenvolvimento ágil de software: análise sintética a partir de KANBAN
Desenvolvimento ágil de software: análise sintética a partir de KANBANFernando Palma
 
Engenharia de software aula 6 - Introdução ao Desenvolvimento Ágil
Engenharia de software aula 6 - Introdução ao Desenvolvimento ÁgilEngenharia de software aula 6 - Introdução ao Desenvolvimento Ágil
Engenharia de software aula 6 - Introdução ao Desenvolvimento ÁgilRebecca Betwel
 
Trabalho pds libre office 2
Trabalho pds libre office 2Trabalho pds libre office 2
Trabalho pds libre office 2Edinaldo Mendes
 
Scrum - Introdução Interna para o Núcleo de Arquitetura de Informação
Scrum - Introdução Interna para o Núcleo de Arquitetura de InformaçãoScrum - Introdução Interna para o Núcleo de Arquitetura de Informação
Scrum - Introdução Interna para o Núcleo de Arquitetura de InformaçãoAlessandro Novais
 
Leds zeppellin infraestrutura de apoio ao desenvolvimento
Leds zeppellin   infraestrutura de apoio ao desenvolvimentoLeds zeppellin   infraestrutura de apoio ao desenvolvimento
Leds zeppellin infraestrutura de apoio ao desenvolvimentoledsifes
 

Similaire à Modelos ágeis em (20)

Exercicio 1 engenharia de software.
Exercicio 1 engenharia de software.Exercicio 1 engenharia de software.
Exercicio 1 engenharia de software.
 
O uso de metodos ageis no desenvolvimento de software
O uso de metodos ageis no desenvolvimento de softwareO uso de metodos ageis no desenvolvimento de software
O uso de metodos ageis no desenvolvimento de software
 
O que é um Processo Ágil? | BRUNO FERNANDES CHIMIESKI
O que é um Processo Ágil? | BRUNO FERNANDES CHIMIESKIO que é um Processo Ágil? | BRUNO FERNANDES CHIMIESKI
O que é um Processo Ágil? | BRUNO FERNANDES CHIMIESKI
 
Desenvolvimento ágil de software
Desenvolvimento ágil de softwareDesenvolvimento ágil de software
Desenvolvimento ágil de software
 
Desenvolvimento Ágil
Desenvolvimento ÁgilDesenvolvimento Ágil
Desenvolvimento Ágil
 
Open Up – Gerenciando Projetos Sob Principios Ágeis
Open Up – Gerenciando Projetos Sob Principios ÁgeisOpen Up – Gerenciando Projetos Sob Principios Ágeis
Open Up – Gerenciando Projetos Sob Principios Ágeis
 
Sua Gestão é Ágil?
Sua Gestão é Ágil?Sua Gestão é Ágil?
Sua Gestão é Ágil?
 
O Gerenciamento de Projetos de Software Desenvolvidos à Luz das Metodologias ...
O Gerenciamento de Projetos de Software Desenvolvidos à Luz das Metodologias ...O Gerenciamento de Projetos de Software Desenvolvidos à Luz das Metodologias ...
O Gerenciamento de Projetos de Software Desenvolvidos à Luz das Metodologias ...
 
Metodos ageis
Metodos ageisMetodos ageis
Metodos ageis
 
Feature driven development
Feature driven developmentFeature driven development
Feature driven development
 
Metodologia ágil das Desenvolvimento Adaptativo Software
Metodologia ágil das   Desenvolvimento Adaptativo SoftwareMetodologia ágil das   Desenvolvimento Adaptativo Software
Metodologia ágil das Desenvolvimento Adaptativo Software
 
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoMétodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
 
Palestra Métodos Ágeis SERPRO
Palestra Métodos Ágeis SERPROPalestra Métodos Ágeis SERPRO
Palestra Métodos Ágeis SERPRO
 
Desenvolvimento ágil de software: análise sintética a partir de KANBAN
Desenvolvimento ágil de software: análise sintética a partir de KANBANDesenvolvimento ágil de software: análise sintética a partir de KANBAN
Desenvolvimento ágil de software: análise sintética a partir de KANBAN
 
Engenharia de software aula 6 - Introdução ao Desenvolvimento Ágil
Engenharia de software aula 6 - Introdução ao Desenvolvimento ÁgilEngenharia de software aula 6 - Introdução ao Desenvolvimento Ágil
Engenharia de software aula 6 - Introdução ao Desenvolvimento Ágil
 
Jucelir
JucelirJucelir
Jucelir
 
Trabalho pds libre office 2
Trabalho pds libre office 2Trabalho pds libre office 2
Trabalho pds libre office 2
 
Agilidade em projetos de software
Agilidade em projetos de softwareAgilidade em projetos de software
Agilidade em projetos de software
 
Scrum - Introdução Interna para o Núcleo de Arquitetura de Informação
Scrum - Introdução Interna para o Núcleo de Arquitetura de InformaçãoScrum - Introdução Interna para o Núcleo de Arquitetura de Informação
Scrum - Introdução Interna para o Núcleo de Arquitetura de Informação
 
Leds zeppellin infraestrutura de apoio ao desenvolvimento
Leds zeppellin   infraestrutura de apoio ao desenvolvimentoLeds zeppellin   infraestrutura de apoio ao desenvolvimento
Leds zeppellin infraestrutura de apoio ao desenvolvimento
 

Plus de Leandro Rezende

Desenvolvimento de Sistemas para Dispositivos Móveis e Sem Fio
Desenvolvimento de Sistemas para Dispositivos Móveis e Sem FioDesenvolvimento de Sistemas para Dispositivos Móveis e Sem Fio
Desenvolvimento de Sistemas para Dispositivos Móveis e Sem FioLeandro Rezende
 
Aula1 - Gerência de Projetos
Aula1 - Gerência de ProjetosAula1 - Gerência de Projetos
Aula1 - Gerência de ProjetosLeandro Rezende
 
Certificação Digital - Aula2 Exercícios
Certificação Digital - Aula2 ExercíciosCertificação Digital - Aula2 Exercícios
Certificação Digital - Aula2 ExercíciosLeandro Rezende
 
Certificação Digital - Aula2
Certificação Digital - Aula2Certificação Digital - Aula2
Certificação Digital - Aula2Leandro Rezende
 
Sistemas de Informações Gerenciais - Aula5
Sistemas de Informações Gerenciais - Aula5Sistemas de Informações Gerenciais - Aula5
Sistemas de Informações Gerenciais - Aula5Leandro Rezende
 
Sistemas de Informações Gerenciais - Aula4
Sistemas de Informações Gerenciais - Aula4Sistemas de Informações Gerenciais - Aula4
Sistemas de Informações Gerenciais - Aula4Leandro Rezende
 
Sistemas de Informações Gerenciais - Aula3
Sistemas de Informações Gerenciais - Aula3Sistemas de Informações Gerenciais - Aula3
Sistemas de Informações Gerenciais - Aula3Leandro Rezende
 
Certificação Digital - Aula1 Exercícios
Certificação Digital - Aula1 ExercíciosCertificação Digital - Aula1 Exercícios
Certificação Digital - Aula1 ExercíciosLeandro Rezende
 
Certificação Digital - Aula1
Certificação Digital - Aula1Certificação Digital - Aula1
Certificação Digital - Aula1Leandro Rezende
 
Algoritmos C/C++ - Aula 02
Algoritmos C/C++ - Aula 02Algoritmos C/C++ - Aula 02
Algoritmos C/C++ - Aula 02Leandro Rezende
 
Desenvolvimento para a Internet - Aula 04
Desenvolvimento para a Internet - Aula 04Desenvolvimento para a Internet - Aula 04
Desenvolvimento para a Internet - Aula 04Leandro Rezende
 
Desenvolvimento para a Internet - Aula 03
Desenvolvimento para a Internet - Aula 03Desenvolvimento para a Internet - Aula 03
Desenvolvimento para a Internet - Aula 03Leandro Rezende
 
Desenvolvimento para a Internet - Aula 02
Desenvolvimento para a Internet - Aula 02Desenvolvimento para a Internet - Aula 02
Desenvolvimento para a Internet - Aula 02Leandro Rezende
 
Desenvolvimento para a Internet - Aula 01
Desenvolvimento para a Internet - Aula 01Desenvolvimento para a Internet - Aula 01
Desenvolvimento para a Internet - Aula 01Leandro Rezende
 
Algoritmos C/C++ - Aula 01
Algoritmos C/C++ - Aula 01Algoritmos C/C++ - Aula 01
Algoritmos C/C++ - Aula 01Leandro Rezende
 
Sistemas de Informações Gerenciais - Aula 01
Sistemas de Informações Gerenciais - Aula 01Sistemas de Informações Gerenciais - Aula 01
Sistemas de Informações Gerenciais - Aula 01Leandro Rezende
 

Plus de Leandro Rezende (18)

Cidadão Participativo
Cidadão ParticipativoCidadão Participativo
Cidadão Participativo
 
Desenvolvimento de Sistemas para Dispositivos Móveis e Sem Fio
Desenvolvimento de Sistemas para Dispositivos Móveis e Sem FioDesenvolvimento de Sistemas para Dispositivos Móveis e Sem Fio
Desenvolvimento de Sistemas para Dispositivos Móveis e Sem Fio
 
Caso de Uso
Caso de UsoCaso de Uso
Caso de Uso
 
Aula1 - Gerência de Projetos
Aula1 - Gerência de ProjetosAula1 - Gerência de Projetos
Aula1 - Gerência de Projetos
 
Certificação Digital - Aula2 Exercícios
Certificação Digital - Aula2 ExercíciosCertificação Digital - Aula2 Exercícios
Certificação Digital - Aula2 Exercícios
 
Certificação Digital - Aula2
Certificação Digital - Aula2Certificação Digital - Aula2
Certificação Digital - Aula2
 
Sistemas de Informações Gerenciais - Aula5
Sistemas de Informações Gerenciais - Aula5Sistemas de Informações Gerenciais - Aula5
Sistemas de Informações Gerenciais - Aula5
 
Sistemas de Informações Gerenciais - Aula4
Sistemas de Informações Gerenciais - Aula4Sistemas de Informações Gerenciais - Aula4
Sistemas de Informações Gerenciais - Aula4
 
Sistemas de Informações Gerenciais - Aula3
Sistemas de Informações Gerenciais - Aula3Sistemas de Informações Gerenciais - Aula3
Sistemas de Informações Gerenciais - Aula3
 
Certificação Digital - Aula1 Exercícios
Certificação Digital - Aula1 ExercíciosCertificação Digital - Aula1 Exercícios
Certificação Digital - Aula1 Exercícios
 
Certificação Digital - Aula1
Certificação Digital - Aula1Certificação Digital - Aula1
Certificação Digital - Aula1
 
Algoritmos C/C++ - Aula 02
Algoritmos C/C++ - Aula 02Algoritmos C/C++ - Aula 02
Algoritmos C/C++ - Aula 02
 
Desenvolvimento para a Internet - Aula 04
Desenvolvimento para a Internet - Aula 04Desenvolvimento para a Internet - Aula 04
Desenvolvimento para a Internet - Aula 04
 
Desenvolvimento para a Internet - Aula 03
Desenvolvimento para a Internet - Aula 03Desenvolvimento para a Internet - Aula 03
Desenvolvimento para a Internet - Aula 03
 
Desenvolvimento para a Internet - Aula 02
Desenvolvimento para a Internet - Aula 02Desenvolvimento para a Internet - Aula 02
Desenvolvimento para a Internet - Aula 02
 
Desenvolvimento para a Internet - Aula 01
Desenvolvimento para a Internet - Aula 01Desenvolvimento para a Internet - Aula 01
Desenvolvimento para a Internet - Aula 01
 
Algoritmos C/C++ - Aula 01
Algoritmos C/C++ - Aula 01Algoritmos C/C++ - Aula 01
Algoritmos C/C++ - Aula 01
 
Sistemas de Informações Gerenciais - Aula 01
Sistemas de Informações Gerenciais - Aula 01Sistemas de Informações Gerenciais - Aula 01
Sistemas de Informações Gerenciais - Aula 01
 

Modelos ágeis em

  • 1. Modelagem de Sistemas Orientada a Objetos Aula 2 Interativo, Evolutivo e Ágil Prof. Leandro Rezende C. de Mendonça, MSc.
  • 2. Objetivos Definir um processo ágil e interativo. Definir os conceitos fudamentais do processo unificado.
  • 4. Unified Process UP (Unified Process): Processo muito utilizado para o desenvolvimento interativo de sistemas orientados a objeto. Flexível e aberto, permitindo a aplicação de outros métodos interativos como: Scrum, XP, Lean Development, DSDM, Feature-Driven Development, Adaptive Software Development etc.
  • 6. Rational Unified Process RUP (Rational Unified Process): É um refinamento do processo unificado (UP). Não seja dogmático dizendo que: “Meu método é melhor que esse.”
  • 8. Unified Process Combina as práticas mais aceitáveis: Ciclos interativos. Risco controlado. Processo coeso e bem documentado.
  • 10. Desenvolvimeto Interativo e Evolutivo O desenvolvimento é organizado em uma série de projetos curtos (mini- projetos) chamados de interações. A duração recomendada para cada interação é entre 2 a 6 semanas. Cada interação possui sua fase de análise de requisitos, design, implementação e teste.
  • 13. Desenvolvimeto Interativo e Evolutivo O que é observado nos dois pontos de um processo interativo?
  • 14. Benefícios do desenvolvimeto Interativo e Evolutivo
  • 15. Benefícios do desenvolvimeto Interativo e Evolutivo Minimiza as falhas em um projeto. Minimiza riscos (técnicos, requisitos, escopo, usabilidade etc.). Progresso visível desde o início de um projeto.
  • 16. Benefícios do desenvolvimeto Interativo e Evolutivo
  • 17. Benefícios do desenvolvimeto Interativo e Evolutivo Usuários engajados no projeto. A equipe não sofre pela “paralisia da análise”. Convergência do sistema de encontro as necessidades do usuário.
  • 19. Desenvolvimeto Cascata x Interativo Não tente criar inicialmente especificações muito abrangentes e detalhadas sobre um projeto, pois assim, o raciocínio em cascata invadiu o projeto e isso não é saudável.
  • 20. Desenvolvimeto Cascata
  • 21. Desenvolvimeto Cascata Muito utilizado na década de 60-70. Altas taxas de falhas. Menor produtividade. Na média 45% dos requisitos em cascata nunca são usados. Cronogramas e orçamentos iniciais variam até em 400%.
  • 22. Desenvolvimeto Cascata
  • 23. Desenvolvimeto Cascata Erros doentios comumente utilizados: “Vamos detalhar todos os casos de uso antes de começar a programar”. “Vamos criar vários modelos UML, depois começamos a programar”.
  • 24. Mudanças de requisitos em um projeto Qual o percentual de mudanças de requisitos em um projeto?
  • 25. Mudanças de requisitos em um projeto Qual o percentual de mudanças de requisitos em um projeto? Fonte: Jones, J., 1997.Applied Software Measurement. NY, McGraw-Hill
  • 27. O Manifesto Ágil Indivíduos e interações vem antes de processos e ferramentas; Software funcionando vem antes de documentação abrangente; Colaboração do cliente vem antes de negociação de contrato; Resposta a modificação vem antes de um plano em andamento;
  • 29. Os princípios ágeis 1) Nossa prioridade mais alta é satisfazer o cliente por meio de entrega pronta e contínua de software de valor; 2) Acolher modificação de requisitos, mesmo no final do desenvolvimento. Processos ágeis valorizam a modificação para a vantagem competitiva do cliente; 3) Entregar software funcionando com frequência, preferencialmente usando uma escala de tempo menor;
  • 31. Os princípios ágeis 4) O pessoal do negócio e os desenvolvedores devem trabalhar juntos diariamente ao longo do projeto; 5) Construir projetos em volta de indivíduos motivados. Dê a eles o ambiente e o apoio que necessitam e confie que eles vão fazer o serviço; 6) O método mais eficiente e efetivo para levantar informação para uma equipe de desenvolvimento é a conversa face a face;
  • 33. Os princípios ágeis 7) Software funcionando é a principal medida de progresso; 8) Processos ágeis promovem desenvolvimento sustentável; 9) Patrocinadores, desenvolvedores e usuários devem manter um ritmo constante; 10) Atenção contínua para a excelência técnica e para um bom projeto aumenta a agilidade;
  • 35. Os princípios ágeis 11) Simplicidade - a arte de maximizar a quantidade de trabalho não realizada - é essencial; 12) As melhores arquiteturas, requisitos e projetos surgem de equipes auto- organizadas; 13) Em intervalos regulares, a equipe reflete sobre como se tornar mais efetiva, depois sintoniza e ajusta o seu comportamento;
  • 36. O que é modelagem ágil?
  • 37. O que é modelagem ágil? A finalidade da modelagem (diagramas em UML,...) é principalmente entender o problema, e não documentar ou entregar uma série de diagramas para o desenvolvedor.