Análise Orientada a Objetos. Análise Orientada a Objetos; O Paradigma de Objetos; A UML.

Documentos relacionados
UML LINGUAGEM DE MODELAGEM UNIFICADA Diagrama de Classes

Diagramas de Classes. ESII Profª. Andressa Falcade URI Santiago

FUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos

Modelagem de Processos

BANCO DE DADOS I. Prof. Luiz Antônio Vivacqua C. Meyer

Modelo Conceitual Parte 1 Banco de Dados I Prof. Luiz Antônio Vivacqua C. Meyer

Modelagem de Classes. Mestrado em Engenharia de Produção e Sistemas Computacionais. Profa. Adriana Pereira de Medeiros

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE

Panorama da notação UML

15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo

DIAGRAMAS DE CLASSE UML

Diagramas. Abordaremos agora cada um destes tipos de diagrama: 1. Diagrama Use-Case. 2. Diagrama de Colaboração. 3. Diagrama de Sequência

Modelo Conceitual. Análise e Projeto de Sistemas Avançados. Aula 5. Allan Rodrigo Leite

3 Modelando Sistemas com UML

Simbolos/Componentes desse diagrama:

UML UNIFIED MODELING LANGUAGE LINGUAGEM DE MODELAGEM UNIFICADA

Diagramas de Classes. Diagramas de Classes. Diagramas de Classes. Análise e Projeto de Sistemas OO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 15 PROFª BRUNO CALEGARO

Diagrama de Classes. Régis Patrick Silva Simão. Régis Simão Diagrama de Classes 1/42

UML. Diagrama de Classe

INTRODUÇÃO À ENGENHARIA DE SOFTWARE. Prof.: Tiago Alves

7.8 DIAGRAMA DE CLASSES

3. Design 4. Implementação. 13. Conclusão

Modelagem Orientada a Objeto

Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão

MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro

Projeto Banco de Dados

UML Relacionamentos. Relacionamento é uma conexão entre itens A maioria dos itens relacionam-se entre si. Quatro tipos de relacionamentos:

IFSC/Florianópolis - CTI - Projeto de Sistemas - prof. Herval Daminelli

Diagrama de Classes. Classes. Relacionamentos. Atributos Métodos. Associação. Generalização Dependência Realização. Agregação Composição

Introdução a UML e seus diagramas

Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso.

Notas de Aula 03: Introdução a Orientação a Objetos e a UML

Análise de Sistemas 4º Bimestre (material 3)

UML Diagrama de Classes

Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Análise e projeto de sistemas

UML. Modelando um sistema

UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos

Modelagem de Sistemas

UML (Linguagem unificada de modelagem)

Linguagem de Modelagem Unificada UML

Engenharia de Software. Prof. Me. Clodoaldo Brasilino

MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES.

Aula 15 Modelagem de Classes de Análise. Análise de Sistemas Prof. Filipe Arantes Fernandes

SISTEMA DE INFORMAÇÃO Modelo Conceitual. Prof. Luiz Fernando Laguardia Campos FMS

Engenharia de Software. Aula 10 Representação dos Conceitos de Orientação a Objetos. Prof. Me. Rogério Ferreira

POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos

Programação Orientada a Objetos 2 Flávio de Oliveira Silva, M.Sc.

UML Diagrama de Atividades Diagrama de Caso de Uso. ENG1518/3VB Sistemas de Informação Gerenciais Prof. Marcos Villas

Linguagem de Programação. Diagrama de classes

Diagrama de Casos de Uso. Interagindo com o Usuário

Engenharia de Software II e III - Material para estudo Diagrama de Classe

Lógica de Programação UML Caso de Uso

Capítulo 5 Modelação do Sistema 1

Modelagem de Casos de Uso (Parte 1)

Modelagem de dados usando o modelo Entidade- Relacionamento (ER)

Programação para Games II. Professor Ariel da Silva Dias Orientação a Objetos

Introdução à Modelagem Conceitual 1. Conceitos Básicos

Tópicos da Aula. Diretrizes Gerais. Trabalho Prático (TP) Pontuação do TP. Tema do Trabalho. Projeto de Software Diagrama de Classes

IEC Banco de Dados I Aula 08 Modelo E. E. R.

INF1404 MODELAGEM DE SISTEMAS

Requisitos de sistemas

Ciência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo

Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Componentes do Diagrama

Retrospectiva (Aula 2) O Modelo Entidade-Relacionamento. O Modelo Entidade- Relacionamento. O Modelo Entidade- Relacionamento

Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Componentes do Diagrama.

Teoria Geral dos Sistemas

Orientação a Objetos (OO) LPG II - Java. Orientação a Objetos (OO) Programação Orientada a Objetos. Programação Procedimental

