Programação com Objectos. Processamento de Dados I. 3. UML (Unified Modeling Language)

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamanho: px
Começar a partir da página:

Download "Programação com Objectos. Processamento de Dados I. 3. UML (Unified Modeling Language)"

Transcrição

1 Programação com Objectos Processamento de Dados I 3. UML (Unified Modeling Language) 1

2 Modelo UML Diagrama de classes Programação com Objectos / Processamento de Dados I 2

3 Modelo O desenvolvimento de programas orientados aos objectos assenta na construção de um modelo. O modelo é uma abstracção dos aspectos essenciais do problema. O modelo estrutura o problema e permite detectar omissões e inconsistências. O modelo é um passo intermédio entre o enunciado do problema e a solução. Um sistema de análise descreve os modelos (i.e., representações limitadas) da aplicação a desenvolver. Aumenta a legibilidade (menos informação que o código, permitindo visualizar globalmente a aplicação). Mostra a estrutura da aplicação, sem detalhes de implementação. A representação gráfica incrementa a clareza semântica. Devido à complexidade, a abordagem OO é descrita por vários modelos, onde cada modelo aborda um aspecto particular. Programação com Objectos / Processamento de Dados I 3

4 UML UML - Unified Modeling Language resulta da fusão de vários sistemas de análise: Booch (G. Booch) OOSE (I. Jacobson) OMT (J. Rumbaugh) 1ª proposta divulgada em 1997 (1999 -v1.1, v1.3, v1.4, v1.5, Abril v2.0) Ferramentas de desenho UML: Rational Rose ArgoUML( (gratuito) Programação com Objectos / Processamento de Dados I 4

5 UML Em UML os modelos de software são representados por um conjunto de diagramas Estes são criados e utilizados durante a fase de análise e, posteriormente, como ferramenta de comunicação com os programadores Os modelos são constituídos por objectos (com os seus atributos e comportamentos) que interactuam entre si através do envio de mensagens Programação com Objectos / Processamento de Dados I 5

6 UML UML v2 disponibiliza 13 diagramas, agrupados em: Modelação estrutural (pacotes, classes, objectos, estrutura composicional, componentes, aplicação física). Modelação de comportamento (use case, actividade, máquina de estados, comunicação, sequência de mensagens, temporização, enquadramento das interacções). Programação com Objectos / Processamento de Dados I 6

7 Diagrama de classes Um diagrama de classes dá uma panorâmica geral do sistema, mostrando as suas classes e as relações entre elas. Os diagramas de classe são estáticos, ou seja mostram o que interage, mas não o que acontece quando a interacção acontece Apenas relações estáticas: que classes constituem outra, que classes uma dada classe conhece e usa, etc. A identificação dessas classes e suas relações no enunciado do problema tem de ser feita previamente. O diagrama de classes é um grafo: Os nós são classes de objectos Os arcos são relações entre essas classes Programação com Objectos / Processamento de Dados I 7

8 Diagrama de classes Representação das classes Uma classe é representada por um rectângulo dividido em três secções: Identificador (nome da classe); Atributos; Métodos. Identificador Atributos Métodos Pessoa nome: String numtelefone: long numbi: long getnome (): String getnumtelefone (): long getnumbi (): long setnome (nome:string) setnumtelefone (numtelefone:long) setnumbi (numbi: long) Programação com Objectos / Processamento de Dados I 8

9 Diagrama de classes Representação dos membros da classe Especificação dos atributos: [visibilidade] nome :tipo [multiplicidade] [=valor por omissão] + public - private # protected ~ package Especificação dos métodos: [visibilidade] nome (lista dos argumentos:tipo) [:tipo de retorno] OBS: Os atributos e métodos de classe (static) são sublinhados. Programação com Objectos / Processamento de Dados I 9

10 Diagrama de classes Representação da classe Conta Conta - saldo: float - titular: Pessoa - numcontas: int + settitular (titular: Pessoa) + setsaldo (saldo: float) + gettitular (): Pessoa + levantamento (valor: float) + deposito (valor: float) + consultarsaldo (): float - incnumcontas () - decnumcontas() Programação com Objectos / Processamento de Dados I 10

11 UML Representação dos objectos da classe Um objecto de uma classe é representado por um rectângulo dividido em duas secções: Nome_do_objecto: nome_da_classe Valores_dos_atributos person: Pessoa nome: Ana Maria numtelefone: numbi: Programação com Objectos / Processamento de Dados I 11

12 Exercício Observe com atenção a seguinte sequência de imagens Programação com Objectos / Processamento de Dados I 12

13 Programação com Objectos / Processamento de Dados I 13

14 Programação com Objectos / Processamento de Dados I 14

15 Programação com Objectos / Processamento de Dados I 15

16 Programação com Objectos / Processamento de Dados I 16

17 Programação com Objectos / Processamento de Dados I 17

18 Programação com Objectos / Processamento de Dados I 18

19 Programação com Objectos / Processamento de Dados I 19

20 Algumas questões O que visualizamos nas imagens anteriores? Portas Como podemos caracterizar então uma porta? Atributos Para além das suas características o que diferencia as portas apresentadas? Estados Programação com Objectos / Processamento de Dados I 20

21 Estados de uma porta Fechada fechar trancar abrir destrancar Aberta Trancada Programação com Objectos / Processamento de Dados I 21

22 Solução 1: Classe Porta Porta - aberta: boolean -- fechada: boolean -- trancada: boolean + Porta (open: boolean, closed:boolean, locked:boolean) + setestado (open: boolean, closed:boolean, locked:boolean): void + isaberta():boolean + isfechada(): boolean +istrancada():boolean Programação com Objectos / Processamento de Dados I 22

23 Solução 2: Classe Porta Porta - aberta: boolean -- fechada: boolean -- trancada: boolean + Porta (open: boolean, closed:boolean, locked:boolean) + abrir (): void + fechar(): void + trancar(): void + isaberta():boolean + isfechada(): boolean +istrancada():boolean Programação com Objectos / Processamento de Dados I 23

24 Solução 3: Classe Porta Porta - estado: String + Porta (estado: String) + setestado (estado: String): void + getestado(): String + isaberta():boolean + isfechada(): boolean +istrancada():boolean Programação com Objectos / Processamento de Dados I 24

25 Solução 4: Classe Porta Porta - estado: int + Porta (estado: int) + abrir() :void + fechar() :void + trancar() :void + destrancar():void + isaberta(): boolean + isfechada(): boolean +istrancada():boolean Programação com Objectos / Processamento de Dados I 25

26 UML Relações entre objectos Os objectos não vivem isolados e nos programas são estabelecidas relações de cooperação. Uma relação não é mais do que uma conexão entre elementos. Existem diferentes tipos de relações: Associação: relaciona objectos entre si. Composição/Agregação: relação que denota o todo constítuido por partes. Herança: mecanismo de generalização especialização de classes. Realização: uma classe implementa a funcionalidade definida numa interface. Programação com Objectos / Processamento de Dados I 26

27 UML Associação Uma associação representa uma relação semântica entre as classes participantes da relação: Podem ter um nome (etiqueta) - pode ter uma seta que indica a direcção em que o nome deve ser lido O número de objectos que podem participar na associação O papel que cada classe desempenha na associação Uma associação entre classes é representada através de uma linha. Programação com Objectos / Processamento de Dados I 27

28 UML Especificação da associação Cada associação tem dois papéis; Os papéis fazem parte da associação e não da classe, porque uma mesma classe pode ter diferentes papéis em diferentes associações Classe A papel de A etiqueta papel de B Classe B Empresa empregador Trabalha para empregado Pessoa Programação com Objectos / Processamento de Dados I 28

29 UML Especificação da associação A multiplicidade de uma associação traduz o nº de instâncias de uma classe que se podem associar com uma única instância das restantes classes. 1: Uma única instância 0..1: zero ou uma instância * ou 0..*: zero ou mais instâncias n..*: n ou mais instâncias 5..10: 5 a 10 instâncias (temos instâncias mais complexas) Classe A multiplicidade de A papel de A etiqueta multiplicidade de B papel de B Classe B Empresa 1 Trabalha para 1..* empregador empregado Pessoa Programação com Objectos / Processamento de Dados I 29

30 UML Classes de associações Uma associação pode ser ela própria descrita como uma classe classe associativa. O identificador da associação para a ser o nome da classe * empregador empregado Programação com Objectos / Processamento de Dados I 30

31 UML Associações reflexivas São associações entre objectos da mesma classe. Os papéis são fundamentais neste caso pois são eles que permitem perceber a associação existente. Programação com Objectos / Processamento de Dados I 31

32 UML Agregação/Composição A agregação é uma associação, que denota uma relação do todo ser formado por partes. A agregação é dita como sendo uma relação de has-a. Representada como uma associação com um pequeno diamante não preenchido no extremo relativo ao todo. Programação com Objectos / Processamento de Dados I 32

33 UML Agregação/Composição Na composição, o desaparecimento do todo conduz ao desaparecimento das partes. Representada como uma associação com um pequeno diamante preenchido no extremo relativo ao todo. Programação com Objectos / Processamento de Dados I 33

34 UML Agregação/Composição De uma maneira geral tanto a agregação como a composição não têm identificador, pois o significado destas relações está representada pelo próprio par todo-partes. A multiplicidade deve aparecer em ambos os extremos. Quando a multiplicidade é omitida, considera-se que é exactamente 1. Programação com Objectos / Processamento de Dados I 34

35 Exercício Considere a seguinte situação: 1 banco tem vários clientes. Cada cliente pode ter 1 ou várias contas, sendo o cliente o seu titular. Para existir uma conta deve de estar sempre afecta a um cliente (o seu titular), podendo no entanto ter outros dois clientes como titulares secundários. Descreva um diagrama de classes e inclua as suas relações. Programação com Objectos / Processamento de Dados I 35

36 UML Herança Princípio Aberto-Fechado Fecho: devem estar desenvolvidos para que o programa possa ser usado sem alterações. Abertura: classes devem estar abertas para extensão, por forma a incorporar alterações com o mínimo impacto no sistema. Programação com Objectos / Processamento de Dados I 36

37 UML Herança A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse pode ser vista como generalização das subclasses. A herança é dita como uma relação is-a. As subclasses herdam os atributos e métodos das superclasses. Novos atributos e métodos podem ser adicionados às subclasses. O polimorfismo é a redefinição de métodos, da superclasse nas subclasses, com a mesma assinatura. Em POO o polimorfismo é normalmente implementado através de ligação dinâmica (o método a ser executado é determinado apenas em tempo de execução). Programação com Objectos / Processamento de Dados I 37

38 UML Herança Vantagens da herança: Maior legibilidade, pois as superclasses descrevem os aspectos comuns. Facilita alterações, porque normalmente estas incidem apenas nos aspectos particulares. Promovem a reutilização do código das superclasses. Inconvenientes da herança: Obriga à detecção dos aspectos comuns. Programação com Objectos / Processamento de Dados I 38

39 UML Herança Na herança simples cada subclasse tem apenas uma superclasse (directa). Na herança múltipla uma subclasse pode ter mais do que uma superclasse (directa). Problema do diamante Programação com Objectos / Processamento de Dados I 39

40 UML Herança A herança simples é representada por uma seta não preenchida das subclasses para a superclasse. Programação com Objectos / Processamento de Dados I 40

41 UML Herança A herança múltipla é representada por uma seta não preenchida da subclasse para as superclasses. Programação com Objectos / Processamento de Dados I 41

42 UML Herança Classe não extensível Classe sem superclasses: representada com a propriedade {root} escrita por baixo do identificador da classe. Classe sem subclasses: representada com a propriedade {leaf} escrita por baixo do identificador da classe. Programação com Objectos / Processamento de Dados I 42

43 UML Herança O UML permite ainda especificar que um determinado método que não pode ser redefinido em subclasses. Tais métodos são representados com a propriedade {leaf} escrita depois da assinatura do método. Programação com Objectos / Processamento de Dados I 43

44 EXERCÍCIO: Venda de bebidas Considere uma loja cuja área de negócio é a venda de bebidas. A loja vende dois tipos de bebidas: cerveja e whisky. Estas bebidas são engarrafadas pela própria loja, sendo a loja responsável por manter a quantidade disponível de cada bebida para vender. Para cada tipo de bebida as garrafas comercializadas poderão ser de: - Cerveja: 25 cl, 33 cl e 1 L. - Whisky: apenas de 75 cl. Programação com Objectos / Processamento de Dados I 44

45 EXERCÍCIO: Funcionalidade da loja Quando se cria uma nova loja é necessário indicar o seu nome, e as capacidades iniciais (em litros) disponíveis de cerveja e whisky, respectivamente. A qualquer momento é possível saber as quantidades disponíveis para venda de qualquer uma das bebidas através dos seguintes métodos: capcerveja e capwhisky. Também é possível obter o nome da loja através do método nomeloja. A loja permite a venda de garrafas de cerveja (método vendecerveja, o qual devolverá a garrafa de cerveja pretendida), tendo que ser indicada a capacidade pretendida da garrafa a vender. Deve imprimir a seguinte mensagem: Loja <nome da loja> vendeu garrafa de cerveja de " <capacidade da garrafa> " cl. A loja permite também a venda de garrafas de whisky (método vendewhisky, o qual devolverá a garrafa de whisky pretendida). Deve imprimir a seguinte mensagem: Loja <nome da loja> vendeu garrafa de whisky. Programação com Objectos / Processamento de Dados I 45

46 EXERCÍCIO: Funcionalidade da loja Em qualquer um dos casos, se a capacidade disponível da bebida escolhida for inferior à quantidade a vender, então o método de venda invocado deve retornar a referência para objecto null. Finalmente, a loja pode comprar mais cerveja e whisky de forma a aumentar o stock de bebida disponível na loja. Esta funcionalidade deve ser representado pelos métodos: compracerveja e comprawhisky, que irão aumentar a quantidade de bebida disponível na loja. Ambos os métodos recebem como argumento o número de litros de bebida a adicionar ao stock de loja. Programação com Objectos / Processamento de Dados I 46

47 EXERCÍCIO: Funcionalidade da garrafa de cerveja Uma garrafa de cerveja tem uma dada quantidade de cerveja. É possível saber se está cheia (através do valor booleano retornado pelo método estacheia) ou vazia (através do valor booleano retornado pelo método estavazia) e qual a quantidade bebida ainda presente na garrafa (através do método quantgarrafa). Tem ainda a funcionalidade de se poder beber uma dada quantidade da garrafa (representado pelo método bebecerveja). Se se pretender uma quantidade maior que a presente na garrafa, este método deve devolver false e deixar a garrafa com a quantidade inalterada. Se a quantidade presente na garrafa for maior ou igual à que se quer beber então este método deve devolver true. Programação com Objectos / Processamento de Dados I 47

48 EXERCÍCIO: Funcionalidade da garrafa de whisky Uma garrafa de whisky tem uma dada quantidade de whisky. É possível saber se está cheia (através do valor booleano retornado pelo método estacheia) ou vazia (através do valor booleano retornado pelo método estavazia) e qual a quantidade bebida ainda presente na garrafa (através do método quantgarrafa). Tem ainda a funcionalidade de se poder beber, de cada vez, 15 cl da garrafa (representado pelo método bebewhisky). Se se pretender uma quantidade maior que a presente na garrafa, este método deve devolver false e deixar a garrafa com a quantidade inalterada. Se a quantidade presente na garrafa for maior ou igual à que se quer beber então este método deve devolver true. Programação com Objectos / Processamento de Dados I 48

49 EXERCÍCIO: Outras funcionalidades Para a classe Loja deverá implementar o método equals que deverá comparar duas lojas. Considere que as lojas serão iguais se tiverem o mesmo nome. Para uma garrafa deve ser implementado o método tostring que deverá devolver a seguinte String: Garrafa de <tipo_de_bebida> ainda com <quantidade_de_bebida_disponível> Programação com Objectos / Processamento de Dados I 49

50 EXERCÍCIO: Objectivos Especifique em UML o diagrama de classes referente à situação descrita acima. Implemente, em Java, as classes participantes do sistema declarando os seus atributos e os métodos necessários para o seu correcto funcionamento. Implemente a classe Java de execução DemoLojas que execute os seguintes passos: Crie uma loja com o nome "Bar Académico" e com uma quantidade inicial de 5L de cerveja e 3L de whisky. Vende 4 garrafas de cerveja de 1L, 2 de 33 cl e uma de 25 cl. Invoque o método tostring sobre cada uma destas garrafas. Beba 33cl de todas as garrafas criadas. Invoque novamente o método tostring sobre cada uma destas garrafas. Vende mais uma garrafa de cerveja de 25cl. Vende 4 garrafas de whisky. Invoque o método tostring sobre cada uma destas garrafas. Bebe uma vez das primeiras três garrafas de whisky e duas vezes da quarta garrafa. Invoque novamente o método tostring sobre cada uma destas garrafas. Vende mais uma garrafa de whisky. Compre 5L de whisky. Vende mais uma garrafa de cerveja de 25cl. Vende mais uma garrafa de whisky. Programação com Objectos / Processamento de Dados I 50

Capítulo 8. Introdução UML

Capítulo 8. Introdução UML Capítulo 8. Introdução UML 1/42 Índice Indice 8.1 - Introdução UML 8.2 - Modelação estrutural 8.2.1 - Representação de classes e objectos 8.2.2 - Relações entre objectos 8.2-3 - Relações de associação

Leia mais

Programação por Objectos UML MEEC@IST UML 1/83

Programação por Objectos UML MEEC@IST UML 1/83 Programação por Objectos UML MEEC@IST UML 1/83 Análise por UML (1) Um sistema de análise descreve os modelos da aplicação a desenvolver. Aumenta legibilidade (menos informação que o código, permitindo

Leia mais

Programação por Objectos UML LEEC@IST UML 1/87

Programação por Objectos UML LEEC@IST UML 1/87 Programação por Objectos UML LEEC@IST UML 1/87 Análise por UML (1) Um sistema de análise descreve os modelos da aplicação a desenvolver. Aumenta legibilidade (menos informação que o código, permitindo

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:

Leia mais

Orientação a Objeto e UML Questões 2014 Prof. Felipe Leite

Orientação a Objeto e UML Questões 2014 Prof. Felipe Leite Orientação a Objeto e UML Questões 2014 Prof. Felipe Leite Pessoal, fiz uma coletânea das questões mais recentes de concursos públicos de TODO o Brasil de várias bancas diferentes sobre os assuntos Orientação

Leia mais

UML Unified Modeling Language

UML Unified Modeling Language UML Unified Modeling Language Linguagem de Modelagem Unificada A linguagem UML UML (Unified Modeling Language) Linguagem de Modelagem Unificada É uma linguagem para especificação, É uma linguagem para

Leia mais

UML Aspectos de projetos em Diagramas de classes

UML Aspectos de projetos em Diagramas de classes UML Aspectos de projetos em Diagramas de classes Após ser definido o contexto da aplicação a ser gerada. Devemos pensar em detalhar o Diagrama de Classes com informações visando uma implementação Orientada

Leia mais

Tópicos em Engenharia de Computação

Tópicos em Engenharia de Computação Tópicos em Engenharia de Computação Introdução / Revisão UML e POO (JAVA) Prof. Ivan Prof. Zagari UML Linguagem Unificada. Não é metodologia, processo ou método. Versão atual 2.0 3 categorias de Diagramas

Leia mais

modelagem do negócio (processos e objetos do negócio) modelagem de requisitos alocados ao software modelagem da solução de software

modelagem do negócio (processos e objetos do negócio) modelagem de requisitos alocados ao software modelagem da solução de software POO com UML Java Uso da linguagem UML(Unified Modeling Language) A UML, ou Linguagem de Modelagem Unificada, é a junção das três mais conceituadas linguagens de modelagem orientados a objectos (Booch de

Leia mais

Modelagem OO com UML. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza

Modelagem OO com UML. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Modelagem OO com UML Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do Espírito Santo Modelos Maneira

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

3. PARADIGMA ORIENTADO A OBJETOS

3. PARADIGMA ORIENTADO A OBJETOS Paradigmas de Linguagens I 1 3. PARADIGMA ORIENTADO A OBJETOS Este paradigma é o que mais reflete os problemas atuais. Linguagens orientada a objetos (OO) são projetadas para implementar diretamente a

Leia mais

3 Classes e instanciação de objectos (em Java)

3 Classes e instanciação de objectos (em Java) 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - MÓDULO 3 - MODELAGEM DE SISTEMAS ORIENTADA A OBJETOS COM UML 1. INTRODUÇÃO A partir de 1980, diversos métodos de desenvolvimento de sistemas surgiram para apoiar o paradigma orientado a objetos com uma

Leia mais

Engenharia Informática

Engenharia Informática Escola Superior de Ciência e Tecnologia Engenharia Informática Análise de Sistemas Informáticos 3º ano Exame 12 de Julho de 2006 Docentes: José Correia e João Paulo Rodrigues Duração: 90 m; Tolerância:

Leia mais

Aula 3 Objeto atual com referencia THIS e Classes com Herança

Aula 3 Objeto atual com referencia THIS e Classes com Herança Aula 3 Objeto atual com referencia THIS e Classes com Herança Profº Msc. Alexsandro M. Carneiro Engenharia de Computação Tec. Análise e Des. De Sistemas Tópicos Abordados Controlee de Acesso Herança Definição:

Leia mais

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes.

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. 1 Diagrama de Classes Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. Um dos objetivos do diagrama de classes é definir a base para

Leia mais

Orientação a Objetos com Java

Orientação a Objetos com Java Orientação a Objetos com Java Julio Cesar Nardi julionardi@yahoo.com.br 2011/2 Apresentação 3: Orientação Objetos: Conceitos Básicos Objetivos: Compreender os Conceitos Básicos da Orientação a Objetos;

Leia mais

Programação com Objectos Teste Teórico 04 de Janeiro de 2010, 09:00 (120 minutos)

Programação com Objectos Teste Teórico 04 de Janeiro de 2010, 09:00 (120 minutos) LEIC-A LEIC-T LERC MEE MEIC-A 2009/2010 (1º Semestre) Teste Teórico (201001040900) 1/10 LEIC-A LEIC-T LERC MEE MEIC-A 2009/2010 (1º Semestre) Teste Teórico 04 de Janeiro de 2010, 09:00 (120 minutos) Nome:

Leia mais

Programação Orientada por Objetos

Programação Orientada por Objetos PPROG Paradigmas da Programação Programação Orientada por Objetos Relações entre Dependência Agregação Composição Associação (Livro Big Java, Late Objects Capítulo 12) Nelson Freire (ISEP DEI-PPROG 2014/15)

Leia mais

Herança. Alberto Costa Neto DComp - UFS

Herança. Alberto Costa Neto DComp - UFS Herança Alberto Costa Neto DComp - UFS 1 Motivação Vimos como se faz encapsulamento e a importância de fazê-lo... Contudo, também é possível fazer encapsulamento em algumas linguagens não OO O que mais

Leia mais

O que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo?

O que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo? O que é a UML? Introdução a UML Linguagem Gráfica de Modelagem para: Visualizar Especificar Construir Documentar Comunicar Artefatos de sistemas complexos Linguagem: vocabulário + regras de combinação

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato

Leia mais

Análise Orientada a Objetos

Análise Orientada a Objetos Análise Orientada a Objetos Breve Histórico: Fim da década de 80: amadurecimento da Orientação a Objeto Década de 1990: diversas proposições a partir de diversos autores, como Booch, Rumbaugh e Jacobson.

Leia mais

Especificação de Sistemas de Tempo-Real utilizando Orientação a Objetos

Especificação de Sistemas de Tempo-Real utilizando Orientação a Objetos Especificação de Sistemas de Tempo-Real utilizando Orientação a Objetos Marco Aurélio Wehrmeister mawehrmeister@inf.ufrgs.br Roteiro Introdução Orientação a Objetos UML Real-Time UML Estudo de Caso: Automação

Leia mais

UML & Padrões. Aula 1 Apresentação. Profª Kelly Christine C. Silva

UML & Padrões. Aula 1 Apresentação. Profª Kelly Christine C. Silva UML & Padrões Aula 1 Apresentação Profª Kelly Christine C. Silva Sistemas para Internet Módulo I - Construção de sites informativos Módulo II - Construção de sites dinâmicos Módulo III - Aplicações para

Leia mais

ANÁLISE E PROJETO ORIENTADO A OBJETOS. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

ANÁLISE E PROJETO ORIENTADO A OBJETOS. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com ANÁLISE E PROJETO ORIENTADO A OBJETOS Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Análise Descrição do problema a ser implementado Descrição dos objetos e classes que fazem parte do problema, Descrição

Leia mais

Unified Software Development Process

Unified Software Development Process 59/170 Unified Software Development Process Sumário Breve história do Unified Process O Unified Process O ciclo de vida do Unified Process O RUP (Rational Unified Process) 60/170 Breve História do Unified

Leia mais

Guia de Fatores de Qualidade de OO e Java

Guia de Fatores de Qualidade de OO e Java Qualiti Software Processes Guia de Fatores de Qualidade de OO e Java Versã o 1.0 Este documento só pode ser utilizado para fins educacionais, no Centro de Informática da Universidade Federal de Pernambuco.

Leia mais

UML - Unified Modeling Language

UML - Unified Modeling Language UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril

Leia mais

Técnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo. Conteúdo: Introdução à Orientação a Objetos

Técnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo. Conteúdo: Introdução à Orientação a Objetos Técnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: Introdução à Orientação a Objetos Introdução Paradigmas de programação Programação Estruturada Composição

Leia mais

Capítulo 4. Packages e interfaces

Capítulo 4. Packages e interfaces Capítulo 4. Packages e interfaces 1/17 Índice Indice 4.1 - Package 4.2 - Interface 2/17 Índice 4.1 Package 4.1 - Package 4.2 -- Interface 3/17 4.1 Package Package ou pacote está para o Java como as directorias

Leia mais

Micro Mídia Informática Fevereiro/2009

Micro Mídia Informática Fevereiro/2009 Micro Mídia Informática Fevereiro/2009 1 UML Introdução Fases de Desenvolvimento Notação Visões Análise de Requisitos Casos de Uso StarUML Criando Casos de Uso Orientação a Objetos Diagrama de Classes

Leia mais

4.2. UML Diagramas de classes

4.2. UML Diagramas de classes Engenharia de Software 4.2. UML Diagramas de classes Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt Um diagrama de classes serve para modelar o vocabulário de um sistema Construído e refinado ao longo

Leia mais

Capítulo 3. Programação por objectos em Java

Capítulo 3. Programação por objectos em Java Capítulo 3. Programação por objectos em Java 1/46 Índice Indice 3.1 - Qualificadores de visualização 3.2 - Classe 3.3 - Objecto 3.4 - Métodos 3.5 - Herança 3.6 - Reescrita de métodos 3.7 - Classes abstractas

Leia mais

Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos

Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos Programação Orientada a Objetos Relacionamentos entre objetos Associação, composição e agregação Construtores e sobrecarga Variáveis de classe e de instância Reinaldo Gomes reinaldo@cefet-al.br Objetos

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 6: Herança e Polimorfismo LEEC@IST Java 1/52 Herança revisão A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse pode

Leia mais

Modelagem de Processos. Prof.: Fernando Ascani

Modelagem de Processos. Prof.: Fernando Ascani Modelagem de Processos Prof.: Fernando Ascani Bibliografia UML Guia de consulta rápida Douglas Marcos da Silva Editora: Novatec UML Guia do usuário Grady Booch James Rumbaugh Ivair Jacobson Editora: Campus

Leia mais

Programa do Módulo 2. Fundações do Modelo Objeto

Programa do Módulo 2. Fundações do Modelo Objeto 2.1 Programa do Módulo 2 Orientação a Objetos Conceitos Básicos Análise Orientada a Objetos (UML) Processo Unificado (RUP) Fundações do Modelo Objeto 2.2 Programação Orientada a Objetos: é um método de

Leia mais

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:

Leia mais

Programação Orientada a Objeto

Programação Orientada a Objeto Programação Orientada a Objeto Classes, Atributos, Métodos e Objetos Programação de Computadores II Professor: Edwar Saliba Júnior 1) Java é uma linguagem orientada a objetos. Para que possamos fazer uso

Leia mais

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais Curso de Java Orientação a objetos e a Linguagem JAVA Roteiro A linguagem Java e a máquina virtual Objetos e Classes Encapsulamento, Herança e Polimorfismo Primeiro Exemplo A Linguagem JAVA Principais

Leia mais

Orientação à Objetos. Aécio Costa

Orientação à Objetos. Aécio Costa Aécio Costa O paradigma da orientação à objetos Paradigma? Um paradigma é uma forma de abordar um problema. No contexto da modelagem de um sistema de software, um paradigma tem a ver com a forma pela qual

Leia mais

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER Objetivo dessa aula é descrever as características e a simbologia dos diagramas UML e MER na modelagem de sistemas de informação de uma forma a permitir a comunicação entre técnicos e gestores. Modelagem

Leia mais

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 01 Orientação a Objetos Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na

Leia mais

POO Programação Orientada a Objetos. Classes em Java

POO Programação Orientada a Objetos. Classes em Java + POO Programação Orientada a Objetos Classes em Java + Classes 2 Para que a JVM crie objetos: Ela precisa saber qual classe o objeto pertence Na classe estão definidos os atributos e métodos Programamos

Leia mais

Bibliografia. Desenvolvimento Orientado a Objetos. Introdução. Bibliografia. O que você vê?

Bibliografia. Desenvolvimento Orientado a Objetos. Introdução. Bibliografia. O que você vê? Bibliografia Desenvolvimento Orientado a Objetos Prof.: Edson dos Santos Cordeiro LARMAN, Graig. Utilizando UML e padrões. Porto Alegre: Bookman, 2000. STAA, Arndt von. Programação modular. Rio de Janeiro:

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Sumário. Uma visão mais clara da UML

Sumário. Uma visão mais clara da UML Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo V Unidade Curricular: Engenharia de Software Professora: Lara P. Z. B. Oberderfer Uma visão mais clara da

Leia mais

Engenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais http://www.edison.eti.br prof@edison.eti.

Engenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais http://www.edison.eti.br prof@edison.eti. Engenharia de Software Engenharia de Requisitos Análise Orientada a Objetos Prof. Edison A M Morais http://www.edison.eti.br prof@edison.eti.br 1 Contextualizando... Fonte: [1] O Processo de ER pode ser

Leia mais

PHP INTRODUÇÃO CLASSES E OBJETOS

PHP INTRODUÇÃO CLASSES E OBJETOS INTRODUÇÃO PHP AULA 8 ORIENTAÇÃO A OBJETOS Professor: Leonardo Pereira E-mail: leongamerti@gmail.com Facebook: leongamerti Material de Estudo: http://www.leonti.vv.si A orientação a objetos ou OO é o paradigma

Leia mais

MC302A Modelagem de Sistemas com UML. Prof. Fernando Vanini vanini@ic.unicamp.br

MC302A Modelagem de Sistemas com UML. Prof. Fernando Vanini vanini@ic.unicamp.br MC302A Modelagem de Sistemas com UML Prof. Fernando Vanini vanini@ic.unicamp.br Modelamento de Sistemas e Orientação a Objetos O paradigma de Orientação a Objetos oferece um conjunto de características

Leia mais

PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 1. Conceitos de Orientação a Objetos Introdução O paradigma da POO Classes

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

Felipe Denis M. de Oliveira. Fonte: Alice e Carlos Rodrigo (Internet)

Felipe Denis M. de Oliveira. Fonte: Alice e Carlos Rodrigo (Internet) UML Felipe Denis M. de Oliveira Fonte: Alice e Carlos Rodrigo (Internet) 1 Programação O que é UML? Por quê UML? Benefícios Diagramas Use Case Class State Interaction Sequence Collaboration Activity Physical

Leia mais

Programação Orientada a Objetos. Encapsulamento

Programação Orientada a Objetos. Encapsulamento Programação Orientada a Objetos Encapsulamento de Dados Ocultação de dados Garante a transparência de utilização dos componentes do software, facilitando: Entendimento Reuso Manutenção Minimiza as interdependências

Leia mais

Introdução à orientação a objetos. João Tito Almeida Vianna 25/05/2013

Introdução à orientação a objetos. João Tito Almeida Vianna 25/05/2013 Introdução à orientação a objetos João Tito Almeida Vianna 25/05/2013 Roteiro Aula 2 Motivação Revisão dos conceitos da aula 1 Preparação para os exercícios Exercícios propostos 2 Motivação A orientação

Leia mais

Técnicas de Programação II

Técnicas de Programação II Técnicas de Programação II Aula 06 Orientação a Objetos e Classes Edirlei Soares de Lima Orientação a Objetos O ser humano se relaciona com o mundo através do conceito de objetos.

Leia mais

Fundamentos de Banco de Dados e Modelagem de Dados

Fundamentos de Banco de Dados e Modelagem de Dados Abril - 2015 Universidade Federal de Mato Grosso Instituto de Computação Pós Graduação Lato Sensu em Banco de Dados Fundamentos de Banco de Dados e Modelagem de Dados Prof. Dr. Josiel Maimone de Figueiredo

Leia mais

Um modelo é uma simplificação da realidade. Construímos modelos para compreender melhor o sistema que estamos desenvolvendo.

Um modelo é uma simplificação da realidade. Construímos modelos para compreender melhor o sistema que estamos desenvolvendo. UML - Motivação - O que é um modelo? Um modelo é uma simplificação da realidade. Construímos modelos para compreender melhor o sistema que estamos desenvolvendo. O que é um modelo? O que é um modelo? O

Leia mais

Wilson Moraes Góes. Novatec

Wilson Moraes Góes. Novatec Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,

Leia mais

Programação com Objectos. Processamento de Dados I. 4. Classes Abstractas

Programação com Objectos. Processamento de Dados I. 4. Classes Abstractas Programação com Objectos Processamento de Dados I 4. Classes Abstractas 1 Conceito de classe abstracta Declaração de uma classe abstracta Implicações e características das classes abstractas Utilização

Leia mais

Capítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra Capítulo 14 Herança a e Polimorfismo Objetivos do Capítulo Apresentar os conceitos de herança e de polimorfismo. Explorar os diversos recursos disponíveis no Java para a aplicação da herança e do polimorfismo

Leia mais

Programação Orientada a Objetos em Java. Herança

Programação Orientada a Objetos em Java. Herança Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Herança Professor: César Melo Slides baseados em materiais preparados

Leia mais

Uma visão mais clara da UML Sumário

Uma visão mais clara da UML Sumário Uma visão mais clara da UML Sumário 1 Método...2 2 Análise de requisitos...2 2.1 Diagramas de Casos de Uso...3 2.1.1 Ator...3 2.1.2 Casos de Uso (Use Case)...4 2.1.3 Cenário...4 2.1.4 Relacionamentos...6

Leia mais

Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.

Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1. Modelos de Sistema Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1 Objetivos Explicar por que o contexto de um sistema deve ser modelado como parte do processo de RE Descrever

Leia mais

UML Visão Geral. Índice. Introdução. Diagramas. Modelos e diagramas. Elementos de modelação. Referências

UML Visão Geral. Índice. Introdução. Diagramas. Modelos e diagramas. Elementos de modelação. Referências UML Visão Geral 1 Índice Introdução O que é a UML? Valor da UML Origens da UML Parceiros da UML Modelos e diagramas Elementos de modelação Diagramas Diagrama de casos de utilização Diagrama de classes

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de software AULA NÚMERO: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

UML (Unified Modeling Language) Linguagem de Modelagem Unificada

UML (Unified Modeling Language) Linguagem de Modelagem Unificada UML (Unified Modeling Language) Linguagem de Modelagem Unificada Introdução É a padronização das metodologias de desenvolvimento de sistemas baseados na orientação a objetos. Foi criada por três grandes

Leia mais

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

Introdução ao Paradigma Orientado a Objetos. Principais conceitos Introdução ao Paradigma Orientado a Objetos Principais conceitos Paradigmas de Programação PROGRAMAÇÃO ESTRUTURADA X PROGRAMAÇÃO ORIENTADA A OBJETOS Paradigma Programação estruturada Na programação estrutura

Leia mais

Programação com Acesso a BD. Programação com OO Acesso em Java

Programação com Acesso a BD. Programação com OO Acesso em Java Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática

Leia mais

UML Linguagem de Modelagem Unificada

UML Linguagem de Modelagem Unificada Modelagem de Sistemas UML Linguagem de Modelagem Unificada Prof. Mauro Lopes 1-25 Objetivos Nesta aula iremos apresentar os elementos conceituais da Linguagem de Modelagem Unificada (UML). Boa aula a todos.

Leia mais

UML 01. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan

UML 01. Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan Faculdade INED UML 01 Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional 1 Prof.: Fernando Hadad Zaidan Referências BARBIERI, Carlos. Análise e Programação

Leia mais

Introduçãoa Engenhariade. Prof. Anderson Cavalcanti UFRN-CT-DCA

Introduçãoa Engenhariade. Prof. Anderson Cavalcanti UFRN-CT-DCA Introduçãoa Engenhariade Software Prof. Anderson Cavalcanti UFRN-CT-DCA O que é Software? O que é software? São programas de computadores, em suas diversas formas, e a documentação associada. Um programa

Leia mais

Engenharia de Software

Engenharia de Software Prof. M.Sc. Ronaldo C. de Oliveira ronaldooliveira@facom.ufu.br FACOM - 2011 Exemplo de Diagrama de Caso de Uso Sistema de Locadora de Filmes Sistema de Vídeo Locadora Você foi contratado para desenvolver

Leia mais

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC CURSO: Bacharelado em Ciência da Computação DISCIPLINA: ANPS Análise e Projeto de Sistemas AULA NÚMERO: 3 DATA: PROFESSOR: Murakami Sumário 1 APRESENTAÇÃO...1 2 DESENVOLVIMENTO...1 2.1 Revisão...1 2.1.1

Leia mais

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente

Leia mais

1 UML (UNIFIED MODELING LANGUAGE)

1 UML (UNIFIED MODELING LANGUAGE) 1 UML (UNIFIED MODELING LANGUAGE) Segundo Tonsig (2003), para conseguir desenvolver um software capaz de satisfazer as necessidades de seus usuários, com qualidade, por intermédio de uma arquitetura sólida

Leia mais

Diagramas de Casos de Uso

Diagramas de Casos de Uso UML Unified Modeling Language Diagramas de Casos de Uso José Correia, Março 2006 (http://paginas.ispgaya.pt/~jcorreia/) Objectivos O objectivo de um diagrama de casos de uso de um sistema é mostrar para

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos O FOCO NO MUNDO REAL Orientação a objetos A orientação a objetos (OO) foi concebida na década de 70. Origem na linguagem SIMULA-67 (década de 60 - Noruega), que já implementava

Leia mais

do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade;

do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade; 1 ARQUITETURA E DESIGN DE SOFTWARE O que é Arquitetura? do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade; do dicionário: Arte de projetar e construir prédios,

Leia mais

Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos

Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos Programação Estruturada e Orientada a Objetos Fundamentos Orientação a Objetos 2013 O que veremos hoje? Introdução aos fundamentos de Orientação a Objetos Transparências baseadas no material do Prof. Jailton

Leia mais

A linguagem UML. UML e Diagramas de Casos de Uso e Classes. Por que usar UML? O que é modelagem?

A linguagem UML. UML e Diagramas de Casos de Uso e Classes. Por que usar UML? O que é modelagem? UML e Diagramas de Casos de Uso e Classes Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com A linguagem UML UML (Unified Modeling Language) Linguagem de Modelagem Unificada É uma linguagem de modelagem

Leia mais

Casos de Uso O que é. Casos de Uso. Objetivos de um Caso de Uso. Atores. Atores e Casos de Uso. Diagramas de Caso de Uso

Casos de Uso O que é. Casos de Uso. Objetivos de um Caso de Uso. Atores. Atores e Casos de Uso. Diagramas de Caso de Uso Casos de Uso O que é Casos de Uso Descrições narrativas de processos do domínio da aplicação Documentam a seqüência de eventos de um ator (um agente externo) usando o sistema para completar, do início

Leia mais

Diagrama de Classe. Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha. Engenharia de Software

Diagrama de Classe. Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha. Engenharia de Software "Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO AMBIENTE." Engenharia de Software Diagrama de Classe Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha

Leia mais

UML Itens Estruturais - Interface

UML Itens Estruturais - Interface Itens Estruturais - Interface Coleção de operações que especificam serviços de uma classe ou componente Descreve o comportamento visível externamente Raramente aparece sozinha. Em geral vem anexada à classe

Leia mais

Análise e Projeto Orientados a Objeto

Análise e Projeto Orientados a Objeto Análise e Projeto Orientados a Objeto com UML e Padrões Parte I Análise, Projeto, e Processo Baseado em Craig Larman 1 Aplicando UML, Padrões e APOO Objetivo Desenvolver habilidades práticas na utilização

Leia mais

Prof. Claudio Passos Apresentação cedida pela Ceça Moraes

Prof. Claudio Passos Apresentação cedida pela Ceça Moraes Prof. Claudio Passos Apresentação cedida pela Ceça Moraes Programação Orientada a Objetos: os problemas de programação são pensados em termos de objetos Em vez de funções e rotinas Problema = desenvolver

Leia mais

Disciplina Técnicas de Modelagem

Disciplina Técnicas de Modelagem T É C N I C A 3 MODELAGEM CONCEITUAL GENERALIZAÇÃO/ESPECIALIZAÇÃO, AGREGAÇÃO E COMPOSIÇÃO Generalização/Especialização Herança é o termo em orientação a objetos que se refere à criação de novas classes

Leia mais

Modelagemde Software Orientadaa Objetos com UML

Modelagemde Software Orientadaa Objetos com UML Modelagemde Software Orientadaa Objetos com UML André Maués Brabo Pereira Departamento de Engenharia Civil Universidade Federal Fluminense Colaborando para a disciplina CIV 2802 Sistemas Gráficos para

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Histórico A orientação a objetos (OO) foi concebida na década de 70. Origem na linguagem SIMULA-67 (década

Leia mais

Introdução à Orientação a Objetos e UML

Introdução à Orientação a Objetos e UML Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação SSC 526: Análise e Projeto Orientados a Objetos Introdução à Orientação a Objetos e UML Profa. Dra. Elisa Yumi Nakagawa 2º semestre

Leia mais

Programação Orientada a Objetos em Java

Programação Orientada a Objetos em Java Programação Orientada a Objetos em Java Rone Ilídio da Silva Universidade Federal de São João del-rei Campus Alto Paraopeba 1:14 1 Objetivo Apresentar os principais conceitos de Programção Orientada a

Leia mais

http://www.di.uminho.pt

http://www.di.uminho.pt Escola de Engenharia Departamento de Informática Desenvolvimento de Sistemas de Informação LESI 4º ano / 2º semestre (5308O7) LMCC 4º ano / 2º semestre (7008N8 Opção II) 2005/2006 José Creissac Campos

Leia mais

UML UML. O problema. Modeling Language) (Unified. O problema. Modelagem. Modelagem. Modelagem

UML UML. O problema. Modeling Language) (Unified. O problema. Modelagem. Modelagem. Modelagem Universidade de Passo Fundo Instituto de Ciências Exatas e Geociências Pós s em Desenvolvimento de Software (Unified Modeling Language) Prof. Cristiano Roberto Cervi O problema O grande problema do desenvolvimento

Leia mais

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 6 Polimorfismo Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof.

Leia mais