28
Introdução à Modelagem Conceitual 1. Conceitos Básicos Luiz A M Palazzo Agosto, 2010 Universidade Católica de Pelotas Centro Politécnico Bacharelado em Ciência da Computação

Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Embed Size (px)

Citation preview

Page 1: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Introdução à Modelagem Conceitual1. Conceitos Básicos

Luiz A M PalazzoAgosto, 2010

Universidade Católica de PelotasCentro PolitécnicoBacharelado em Ciência da Computação

Page 2: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Roteiro

• A disciplina

• Noção de modelo

• Por que modelar?

• Níveis de modelagem

• Dimensões de modelagem

• Noções fundamentais

• Exercícios

201 - Conceitos Básicos

Page 3: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

364042 Introdução à Modelagem Conceitual

• Ementa: Modelos e dimensões de modelagem. Objetos, classes, instâncias, herança, polimorfismo. Abstrações, agregação de classes, especialização de classes, associações entre classes. Diagramas de classes. Ferramentas para a modelagem conceitual.

• Carga Horária: 60 horas-aula

• Abordagem: Teórico-prática

• Avaliação: Provas e trabalhos práticos de construção de modelos com o uso de ferramentas de software

• Site: http://infocat.ucpel.tche.br/disc/mc/

301 - Conceitos Básicos

Page 4: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Noção de modelo

• Modelos são representações de alguma porção real ou imaginária do universo.

• Interpretamos e raciocinamos sobre o mundo através de modelos mentais.

• Todos os modelos são abstrações.

• Modelos são produzidos com o emprego de ferramentas de modelagem.

• Em geral, a correção de um modelo somente pode ser avaliada em função de sua finalidade.

401 - Conceitos Básicos

Page 5: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

A importância da modelagem

• Os modelos nos ajudam a visualizar um sistema como ele é ou como deveria ser.

• Os modelos nos permitem especificar a estrutura ou o comportamento de um sistema.

• Os modelos nos oferecem um esquema para nos guiar na construção de um sistema.

• Os modelos documentam as decisões tomadas no desenvolvimento de um sistema.

501 - Conceitos Básicos

Page 6: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Por que modelar?

• A razão fundamental é:

Construímos modelos para melhor entender o sistema que estamos desenvolvendo.

601 - Conceitos Básicos

Page 7: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Modelos computacionais

• São modelos destinados a auxiliar no desenvolvimento de sistemas computacionais.

• Gradativamente aproximam as representações dos recursos disponíveis em computadores.

• Mas, o produto final não é somente código...

701 - Conceitos Básicos

Page 8: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Níveis de modelagem

• Modelo conceitual: é o nível mais alto do processo de modelagem e corresponde a representação precisa dos conceitos e relacionamentos existentes no domínio de interesse.

• Modelo lógico: é a representação de nível intermediário e está associada aos algoritmos, esquemas e estruturas de dados que capturam o significado do modelo conceitual.

• Modelo físico: É o nível mais baixo da representação e está associado aos recursos computacionais, código, procedimentos e processos físicos associados a execução do sistema em computadores.

801 - Conceitos Básicos

Page 9: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Dimensões de modelagem

• Modelos estáticos ou estruturais

• Modelos dinâmicos ou temporais

• Modelos funcionais

• Modelos organizacionais

• Modelos comportamentais

901 - Conceitos Básicos

Page 10: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Linguagens Formais e Autômatos - 02 10

Modelagem estática ou estrutural

• Consiste na representação dos aspectos estáticos relevantes dos objetos de interesse.

• É a forma mais simples e mais utilizada de modelagem

• Exemplo: O modelo E-R

S0

R0

Page 11: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Linguagens Formais e Autômatos - 02 11

Modelagem dinâmica ou temporal

• Consiste na representação dos aspectos que se modificam ao longo do tempo.

• Exemplo: Diagramas de Estado

S0 S1

R0 R1

T

T'

Page 12: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Linguagens Formais e Autômatos - 02 12

Modelagem funcional

• Procura representar os aspectos relacionados ao funcionamento dos objetos e sistemas.

• Exemplo: Diagramas de Fluxo de Dados.

Page 13: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Linguagens Formais e Autômatos - 02 13

Modelagem organizacional

• Consiste na representação das hierarquias e das estruturas taxonômicas e ontológicas de que fazem parte os objetos de interesse

• Exemplo: Redes de herança

Page 14: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Linguagens Formais e Autômatos - 02 14

Modelagem comportamental

• Consiste na representação do comportamento dos objetos de interesse.

• Exemplo: Sistemas Multiagentes

