590 likes | 675 Views
Elementos para a Construção de uma Memória Organizacional. Edson Emílio Scalabrin telefone: 0xx41-330-1746 e-mail: scalabrin@ppgia.pucpr.br download : http://www.ppgia.pucpr.br/~scalabrin. Plano. Assunto: A construção de uma memória organizacional. Objetivos:
E N D
Elementos para a Construção de uma Memória Organizacional Edson Emílio Scalabrintelefone: 0xx41-330-1746e-mail: scalabrin@ppgia.pucpr.br download: http://www.ppgia.pucpr.br/~scalabrin
Plano • Assunto: • A construção de uma memória organizacional. • Objetivos: • Descrever alguns pontos importantes relativos a fase de construção de uma memória organizacional. • Apresentar algumas tecnologias/metodologias de implementação de sistemas computacionais • Apresentar um projeto de capitalização de conhecimentos usando CBR e Agentes
Elementos para a construção de MOPrimeira etapa Tarefa: • fazer um inventário sobre o estado atual Objetivo: • Determinar as pessoas da empresa envolvidos pelo operação de Capitalização (tanto como fonte de expertise como usuários em potencial) • Determinar as fontes documentárias e as bases de dados disponíveis na empresa.
Elementos para a construção de MOPossíveis fontes . . . Exemplos: • especialistas humanos • documentos em papel ou eletrônicos existentes • notas, relatórios, documentos contratuais, documentação técnica, atas de reuniões,... • mensagens trocas por correio eletrônico • base de dados • dicionários • glossários, esquemas de CAD ...
Elementos para a construção de MOAntecipando o registro formal dos . . . • O estudo do ambiente de trabalho dos futuros usuários permite escolher o modo de materialização da memória • Esta memória pode compor-se de documentos em papel ou eletrônicos tornando explícitos os conhecimentos dos especialista da empresa
Elementos para a construção de MOFormas de implementação . . . Por meio de: • um sistema de gestão de documentação, que explore os documentos existentes da empresa • uma base de dados relacional • um armazém de dados (data warehouse) • uma base de conhecimentos • uma base de casos • um sistema baseado na Web • um sistema multi-agente
Elementos para a construção de MOTecnologia de implementação . . . Objetivo • Fazer um sobrevôo as tecnologias: banco de dados relacional, armazém de dados (d/w), base de casos, agentes de software. Forma de apresentar • Evolução tecnológica do processamento de dados e da informação, e apresentação de uma aplicação.
Tecnologia de ImplementaçãoEvolução histórica . . . • 1as. Edições de BD não separavam: • processamento de transações (online) • processamento em lote • processamento analítico • Edições subsequentes promoveram a separação : • para atender necessidades operacionais • para atender necessidades informacionais ou analíticas • Evolução = PC + LQ Geração.
Tecnologia de ImplementaçãoSeparação em operacional e informacional Razões da divisão: • os dados que atendem as necessidades operacionais são fisicamente diferentes dos dados que atendem as necessidades informacionais; • a tecnologia de suporte é diferente; • a comunicação dos usuários com os BDs é diferente; • as características de processamento do ambiente operacional e do ambiente informacional são fundamentalmente diferentes.
Tecnologia de ImplementaçãoProcessamento informacional Definição:Processamento informacional • É o processamento que atende às necessidades dos gerentes durante o processo de tomada de decisões Particularidade: • O processamento analítico examina amplos espectros de dados para detectar tendências • A execução de um processamento analítico requer acesso a muitos registros.
Tecnologia de ImplementaçãoEvolução tecnológica 1960Arquivos mestres, relatórios • 1965 • Explosão dos arquivos mestres • complexidade de manutençãoe desenvolvimento • sincronização dos dados • hardware
Tecnologia de ImplementaçãoEvolução tecnológica • 1970 • DASD (Direct access storage device) • SGBD • BD • “uma única fonte de dados paratodo o processamento” 1975 Processamento de transaçõesonline e de alta performance
Tecnologia de ImplementaçãoEvolução tecnológica MIS/SAD Processamentode transações 1980PCs, tecnologia L4G O paradigma de um único BD para todos os fins
Tecnologia de ImplementaçãoEvolução tecnológica - Programas de extração Definição:Programas de extração • São programas mais simples que varrem um arquivo ou BD, usando alguns critérios de seleção, e, ao encontrar dados que atendem aos critérios, transporta os dados para outro arquivo ou BD.
Tecnologia de ImplementaçãoEvolução tecnológica - Programas de extração 1985 - PCs, tecnologia L4G Iniciar com alguns parâmetros, pesquisar um arquivo baseado na satisfação dos parâmetros, e, então passar os dados para outro local. • Por que processamento de extração ? • Performance e controle
Tecnologia de ImplementaçãoEvolução tecnológica -Arquitetura D.E. Ambiente de sistemas herdados
Tecnologia de ImplementaçãoEvolução tecnológica -Arquitetura D.E. Problemas da arquitetura D. E . • credibilidade dos dados • produtividade • impossibilidade de transformar dados em informação
WallStreetJournal BusinessWeek Tecnologia de ImplementaçãoEvolução tecnológica -Arquitetura D.E. Dept. A10% SGBD A SGBD B Dept. B-20% SGBD C Diferencial algorítmico: A) domingo à tarde + contas antigas B) 4a feria à tarde + contas grandes Nenhuma fonte de dados comum para começar
Tecnologia de ImplementaçãoEvolução tecnológica -Arquitetura D.E. Problemas de produtividade Caso 1: • a gerência pretende produzir um relatório corporativo utilizando os diversos arquivos e conjuntos de dados que acumulou durante os anos. • O que fazer ?
Tecnologia de ImplementaçãoEvolução tecnológica -Arquitetura D.E. Continuação caso 1: O projetista destacado para a tarefa decide que há três coisas que devem ser feitas para produzir o relatório corporativo: • localizar e analisar os dados para o relatório • compilar os dados para o relatório • obter recursos humanos de programação / análise para realizar os pontos acima.
Produzir um relatóriocorporativo, varrendotodos os dados x x x x x Para localizar os dadosé necessário examinarmuitos arquivos x x x x x Muitos programas de extração, todos customizados, precisam cruzar diversas barreirastecnológicas. x x x x x x Tecnologia de ImplementaçãoArquitetura D.E não conduz a produtividade
x x x x x x x x x x Localizar os dados 9 - 12 mesesObter os dados 15- 24 meses Programadores/analistas ???---------------------------------------------------------- 3 - 5 anos OBS:Exceto ser em raras circunstâncias, o trabalho realizadopara o 1o. Relatórionão prepara o caminhopara os demais. 1o. Relatório2o. Relatório. . . No. relatório 3 - 5 anos Tecnologia de ImplementaçãoArquitetura D.E. - Tempo para geração dos . . .
Tecnologia de ImplementaçãoEvolução tecnológica - do à informação “. . . já é difícil descobrir quais dados estão associados a uma conta, logo tentar extrair informações dessas aplicações segundo um critério geral é quase impossível . . .” Problema: • a construção das aplicações jamais levou em conta a noção de integração ; • decifrar uma informação não é uma tarefa fácil para o analista de SAD.
Banco de Dados Modelo Relacional
Modelo Relacional • Sistemas Operacionais: Geralmente implementados através de banco de dados relacionais. • Sistemas Analíticos: Geralmente implementados através de um banco de dados dimensional. SISTEMA OPERACIONAL SISTEMA ANALÍTICO PROJETOBOTTOM-UP PROJETOTOP-DOWN
Tabela Produto Chave_produto Descrição Marca Categoria Preço Compra Preço Venda Tabela Loja Chave_loja endereço nome Tabela Venda Chave_venda Chave_produto Chave_loja quantidade nota data Modelo Relacional • Definição: Representa os dados como uma coleção de tabelas.
venda No modelo relacional os dados do produto não precisam ser duplicados para cada registro de venda. 1 2 3 produto 4 loja X a b Y Relacionamento • No modelo relacional, as tabelas mantém um relacionamento entre si. No exemplo abaixo, os registros da tabela venda se relacionam com os registros das tabelas loja e produto.
Tabela Produto Chave_produto Descrição Marca Categoria Preço Compra Preço Venda Tabela Loja Chaves estrangeiras Chave_loja endereço nome Tabela Venda Chave_venda Chave_produto Chave_loja quantidade nota data Implementação Física do Relacionamento • Os relacionamentos são implementados fisicamente através do relacionamento das chaves primárias de cada tabela que compõe o relacionamento.
Primeira Forma Normal Segunda Forma Normal Terceira Forma Normal Aumenta as restrições Diminui o desempenho Formas Normais • Regras desenvolvidas para: • Evitar inconsistências lógicas nas operações de atualização das tabelas. • Evitar redundância na organização das tabelas.
NãoSatisfaz 1FN Tabela Pessoa id_pessoa nome contato Brigadeiro Franco 233-3932 paulo@hotmail.com Satisfaz 1FN Tabela Pessoa id_pessoa nome endereço telefone email Primeira Forma Normal – 1FN • Definição: o domínio de todos os atributos das tabelas deve ser atômico (indivisível) • Cada coluna da tabela deve conter só um tipo de atributos
Não Satisfaz 2FN chave primária: id_pessoa, conta id_pessoa nome endereço conta endereço_agência saldo agência os campos dependem apenas de parte da chave primária, alguns apenas de conta outros apenas de id_pessoa Satisfaz 2FN chave primária: id_pessoa id_pessoa nome endereço conta chave primária: conta conta saldo agência endereço_agência Segunda Forma Normal – 2FN • Definição: cada tabela deve satisfazer a 1FN, cada registro deve ter uma chave primária e cada campo não chave deve depender totalmente da chave primária.
o endereço da agência não depende da conta, mas da agência. id_pessoa nome endereço conta conta saldo agência endereço_agência Não Satisfaz 3FN conta saldo agência Satisfaz 3FN agência endereço_agência Terceira Forma Normal – 3FN • Definição: cada tabela deve satisfazer a 2FN e cada atributo não chave primária depende diretamente da chave primária.
Chave estrangeira Chave primária Tabela Pessoa id_pessoa nome endereço id_empresa Tabela Empresa id_empresa nome_da_empresa endereço Integridade • Devem ser observados dois tipos de integridade: • a) Integridade de Entidades(cada tabela deve ter exatamente uma chave primária) • b) Integridade Referencial(cada chave estrangeira deve ser consistente com sua chave primária correspondente)
Tabela Pessoa id_pessoa nome endereço id_empresa 1 Adao YYY 2 2 Eva YYY 2 Tabela Empresa id_empresa nome_da_empresa endereço 2 ZZZZ WWW Integridade Referencial • O valor da chave estrangeira deve existir na tabela empresa ou ser NULO. • Quando um registro da tabela empresa for excluído, todas os registros da tabela pessoa que façam referência a esse registro devem ter o valor da sua chave estrangeira alterado para NULO.
3a FORMA NORMAL 1a FORMA NORMAL 2a FORMA NORMAL Redução no volume de dados e aumento da consistência Desempenho na leitura Características do Modelo Relacional • Reduz a redundância das informações armazenadas, diminuindo o espaço total gasto para armazenar-las. • Simplifica significativamente as operações de escrita, tanto na inserção de novas informações quanto a alteração de informações existentes. • Complica as operações de leitura. Quanto mais normalizado for o modelo do banco de dados operacional, mais lenta e trabalhosa será a operação de leitura.
LEITURA ESCRITA Modelo Relacional: Conclusões • Operação: ESCRITA: • Apenas um pequeno número de registros precisa ser alterado. • Por exemplo, para associar uma nova conta ao usuário os dados do usuário não precisam ser recadastrados. • Operação: LEITURA: • Várias tabelas precisam ser associadas para obter a resposta. • Por exemplo, para obter o faturamento total que uma loja obteve com um dado produto, num dado período.
Banco de Dados Modelo Dimensional
TEMPO Cada ponto do cubo representa uma combinação de Produto, Mercado e Tempo armazenado. MERCADO PRODUTO Modelo Dimensional • Considere a seguinte afirmativa. • “Nós vendemos produtos em vários mercados, e nós medimos nosso desempenho ao longo do tempo”. • O modelo de dados mais adequado para representar diversas relações entre grandezas é o modelo dimensional.
DIMENSÃO PRODUTO ANÁLISE DE VENDAS (TABELA DE FATOS) Chave_produto descrição marca categoria Chave_tempo Chave_produto Chave_loja reais_faturados unidades_vendidas reais_gastos DIMENSÃO TEMPO Chave_tempo dia_da_semana mês quadrimestre ano flag_feriado DIMENSÃO LOJA Chave_loja nome_da_loja endereço tipo_de_planta_da_loja Modelo Dimensional = Esquema em Estrela • O projeto de um banco de dados dimensional é do tipo top-down, isto é, ele é projetado a partir do tipo de análise que se quer efetuar.
Modelo Dimensional: Conclusões Operações: • ESCRITA: Não pode ser utilizado, pois não guarda os registros na forma de unidades. • LEITURA: Rápida, pois a consulta é feita basicamente em uma única tabela. Características dos Bancos Analíticos: • A dimensão de tempo é definida de acordo com uma granularidade pré-definida: dia, semana, mês. Ela não reflete o instante em que as operações individuais foram efetuadas. • O projeto é top-down, isto é, a tabela central parte do objetivo final da análise. • Não contém necessariamente todos os atributos relativos aos dados, apenas os que interessam para análise. • Não é adequado para efetuar transações operacionais.
Exemplo Projeto PROCEE
Projeto ProCSEE : IACK (Interaction Agent for Capitalizing Knowledge) Exemplo de projeto de capitalização de conhecimentos visando a construção de uma memória de um projeto software. Particularidade: agentes de software CBR - Case Based Reasoning
Projeto ProCSEE Objetivo: • Construir uma arquitetura para um ambiente de engenharia de software cooperativo, atendendo a interação de um grande grupo de pessoas distribuídas.
Systems manager optimization, statistics and coordination algorithms Interaction Agent customization, update and query mechanisms programmer Design-Patterns, Frameworks and tools for supporting communication, collaboration and coordination Components Library Interaction Agent . knowledge CSCW metrics repository repository Systems analyst Software engineering Interaction Agent processes templates customer Projeto ProCSEE
IACK Visualizador Capturador Consulta a de Estado de de Competências Eventos Projeto Repositório de Repositório Repositório Competências de Projetos de Eventos Scheduler Interpretador de Eventos Parte do ProCSEE referente ao implementador Projeto ProCSEE
Projeto I.A.C.K • Implementação de um agente de software para capitalizar os conhecimentos de um implementador de software. • Principais atividades : • a definição e implementação de um modelo para representar e armazenar as atividades de um implementador • a captura de eventos relacionados as atividades de um implementador • o armazenamento de eventos em repositório • a interpretação dos eventos relativos ( capturados ) a execução de uma atividade de um implementador • o calculo de desempenho ( nota ) de um implementador no tocante a execução de suas atividades
Projeto I.A.C.K : motivação • Desenvolver de mecanismos visando a capitalização dos conhecimentos de implementador de software de maneira semi-automática. • Alimentar e atualizar uma base de conhecimentos sobre as competências dos implementadores de softwares de uma organização. • Melhorar a alocação de recursos e o cálculo dos custos de um projeto de software.
Tarefa Atividade Atividade Atividade ... Eventos Eventos Eventos ... Tarefa, atividade, eventos Modelo de atividades inclui: • recursos utilizados • descrição da atividade • astúcias
Armazenamento . . . • Os conhecimentos sobre a execução das atividades são armazenados na forma de casos. • CBR - Case-Based Reasoning • Os conhecimentos sobre as competências dos programadores são armazenados na forma de objetos + ligações
? Descrever a situação atual base de casos ! Aplicar o conhecimento Raciocínio baseado em casos Idéia: • Raciocínio baseado em casos resolve novos problemas adaptando soluções que foram usadas no passado para resolver problemas similares no presente.