Considera a modelagem de um sistema de informação, com três partes: 1. Estrutura: Entidades, Relacionamentos, Abstrações 2. Integridade: Regras locais e regras globais 3. Comportamento: operações primitivas e operações aplicativas; Comportamento local e comportamento global; Diagramas UML e Redes de Petri.
1. UNIVERSIDADE FEDERAL DA PARAÍBA
Centro de Engenharia Elétrica e Informática
Pós-Graduação em Ciência da Computação
MODELOS DE DADOS
Parte 2 – Sistemas de
Informação
Ulrich Schiel
2. PARTE II - Sistemas de Informação
"Um sistema de informação é
uma coleção de unidades funcionais
que interagem entre si,
trocando informações
de acordo com regras pré-estabelecidas.”
G. Richter
3. CAPÍTULO II - Sistemas de Informação
Sistema de Informação pode ser interpretado como:
· Um sistema técnico, implementado em um computador
com tecnologia de telecomunicações;
· Um sistema social, como sendo uma sociedade organizada
que possui certas necessidades de informação;
· Um sistema conceitual, que seria uma abstração dos dois
conceitos acima.
FRISCO - Report
4. CAPÍTULO II - Sistemas de Informação
informação
• é um dado com significado
• o ato de informar
5. CAPÍTULO II - Sistemas de Informação
Sistema de informação
• fechado
• temporal
• probabilístico
• dinâmico
Sistema de Banco de dados
• aberto
• atemporal
• determinístico
• estático
6. CAPÍTULO II - Sistemas de Informação
Taxonomia da informação
Descritiva:
Imperativa:
especificável
explícita
implícita - inf. derivada (regras de produção)
informativa
- formatada
(dados, registros)
- semi-formatada/estruturada
(regras, documentos XML, partituras)
- não-formatada
(textos, imagens)
- inf. agregada, minerada
(catálogos, esquemas,
dicionários de dados, estatísticas)
(transações, programas, instruções, regras de produção)
7. CAPÍTULO II - Sistemas de Informação
FRISCO Report - terminologia básica
Coisa: qualquer parte de um conceito de um domínio
‘Machado de Assis’
‘o escritor de Don Casmurro’
Predicador: é uma coisa, usada para
caracterizar ou qualificar outra coisa,
chamada de coisa predicada
Relacionamento: é uma coisa
composta de uma ou muitas
coisas predicadas
‘Machado de Assis escreveu Don Casmurro’
Outros conceitos: conjunto associado; entidade; tipo; população; instância
8. CAPÍTULO II - Sistemas de Informação
FRISCO Report - terminologia básica
Transição: É um relacionamento binário
entre duas coisas compostas diferentes,
chamadas pré-estado e pós-estado da transição,
‘quadro limpo Þ quadro sujo
Atores, Ações e actands
ator
Pré-estado Pós-estado
actand Ação actand
9. CAPÍTULO II - Sistemas de Informação
FRISCO Report – Níveis semióticos
Pragmático: intenções, comunicação, conversação,
negociações, discurso.
Semântico: significados, proposições, validade, denotações.
Sintático: estrutura formal, linguagem, lógica, dados, registros, dedução,
software, arquivos
Empírico: padrões, variedade, barulho, entropia, capacidade do canal, código
Mundo físico: sinais, traços, distinções físicas, hardware, tokens físicos
Mundo social: expectativas,
contratos, leis sociais, cultura.
10. CAPÍTULO II - Sistemas de Informação
FRISCO Report – Conceitos formais
1 CAMADA FUNDAMENTAL
1A CAMADA AÇÃO, ATORES E ACTANDS
2A CAMADA DE CONCEITOS COGNITIVOS E SEMIÓTICOS
3A CAMADA DE CONCEITOS DE SISTEMA
4A CAMADA DOS CONCEITOS DE SISTEMAS
ORGANIZACIONAIS E DE INFORMAÇÃO
Fonte: Relatório Técnico DSC/001/2001
11. Níveis de uma organização
FRISCO Report – Conceitos formais
12. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Sistemas de Informação Gerencial
(MIS)
Produz a informação correta,
no local correto na hora certa
• Sistemas de Suporte à Decisão
(DSS)
Trata de problemas pouco
estruturados de natureza
estratégica ou tática
• Sistemas de Informação Executiva
(EIS)
É um DSS que provê:
• visões alternativas dos dados
• integração de dados externos
• estatísticas
OUTROS: Sistemas Baseados em Conhecimento, Sist. Inf. Geográfica, etc.
13. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Sistemas de Processamento de Transações
- Automatização de rotinas
- Processamento de grandes massas de dados
Folha de pagamento
Loteria esportiva
TECNOLOGIA: Sistemas de Gerência de Bancos de Dados
14. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Sistemas de Informação Gerencial (MIS)
Produz a informação correta,
no local correto na hora certa
Relatórios gerenciais (programados)
TECNOLOGIA: Data Warehousing
15. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Sistemas de Suporte à Decisão
(DSS)
Trata de problemas pouco
estruturados de natureza
estratégica ou tática
Assistência imediata na solução de problemas complexos
• Sistemas de Informação
Executiva (EIS)
É um DSS que provê:
• visões alternativas dos dados
• integração de dados externos
• estatísticas
TECNOLOGIA: Processamento analítico (OLAP),
Integração de Dados na Web, Bases em Conhecimento, RBC
16. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Sistemas Baseados em Conhecimento
O sistema possui informação (conhecimento) especializado, tem
poder de raciocínio e toma iniciativas por si próprio
Simulação de sistemas complexos
Tomadores de decisão
Especialistas
Sistemas automáticos (parcialmente fechados)
TECNOLOGIA: Sistemas Especialistas, Bancos de Dados Ativos,
Redes Neurais, Bancos de Dados Dedutivos, Bases de Conhecimento
17. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Sistemas de Informação Geográfica
O sistema processa e visualiza dados geográficos
TECNOLOGIA: Bancos de Dados Espaciais
18. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Sistemas de Tempo Real
Sistema de tarefas:
Tarefa <T, td, tf>, td = tempo de disponibilidade
tf = tempo de finalização
O sistema realiza tarefas com restrições temporais fortes
TECNOLOGIA: Bancos de Dados Temporais, Multimidia,
BDTR: Objetos e tarefas temporais
19. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Bibliotecas Digitais
As fontes de informação são não-estruturadas e/ou Multimídia
TECNOLOGIA: Sistemas de Recuperação da Informação, Bancos de
Dados Multimídia,
Processamento de Linguagem natural, Imagens, Áudio e Vídeo
20. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
• Sistemas de Informação na Web
• Recuperação da Informação
• Serviços Web
As fontes de informação são não-estruturadas e externas
TECNOLOGIA: Sistemas de Recuperação da Informação, Bancos de
Dados na Web, Web Services, Browsers, Processamento de
Linguagem natural, Ontologias
21. CAPÍTULO II - Sistemas de Informação
Tipos de Sistema de Informação
OUTROS:
• Sistemas Históricos
• Sistemas de planejamento
• Sistemas Distribuídos (homogêneos ou heterogêneos)
• Bibliotecas Digitais
TECNOLOGIA: Bancos de Dados Multimídia, Bancos de Dados
Temporais, Bancos de Dados Textuais, Bancos de Dados
Distribuídos, Bancos de Dados na Web, Recuperação e Extração da
Informação
22. CAPÍTULO II - Sistemas de Informação
Estrutura DIK – Dados, Informação, Conhecimento
23. CAPÍTULO II - Sistemas de Informação
Sistema de Informação
Estrutura Controle Comportamento
24. O Homem observa fenômenos, a natureza, o mundo,
ele próprio, etc., e formula modelos conceituais
sobre eles.
• ONTOLOGIA = o que é
• EPISTEMOLOGIA = o que se sabe
• ÉTICA = o que é certo
• DICOTOMIA:
• HERÁCLITO (520 a.C.):
• tudo flui (panta rei)
• ARISTÓTELES:
• A realidade são
as coisas individuais
• Todos conceitos são
predicados
26. CAPÍTULO II - Sistemas de Informação
I. KANT:
Noumenon: Uma coisa em si
abstração
observação
Phenomenon:
Uma manifestação ou
observação de
Uma coisa
27. CAPÍTULO II - Sistemas de Informação
Os 3 mundos de POPPER:
Mundo objetivo
físico
Mundo abstrato, mental
(linguagem, conhecimento,
matemática, leis, etc.)
Mundo subjetivo
psicológico
28. CAPÍTULO II - Sistemas de Informação
Os 3 mundos de Smith:
Mundo material
pessoas, documentos, experimentos
Mundo universal
Tipos, conjuntos, leis, matemática
instanciação
Mundo particular
(forças, campos, posição espaço-temporal.)
29. CAPÍTULO II - Sistemas de Informação
As 2 visões de Hirschheim, H. Klein, K. Lyytinen :
• Objetivismo
Um modelo de dados é
um espelho ou uma
imagem da realidade
Wittgenstein Tractatus
Logico-Philosophicus –
teoria do significado
Dados são fatos ou
entidades
• Subjetivismo
Um modelo de dados
formaliza as mensagens
trocadas pelos membros
de uma comunidade
30. CAPÍTULO II - Sistemas de Informação
Triângulo Semiótico
(Triangulo semântico de Ogden & Richards):
• Símbolo
• Conceito (idéia)
• Coisa
designa
descreve
Se refere a
31. CAPÍTULO II - Sistemas de Informação
O Mundo real
Mundo concreto Mundo abstrato
Universo do discurso
33,00 Trinta-e-três
Nível
externo 1 Nível
externo 2
Nível
Conceitual
Nível interno
33
33
100001
interpretação
representação
Mundo
Modelo
Os 3 mundos
dos Sistemas
de
Informação:
32. CAPÍTULO II - Sistemas de Informação
O Mundo real
Mundo concreto Mundo abstrato
33
Os 3 mundos
dos Sistemas
de
Informação:
Pelo OPM-Object Process Model de Dori
• Objetos do mundo concreto são objetos físicos
• Objetos do mundo abstrato são objetos informáticos
33. CAPÍTULO II - Sistemas de Informação
João é jovem CONHECIMENTO
Idade:33
PESSOA(Nome:”João”, Idade:33)
Distância:33 km
33
interpretação
INFORMAÇÃO
DADO
contextualização
34. CAPÍTULO II - Sistemas de Informação
É um dado munido de um significado
É um registro em meio eletrônico,
papel ou outra mídia
INFORMAÇÃO
(semântica)
DADO
(sintaxe)
• é entendimento obtido por
experiência, observação ou estudo
(Oxford Dictionary)
• é informação organizada para solução
de problemas
(Webster’s Dictionary)
CONHECIMENTO
(pragmática)
35. CAPÍTULO II - Sistemas de Informação
4 Category Ontology (Loewe):
Non-substantial Substantial
Universal Non-substantial
universals:
Properties and relations
(“fogo queima palha”)
Substantial universals:
Natural kinds and
persisting objects
(“o fogo”, “palha”)
Particular Non-substantial
particular:
Property-instances and
relation-instances
(“estou vendo a palha de
meu sítio queimando”)
Substantial particular:
Propertied individuals,
concrete objects
(“a palha de meu sítio”)
36. Pirâmides:
DIKUEWI [Dor02]:
Ingenuidade
_________
Sabedoria
______________
Expertise
___________________
Entendimento
________________________
Conhecimento
_____________________________
Informação
_________________________________
Dados
Faísca ou erupção de sabedoria
_encontrando inovações, formas de pensar_
Capacidade de capitalizar expertise
__para achar soluções novas e criativas__
Alto nível de
_entendimento para solução de problemas_
Conhecimento digerido
habilitando um modelo mental
_____de causa e efeito____
É informação assimilada,
__processada e analisada________
Dados processados e
___agrupados de forma significativa___
Símbolos elementares
37. CAPÍTULO II - Sistemas de Informação
O que é um bom modelo?
Princípio TST – Tudo e somente Tudo
Um bom modelo representa e processa todos
objetos da aplicação modelada (tudo) e nada
mais (somente tudo).
38. CAPÍTULO II - Sistemas de Informação
Sistema de Informação
Estrutura Controle Comportamento
39. CAPÍTULO II - Sistemas de Informação
ONTOLOGIA
Entidades
33
Relacionamentos
gosta-de
ilumina
idade
Atributos
40. CAPÍTULO II - Sistemas de Informação
ENTIDADES x RELACIONAMENTOS x ATRIBUTOS
1 <- gerenciado-por
trabalha-em-> 0,1
1..20 <-tem-membro
ENGENHEIRO
nome:
salário:
PROJETO
nome:
orçamento:
gerencia -> 0,1
41. CAPÍTULO II - Sistemas de Informação
RELACIONAMENTOS com Papéis
Esposa
PESSOA casada-com
Marido
42. CAPÍTULO II - Sistemas de Informação
RELACIONAMENTOS como classe
0,5 empresta
EXEMPLAR USUÁRIO
emprestado-por 0,1
EMPRÉSTIMO
data:
estado:
43. CAPÍTULO II - Sistemas de Informação
RELACIONAMENTOS múltiplos
ARTIGO
LIVRO
PERIÓDICO
Contido-em
Contido-em
(Xor)
44. CAPÍTULO II - Sistemas de Informação
RELACIONAMENTOS: DEPENDÊNCIAS
LIVRO
título
EXEMPLAR
nr.tombamento
estado:{disponível,reservado
`instancia`
• instancia
45. CAPÍTULO II - Sistemas de Informação
RELACIONAMENTOS: DEPENDÊNCIAS
• refina • deriva
LIVRO
título
CONTEÚDO
índice
texto
indexar
PALAVRA-CHAVE
indexa
1..*
1..*
'deriva'
`refina`
46. CAPÍTULO II - Sistemas de Informação - Abstrações
Abstrações
É o processo de descartar detalhes
desnecessários de um objeto
47. CAPÍTULO II - Sistemas de Informação - Abstrações
Abstrações Classificação
Ser humano
Extensão / Intenção
Um predicado e sua extensão
Banco (?)
Um conceito e sua intensão Ser humano
Frege: Significado (Extensão) / Sentido (Intenção)
48. CAPÍTULO II - Sistemas de Informação - Abstrações
Abstrações
Classificação
EMPRESA
PESSOA
CONTRIBUINTE
HOMEM
49. CAPÍTULO II - Sistemas de Informação - Abstrações
Representação
Mundo real Mundo modelo
PESSOA
nome:string;
idade:integer;
gosta-de:objeto;
representação :PESSOA
Instância-de
nome: Joseph Haydn;
idade: 66;
gosta-de:‘sol’;
classificação
50. CAPÍTULO II - Sistemas de Informação - Abstrações
Generalização/Especialização
discriminador
ESTUDANTE
atividade U+ sexo
PROFESSOR
PESSOA
CONTRIBUINTE
U+ categoria
EMPRESA
HOMEM MULHER
- completo
- disjunto + U
Relação é-um (é-um(s,g))
51. CAPÍTULO II - Sistemas de Informação - Abstrações
Generalização/Especializaçã
oRelação é-um (é-um(s,g))
Sejam A e B duas classes. E |A| e |B| os respectivos conjuntos de
instâncias de A e B. Então definimos
é-um(A,B) «def |A| Í |B|
Classificação, Intenção
Relação é-elemento(e,C))
é-elemento(e,C) «def e Î |C|
52. CAPÍTULO II - Sistemas de Informação - Abstrações
Visões - Especialização por categoria
HOMEM
PESSOA
sexo
MULHER
JOVEM
ADULTO
VELHO
idade
discriminador
53. CAPÍTULO II - Sistemas de Informação - Abstrações
Visões - Especialização por papel
NO EMPREGO
EM CASA
PESSOA
papel
MOTORISTA
NO TRÂNSITO
EM FÉRIAS
54. CAPÍTULO II - Sistemas de Informação - Abstrações
Agregação/Composição
Relação Parte-Todo (parte-de(p,t))
EXEMPLAR
possui
LIVRO
AUTORIA TÍTULO
EDITORA ANO
Composição heterômera
55. CAPÍTULO II - Sistemas de Informação -
Abstrações
Agregação X Relacionamentos
AUTOR TÍTULO
LIVRO
EDITORA
EXEMPLAR
ANO
possui
escrito-por
nome
editado-por
publicado-em
56. CAPÍTULO II - Sistemas de Informação -
Abstrações
Agregação X Dependêcia – ‘instancía’
IMPRESSÃO
instancia
LIVRO EXEMPLAR
57. CAPÍTULO II - Sistemas de Informação - Abstrações
Composição homeômera Relação Parte-Todo
‘elemento-de’
Agrupamento/agregação/power type
LIVRO
AUTORIA TÍTULO
EDITORA ANO
AUTOR
58. CAPÍTULO II - Sistemas de Informação - Abstrações
Agrupamento/agregação/power type
CURSO
TURMA
ALUNO
PERÍODO
DISCIPLINA
59. CAPÍTULO II - Sistemas de Informação - Abstrações
Relação Parte-Todo (parte-de(p,t)) - Mereologia
QUESTÕES:
1. a parte pode existir sem o todo?
2. o todo pode existir sem a parte?
3. uma parte pode estar em vários todos?
4. trocar uma parte altera o todo?
5. as partes são homogêneas?
6. as partes são heterogêneas?
7. As partes estão ordenadas?
8. a composição/agregação pode ser mista?
Page-Jones:
Composição: ~2, ~3, 4, 6 (com multiplicidades)
Agregação: 2, 3, ~4, 5
60. CAPÍTULO II - Sistemas de Informação - Abstrações
Agrupamento/agregação/power type
AUTORIA
AUTOR
Como dependência powertype
powertype
TURMA
powertype
ALUNO
61. CAPÍTULO II - Sistemas de Informação - Abstrações
Agregação genérica
1..*
TÍTULO
LIVRO
EXEMPLAR
1..*
1..*
AUTOR EDITORA ANO
62. PARTE II - Sistemas de Informação - Abstrações
1) é-um(A,B) & é-um(B,A) Û A=B
2) é-um(A,B) & é-um(B,C)Þé-um(A,C)
logo é-um e uma relação de ordem parcial
3) é-um(A,B) & é-um(A,C) Þ = $ D(é-um(B,D) & é um(C,D))
4) é-parte(A,B) Þ Øé-parte(B,A)
5) é-parte(A,B) & é parte(B,C) Þ é-parte(A,C)
6) é-um(A,B) & é-parte(B,C) Þ é-parte(A,C)
O caso é-parte(A,B) & é-um(B,C) Þ é-parte(A,C)
nem sempre é verdadeiro, pois nem toda entidade de C tem que ser um
agregado com A.
7) é-um(A,B) & é-parte(A,C) Þ é-parte(B,C)
8) é-um(B,C) & é-parte(A,C) Þ é-parte(A,B)
9) é-um(A,B) & é-elemento(B,C) Þ é-elememto(A,C)
10) é-um(B,C) & é-elemento(A,C) Þ é-elemento(A,B)
63. PARTE II - Sistemas de Informação -
Abstrações
PUBLICAÇÃO
U U+
meio tipo
P-DIGITAL
P-PAPEL
0..3
PERIÓDICO MONOGRAFIA
tipo
LIVRO ANAIS
reserva empréstimo
DISSERTAÇÃO
USUÁRIO
EXEMPLAR
instancia
{Xor}
contido-em
ARTIGO
AUTORIA
AUTOR
1
1
1..*
1
0..*
+
0..1
TÍTULO CONTEÚDO
64. PARTE II - Sistemas de Informação -
Abstrações
CONS-COMB
FAB-P-ANO
QUANTI
DADE
FABRICANTE
ANO-PROD
QUANTI
DADE NOME
<1,1)tem-nome
MODELO
NUM-SERIE
NUM-REGISTRO
CARRO-DE-
FAB CARRO-EM-
GAR
CARRO-EM-
USO
DATA
em(1,1>
CARRO-DESTRUIDO
GARAGEM
PESSOA
GRUPO-PESSOAS
possue(1,*> possue(0,*>
<1,1)possue
possue(0,*>
<1,1)produzido-em
modelo(1,1>
<1,1)tem-serie
registro(1,1>
tem-nome(1,1>
carros-fabricados(1,1>
<1,1)cons-maximo
consumo(1,1>
total(1,1>
CARRO
65. Exercício em aula
Fazer o esquema conceitual de uma família convencional (um
casal de pai e mãe com filhos).
Acrescente os atributos que achar necessário. Considere
tanto atributos da família como um todo, como dos membros.
Todas dúvidas devem ser resolvidas de alguma forma e as
soluções justificadas.
66. Dados semi-estruturados
Origens:
• Estrutura irregular
(ausência de atributos, atributos
imprevisto, domínios diferentes,
ordem dos atributos)
EXEMPLO
Telefone; origem; Endereço
• Estrutura implícita Idade; Textos; Esquemas data-driven
• Estrutura parcial
(dados com parte estruturada
Ficha médica
e parte livre)
67. Dados semi-estruturados
Origens:
• Estrutura extensa
(número grande de atributos,
alguns possivelmente nulos)
EXEMPLO
Curriculum Vitæ, registro bibliográfico
• Estrutura evolucionária Páginas Web
• Estrutura descritiva
ou indicativa
(conseqüência das anteriores)
Páginas XML, HTML, DC
68. Dados semi-estruturados
Registro bibliográfico: EXEMPLO
000 01121cam a2200277 a 450 MARC
001 4379613
005 19941006095702.5
008 910910s1992 nyua b 001 0 eng
035 __ |9 (DLC) 91032213
906 __ |a 7 |b cbc |c orignew |d 1 |e ocip |f 19 |g y-gencatlg
955 __ |a pc03 to bg00 09-10-91; bg03 to SCD 09-11-91; fg09 09-12-91; fr25 09-16-91; jb00 03-11-93; CIP ver.
jb11 05-13-93 010 __ |a 91032213
020 __ |a 0136302033 : |c $38.00
040 __ |a DLC |c DLC |d DLC
050 00 |a QA76.9.D3 |b G7222 1992
082 00 |a 005.75 |2 20
100 1_ |a Gray, Peter M. D., |d 1940-
245 10 |a Object-oriented databases : |b a semantic data model approach/ |c Peter M.D. Gray, Krishnarao G.
Kulkarni, Norman W. Paton.
260 __ |a New York : |b Prentice Hall, |c 1992.
300 __ |a xv, 237 p. : |b ill. ; |c 24 cm.
440 _0 |a Prentice-Hall international series in computer science
504 __ |a Includes bibliographical references (p. 218-230) and index.
650 _0 |a Object-oriented databases.
700 1_ |a Kulkarni, Krishnarao G.
700 1_ |a Paton, Norman W.
991 __ |b c-GenColl |h QA76.9.D3 |i G7222 1992 |p 00034950064 |t Copy 1 |w BOOKS
• Type of Material: Book (Print, Microform, Electronic, etc.)
•Personal Name: Gray, Peter M. D., 1940-
•Main Title: Object-oriented databases : a semantic data model approach
/ Peter M.D. Gray, Krishnarao G. Kulkarni, Norman W. Paton.
•Published/Created: New York : Prentice Hall, 1992.
•Description: xv, 237 p. : ill. ; 24 cm.
•ISBN: 0136302033 : $38.00
69. Dados semi-formatados
Origens:
• Distinção entre
estrutura e dados
não é clara
()
EXEMPLO
JORNAL
JORNAL DA PARAÍBA
EDIÇÃO DE HOJE
MEU EXEMPLAR
Coluna de Dora Kramer
71. Dados semi-formatados
• Texto livre Livro
Título Autor Índice Conteúdo
Capítulo
Parágrafo
Frase
Letra Palavra Oração
72. Dados semi-formatados
• Texto marcado
• Tipo de letra, tamanho, aparência, autoria, localização, hiperlink, etc.
• doc, rtf, pdf, ps, tex, ...
• html
• xml & etc (rdf, dc, xmlschema, owl,..).
‘Semi-estruturado’
EXEMPLO
73. Dados semi-formatados
‘Semi-estruturado’ Em RTF:
{rtf1ansiansicpg1252uc1}
{*generator Microsoft Word 10.0.2627;}{info{title Semi-}{author Ulrich
Schiel}
{operator Ulrich Schiel}
Semi}{insrsid3955129charrsid8669994 -}
{insrsid8669994charrsid8669994 e}{
insrsid3955129 struturado
par }}
rtf integral
doc2003
doc2007
76. Dados semi-formatados
Dados Semi-estruturados
Dados Estruturados
• Atributos fixos
• tamanhos fixos
• Todos dados estão
de acordo com um esquema
• atributos de tamanho variável
• atributos com domínio variável
• atributos opcionais
• atributos imprevistos
Solução
Esquemas definidos a priori Esquemas acompanham objetos
Esquemas data-driven
Dados Específicos
77. Exercício em aula
Fazer o esquema conceitual de uma família convencional (um
casal de pai e mãe com filhos). Teu esquema deverá ter, no
mínimo uma classe denominada FAMÍLIA.
Acrescente os atributos que achar necessário. Considere
tanto atributos da família como um todo, como dos membros.
Comente que tipos de famílias teu modelo comporta e quais
famílias ele não considera.
78. Exercício
Enunciado:
Queremos desenvolver um sistema de informações sobre saúde. O serviço tem como propósito auxiliar seus
usuários a tratar de sua saúde. Ele deverá manter um sistema de informações com as seguintes
características:
Cadastro de elementos de tratamento que podem ser produtos, componentes ou comportamentos (p. ex.
fisioterapia, natação, caminhada, etc.) que podem fazer bem ou mal a uma doença. Um produto (que pode
ser um remédio ou um alimento) é composto por vários componentes. Para cada componente de um produto
é definido sua dosagem.
Cadastro de males, que podem ser doenças, sintomas ou situações (como gordura, magreza, depressão, etc.).
Uma doença pode apresentar vários sintomas.
São determinados tratamentos, baseados em efeitos de elementos sobre males. Há efeitos que fazem bem e
os efeitos prejudiciais a cada mal cadastrado. Um tratamento será uma combinação de efeitos que fazem
bem. Para um tratamento é definido a dosagem do elemento que determina o efeito (benéfico ou maléfico).
Estes tratamentos são resultados de pesquisas publicadas em alguma fonte. O sistema mantém estes dados,
definindo a origem e a fonte do tratamento. Também é definido a categoria de tratamento, se é alopático,
homeopático, natural, chinês, etc.
Um usuário poderá fazer uma consulta anônima ao sistema por produto, por componente ou por mal. Outra
forma de interação é o usuário se cadastrar e registrar um tratamento. Posteriormente o usuário retorna, relata
o resultado do tratamento que é registrado no sistema.
1) Faça um esquema conceitual de classes para este sistema, definindo também os atributos.
2) Faça um diagrama de objetos que representa que a castanha-do-pará é rica em gorduras monoinsaturadas
que ajudam a emagrecer, ou seja, fazem bem a quem é gordo. A origem desta informação é a revista Boa
Forma tendo como fonte o International Journal of Obesity.
79. PARTE II - Sistemas de Informação
Sistema de Informação
Estrutura Controle Comportamento
80. PARTE II - Sistemas de Informação
Tipos de integridade:
Declarativa (implícita)
de esquema
Não-Declarativa (explícita)
de dados
• Tipo/subtipo
• Abstrações
• unicidade/cardinalidade
• exclusão
regras de integridade
• de estado (estáticas)
• de transição (dinâmicas)
81. PARTE II - Sistemas de Informação
Integridade Declarativa (implícita) - de esquema
Formas: implementação fixa X efeitos colaterais
PESSOA
+ + 1
CANDIDATO
EMPREGADO
HOMEM
é-de-sexo
MULHER
situação
sexo SEXO
operation candidatar-se(p,s)
pre-condition
not( in(p, CANDIDATO) )
body
CANDIDATE¬ insert (p)
situação(p, CANDIDATO)
PERSON ¬ insert (p)
for each class A such that is-a(A,PERSON,r)
and not(r=situação) and r(p,A) do
A ¬ insert (p)
for each class B such that in(p,B) and
not(B=CANDIDATE) and situação(p,B) do
p ¬ delete (B)
82. PARTE II - Sistemas de Informação
Integridade Não-Declarativa (explícita)
Þ Linguagem de Controle de Dados - LCD
Þ Regras de Controle (Triggers)
Þ Pré- e Pós-condições
Þ Programas aplicativos
83. Sistemas de Informação - Integridade
Integridade Não-Declarativa (explícita)
Þ Linguagem de Controle de Dados - LCD
create assertion sal-minimo check
(not exists(select * from EMPREGADO
where EMPREGADO.salario < sal-minimo))
OCL – Object Constraint Language
Þ Regras de Controle (Triggers)
create trigger sal-baixo on update of EMPREGADO E
(if E.salario < sal-minimo
then update E set E.salario = sal-minimo)
SQL
invariantes
84. Sistemas de Informação - Integridade
Integridade Não-Declarativa (explícita)
Þ Pré- e Pós-condições
Þ Programas aplicativos
operation admissão(p, nome, sal)
pre-condition
not( in(p, EMPREGADO) ) : CANCEL
sal < sal-minimo : WARNING
body
EMPREGADO ¬ insert (p)
p ¬ establish(tem-salário(s))
p ¬ establish(tem-nome(some))
OCL – Object Constraint Language
86. Sistemas de Informação - Integridade
Exemplos OCL
Restrição 1: um professor deve orientar, no máximo, 5 alunos.
Context Professor inv:
self.orienta->size <= 5
Restrição 2: Professor colaborador não pode coordenar projeto
Context Colaborador inv:
self.coordena->size = 0
87. Sistemas de Informação - Integridade
Mais Exemplos OCL
http://www.empowertec.de/ocl/examples.htm
http://i12www.ira.uka.de/~aroth/lehre/keypraktWS0304/oclIntro.pdf
http://projekte.fast.de/Projekte/forsoft/ocl/2_OCL_Examples.html
http://maude.sip.ucm.es/itp/ocl/examples.html
88. Sistemas de Informação - Integridade
Regras ECA: Evento-Condição-Ação
ON ( Evento) IF (Condição) DO (Ação)
Em SQL:
Define trigger sal-baixo on update of EMPREGADO E
(if E.salario < 410
then update E set E.salario = sal-minimo)
89. Sistemas de Informação - Integridade
Regras ECA: Evento-Condição-Ação
EVENTOS
externos
internos
Entrega do último trabalho
temporais
Do BD
fim-do-semestre
estado
total-matriculados
> limite
operação
reserva-vaga
Tipos de EVENTOS
90. Sistemas de Informação - Integridade
Regras ECA: Evento-Condição-Ação
Formas de EVENTOS
• Instantâneos (às 17hs)
• Longos (das 12-17hs)
(até as 17hs?)
• Simples (após as 17hs)
• Compostos
(após as 17hs & sala vazia)
91. Sistemas de Informação - Integridade
Regras ECA: Evento-Condição-Ação
ON ( Evento) IF (Condição) DO (Ação)
QUESTÕES CRÍTICAS COM REGRAS ECA:
• como detectar um evento?
• múltiplos eventos, qual a regra se aplica primeiro?
• múltiplas condições?
• múltiplas regras, qual aplicar primeiro? E se uma
invalida a outra? E loops?
• uma regra é uma transação?
92. Sistemas de Informação - Integridade
Uso de Regras ECA
1) Disparo automático de ações – Regra de Produção
EXEMPLO
evento fim-do-mês
quando mês(hoje)< mês(prox(hoje)) & dia-sem(hoje)¹ sábado &
dia-sem(hoje) ¹ domingo));
regra pagamento
ON fim-do-mês IF valor-caixa ³ å EMPREGADO.salario(e)
DO emitir folha-de-pagamento.
ON EMPREGADO ¬ insert (p,s) IF s < sal-mínimo
DO p ¬ establish(tem-salário(Sal-mínimo))
(BANCO DE DADOS ATIVO)
93. Sistemas de Informação - Comportamento
2) Restrições de Integridade -
o Evento determina o momento do teste (uma operação),
a Condição determina a violação da restrição
a Ação aborta a operação caso a restrição seja violada
EXEMPLOS
ON establish(tem-salário(p,s))
IF s < salário-mínimo DO ABORT
ON p:PROFESSOR ¬ establish(orienta(p,a))
IF #(orienta(p,*)>5 DO ABORT
94. Sistemas de Informação - Comportamento
3) Regras de Dedução –
o Evento é um predicado (a ser validado)
a Condição são os fatos, obtidos do BD para validar o evento
a Ação é uma confirmação do predicado do evento
EXEMPLOS
ON avô(x,y)? IF (x.pai=z & z.pai=y)) DO avô(x,y)
ON privilegiado(x)?
IF x.salario=s & s>chefe(x).salario
DO privilegiado(x)
96. QUESTÕES ABERTAS DA ORIENTAÇÃO
A OBJETOS
•1) O que é um objeto?
• Estático/Estrutural:
• abstrato: empresa, idade, inteiro, nome, text, cor, salário,
• relacionamento, evento longo
• concreto: pessoa, máquina, prego
• Dinâmico/Comportamental: evento curto, operação, transação, mensagem
• Regra: restrição de integridade, regra de produção, regra de dedução
• Fatos: dados compostos, mensagens, informação implícita,
• dados minados, informação incompleta
• Multimídia: textos, frases, palavras, letras,
imagens paradas ou animadas, músicas,
• Intenção: esquemas, classes, contextos, categorias, estatísticas
97. QUESTÕES ABERTAS DA ORIENTAÇÃO
A OBJETOS
2) Identificação de Objetos
• Problema conceitual ou de implementação ?
• OID está para OO como 1FN para o modelo relacional
• muito fundamental mas orientado à implementação
98. Sistemas de Informação - Integridade
Exercício
Para o esquiema conceitual do Sistema de Saúde defina duas regras
em OCL, para realizar o seguinte:
1. Uma restrição de integridade que garante que, ao inserir um
tratamento, a dosagem de um componente de um produto não
é maior do que a dosagem na associação deste produto no
tratamento que associa o produto a um mal (em OCL);
2. Uma regra que, se um usuário relata que um tratamento
sugerido como benéfico não fez bem, remove este tratamento
do sistema.
100. Sistemas de Informação - Comportamento
Comportamento
Analogia com a linguagem:
Substantivo Û Entidade, objeto
Adjetivo Û Atributo
Verbos de ligação Û Relacionamentos
(aqueles que dão qualidades,
características ou indicam estado do sujeito)
Verbos ativos Û Operação
(transitivos e intransitivos)
101. Sistemas de Informação - Comportamento
Operações
1) Operações aplicativas pré-definidas
2) Operações aplicativas ad-hoc
3) Operações primitivas do sistema ou ações
102. Sistemas de Informação - Comportamento
Operações
Forma abstrata: pré-condição [operação] pós-condição
EXEMPLO
EMPREGADO.salário=s[aumento(fator)]EMPREGADO.salário=s*fator
Forma concreta: operação{pré-condição; algoritmo}
aumento(fator)
{EMPREGADO.salário=s; EMPREGADO.salário:=s*fator}
103. Sistemas de Informação - Comportamento
Falha nas condições:
• advertência (WARNING)
• cancelamento da operação (CANCEL)
• cancelamento da transação (UNDO)
Operações
EXEMPLO
EMPREGADO.salário=s;
[Aumento(fator)]
EMPREGADO.salário:=s’& s ³ s’: WARNING
& s’< sal-min : CANCEL
104. Sistemas de Informação - Comportamento
Comportamento global
UML
1) Diagrama de Sequência
2) Diagrama de Colaboração
3) Diagrama de Estados
4) Diagrama de Atividades
105. Diagrama de Seqüência
Janela de entrada
de pedido p: Pedido : ItemPedido :ItemEstoque
preparar()
* [para cada item do pedido]
preparar()
emEstoque := verificar()
[emEstoque]
remover() estoqueBaixo :=
verificEstoqueBaixo()
:ItemRenovEstoque
:ItemEntrega
[estoqueBaixo]
<<criar>>
[emEstoque]
<<criar>>
LIMITAÇÃO: Um diagrama para cada sequência
106. Diagrama de Colaboração
J a n e la d e e n t r a d a
d e p e d id o
p : P e d id o
1 : p r e p a r a r ( )
1 . 1 : * [ p a r a c a d a it e m d o p e d id o ]
1 . 1 . 2 . 1 : e s t o q u e B a ix o : =
: It e m P e d id o : It e m E s t o q u e
: It e m R e n o v E s t o q u e
: It e m E n t r e g a
p r e p a r a r ( )
1 . 1 . 1 : e m E s t o q u e : = v e r if ic a r ( )
1 . 1 . 2 : [ e m E s t o q u e ] r e m o v e r ( )
v e r if ic E s t o q u e B a i x o ( )
1 . 1 . 2 . 2 [ e s t o q u e B a ix o ]
< < c r ia r > >
1 . 1 . 3 : [ e m E s t o q u e ]
< < c r ia r > >
LIMITAÇÃO:
Um diagrama
para cada
sequência
107. Ocioso
Manutenção
fazerManutenção
Diagrama de Estados
Validando
Selecionando Processando
Imprimindo
[continuar]
[não continuar]
H
entry / lerCartão
exit / ejetarCartão
cartãoInserido
cancelar
Ativo
LIMITAÇÃO: Um diagrama para cada objeto
pequeno número de estados
108. Diagrama de Atividades
Procurar bebida
[achou café]
H
Pessoa
H
[sem café] [sem Coca]
[achou Coca]
Pegar lata
de Coca
Beber
Adicionar água à
máquina
Colocar café
no filtro
Colocar filtro
na máquina
Ligar máquina
Filtrar café
Pegar
xícara
Colocar café na
xícara
LIMITAÇÃO: Não
mostra a interação
com os objetos
109. Sistemas de Informação - Comportamento
Comportamento global
SOLUÇÃO GLOBAL:
Redes de Petri
110. Sistemas de Informação - Comportamento
Redes de Petri
Uma Rede e Petri descreve, em um diagrama, a
interação de todos os
Objetos/Lugares/Condições
entre si por meio de
Transições
111. Sistemas de Informação - Comportamento
c1
Prima-vera
c3
Verão
e1
c2
Verão
Tropical
c5
Inverno
Tropical
c4
c6
e2
e3
e4
Inverno Outono
Rede de Petri das quatro estações
20/3
20/6
20/9
20/12
112. Sistemas de Informação - Comportamento
p2
p5
t1 t2 t3 t4
Preparar
produção
Produção Consumo Preparar
consumo
p1
p3
p4
Sistema produtor / consumidor
113. Sistemas de Informação - Comportamento
p2
p5
t1 t2 t3 t4
Preparar
produção
Produção Consumo Preparar
consumo
p1
p3
p4
Sistema produtor / consumidor
114. Sistemas de Informação - Comportamento
Redes de Petri
Uma Rede de Petri é uma tripla
R = <S,T,A>
tal que
S é o conjunto dos chamados S-elementos (de state);
T é o conjunto dos T-elementos (de transições) e
A Í (S´T) È (T´S), são as arestas que descrevem o fluxo.
Em outras palavras, uma Rede de Petri é um
grafo dirigido bipartido
(com dois tipos de nós tal que nós vizinhos sempre
são de tipos distintos).
115. Sistemas de Informação - Comportamento
Redes de Petri
Dado uma Rede de Petri
R = <S,T,A>
.
Préconjunto e Pósconjunto
*t = { s Î S / <s,t> Î A} é o préconjunto de t, e
t* = { s Î S / <t,s> Î A} é o pósconjunto de t.
116. Sistemas de Informação - Comportamento
Redes de Petri
Quatro-Estações = <S,T,A>, com
S = {c1=primavera, c2=verão-tropical, c3=verão, c4=outono,
c5=inverno-tropical, c6=inverno}
T = {e1, e2, e3, e4}
A = {<c1, e1>, <e1, c3>, <c3, e2>, <e2, c4>, <c4, e3>,
<e3, c6>, <c6, e4>, <e4, c1>, <e4, c2>, <c2, e2>,
<e2, c5>, <c5, e4>}
117. Sistemas de Informação - Comportamento
Redes de Petri
Uma marcação de uma rede <S,T,A> é uma função M: S ® N
que associa a cada S-elemento o número de marcas neste elemento.
Definimos agora
Se N={0,1} a rede é uma Rede Condição/Evento (C/E)
Se N={0,1,2,3,...} a rede é uma Rede Lugar/Transição (P/T)
Em uma Rede P/T (Lugar /Transição) pode haver uma função limite:
lim: S ® N que define para cada lugar um limite máximo de marcas:
M(s) ≤ lim(s)
118. Sistemas de Informação - Comportamento
Redes de Petri
Dada uma marcação M, uma transição tÎT está habilitada
a ser acionada quando todo elemento de *t (isto é, toda entrada)
possui pelo menos uma marca, e toda saída está livre, ou seja
"s [s Î *t Þ M(s) ¹ 0) & (s Î t* Þ M(s) < lim(s)]
Acionamento de uma transição cria uma nova marcação
M’, tal que
M'(s) = M(s)-1 Se s Î *t
M'(s) = M(s)+1 Se s Î t*
M'(s) = M(s) nos outros casos.
120. Sistemas de Informação - Comportamento
Redes de Petri
Acionamento de uma transição habilitada
121. Sistemas de Informação - Comportamento
Modelagem com Redes de Petri
SEQUÊNCIA
CONCORRÊNCIA
CONFLITO
CONFUSÃO
122. Sistemas de Informação - Comportamento
Redes de Petri
Uma marcação M é alcançável a partir de Mo, se
existe uma sequência de passos que leva a M:
P1 Pn
Mo ----> .... -------> M
O fecho de uma marcação M, denotado por /M,
é o conjunto de todas as marcações alcançáveis
a partir de M.
123. Sistemas de Informação - Comportamento
Redes de Petri
r
s
t u
a
b
c
{}
{a}
{b}
{a,b}
{c}
{b,c}
{a,b}
{a,b,c}
u
s
r
r
s
s
t
r s
O fecho da marcação M0= {}
r
124. Sistemas de Informação - Comportamento
Sistema de Petri
Dado uma rede de Petri R=<S,T,A> e uma marcação M de R,
Denominamos o par <R,M> um Sistema de Petri
a) ele é fracamente vivo quando existe uma sequência infinita de
passos a partir da marcação inicial.
b) ele é vivo quando é fracamente vivo e todas transições estão
vivas.
c) ele é fortemente vivo quando para todas as marcações do fecho
/M, todas transições são vivas.
125. Sistemas de Informação - Comportamento
Redes Temporais.
Rede Temporal nas transições:
<t1,t2>
Rede Temporal nos lugares:
<t1,t2>
<t3,t4>
Rede Temporal nas arestas: <t1,t2>
<t3,t4>
<t5,t6>
126. Sistemas de Informação - Comportamento
Redes de Alto Nível.
Uma Rede de nivel 1:
Uma Rede de nivel 3: a
b
b
Uma Rede de nivel 2:
b
x x
x=b
127. Sistemas de Informação - Comportamento
Redes de Alto Nível.
Uma Rede de nivel 3:
a
b
x
y
x
x=y
b
b
x b
128. Sistemas de Informação - Comportamento
Redes de
Alto Nível -
conversão
a
b
x
y
x
x=y
a
b
b
x
129. Sistemas de Informação - Comportamento
Redes de Alto Nível.
Uma Rede Predicado/Transição (PrT) é uma Rede de Petri
R = < P, T, A >
tal que
1) os elementos de P são conjuntos de elementos que satisfazem
a um predicado P(X1,...,Xn);
2) A cada elemento de A, <p(x1,...,xn), t> ou <t, p(x1,...xn)>
está associado uma tupla de n variáveis <v1,...,vn>;
3) A cada transição t Î T está associado uma conjunção de
fórmulas, envolvendo as variáveis das arestas de *t e t*,
chamada condição de transição
130. Sistemas de Informação - Comportamento
Redes de Alto Nível.
• Rede PrT habilitada
• Acionamento de uma transição
132. Sistemas de Informação - Comportamento
L1 Redes Hierárquicas
L2
L3
espera
T
Subrede
início fim
ANALOGAMENTE PODE HAVER HIERARQUIAS NOS LUGARES
133. Sistemas de Informação - Comportamento
Redes de Alto Nível - Exemplo
IDADE(P,I)
<p7,30>
<p2,20>
<p3,55>
demissão
_____________
<p7,d1>
ADMISSIVEL(P,
D) admissão
_____________
~$d’(trab(p,d’)
& i>17
d
DEPARTAMENTO(D)
<p3,d1
>
TRABALHA(P,D)
DEMITIVEL(P)
CANDIDATO(P)
<p1,d5
>
p2
p1
p5
p7
d1 d2
d5
<p,i>
<p,d>
<p,d>
p
p
p
p
<p,d>
p3
<p,d>
<p,i>
<p1>
<p1,16>
<p1, d5>
134. Sistemas de Informação - Comportamento
RUemdae Rse ddee P rAedlitcoa dNo/íTvrealn s–iç ãdoe (fPirnT)i çé ãcoom dpeotsatal hpoarda.
1) uma Rede de Petri R = < P, T, A >
2) Um universo de objetos, O
3) Um conjunto de variáveis de objetos, VO
4) Uma linguagem formal de fórmulas de transição, F
5) Uma linguagem de descrição de tipos de objetos OT,
6) a cada tipo t e a cada objeto o está associado um inteiro chamado de
aridade de t, nt ou aridade de o, no.
7) Uma função a: P ® OT, que determina o tipo do predicado
8) Uma função b: T ® F, que associa uma regra a cada transição
9) Uma função g: A ® P(VO), sendo que | g(a)| = nt, em que t é o tipo do
predicado p contido em a. (a= <p,t> ou a = <t,p>)
10) Uma função de marcação inicial M0: P ® P(O), sendo que todo oÎ M0(p)
é da mesma aridade ("o1,o2 Î M0(p) vale no1 = mo2)
135. Sistemas de Informação - Comportamento
Redes de Alto Nível – definição detalhada.
Uma transição t de uma rede PrT está habilitada quando:
• para toda aresta <p,t> Î A existe um objeto o Î M0(p) que satisfaz
uma instanciação da fórmula em b(t). Denotamos isto por b(t)[o]=v.
• para toda aresta <t,p> Î A não existe um objeto o Î M0(p) que satisfaz
a instanciação da fórmula em b(t).
O acionamento de uma transição habilitada t, consiste em
definir uma nova marcação M1 tal que M1 = M0 exceto:
• para todo p Î M0(t-) existe um objeto o Î p, tal que b(t)[o]=v, e
M1(p)= M0 -{o}
• para todo p Î M0(t+) existe um objeto o Î p, tal que b(t)[o]=V , e
M1(p)= M0 È{o}
136. Sistemas de Informação - Comportamento
Redes de Alto Nível.
Exercício 2014:
Desenvolver uma Rede de Petri de alto nível para uma empresa de taxis espalhados em uma cidade.
Cada taxi tem uma identificação (id), uma localização (loc) que indica o local onde se encontra e um
status (s) que pode ser “livre” ou “ocupado”.
O sistema deve controlar o seguinte:
•A inserção de novos taxistas no sistema, em estado “livre’;
•O registro de uma requisição de viagem de um passageiro (p) que está em um local lp.
• Com uma requisição de viagem o sistema escolhe o taxi mais próximo, baseado em uma função
dist(l1,l2) que calcula a distância entre duas localizações. Este taxi passará para o estado “ocupado”;
• Após o término da viagem, o taxi volta ao estado “livre” em um outro local. Além disso essa viagem é
guardada em um históricos de viagens que terá a identificação do taxista e locais de partida e fim da
viagem;
• A qualquer instante podem ocorrer as seguintes alterações:
• A mudança do local de um taxi “livre”
• A mudança de status de um taxista de “livre” para “ocupado” e vice versa.
• A saída de um taxi do sistema.
137. Sistemas de Informação - Comportamento
Redes de Alto Nível.
Exercício:
Para um sistema de roteiros turísticos queremos fazer uma Rede de Petri com as transições: insere-vôo,
insere-hospedagem e a outra insere-evento. Para tal, considere os seguintes predicados:
- VÔO(R, TIPO, T1,T2) – R é o cód. do roteiro, TIPO é ‘ida’ ou ‘volta’ e T1 e T2 são os dias de partida
e chegada do vôo;
- HOSPEDAGEM(R, H, T1, T2) - R é o cód. do roteiro e H é o cód. da hospedagem;
- EVENTO(R, E, T1, T2) – E é o código do evento
-FLAG(R) – este predicado deve ser colocado entre as transições ‘insere-hospedagem’ e ‘insere-evento’
para, por meio de uma marca, garantir que primeiro é definido a hospedagem e depois os eventos.
NOTAS: (1) a tua rede deve manter a consistência temporal entre os vôos, a hospedagem e os eventos.
138. Seja a seguinte Rede Predicado/Transição que modela o acompanhamento de jogos de futebol:
Sistemas de Informação - Comportamento
Redes de Alto Nível – Exercício
Seja a seguinte Rede Predicado/Transição que modela o acompanhamento
de jogos de futebol:
J-MARCADO J-EM-ANDAMENTO
J-ENCERRADO
TIME
marcar iniciar gol encerrar
Os predicados têm a seguinte estrutura: TABELA
TIME(nome, cidade)
J-MARCADO(time-A, time-B, cidade)
J-EM-ANDAMENTO(time-A, gols-A, time-B, gols-B)
J-ENCERRADO(time-A, gols-A, time-B, gols-B)
TABELA(time, pontos-ganhos)
1. Complete a rede colocando variáveis nas arestas, criando as transições de entrada e considerando as seguintes regras:
• Um jogo só pode ser marcado na cidade de um dos times;
• A transição de ‘encerrar’ atualiza a tabela da seguinte forma: se houve empate, cada time recebe 1 ponto, uma
vitória de 1x0 dá dois pontos ao vencedor e qualquer outra vitória, da 3 pontos ao vencedor.
2. Considere uma seqüência de transições marcar, iniciar, gol, etc. para dois jogos simultâneos e mostre o
conteúdo de cada predicado. Use uma tabela em que cada coluna representa um predicado e cada linha
representa o acionamento de uma transição da sequência. Cada célula da tabela conterá o estado do predicado
no respectivo instante. Ants de iniciar com a transição ‘marcar’ considere que os predicados TIME e TABELA
já contêm como instâncias os quatro times que irão jogar.