Page 15: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Noções fundamentais

• Objetos

• Conceitos ou classes

• Propriedades ou atributos

• Métodos

• Instâncias

• Passagem de mensagens

• Herança de atributos

• Generalização

• Especialização

1501 - Conceitos Básicos

Page 16: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Objetos

Objetos são entidades que possuem:

1. atributos, ou propriedades, que descrevem o estado de um objeto,

2. ações, ou métodos, que representam os processos associados ao objeto, e

3. um identificador, ou nome (oid), que designa univocamente o objeto.

1601 - Conceitos Básicos

Page 17: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Conceitos ou classes

• Objetos com as mesmas características formam um conceito ou classe.

• Classes semelhantes se agrupam em superclasses, da qual são subclasses.

• Uma classe é assim representada por uma taxonomia, onde as subclasses herdam os atributos e métodos de suas superclasses.

1701 - Conceitos Básicos

Page 18: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Propriedades ou atributos

• Também denominados slots, descrevem o estado de um objeto

• Juntamente com os métodos, caracterizam uma classe.

• Possuem um nome e a definição de possíveis valores.

• Os atributos de uma classe são herdadospor suas subclasses.

• Os atributos recebem valores em nível de instância.

1801 - Conceitos Básicos

Page 19: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Métodos

• São procedimentos associados a uma classe.

• Somente se aplicam aos atributos da classe a que estão associados.

• Estes, por sua vez, somente podem ser acessados ou alterados pelos métodos definidos na sua classe.

• Esta propriedade denomina-se encapsulamento.

• Não é respeitada por algumas linguagens ditas “orientadas a objetos”

01 - Conceitos Básicos 19

Page 20: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Instâncias

• São os indivíduos concretos do sistema.

• Por exemplo: o objeto identificado por “João da Silva” é uma instância da classe “Pessoa”.

• Note-se que classes também são consideradas objetos.

• Logo, objetos podem ser de dois tipos: classes ou instâncias.

2001 - Conceitos Básicos

Page 21: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Exemplo: a classe processo

• Atributos: origem, destino, data, registro, tramitação, despacho...

• Métodos: imprimir, tramitar, arquivar, cientificar...

• Esquema de Identificação: AAAA-MM-NNNN

01 - Conceitos Básicos 21

Page 22: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Exemplo: a instância 2010-08-0471

• Oid: 2010-08-0471

• Instância da classe: processo

• Logo, possui um valor compatível para cada atributo definido nesta classe.

• Pode ser acessado ou alterado pelos métodos presentes nesta classe.

01 - Conceitos Básicos 22

Page 23: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Passagem de mensagens

• Os objetos se comunicam por meio de passagem de mensagens.

• O objeto que envia a mensagem é o emissore o que recebe o receptor.

01 - Conceitos Básicos 23

Objeto A(emissor)

Objeto B(receptor)

Mensagem (chama Método 1)

Resultado (da execução de Método 1)

Page 24: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Herança de atributos

• As subclasses herdam os atributos de suas superclasses.

• Assim os atributos somente precisam ser definidos no nível mais alto em que ocorrem.

• As subclasses podem entretanto redefinir atributos herdados (overriding).

• A herança pode ser simples (uma única superclasse) ou múltipla (duas ou mais superclasses).

01 - Conceitos Básicos 24

Page 25: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Exemplo de overriding

01 - Conceitos Básicos 25

PÁSSARO

PÁSSAROVOADOR

PÁSSARODA TERRA

AVESTRUZ PINGÜIM EMA PARDAL FALCÃO SABIÁ

PINGÜINCOMUM

PINGÜIMIMPERADOR

ATRIBUTOS:VOA = truePENAS = true

ATRIBUTOS:VOA = false

Page 26: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Generalização e Especialização

• As subclasses especializam suas superclasses e são generalizadas por elas.

• A especialização corresponde ao relacionamento é_um.

• Somente na especialização ocorre a transmissão ou herança de atributos.

2601 - Conceitos Básicos

Page 27: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Exercício

Modelar informalmente as seguintes classes:

1. Dispositivos Móveis

2. Construções Urbanas

3. Veículos Aéreos

4. Esportes Olímpicos

5. Publicações Científicas

2701 - Conceitos Básicos

Page 28: Introdução à Modelagem Conceitualinfocat.ucpel.tche.br/disc/mc/01.pdf · • Exercícios 01 - Conceitos Básicos 2. ... Níveis de modelagem ... procedimentos e processos físicos

Na próxima aula:

Mapas Conceituais

01 - Conceitos Básicos 28