ì
Análise e Modelação de Sistemas Aula T02 – Introdução à Modelação Conceptual (cont.) Referência:
– Conceptual Modeling of Informa4on Systems (Capítulo 1)
Resumo
q Esquema Estrutural q Base informacional q Esquema comportamental q Restrições de integridade q Regras de inferência q Qualidade dos modelos conceptuais q Cronologia da modelação conceptual
Modelação
2
Esquema estrutural
ì O esquema estrutural representa o domínio
ì O estado do domínio consiste de um conjunto de propriedades relevantes
ì A relevância das propriedades depende do objecOvo do sistema e dos stakeholders
Modelação
3
Pressuposto do Esquema Estrutural
q Um domínio está composto por objectos, relações e conceitos. Os objectos e relações são classificados dentro de conceitos.
q Exemplo: objectos classificados como clientes, productos e relações entre clientes e productos classificadas como vendas.
q Pressuposto parOlhado pela linguís4ca, lógica de primeiro ordem e ciências cogni4vas.
Modelação
4
Conceitos, objectos e relações
Modelação
5
Person" Reads" Book"
Objectos
Conceitos
Relações
Conceitos
Pressupostos adicionais
ì Os modelos conceptuais de sistemas de informação incluem pressupostos adicionais: ì Os objectos, relações e conceitos incluem várias
propriedades que devem ser especificadas.
ì Fornecem uma vista que mostra as mudanças do domínio (Vista Comportamental)
Modelação
6
Propriedades
Modelação
7
Person" Reads" Book"
Objectos
Conceitos
Relações
Conceitos Idade
Título
Esquemas conceptuais e ontologias ì Quando assumimos que um domínio está composto de
objectos, relações e conceitos, assumimos um compromisso ontológico
ì Nos sistemas de informação este compromisso chama-‐se ESQUEMA CONCEPTUAL
ì O conjunto de conceitos de um esquema conceptual consOtui uma conceptualização.
ì Em áreas da engenharia informáOca (par4cularmente na inteligência ar4ficial), a especificação (Opicamente formal) de uma conceptualização é também chamada ONTOLOGIA.
Modelação
8
O Conceito de “CONCEITO”
q Idea genérica ou abstracta generalizada a parOr de instâncias parOculares
q Ideia ou imagem mental de um groupo ou classe de objectos formada pela combinação de todos os seus aspectos
q Um conceito tem extensão e intensão ü Extensão: conjunto de possíveis instâncias ü Intensão: propriedade parOlhada por todas as
instâncias Modelação
9
A operação de Classificação
q Enquanto seres humanos, nós usamos os conceitos para estruturar a nossa percepção de um domínio
q Os conceitos nos ajudam a classificar as coisas
q O que observamos depende dos conceitos que empregamos
q A classificação é a operação que associa um objecto com um conceito.
Modelação
10
A operação de Instanciação
q A operação inversa, a instanciação, nos dá uma instância de um conceito.
q O conjunto de objectos que consOtui as instâncias de um conceito num momento dado, chama-‐se população do conceito
Modelação
11
Tipos de entidade vs entidades
q As enCdades são objectos individuais é idenOficáveis
q Um Cpo de enCdade é um conceito cujas instâncias são en4dades
q Uma en4dade pode ser instância de vários 4pos de en4dade q João (objecto) pode ser instância de pessoa e aluno
q Um conceito pode ter 0 en4dades
q Um objecto novo que não pode ser classificado nos conceitos existentes requer a definição de um novo conceito.
Modelação
12
Tipos de relação vs relações
q Os conceitos associaOvos chamam-‐se relações
q As relações são classificadas em Cpos de relação i.e. são instâncias dum 4po de relação dado
Modelação
13
Conceitos, classificação e instanciação
Modelação
14
Person" Reads" Book"Concept"
entity/"relationship"
Instance of"instantiation"
classification"
Exemplos
Modelação
15
Esquema estrutural e conceptual
ì O conjunto de Opos de enOdade e relação uOlizados para observar o estado de um domínio chama-‐se à conceptualização desse estado
ì A descrição dessa conceptualização é chamada ì Esquema conceptual do estado ou ì Esquema estrutural
ì O esquema estrutural oferece uma vista desse estado
ì O conjunto formado pelo esquema estrutural e o esquema comportamental (próxima aula) chama-‐se o esquema conceptual
Modelação
16
Base Informacional
q A vista estrutural descreve os Opos de enOdades, relações e as suas propriedades (em BD é o esquema da BD)
q A base informacional contém as enOdades e relações assim como a sua classificação nos seus respecOvos Opos (em BD são as tabelas)
q A base informacional representa o estado do domínio
Modelação
17
Base Informacional
Modelação
18
Person" Reads" Book"Company" Works"
Person(A)"Book(B)"Reads(A,B)"
Conceptual schema of the domain" Conceptual schema of the " information system"
Information base"Domain"
Person"Book"Reads"
O Esquema comportamental
ì Eventos do domínio e eventos estruturais ì Mudam estado do domínio
ì O estado do domínio muda se: ì As (enOdades + relações) t ≠ (enOdades+relações)t+1 ì Mudança de estado = Σeventos estruturais
ì Definição de evento estrutural depende da linguagem de modelação
ì Em lógica de 1º ordem há dois; (1) inserção e (2) remoção de factos
ì Mudança de estado do domínio através de 1 ou mais eventos estruturais válidos (em BD evento ≈ transacção)
Modelação
19
Comportamento: Acções
ì Os sistemas de informação realizam acções
ì As acções mudan a base de informação -‐> mudam o estado do domínio -‐>
ì As acções são eventos
ì Eventos de pedido de acções (acOon request) ì Pedido a um SI para executar uma acção ì Pedidos são explícitos, temporais ou gerados ì Os pedidos explícitos são externos (por um uOlizador) ou
induzidos (por outra acção)
Modelação
20
Comportamento: Acções II
ì Tipos de pedido de acção ì A noCficação de eventos de domínio ocorre quando os
uOlizadores informam directamente ao sistema a ocorrência de um evento de domínio.
ì As consultas (queries) fornecem informação ao iniciador do pedido.
ì O pedido temporal é iniciado automaOcamente com a passagem de um dado período de tempo
ì O pedido gerado é produzido quando uma dada condição és saOsfeita.
Modelação
21
Tipos de evento I
ì Os eventos de domínio ou os pedidos de acção também são instâncias de conceitos.
ì Um Cpo de evento é portanto, um conceito cujas instâncias são eventos
ì Os eventos têm propriedades ou caracterís4cas que os relacionam com outras en4dades.
Modelação
22
Tipos de evento II
ì Todos os eventos estão relacionados com a en4dade instante de tempo, que corresponde ao seu momento de ocorrência
ì Os Cpos de evento relevantes e o seu efeito sobre o estado do domínio fazem parte do esquema comportamental
ì Os pedidos de acção e os seus efeitos sobre o estado do domínio fazem parte da descrição das funções específicas do sistema
Modelação
23
Tipos de evento
Modelação
24
Transferência" Dinheiro"Conta"
Exemplo: transferência bancária ì Evento de domínio: transferência de M euros da conta 1 à 2
ì Base informacional ì Balance (conta 1, saldo 1) ì Balance (conta 2, saldo 2)
ì Eventos estruturais ì apagarBalance (conta 1, saldo 1) ì apagarBalance (conta 2, saldo 2) ì inserirBalance (conta 1, saldo 1-‐M) ì inserirBalance (conta 2, saldo 2+M)
Modelação
25
Exemplo: inscrição aluno ì Evento de domínio: Enviar mensagem M para Receitor R
ì Base informacional ì Nº alunos (disciplina, valor)
ì Eventos estruturais ì EnviarMensagem (M,R) ì MudarEstado(M, R)
Modelação
26
Hierarquia de Conceitos
Modelação
27
conceito
Tipo de relação
Tipo de enOdade
Pedido de ação
Temporal Explícito Gerado
Induzido Externo
Consulta NoOficação
Tipo de evento
Restrições de integridade I
ì Uma base de informação é válida se todos os seus factos estão certos
ì Uma base de informação está completa se contém todos os factos relevantes
ì Problemas em: ì Mensagens de entrada ì Observação do domínio
ì Podem causar a inserção de factos falsos ou incompletos
Modelação
28
Restrições de integridade II
ì Integridade da base de informação = válida + completa
ì Quase sempre, a integridade requer intervenção humana ì Verificar factos vs o domínio
Modelação
29
Restrições de integridade III
q A manutenção da integridade pode ser custosa e/ou morosa
q É possível criar mecanismos que para garanOr certo nível de integridade
q Esses mecanismos são definidos através de condições ou regras, chamadas restrições de integridade
Modelação
30
Restrições de integridade IV
q Exemplo: ü Domínio composto pelos Opos empregado e
projecto, onde um empregado está sempre associado a um ou mais projectos
ü Regra de integridade: todos os empregados estão alocados pelo menos a 1 projecto
q As restrições de integridade fazem parte do esquema conceptual
Modelação
31
Regras de inferência
q Sem capacidade de inferência um sistema só poderia fornecer a informação recebida do seu ambiênte
q A capacidade de inferência de um sistema consta de: ü Regras ü Mecanismos de inferência
q Uma regra de inferência define uma enOdade ou relação em termos de outras (esquema conceptual)
q O mecanismo de inferência usa as regras para derivar informação nova (estrutura interna do sistema, código)
Modelação
32
Importância do esquema conceptual num SI
ì Essencial para realizar as suas funções
ì Todo sistema de informação tem embebido um esquema conceptual. ì Enquanto mais explícito, mais flexível,
transparente e permite maior interoperabilidade
ì Um programador requer conhecer o esquema conceptual do sistema para poder desenvolve-‐lo
Modelação
33
Qualidade do modelo conceptual
q CompleOtude
q ExacOdão (correctness)
q Compreensibilidade (Simplicidade)
q Independente do desenho do sistema
q Estabilidade ü Flexibilidade ü Extensibilidade ü Mudanças pequenas nos requisitos => mudanças
pequenas no esquema Modelação
34
Completitude vs Correção
Modelo conceptual completo è C contém D Modelo Conceptual Correcto è D contém C Modelo conceptual completo e correcto è D ≅C
Modelação
35
D" C"
Required"knowledge"
Conceptual" schema"
Fig. 1.7. Completeness and correctness
História da modelação conceptual I
ì Modelos baseados em lógica ì Modelo do Young and Kent (1958)
ì Definir um sistema de forma abstracta, sem detalhes de implementação ì Conceitos: ì documentos de entrada e saída, ì documentos contém conjunto de informações interligadas, ì documentos de saída produzidos de documentos de entrada ou
condições dadas
ì “InformaOon Algebra” (CODASYL, Bosak et al 1969) ì Conceitos: Entradas, transformações e saídas ì Sem referência aos aspectos vsicos
ì Formato de representação de dados, organização dos ficheiros
Modelação
36
História da modelação conceptual II
ì Program Statement Language (PSL, inícios dos 70) ì ObjecCvo: gerar código automaOcamente a parOr de
especificações (não aOngido) ì CASE pioneiro desenvolvido PSA
ì Em Europa, Langefors (1974) origina “InformaOon Analysis”
ì Structured Analysis & Design Technique (SADT) ì desenvolvido por Marca & McGowan em 1988 ì Diagramas de fluxos de dados
Modelação
37
História da modelação conceptual III
ì Modelos semânCcos de dados ì Modelos de BD dominantes (hierarquico, redes,
relacional) ì Baseados no modelo de registo (record model) ì Em 1972 o comité ANSI/X3/SPARC idenOfica a
necessidade de defnir um modelo conceptual de BD (entre o modelo externo (do uOlizador) e o interno (do programador) ì Representa a visão da empresa da estrutura dos seus dados ì Abrial’s binary model (1974) ì Chen’s ER model (1976) ì Influenciados pela IA (redes semânOcas, enquadramentos)
Modelação
38
História da modelação IV
q Modelos conceptuais de sistemas de informação ü Relatório “Conceitos e terminologia do esquema conceptual e
base de informação” (ISO/TC97/SC5,1982) ü CRIS conferences (1982-‐94), 13 system development
methodologies, with the conceptual model at their core ü Influenciados por representação do conhecimento e
engenharia do so�ware
q Orientação a objectos ü Finais dos 80, várias linguagens de modelação (ex.Grady &
Booch) ü Esforços de standardização liderados pelo OMG ü UML (adoptado pela OMG em 1997)
Modelação
39