Christina Von Flach Chavez

Slides:



Advertisements
Apresentações semelhantes
Soluções elegantes para problemas recorrentes
Advertisements

Orientação a objetos identidade abstração classificação encapsulamento
Projeto – Parte II - Exemplos de Diagrama de Colaboração
Princípios da Orientação a Objetos e a Linguagem UML
Análise e Desenvolvimento de Sistemas
UML Diagramas de Caso de Uso (USE-CASE)
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
(Unified Modeling Language)
Análise de Casos de Uso.
Diagrama de Classes.
> Fases de Engenharia de SW > Gestão de Projectos de SW
UML Material retirado da apostila do Professor Cesar Augusto Tacla
UML – MODELAÇÃO DA ESTRUTURA Professor Sandro Carvalho.
Diagramas de Seqüência
Projeto de Sistemas de Software
Mutação Orientada a Objeto para Assegurar a Qualidade de Testes Baseado no Artigo: Object-Oriented Mutation to Asses the Quality of Tests Anna Derezinska.
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
DIAGRAMA DE CASOS DE USO PERSPECTIVA CONCEITUAL
Professora: Aline Vasconcelos
Introdução a diagrama de classes e UML
Análise e Projetos de Sistemas
Diagramas de Classes.
ANÁLISE E PROJETO ORIENTADA A OBJETOS UFRJ/IM/DCC Lab PSI mai/1999.
Análise Estruturada O mais amplamente usado dos métodos de modelagem de requisitos Modelos que retratam fluxo e o conteúdo da informação (dados e controle)
Introdução à Modelagem Conceitual 1. Conceitos Básicos
Prof. Alexander Roberto Valdameri
Análise e Projeto de Sistemas
1 MAC 413/5715 – Seminário Prof. Fabio Kon Self: The Power of Simplicity David Ungar and Randall B. Smith OOPSLA 1987 Cristina Fang Eduardo Miyoshi Kasa.
Aula 9 Fases do desenvolvimento de software UML Diagramas de classes
Classes e objetos Modelagem
Análise e Projetos de Sistemas UML-Linguagem de Modelagem Unificada Modelo de Dados com UML Diagrama de Classes Professor: Armando Hage.
Análise de Casos de Uso Alexandre Motnteiro.
Modelagem para Web Aula de 11/04/2011.
DIAGRAMA DE COMPONENTES
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Diagrama de Classes e Colaboração
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – COINFO – CEFET-PB 12. Estados Objetivo: compreender a notação do diagrama de estados.
Visão Geral do RUP.
. Smalltalk HISTÓRICO . Década de 60 – POO . Dynabook (Alan Kay)
Análise e Projeto de Sistemas
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – COINFO – CEFET-PB 11. Comunicação Objetivo: compreender a notação do diagrama de.
Fase de Elaboração: Fluxo de Análise Análise de Sistemas de Software Prof. Rodrigo Ribeiro.
UML Modelagem e Programação Orientada a Objetos
1.
Referências: Booch, G. et al. The Unified Modeling Language User Guide
Projeto de Banco de Dados
Técnicas e Projeto de Sistemas
UML - Unified Modeling Language
Projeto Orientado aos Objetos Prof. Wolley W. Silva
Análise Orientado aos Objetos Prof. Wolley W. Silva
Financeiro – Contas a Receber
Modelagem de Entidade/Objetos de Domínio com Diagrama de Classes
POO Aula 03 Projeto OO com UML Eduardo Figueiredo 11 de Março de 2010.
Laboratório de Programação
Revisão 2º Bimestre Engenharia de Software I
Modelando Sistemas em UML
Tarciane Andrade Análise de Casos de Uso Tarciane Andrade
Análise e Projeto de Software
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
A linguagem unificada de modelagem
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Modelagem de Sistemas Orientada a Objeto Com UML
Engenharia de Software Orientada a Objetos
CIn-UFPE1 UML Uma linguagem unificada de modelagem Visão Geral.
SISTEMAS DE INFORMAÇÃO Projeto de Sistemas Análise Orientada a Objetos 2011/02 UNIPAC – Araguari FACAE - Faculdade de Ciências Administrativas e Exatas.
Aula 04 – Analise de Sistemas Profª Rita de Cassia Gaieski
UML (Unified Modeling Language) A linguagem unificada de modelagem
Transcrição da apresentação:

Christina Von Flach Chavez Modelagem V: Objetos Karin Koogan Breitman Christina Von Flach Chavez Departamento de Informática PUC- Rio R. Marquês de São Vicente 225 22453-900 - Rio de Janeiro, Brasil www.inf.puc-rio.br/~julio Luiz Marcio Cysneiros

Objetos Objeto - relação direta com o mundo real Objeto memória -> dados -> Atributos processos -> Operações -> Mensagens Objeto - Organização - Hierarquias agregação generalização

Orientação a Objetos Propostas mais conhecidas: Booch OMT Jacobson

UML Surgimento Diversos métodos e técnicas OO, com muitos aspectos comuns mas utilizando notações diferentes Dificuldades para o aprendizado, a aplicação, a construção e a utilização das ferramentas Diferencias entre os distintos enfoques (autores) Necessidade de uma notação padrão Luiz Marcio Cysneiros

UML “Método Unificado” Rational Software Grady Booch e Jim Rumbaugh apresentado no OOPSLA’95 Rational Software Grady Booch, Jim Rumbaugh e Ivar Jacobson Ferramenta CASE Rational Rose Luiz Marcio Cysneiros

UML Linguagem para modelagem e não um método Um método consiste em linguagem de notação + processo O processo proposto pelos autores chama-se Objectory Podemos utilizar UML independentemente do processo

UML Representações básicas: Modelo estático Modelo dinâmico interno evolução do MER Modelo dinâmico interno fluxo de dados máquinas de estado Modelo dinâmico externo use cases linguagens de interconexão de objetos

UML - Diagramas Diagramas de Casos de Uso Diagramas da Estrutura Estática Diagrama de Casos de Uso Atores e suas conexões com Casos de Uso Descrições textuais de Casos de Uso Diagrama de Classes Estrutura estática das classes do sistema Diagrama de Objetos Exemplifica Diagrama de Classes Luiz Marcio Cysneiros

UML - Diagramas Desenho Implementação Captura de Requisitos Estados Seqüência Distribuição Casos de Uso Classes El propósito de esta figura es ilustrar en qué actividades del proceso de desarrollo (mostrado de manera muy simplificada en la trasparencia) son utilizados los diferentes diagramas de UML. Para no complicar la figura no se han incluido conexiones entre los diagramas. Sin embargo, es obvio que debe existir un mecanismo de transformación (traducción) de modelos (diagramas) desde una actividad a otra en el proceso de desarrollo. Es importante destacar los conceptos: traceability (seguimiento de elementos de modelado desde los requisitos hasta el código resultante) y sincronización entre modelos. Durante la Captura de Requisitos los D. de Actividad modelan Flujos de Trabajo (Workflows) y/o detallan casos de uso. En Análisis y Diseño los D. de Actividad especifican el comportamiento de los objetos de una clase y/o el detalle algorítmico de una operación. Colaboração Componentes Atividade (fluxo de trabalho, caso de uso) Atividade (comportamento objetos, algoritmo operação) Luiz Marcio Cysneiros

Casos de Uso <<extend>> Emissão de Nota Fiscal Operação de Venda Caixeiro Sistema Financeiro Filho, W.P.P em “Engenharia de Software: Fundamentos, Métodos e Padrões”

Casos de Uso Um caso de uso realiza um aspecto maior da funcionalidade do produto: deve gerar um ou mais benefícios para o cliente ou para os usuários representa: roteiros de interação com usuário roteiros do manual de usuário casos de teste Filho, W.P.P em “Engenharia de Software: Fundamentos, Métodos e Padrões”

Casos de Uso Um caso de uso realiza um aspecto maior da funcionalidade do produto: deve gerar um ou mais benefícios para o cliente ou para os usuários representa: roteiros de interação com usuário roteiros do manual de usuário casos de teste Filho, W.P.P em “Engenharia de Software: Fundamentos, Métodos e Padrões”

