Análise e Projeto
  Orientado a
    Objetos

     Saulo Arruda
Apresentação
Saulo Arruda (sauloarruda.eti.br)

  Quase especialista em MPS

  Gerente de Produção da Agence

  Desenvolvedor há 10 anos

  Instrutor do SENAC/MS

  Membro do JUG-MS (jugms.com.br)
Grande software em 3
   etapas simples!
Grande software em 3
   etapas simples!
Rock ‘n Roll Forever!

Vamos usar como case
uma Loja de Guitarras

O cliente da loja deseja
encontrar a Guitarra
dos seus sonhos!

Vamos pensar nos
requisitos de um
sistema para a loja...
Rick deseja que o cliente ache a Guitarra dos seus
sonhos pela Internet no site da loja.

Para isso, o cliente vai buscar o tipo, fabricante,
modelo e cor da Guitarra.
Alabama Baby v.1.0
Houston, we have a
    problem...
Houston, we have a
      problem...
Comparações com
String são um
problema!
Houston, we have a
      problem...
Comparações com
String são um
problema!

O cliente tem
dificuldades para
encontrar a Guitarra
do seus sonhos.
Houston, we have a
      problem...
Comparações com
String são um
problema!

O cliente tem
dificuldades para
encontrar a Guitarra
do seus sonhos.

Alguma sugestão??
Grande software em 3
   etapas simples!
Grande software em 3
   etapas simples!
Alabama Baby v.1.1
Quase bom!

Queremos opções!
Nem sempre o cliente
sabe exatamente a
especificação da
Guitarra dos seus
sonhos...

Hmmm... essa parece
fácil!
Alabama Baby v.1.2
Grande software em 3
   etapas simples!
Grande software em 3
   etapas simples!
Alabama Baby v.1.3
Agora ficou flexível?
Agora ficou flexível?

Software flexível
adapta-se bem às
mudanças;
Agora ficou flexível?

Software flexível
adapta-se bem às
mudanças;

O que acontece se
adicionarmos um novo
atributo cordas à classe
GuitarraEspecificacao?
Alabama Baby v.1.4
Quase!!!
Quase!!!

Nosso projeto ficou
bom!
Quase!!!

Nosso projeto ficou
bom!

Mas a implementação
ainda está com
problemas...
Quase!!!

Nosso projeto ficou
bom!

Mas a implementação
ainda está com
problemas...

Qual é o problema?
Alabama Baby v.1.5
Agora sim!
Agora sim!
Agora sim!


Agora temos um
projeto que suporta
bem à mudanças.

Rick está vendendo
Guitarras como nunca!
A Felicidade do
   Cliente!!
A Felicidade do
      Cliente!!
O cliente fica feliz quando:
A Felicidade do
      Cliente!!
O cliente fica feliz quando:

  Seu sistema FUNCIONA!
A Felicidade do
      Cliente!!
O cliente fica feliz quando:

  Seu sistema FUNCIONA!

  Seu sistema CONTINUA
  FUNCIONANDO!
A Felicidade do
      Cliente!!
O cliente fica feliz quando:

  Seu sistema FUNCIONA!

  Seu sistema CONTINUA
  FUNCIONANDO!

  Seu sistema pode ser EVOLUÍDO!
A Felicidade dos
Programadores
A Felicidade dos
  Programadores

Os Programadores ficam felizes quando:
A Felicidade dos
  Programadores

Os Programadores ficam felizes quando:

 Seu sistema pode ser REUTILIZADO!
A Felicidade dos
  Programadores

Os Programadores ficam felizes quando:

 Seu sistema pode ser REUTILIZADO!

 Seu sistema é FLEXÍVEL!
Contatos
Saulo Arruda

 E-mail: sauloarruda@gmail.com

 Blog: www.sauloarruda.eti.br

 Agence (www.agence.com.br)

 JUG-MS (www.jugms.com.br)

 SENAC/MS (www.ms.senac.br)
Licença

Você pode:
    copiar, distribuir, exibir e executar a obra
    criar obras derivadas
Sob as seguintes condições:
    Atribuição. Você deve dar crédito
    ao autor original, da forma
    especificada pelo autor ou
    licenciante.
Referências
MCLAUGHLIN, Brett; POLLICE, Gary; WEST
David; Use a Cabeça! Análise e Projeto
Orientado a Objetos; Capítulo 1; Alta Books:
2007; ISBN 9788576081456

Análise e Projeto Orientado a Objetos