A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Noções Básicas de Modelagem Alexandre Parra

Apresentações semelhantes


Apresentação em tema: "Noções Básicas de Modelagem Alexandre Parra"— Transcrição da apresentação:

1 Noções Básicas de Modelagem Alexandre Parra

2 O que são Modelos? Modelos são representações simplificadas de domínios do mundo real. Por exemplo: objetos, pessoas, itens, tarefas, processos, conceitos, idéias, etc. Usados comumente por pessoas no seu dia-a-dia, independente do uso de computadores.

3 Exemplo de Modelagem Consideremos o Restaurante Caseiro Hipotético (RCH). Características: Serve pratos, cujo gerente, fica na balança e no caixa anotando os pratos solicitados pelos clientes de cada mesa e demais pedidos que os garçons trazem em um quadro-branco de comandas para o gerente. Pergunta: Como modelar este restaurante ? Resp: Depende do objetivo.

4 Exemplo do Modelo do RCH Modelo expressando o Restaurante Caseiro Hipotético

5 Atributos em Modelos O modelo do RCH representa certos dados (atributos). Estes atributos são relevantes para o domínio a ser representado (abstração do domínio). Este modelo preocupa-se com a marcação dos pedidos e cálculo da conta das mesas do restaurante. Atributos: endereço, data de inauguração, tamanho do restaurante entre outros são irrelevantes.

6 Operações sobre Modelos Um modelo comumente contém operações (procedimentos) associados a ele. Estas operações são grupos de comandos que processarão os valores referentes aos atributos contidos no próprio modelo (e em alguns casos, valores adicionais). Pergunta: Quais operações são necessárias no modelo do RCH ? Resp: 1) Inclusão de pedidos para uma mesa; 2) a modificação do status da mesa (servida ou não); 3) encerramento dos pedidos de uma mesa etc...

7 Características gerais dos modelos Alguns modelos podem possuir somente dados ou operações. Modelos que tem somente dados são pouco usados (normalmente os valores devem ser modificados) pag. Modelos que tem somente operações podem ser consideradas bibliotecas. (exemplo: grupos de funções matemáticas, processamento de imagens, etc).

8 Modelos dentro de modelos Modelos podem conter sub-modelos (especialização) e além disso serem parte de (agregação) outros modelos. Exemplo de modelos dentro de modelos: Agregação: Um modelo de Automóvel é composto por diversos elementos que podem também ser modelos. Por exemplo: modelo motor, rodas, etc. Especialização: O modelo do RCH poderia então conter vários exemplares do modelo MesaDoRestaurante que representariam diferentes mesas do restaurante.

9 Simplificação de modelos baseado no Contexto A simplificação dos modelos é em muitos casos necessária. Dependendo do contexto algumas informações devem ser ocultadas ou ignoradas. Exemplo: Modelagem de informações sobre uma pessoa em três cenários distintos:

10 Diferentes Contextos para Pessoa (1/2) Pessoa como Empregado de Empresa: para fins de processamento de FP seria necessário: Atributos: nome, cargo, salario, horasExtrasTrabalhadas. Operações: calculaSalario e aumentaSalario. Pessoa como Paciente de uma Clínica Médica: Atributos: nome, sexo, idade, altura, peso, historico, etc. Operações: verificaObesidade (dados: altura, sexo e peso) e AdicionaInformacaoAoHistorico.

11 Diferentes Contextos para Pessoa (2/2) Pessoa como Contato Comercial: Atributos: nome, telefone, cargo e empresa da pessoa em questão. Operações: mostraTelefone e trabalhaEmEmpresa

12 Considerações sobre diferentes contextos (1/2) Atributos e operações que podem ser úteis para um modelo de representação podem ser irrelevantes para outros. Exemplos: Não faria sentido representar o salário de uma pessoa no BD de pacientes de uma clínica. Representar a operação verificaObesidade de uma pessoa que não seja paciente de uma clínica.

13 Considerações sobre diferentes contextos (2/2) Apesar dos modelos representarem pessoas de forma genérica, é difícil, senão impossível de elaborar um super-modelo. Um super-modelo serve para representar todos os atributos e operações relativos a uma pessoa (independente de contexto). Exemplo: Formas Geométricas (quadrado, retângulo e triângulo).

14 Reutilização de modelos Modelos podem ser reutilizados para representar diferentes modelos. Exemplo: o mesmo modelo Paciente do modelo Hospital poderia ser utilizado para representar pacientes de uma Clínica. Portanto, não é preciso a criação de um modelo (do nada) para cada domínio do mundo real a ser modelado.

15 Conclusão A criação e uso de modelos é uma tarefa natural. A elaboração de modelos para representar entidades do mundo real pode ser considerada uma arte. A extensão desta abordagem (modelos) à programação deu origem ao paradigma Programação Orientada à Objetos (POO).

16 Estudo de caso 1 Modelar uma lâmpada incandescente Pergunta: Quais os atributos possíveis presentes na modelagem de uma lâmpada? Pergunta: Quais as operações possíveis presentes na modelagem de uma lâmpada? Como representar o modelo !?

17 Diagrama do modelo Lâmpada Diagrama expressando o modelo da Lâmpada nome do modelo atributos do modelo operações do modelo

18 Pseudo-Código do modelo Lâmpada Listagem mostrando como o modelo Lampada pode ser descrito em pseudo-código

19 Estudo de caso 2 Modelar uma conta bancária simplificada. Características do modelo: Atributos: nome do correntista; saldo da conta; Se a conta é especial ou não (pode ficar com saldo negativo). Operações: Abrir conta (indicando nome, valor do deposito e conta é especial); Abrir conta simples (indicando nome); Depositar (indicando valor do deposito); Retirar (indicando o valor da retirada); mostrarSaldo (imprimir nome e saldo da conta). Não presentes (senhas, taxas, impostos, etc) em nome da simplicidade.

20 Diagrama do modelo ContaBancaria Diagrama expressando o modelo da ContaBancaria

21 Exercícios Fazer os exercícios propostos no arquivo exercicios_modelagem.doc que se encontra em a/ no link Materiais da disciplina LPG-II. a/ Para realizá-los é importante ler o capítulo 1 do material disponível na URL acima. O material encontra-se no arquivo introducao_POO_usando_Java.pdf.


Carregar ppt "Noções Básicas de Modelagem Alexandre Parra"

Apresentações semelhantes


Anúncios Google