Atividade de Projeto Design

Slides:



Advertisements
Apresentações semelhantes
Orientação a objetos identidade abstração classificação encapsulamento
Advertisements

Projeto – Parte II - Exemplos de Diagrama de Colaboração
UML no CICLO de DESENVOLVIMENTO
UML Modelando um sistema.
CIÊNCIA DA COMPUTAÇÃO DESENVOLVIMENTO DE SISTEMAS Aula 9
Técnicas de Teste de Software
Orientação por Objectos > Modelo de Processo OO > Identificação de Classe e Objectos Aula 12.
UML - Diagrama de Classes e objetos
UML – MODELAÇÃO DA ESTRUTURA Professor Sandro Carvalho.
Metodologias Equipe do Curso de ES para SMA
Linguagens de Modelagem para SMA
Cartões CRC (Class Responsibility Card)
UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.
Atribuição de Responsabilidades em Projeto OO
Projeto de Software Orientado a Objetos
Padrões GoF – Factory Method
Professor: Rogério Lopes Disciplina: Engenharia de Software II Fortium Sistemas da Informação Engenharia de Software II.
Linguagem de Programação
Programação orientada a objetos com Java
Engenharia de Requisitos Requisito – sistema Caso de uso - usuário
Introdução Visão Geral do Método.
Padrões para Atribuições de Responsabilidades
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
RUP: Fluxo de Análise e Projeto
Geração de Código.
Projeto da Camada de Domínio
Modelagem de Interações
Diagramas de Sequência e Comunicação
Diagrama de Classes e Colaboração
Diagrama de Classes Ilustra as especificações de software para as classes e interfaces do sistema. É obtido através da adição de detalhes ao modelo conceitual.
Análise e Projeto de Sistemas
Fase de Elaboração: Fluxo de Análise Análise de Sistemas de Software Prof. Rodrigo Ribeiro.
Modelagem de Negócio no RUP
Casos de Uso no Engenharia de Software e Sistemas {abab, dtvp, jmmn, mscla, rmb2,
Prof. Silvestri – todos os direitos reservados SISTEMAS DISTRIBUIDOS Aula 5 Eduardo Silvestri
UML - Unified Modeling Language
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng
O Processo Unificado (UP)
Modelagem de Entidade/Objetos de Domínio com Diagrama de Classes
Padrão- MVC Model, View, Controller
Modelagem de Entidade/Objetos de Domínio com Diagrama de Classes
Utilizando UML e Padrões Prof. Fábio Botelho, MSc Redes e Sistemas Distribuídos Recife, Março de 2010.
Paradigmas da Programação – Semestre 2 – Aula 1 Professores: Fábio de Paula Santos Eduardo Mantovani
Utilizando UML e Padrões Prof. Fábio Botelho, MSc Redes e Sistemas Distribuídos Recife, Março de 2010.
© Nabor C. Mendonça Análise e Design Orientados a Objeto com a metodologia (R)UP + UML.
Padrões de Projeto.
Modelo de Análise e Projeto
Diagramas UML de Seqüência
Engenharia de Software e Sistemas
Projetando Objetos com Responsabilidades
Fluxo de Análise e Projeto 7 - Atividade Projetar Classes.
UML Diagramas de Classes Disciplina: Engenharia de Software
Padrões de projeto M.Sc. Sílvio Bacalá Jr..
Expansão dos Casos de Uso
Modelagem Conceitual Descreve a informação que o sistema vai gerenciar.
Atividade de Projeto Design. O Que é Projeto OO? É desvendar a caixa-preta de um objeto :Sistema Como o objeto complexo :Sistema deveria ser definido?
Diagramas de Colaboração entre Objetos Motivação.
Modelagem Conceitual Descreve a informação que o sistema vai gerenciar.
Introdução a Orientação a Objetos
Copyright © 2006 Qualiti. Todos os direitos reservados. Projetar Classes.
Modelagem Conceitual descreve a informação que o sistema vai gerenciar.
Módulo II Capítulo 1: Orientação a Objetos
Engenharia de Software Orientada a Objetos
Padrões GRASP.
Fundamentos de Engenharia de SW Diagramas da UML Usados no Projeto de Software.
/ de Julho de UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Pós-Graduação em Ciência da Computação Tópicos Avançados.
18/1/2016 Professor Leomir J. Borba- – CIÊNCIA DA COMPUTAÇÃO DESENVOLVIMENTO DE SISTEMAS.
Análise e Design de Software Site:
GRASP: Projeto de Objetos com Responsabilidade – Parte 2.
Diagramas de Sequência e Comunicação
Transcrição da apresentação:

Atividade de Projeto Design

O Que é Projeto OO? É desvendar a caixa-preta de um objeto :Sistema Como o objeto complexo :Sistema deveria ser definido? Com base nas Operações dos atores do sistema Contratos De acordo com Modelo Conceitual do Sistema Conceitos Atributos Relacionamentos Artefato a gerar Diagrama de classes de software

Diagrama de Classes Derivado do Modelo Conceitual Classe de Software Cada conceito é transformado em uma classe de software Classe de Software Atributos Relacionamentos com outras classes, ou com a própria classe Métodos Visibilidade Grau de acoplamento com outras classes

Métodos de Classe São determinados via Diagramas de Colaboração entre Objetos Um Diagrama de Colaboração entre Objetos especifica como objetos do domínio devem colaborar, ou trocar mensagens, para resolver Operações Cada mensagem que chega a um objeto do domínio torna-se um método da correspondente classe de software

Geração do Diagrama de Classes

Adição da direção dos relacionamentos Em relação ao Modelo Conceitual, um Diagrama de Colaboração entre Objetos Contém a Mais Adição dos métodos Adição da direção dos relacionamentos Visibilidade de classes Possível detalhamento dos atributos e relacionamentos Possível alteração na estrutura das classes e relacionamentos Possível criação de atributos privados ou protegidos

Diagramas de Colaboração entre Objetos Motivação

Exemplo de uma classe concentradora O que se quer evitar

Avaliação da Classe VideoLocadora Segundo a moderna engenharia de software Segundo o modelo conceitual, a classe VideoLocadora só deveria ‘ver’ as classes Fita e Cliente Pela ‘solução’ apresentada, há um alto acoplamento de VideoLocadora com outras classes Emprestimo ItemDeEmprestimo Também, baixa coesão O método emprestaFita() faz muita coisa, ou está muito carregado O que se quer é o contrário Classes com Baixo acoplamento Alta coesão (coesão)

Como se Chega a Classes com Baixo Acoplamento e Coesas? O Caminho Passa pelo Exame do Modelo Conceitual

Modelo Conceitual

Lições do Modelo Conceitual Pelo Modelo Conceitual, objetos Emprestimo e ItemDeEmprestimo deviam ser invisíveis a objetos VideoLocadora Desta forma, objetos VideoLocadora não ficam sobrecarregados Outra maneira de dizer Objetos VideoLocadora, Cliente, Fita, Emprestimo e ItemDeEmprestimo devem cooperar para realizar o contrato da operação de sistema emprestaFita() Um diagrama de colaboração entre objetos, baseado no Modelo Conceitual, nos contratos, e em certos padrões de software, deve colocar as coisas desta forma

Uma diagrama de colaboração para o método emprestaFita()

Métodos das Classes Cliente, Emprestimo, ItemDeEmprestimo (Parcial) VideoLocadora Cliente emprestaFita(fCodigo) empresta(fita) Emprestimo ItemDeEmprestimo adiciona(fita) associaItem() associaFita()

Resulta em Classes com Baixo Acoplamento e Coesas