Diagramas de Classes e O Paradigma da Orientação a Objetos usando UML. Prof. Ricardo A. Ramos

Conceitos de Programação Orientada a Objetos

12/03/16. Generalização. Associação. Agregação UML Relações. entre Classes. Composição. Prof.Dr. Enzo Seraphim. Dependência

Engenharia de Software II e III - Introdução ao Diagrama de Classe

Modelagem Entidade Relacionamento Estendida. Evandro E.S. Ruiz, Ph.D.

Modelagem semântica permite aproximar o modelo obtido do mundo real Exemplo de modelos:

Análise e projeto de sistemas

Programação Orientada a Objetos

Diagrama de Classes. ENG1518/3VC Sistemas de Informação Gerenciais Prof. Marcos Villas

MER e DER Entidades Relacionamentos Atributos Ferramentas CASE Exemplos de DERs Exemplo de Minimundo. Banco de Dados. Aula 1.

Orientação a Objetos (OO)

Herança - Conceitos Básicos

Unidade 2 Modelo Conceitual

Modelo Entidade Relacionamento

Análise e Projeto Orientados a Objetos

Introdução a UML (Unified Modeling Language)

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Diagrama de Classes. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior

Extensões do Modelo Entidade-Relacionamento

Análise e Projeto de Sistemas I

Diagrama de Casos de Uso

Introdução a UML. Uma associação em UML é representada por uma linha ligando os retângulos que representam as classes envolvidas.

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE BANCO DE DADOS MODELO ENTIDADE- RELACIONAMENTO

Modelo Entidade-Relacionamento

Aula 4 SBD Modelo Entidade Relacionamento Parte 2. Profa. Elaine Faria UFU

UML (Unified Modelling Language)

Tópicos da Aula. Alguns Diagramas UML. Diagramas Principais. Diagramas de Interação: Sequência e Colaboração. Tipos de Diagramas de Interação

Modelagem de Sistemas. Análise de Requisitos. Modelagem

Revisão Diagrama de classes Elementos do diagrama de classes Exemplo: Sistema de matrícula

Transcrição:

ESPECIALIZAÇÃO EM GESTÃO DE TECNOLOGIAS DA INFORMAÇÃO Análise Orientada a Objetos AULA 03 Análise Orientada a Objetos; O Paradigma de Objetos; A UML. Prof. Sandrerley R. Pires Goiânia, agosto de 2003

Conceitos Fundamentais de Orientação a Objetos O Paradigma de Objetos... os modelos baseados em objetos correspondem mais aproximadamente ao mundo real e são, em conseqüência, mais adaptáveis às modificações (J. Rumbaugh)

Conceitos Fundamentais de Orientação a Objetos Rumbaugh, cap 01-04. Objeto: um conceito, uma abstração, algo com limites nítidos e significado em relação do problema em causa. Exemplo: João, Lassie, Processo nº 100, Janela da sala.

Conceitos Fundamentais de Orientação a Objetos Classe: Descreve um grupo de objetos com propriedades semelhantes, os mesmos comportamentos, os mesmos relacionamentos com outros objetos e mesma semântica. Exemplo: Pessoa, Cachorro, Processo, Janela.

Conceitos Fundamentais de Orientação a Objetos Atributo: é um valor, uma informação, uma característica específica que todos objetos de uma mesma classe terão. Um Atributo deve ser sempre um valor elementar, nunca outro objeto.

Conceitos Fundamentais de Orientação a Objetos Operações: ações exercidas por objetos de uma determinada classe. Notação padrão de uma classe: NOME CLASSE Atributo1 Atributo2 Atributo 3 Atributo4 Operação1( ) Operação2( ) Operação3( ) Operação4( )

Conceitos Fundamentais de Orientação a Objetos Ligações Descreve conexões físicas ou conceituais entre instâncias de objetos.

Conceitos Fundamentais de Orientação a Objetos Associação: indica uma relação entre classes, onde as classes participantes da associação se conhecem, podendo trocar mensagens entre si. Exemplo: multiplicidade Pessoa n trabalha_para 1 empregado empregador Empresa papéis

Associações O tipo mais comum de associação é apenas uma conexão entre classes. É representada por uma linha sólida entre duas classes. A associação possui um nome (junto à linha que representa a associação), normalmente um verbo, mas substantivos também são permitidos. Pode-se também colocar uma seta no final da associação indicando que esta só pode ser usada para o lado onde a seta aponta. Mas associações também podem possuir dois nomes, significando um nome para cada sentido da associação. Para expressar a multiplicidade entre os relacionamentos, um intervalo indica quantos objetos estão relacionados no link. O intervalo pode ser de zero para um (0..1), zero para vários (0..* ou apenas *), um para vários (1..*), dois (2), cinco para 11 (5..11) e assim por diante. É também possível expressar uma série de números como (1, 4, 6..12). Se não for descrita nenhuma multiplicidade, então é considerado o padrão de um para um (1..1 ou apenas 1).

