Aula 4 -_metodologia_e_tecnicas_de_analise_oo

719 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
719
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
13
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula 4 -_metodologia_e_tecnicas_de_analise_oo

  1. 1. Metodologia e Técnicas de Análise OO Docentes: Zeferino Saugene Edgar Gemo2/16/2007 1
  2. 2. Tecnicas e Metodologias OO Uma das preocupações da indústria de software é a necessidade de criar software e sistemas corporativos muito rapidamente e a um custo baixo. Este software deverá ainda ser confiável. Os meios para se conseguir um software que preencha essas exigências não é a aplicação de uma só técnica mas a combinação de muitas ferramentas e técnicas necessárias para o desenvolvimento de um determinado software.2/16/2007 2
  3. 3. Técnicas OO As técnicas Orientadas a Objecto permitem que o software seja construído de "objectos" que tenham um comportamento específico. Os próprios objectos podem ser construídos a partir de outros, os quais por sua vez, podem ainda ser construídos a partir de outros.2/16/2007 3
  4. 4. Técnicas OO O mundo das técnicas orientadas a objecto executadas com ferramentas CASE baseadas em repositórios é diferente. O desenvolvedor deverá pensar em termos de objectos e seu comportamento, e o código será gerado.2/16/2007 4
  5. 5. Características das Técnicas OO (1) De acordo com Martin (1995) : Sistemas podem ser frequentemente construídos de objectos existentes; A complexidade de objectos que podemos usar continua a crescer, visto que objectos são construídos dentro de outros objectos; O repositório CASE deve conter uma biblioteca sempre crescente de tipos de objectos;2/16/2007 5
  6. 6. Características das Técnicas OO (2) Recriar sistemas que funcionem de forma correcta é mais fácil com as técnicas OO. Isto porque as classes são independentes e projectadas para serem reusadas; As técnicas OO têm um ajuste2/16/2007 natural com a tecnologia CASE. 6
  7. 7. Metodologias de Desenvolvimento de Sistemas As metodologias estruturadas Modelo de dados relacional Técnicas e notações As metodologias orientadas a objectos(OO) Modelo de Dados OO A Linguagem de Modelação UML2/16/2007 7
  8. 8. Metodologias de AOO Destacam-se das diversas metodologias: Método de Booch [Booch,1994], Object Modeling Technique – OMT [Rumbaugh et al, 1994], Método de Coad/Yourdon [Coad & Yourdon, 1990], Object-Oriented Software Engineering – OOSE/Objectory [Jacobson, 1992] Object-Oriented Analysis/Design – OOA/D [Shlaer-Mellor, 1988], Unified Modeling Language – UML [OMG, 2001].2/16/2007 8
  9. 9. Método Booch (1) A notação captura os aspectos estáticos e dinâmicos de um sistema O processo possui 4 fases: Identificar classes e objectos Identificar a semântica das classes e dos objectos Identificar os relacionamentos entre classes e objectos Implementar classes e objectos.2/16/2007 9
  10. 10. Método Booch (2) Diagramas: classes, objectos, módulos, processos, transição de estados e interacção Um diagrama de classes mostra as classes, seus relacionamentos e cardinalidades2/16/2007 10
  11. 11. Método Booch (3) Um diagrama de objectos (e template) mostra os objectos, seus relacionamentos, sua visibilidade (global, parâmetro, local), e sincronização (síncrona, assíncrona, timeout) de mensagens2/16/2007 11
  12. 12. Método Booch (4) Um diagrama de módulos é usado p/ mostrar a alocação de classes e objectos em módulos (e.g. programa principal, especificação, corpo, subsistema) no desenho físico do sistema2/16/2007 12
  13. 13. Método Booch (5) Um diagrama de processos é usado para mostrar a alocação de processos em processadores no desenho físico de um sistema. Conexões também são mostradas2/16/2007 13
  14. 14. OMT (1) OMT (Object Modeling Technique) consiste de 3 modelos: Modelo de Objecto, Modelo Dinâmico e o Modelo Funcional Na definição do modelo de objectos: O analista identifica classes e objectos, Constrói um dicionário de dados, Adiciona associações entre classes, Adiciona atributos a objectos, Organiza classes através de herança, Testa passos de acesso usando cenários Refina o modelo e agrupa classes em módulos2/16/2007 14
  15. 15. OMT (2) A definição do modelo dinâmico consiste em: Escrever cenários de interacções típicas Identificar eventos entre objectos Preparar um event trace diagram para cada cenário2/16/2007 15
  16. 16. OMT (3) Preparar um event flow diagram do sistema Preparar diagramas de estados p/ classes Verificar consistência e completude entre diagramas de estados. Concorrência também é descrita neste modelo2/16/2007 16
  17. 17. OMT (4) Na definição do modelo funcional, o analista Identifica valores de entrada e saída, Utiliza diagramas de fluxos de dados para mostar dependências funcionais, Descreve cada função, e Identifica restrições Estes 3 modelos têm de ser verificados, integrados, e refinados2/16/2007 17
  18. 18. OOSE/Objectory Desenvolvido por Ivar Jacobson É uma abordagem orientada a use cases O modelo de use case contém actores e descrições dos use cases É utilizado para desenvolver outros modelos (modelo de objectos, de interacção, transição de estados) O sistema é visto como um conjunto de blocos conectados, cada bloco representando um serviço do2/16/2007 sistema 18
  19. 19. Coad and Yourdon (1) O método de análise OOA de Coad and Yourdon é composto por 5 camadas de análise: As camadas são: Classe-Objecto, Estrutura, Assunto, Atributo e Serviço2/16/2007 19
  20. 20. Coad and Yourdon (2) A camada Classe-Objecto consiste em identificar classes e objectos de uma aplicação através de documentos, unidades organizacionais, outros sistemas, etc. A camada Estrutura consiste em definir os relacionamentos de generalização, especialização e agregação A camada Assunto (Subject) consiste no agrupamento de objectos/classes relacionados2/16/2007 20
  21. 21. Coad and Yourdon (3) A camada Atributo consiste em identificar as propriedades de classes e objectos a fim de dar mais detalhes às suas descrições. Conexões de instância tb são definidas: são associações entre objectos + restrições de cardinalidade A camada Serviço consiste em identificar os estados dos objectos, os serviços disponíveis para cada classe e conexões de mensagens. Um serviço é uma processo a ser realizado quando uma mensagem é recebida2/16/2007 21
  22. 22. UML (1) Um força de trabalho da OMG foi estabelecida para standardização na área de métodos Em 1997, várias organizações submeteram propostas UML tornou-se um standard para modelação OO2/16/2007 22
  23. 23. UML (2) Desenvolvido por autores de métodos de análise e desenho largamente utilizados (Booch, Rumbaugh, Jacobson) UML no estado actual define uma notação e um metamodelo; ou seja, UML não é um método A notação é gráfica; é a sintaxe da linguagem de modelação2/16/2007 23
  24. 24. UML (3) O meta-modelo é usado para aumentar o rigor dos modelos, normalmente utilizando um diagrama de classes para definir a notação Relacionamento Agregação Associação2/16/2007 24
  25. 25. Bibliografia Larman, C. (2001); Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, USA, Prentice Hall PTR – 2ª Edição Martin, J. e Odell, J. J. (1995) Análise e Projeto Orientados a Objeto, São Paulo: Makron Books Page-Jones, M. (2001) Fundamentos do Desenho Orientado a Objeto com UML, São Paulo: Makron Books Pereira, R.(1996) Avaliacao de metodologias de análise e projecto orientadas a objectos voltadas ao desenvolvimento de aplicações sob a ótica de sua utilização no desenvolvimento de frameworks orientados a objetos, http://www.inf.ufsc.br http://www.mat.ua.pt2/16/2007 25

×