Casos de Uso Parte Textual Caso de uso << nome>> pre-condição fluxo principal sub-fluxo <<nome>> fluxo alternativo pre-condições passos Filho, W.P.P em “Engenharia de Software: Fundamentos, Métodos e Padrões”

Casos de Uso Exemplo: Caixeiro Operação de Venda Sistema Financeiro Gestor de Gestão Manual de Estoque Estoque Abertura do Caixa Gerente Fechamento do Caixa Filho, W.P.P em “Engenharia de Software: Fundamentos, Métodos e Padrões”

Casos de Uso Exemplo: Caso de uso << Operação de Venda>> pre-condições: Toda mercadoria a ser vendida (item de venda) deve estar previamente cadastrada. O Merci deve estar em Modo de Vendas. fluxo principal O Caixeiro faz a abertura da venda. O Merci gera o código da operação de venda. Para cada item de venda aciona o subfluxo Registro. O Caixeiro registra a forma de pagamento. O Caixeiro encerra a venda. Para cada item aciona o subfluxo Impressão de Linha do Ticket. O Merci notifica o Sistema Financeiro informando: Data, Número da Operação de Venda, “Receita”, Valor Total”, Nome do Cliente (caso tenha sido emitida a nota fiscal). Filho, W.P.P em “Engenharia de Software: Fundamentos, Métodos e Padrões”

Casos de Uso – Elicitação Identificação de atores; quem está interessado nos requisitos; quem se beneficiará do produto; quem fornecerá informação ao produto; quem usará informação do produto; quem removerá informação do produto. Identificação dos casos de uso: quais as tarefas de cada ator; que informação cada ator cria, armazena, consulta, altera ou remove; que informação cada caso de uso cria, armazena, consulta, altera ou remove.

Scenarios Use Cases situation view the world as it is. functional view the world as we want it to be. action, actors, environment, intent action, actors problem biased solution biased can be used to elicit the requirements hinders important aspects of elicitation textual graphical (if more detail is needed, a non structured textual representation is used) relationships depend on the representation padronized relationships “Use cases are ways to use the system. The set of use cases represents everything the user can do with the system” Jacobson

Diagrama de Classes Descreve os objetos do sistema e suas relações estáticas Objetos podem ser parte do mundo real ou entidades conceituais Objetos estão conectados a outros objetos através de relacionamentos (associação, agregação…)

Classe nome atributos operações Carro capacidadeTanque: Integer consumoPorQuilometro: Real disponibilidadeAtual: Real quilometragem: Real viajar (numeroKms: Real) abastecer (quantidade: Real) atributos operações

Classe Atributos Exemplos: Carro rj5015: Carro - capacidadeTanque: Integer - consumoPorQuilometro: Real - disponibilidadeAtual: Real = 0 - quilometragem: Real = 0 ... rj5015: Carro capacidadeTanque: 200 consumoPorQuilometro: 10 disponibilidadeAtual: 40 quilometragem: 1400 Objeto com valores Classe com atributos

Herança Herança Pode ser Uma subclasse herda atributos, operações, diagramas de estado e associações de suas superclasses Propriedades herdadas podem ser reutilizadas da superclasse ou redefinidas na subclasse Novas propriedades podem ser adicionadas às subclasses Pode ser Simples: somente uma superclasse Múltipla: mais do que uma superclasse

Esquema de Classes Exemplo: Empresa Agregação Empresa Gerência 0..N 1 Associação Classe 0..N Funcionário Projeto Generalização Cronograma Funcionário Horista Mensalista

Críticas a OO Desvantagens (Jackson): a idéia de objeto é de programação e não é cabível para a maioria dos indivíduos do mundo real. qual foi a últiima vez em que você mandou uma mensagem ao seu contra cheque? quando o sol nasce ele manda uma mensagem para que os pássaros comecem a cantar?

Críticas a OO “O mundo for a da máquina é muito rico, cheio de caprichos e recalcitrantemente multifacetado para ser capturado na forma de objetos” M. Jackson