Associação Recursiva É possível conectar uma classe a ela mesma através de uma associação e que ainda representa semanticamente a conexão entre dois objetos, mas os objetos conectados são da mesma classe. Uma associação deste tipo é chamada de associação recursiva

Associação ternária Mais de duas classes podem ser associadas entre si, a associação ternária associa três classes. Ela é mostrada como uma grade losango (diamante) e ainda suporta uma associação de classe ligada a ela, traçaria-se, então, uma linha tracejada a partir do losango para a classe onde seria feita a associação ternária.

Agregação A agregação é um caso particular da associação. A agregação indica que uma das classes do relacionamento é uma parte, ou está contida em outra classe. As palavras chaves usadas para identificar uma agregação são: "consiste em", "contém", "é parte de". É uma forma especializada de associação na qual um todo é relacionado com suas partes. Também conhecida como relação de conteúdo. É representada como uma linha de associação com um diamante junto à Classe agregadora. A multiplicidade é representada da mesma maneira que nas associações.

Conceitos Fundamentais de Orientação a Objetos Agregação: relacionamento parte-todo no qual os objetos que representam os componentes de alguma coisa, são associados a um objeto que representa a estrutura inteira. Exemplo: n n Documento Parágrafo Senteça

Conceitos Fundamentais de Orientação a Objetos Generalização: é o refinamento entre uma classe e uma ou mais versões refinadas dela. A classe que está em processo de refinamento é a superclasse e a classe refinada é a subclasse. Exemplo: Figura Cor Posição Exibir() Apagar Mover() Círculo Raio Exibir() Apagar() Quadrado Lado Exibir() Apagar()

Generalização Outros Textos A generalização é um relacionamento entre um elemento geral e um outro mais específico. O elemento mais específico possui todas as características do elemento geral e contém ainda mais particularidades. Um objeto mais específico pode ser usado como uma instância do elemento mais geral. A generalização, também chamada de herança, permite a criação de elementos especializados em outros. Existem alguns tipos de generalizações que variam em sua utilização a partir da situação. São elas: generalização normal e restrita. As generalizações restritas se dividem em generalização de sobreposição, disjuntiva, completa e incompleta.

Generalização Normal Uma classe pode ser tanto uma subclasse quanto uma superclasse, se ela estiver numa hierarquia de classes que é um gráfico onde as classes estão ligadas através de generalizações. A generalização normal é representada por uma linha entre as duas classes que fazem o relacionamento, sendo que se coloca uma seta no lado da linha onde se encontra a superclasse indicando a generalização.

Generalização Normal Na generalização normal a classe mais específica, chamada de subclasse, herda tudo da classe mais geral, chamada de superclasse. Os atributos, operações e todas as associações são herdados.

Generalização Restrita Uma restrição aplicada a uma generalização especifica informações mais precisas sobre como a generalização deve ser usada e estendida no futuro. As restrições a seguir definem as generalizações restritas com mais de uma subclasse: Generalizações de Sobreposição e Disjuntiva: Generalização de Generalizações de Sobreposição e Disjuntiva: Generalização de sobreposição significa que quando subclasses herdam de uma superclasse por sobreposição, novas subclasses destas podem herdar de mais de uma subclasse. A generalização disjuntiva é exatamente o contrário da sobreposição e a generalização é utilizada como padrão

Generalizações Completa e Incompleta Uma restrição simbolizando que uma generalização é completa significa que todas as subclasses já foram especificadas, e não existe mais possibilidade de outra generalização a partir daquele ponto. A generalização incompleta é exatamente o contrário da completa e é assumida como padrão da linguagem.

A UML 1. Histórico; 2. Diagrama de Caso de Uso; 3. Diagrama de Seqüência; 4. Criação do Diagrama de Classe; 5. Exercícios de Fixação.

Diagrama Caso de uso É um modelo usado para descrever os requisitos funcionais de um sistema. É composto por atores externos, caso de usos e interações entre eles. Os atores representam o papel de uma entidade externa ao sistema, enquanto o caso de uso representa a porção do sistema que irá interagir com o ator.

Diagrama Caso de Uso - Exemplo Consultar Cliente Marcar Consulta Recepcionista Cadastrar Cliente Listar Receita Verificar disponibilidade do Médico Consultar Anamnese Registrar Pagamento Listar Faturamento Diretoria Registrar Anamnese Cadastrar Médico Médico Registar Receita

Diagrama de Seqüência Mostra a colaboração dinâmica entre os vários objetos de um sistema visando atender um determinado cenário de um Caso de Uso. O mais importante aspecto deste diagrama é que a O mais importante aspecto deste diagrama é que a partir dele percebe-se quais são os possíveis objetos que comporão a solução do problema em questão, além da seqüência de mensagens enviadas entre estes objetos.

Cenário É um caminho específico dentro de um determinado Caso de Uso. Seja o exemplo: Caso de Uso: DRH Mantém Funcionário. Alguns Cenários Possíveis: DRH Inclui Funcionário; DRH Altera Funcionário; DRH Consulta Funcionário; DRH Inclui Funcionário em Duplicidade;

Diagrama de Seqüência - Exemplo : Secretária Marcar Consulta : Form Paciente : Paciente Médico : Médico Consultas : Consultas ObterDados() Consultar() Consultar() ConsultarDisponibilidade() Consultar() MarcarConsulta() Incluir()

Construção do Diagrama de Seqüência A partir do Diagrama de Caso de Uso construído para o sistema de Contas Correntes, construa os Diagramas de Seqüência para, pelo menos, quatro cenários.

Diagrama de Classes Mostra a estrutura estática das classes de um sistema, todos os relacionamentos entre as classes, bem como as estruturas internas das classes que são os atributos e operações.

Diagrama de Classes - Exemplo Cliente 1 possui 0..* Contrato de Aluguel 0..1 refere a Veículo Alugado 0..* 1 possui Tipos de Veículos Compahia de Aluguel de Veículos Caminhão Carro Sport Carro de Passeio

Construção de Diagrama de Classe A partir dos Diagramas de Seqüência construídos para o sistema de Contas Correntes construa o Diagrama de Classe.

Processo Orientado a Objetos Comentários a Respeito da Técnica; Um Processo Orientado a Objetos; Modelos Auxiliares da UML.

Um Processo para a Análise Orientada a Objetos; 1) Descrição Contextual; 2) Lista de Objetivos; 3) Diagrama de Casos de Uso; 4) Protótipos; 5) Definição de Cenários; 6) Definição de Classes Candidatas; 7) Diagramas de Seqüência; 8) Diagrama de Classe; 9) Refinamento do Diagrama de Classe.

Diagrama de Transição de Estado É um complemento para a descrição das classes. Este diagrama mostra todos os estados possíveis que objetos de uma classe podem se encontrar, além dos eventos do sistema que provocam tais mudanças.

Diagrama de Transição de Estado No Térreo subir (andar) Subindo Chegar no térreo Chegar no andar subir (andar) Indo para o térreo Descendo Chegar no andar Parado descer (andar) tempo de espera

Diagrama de Atividade Capturam ações e seus resultados. Ele pode ser utilizado para diferentes propósitos. Alguns deles: 1) Capturar os trabalhos que serão executados quando uma operação é disparada (ações); 2) Capturar o trabalho interno em um objeto; 3) Mostrar como um grupo de ações relacionadas podem ser executadas, e como elas vão afetar os objetos em torno delas.

Diagrama de Atividade - Exemplo Recebe Pedido de Consulta Verifica disponibilidade de médico Não tem Disponibilidade Tem Disponibilidade Informa Impossibilidade Marca a consulta

Modelagem de Objetos utilizando a UML Atividade - 01: Para o problema do aeroclube, disponível no TelEduc, desenvolver a modelagem de objetos, produzindo os seguintes diagramas: 1)Casos de Uso; 2)Seqüência; e 3)Classes. Primeira Avaliação. Desenvolver individualmente o exercício e entregá-lo, em papel, na próxima aula.

Modelagem de Objetos utilizando a UML Atividade - 02: Elaborar, para a próxima aula, uma questão para ser jogada em debate. Cada pergunta será direcionada a um aluno da turma e após a sua resposta o autor da pergunta também a responderá. Finalmente, os outros poderão também complementar as respostas dadas. A atuação global do aluno no debate determinará a sua avaliação. O questão deverá ser a respeito de um dos seguintes assuntos: a) A Análise de Sistemas; b) A Prática da Análise de Sistemas; c) Comparação das Técnicas de Análise de Sistemas; d) Tendências para a Atividade de Análise de Sistemas. Segunda Avaliação.

Sistema de Contas Correntes Atividade - 03: Um sistema bancário de Contas Correntes deve satisfazer aos seguintes requisitos: O cliente procura a Área de Atendimento da agência e esta abrirá a conta para ele. Após a abertura da conta o cliente poderá movimentá-la através de um terminal de auto-atendimento. Ele fará operações como: saques, depósitos e consulta de extrato. Os cheques emitidos pelos cliente o serão apresentados ao banco através da compensação do Banco do Brasil. A Gerência emitirá mensalmente um relatório com os melhores clientes da agência. A Gerência emitirá diariamente um relatório com os cheques devolvidos pela agência.

Modelagem de Objetos utilizando a UML FIM AULA 03