proposta de um framework conceitual de dados e padrões de ... · ii viviane cristina dias proposta...

153
II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de um Banco de Dados em Qualidade da Energia Elétrica Belo Horizonte Pontifícia Universidade Católica de Minas Gerais 2004 Dissertação apresentada ao Programa de Pós-Graduação em Engenharia Elétrica, da Pontifícia Universidade Católica de Minas Gerais, como requisito parcial para obtenção do Grau de Mestre em Engenharia Elétrica. Linha de Pesquisa: Inteligência Computacional e Sistemas Distribuídos – ICSD Orientador: Prof. Dr. Carlos Alberto Marques Pietrobon Co-Orientador: Prof. Dr. Mário Fabiano Alves

Upload: dangnhi

Post on 28-Jan-2019

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

II

Viviane Cristina Dias

Proposta de um Framework Conceitual de Dados e Padrões de Análise para a

Definição de um Banco de Dados em Qualidade da Energia Elétrica

Belo Horizonte Pontifícia Universidade Católica de Minas Gerais

2004

Dissertação apresentada ao Programa de Pós-Graduação

em Engenharia Elétrica, da Pontifícia Universidade

Católica de Minas Gerais, como requisito parcial para

obtenção do Grau de Mestre em Engenharia Elétrica.

Linha de Pesquisa: Inteligência Computacional e

Sistemas Distribuídos – ICSD

Orientador: Prof. Dr. Carlos Alberto Marques Pietrobon

Co-Orientador: Prof. Dr. Mário Fabiano Alves

Page 2: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

III

“Feliz aquele que transfere o que sabe

e aprende o que ensina”

(Cora Coralina)

Page 3: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

IV

Agradecimentos

À Fundação Capes;

Ao Coordenador do Programa de Pós-Graduação em Engenharia Elétrica, Prof. Dr. Carlos

A . P. S. Martins .

Aos professores Dr. Carlos A. M. Pietrobon e Dr. Mário F. Alves, pelos sábios conselhos,

disponibilidade e dedicada orientação;

Ao Grupo de pesquisa Gerquali pela disponibilização dos dados, em especial ao Délio;

Aos professores do PPGEE, pela partilha do conhecimento;

Às amigas Juliana, Claudete e Viviane F. pelo companheirismo e incentivo nesta jornada;

À Isabel Sirqueira e Isabel Novais pelo atendimento cordial;

Ao Geraldo por seu amor, incentivo, paciência e compreensão;

Aos meus pais, Antonio e Geralda, pelo carinho, compreensão nos momentos de ausência e

pela formação que recebi;

Aos meus irmãos Nilton, Antonio e Elaine pela amizade;

A Deus, fonte de toda a vida e guia do melhor caminho.

Page 4: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

V

Resumo

A monitorização da Qualidade da Energia Elétrica associada a correta organização

e utilização da informação resultante, fornece meios para auxiliar no planejamento, na

operação e no projeto de sistemas de transmissão e distribuição de energia elétrica. A

grande quantidade de dados aquisitados em monitorizações de sistemas elétricos deve ser

armazenada em um banco de dados que possibilite uma diversidade de formas de

recuperação destes dados, a fim de inferir padrões de ocorrência de problemas de

Qualidade da Energia Elétrica. Este banco de dados deve ser bem estruturado e fácil de ser

projetado por engenheiros eletricistas. Este trabalho apresenta uma proposta do uso de um

Framework Conceitual e padrões de análise para QEE, aplicáveis as etapas de requisitos e

modelagem conceitual de um banco de dados para QEE visando facilitar o uso de técnicas

de orientação a objetos através do reuso de padrões.

Page 5: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

VI

Abstract

Power Quality monitoring associated with the correct storing an use of the resulting

information, provides a powerful way for planning, operating and designing transmission

and distribution power systems. The enormous quantity of data resulting from monitoring

should be stored in database designed for flexibility of data retrieval, such as to allow

inference into power quality problems occurrence patterns. This database should be well

structured and easy to be designed by power system engineer This work presents a

proposal of the use of a Framework Conceptual and analysis patterns for PQ, applicable to

the early stages of the database development (requirements and conceptual model). The

maim purpose is to facilitate the use of objects orientation techniques through the reuse of

patterns.

Page 6: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

VII

Sumário

1 INTRODUÇÃO.................................................................................................................................... 13 1.1 MOTIVAÇÃO.................................................................................................................................. 13 1.2 OBJETIVOS .................................................................................................................................... 16 1.3 METODOLOGIA.............................................................................................................................. 17 1.4 ORGANIZAÇÃO DA DISSERTAÇÃO ................................................................................................. 18

2 REVISÃO DA LITERATURA........................................................................................................... 20 2.1 A QUALIDADE DA ENERGIA ELÉTRICA.......................................................................................... 20

2.1.1 Distúrbios Eletromagnéticos ................................................................................................... 21 2.1.1.1 Transientes .................................................................................................................................... 23 2.1.1.2 Variações de Tensão ..................................................................................................................... 24 2.1.1.3 Harmônicos ................................................................................................................................... 25

2.1.2 Parâmetros de Referência para Análise da Qualidade da Energia Elétrica........................... 26 2.1.3 Sistema de Informação para Qualidade da Energia Elétrica.................................................. 27

2.2 INSTRUMENTOS DE REUTILIZAÇÃO ............................................................................................... 28 2.2.1 Reutilização de Especificações de Requisitos.......................................................................... 30 2.2.2 Padrões.................................................................................................................................... 31 2.2.3 Padrões de Projeto .................................................................................................................. 34 2.2.4 Padrões de Análise .................................................................................................................. 38 2.2.5 Framework .............................................................................................................................. 41

2.2.5.1 Framework x Padrões de Projeto................................................................................................... 47 2.3 QUALIDADE DE ENERGIA ELÉTRICA E APOIO COMPUTACIONAL ................................................... 49 2.4 UML - LINGUAGEM DE MODELAGEM UNIFICADA ........................................................................ 54 2.5 LINGUAGENS DE MARCAÇÃO........................................................................................................ 60

2.5.1 Características da XML........................................................................................................... 61 2.5.2 XML como intercâmbio de Informações.................................................................................. 63

2.6 MODELO DE DADOS ...................................................................................................................... 64 2.6.1 Modelagem Conceitual de Banco de Dados............................................................................ 66

3 MODELAGEM CONCEITUAL DE DADOS PARA SISTEMAS DE INFORMAÇÃO DA QUALIDADE DA ENERGIA ELÉTRICA................................................................................................. 68

3.1 REQUISITOS DE MODELAGEM CONCEITUAL PARA SIQEE............................................................. 69 3.2 PADRÕES DE ANÁLISE DE QEE ..................................................................................................... 71

3.2.1 Padrão Local de Monitorização.............................................................................................. 73 3.2.2 Padrão Equipamento de QEE ................................................................................................. 75 3.2.3 Padrão Ajuste dos Equipamentos de QEE .............................................................................. 76 3.2.4 Padrão Eventos em um Sistema Elétrico................................................................................. 77 3.2.5 Padrão Normas e Organizações.............................................................................................. 78 3.2.6 Padrão Ocorrências de Campo ............................................................................................... 79

3.3 METODOLOGIA DE DESENVOLVIMENTO DE FRAMEWORKS ........................................................... 80 3.4 FRAMEWORK QEE_FRAME........................................................................................................... 84

4 AMBIENTE DE DESENVOLVIMENTO DE SOFTWARE (ADS) ............................................... 89 4.1 TEORIA DO DOMÍNIO..................................................................................................................... 89 4.2 ONTOLOGIA .................................................................................................................................. 91 4.3 ONTOLOGIA E BASE DE CONHECIMENTO....................................................................................... 93 4.4 AMBIENTES DE DESENVOLVIMENTO DE SOFTWARE ORIENTADO A DOMÍNIO (ADSOD) .............. 94

5 AMBIENTE DE DEFINIÇÃO DE UM BANCO DE DADOS PARA QUALIDADE DE ENERGIA ELÉTRICA................................................................................................................................. 96

5.1 MÓDULO GRÁFICO........................................................................................................................ 98 5.2 MÓDULO DICIONÁRIO DE DADOS ............................................................................................... 105 5.3 MÓDULO GERAÇÃO AUTOMÁTICA.............................................................................................. 106

6 APLICAÇÃO: CASOS EXEMPLO................................................................................................. 108 6.1 A TEORIA DO DOMÍNIO ............................................................................................................... 108

6.1.1 Identificação do Propósito .................................................................................................... 108

Page 7: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

VIII

6.1.2 Definição ............................................................................................................................... 109 6.2 CASO 1- SISTEMA DE GERENCIAMENTO DA QUALIDADE DA ENERGIA ELÉTRICA. ...................... 110

6.2.1 Edição da Teoria do Domínio ............................................................................................... 110 6.2.2 Edição da Sub-teoria ............................................................................................................. 110 6.2.3 Edição de Conceitos .............................................................................................................. 111 6.2.4 Integração do Framework Conceitual com os Padrões de Análise....................................... 112 6.2.5 Conversão do Diagrama de Classes em DTD ....................................................................... 113 Temos então o arquivo .DTD gerado como pode ser visto no Apêndice C.......................................... 114 6.2.6 Mapeamento da DTD para um SGBD relacional.................................................................. 114

6.3 CASO 2- CARACTERIZAÇÃO DA SENSIBILIDADE DE PROCESSOS INDUSTRIAIS FRENTE A AFUNDAMENTOS DE TENSÃO .................................................................................................................... 119

6.3.1 Edição da Teoria do Domínio ............................................................................................... 119 6.3.2 Edição da Sub-teoria ............................................................................................................. 120 6.3.3 Edição de Conceitos .............................................................................................................. 120 6.3.4 Integração do Framework Conceitual com os Padrões de Análise....................................... 121 6.3.5 Conversão do Diagrama de Classes em DTD ....................................................................... 122 6.3.6 Mapeamento da DTD para um SGBD relacional.................................................................. 122

7 CONCLUSÕES.................................................................................................................................. 123 7.1 CONTRIBUIÇÕES DA DISSERTAÇÃO.............................................................................................. 124 7.2 TRABALHOS FUTUROS ................................................................................................................ 125

8 REFERÊNCIAS BIBLIOGRÁFICAS............................................................................................. 127

9 APÊNDICES ...................................................................................................................................... 133

Page 8: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

IX

Lista de Figuras

Figura 2.1: Distúrbios de tensão típicos, idealizados [FER99]. .......................................... 22

Figura 2.2: Ilustra o diagrama de classes do padrão de projeto Composite [GAM95]........ 35

Figura 2.3: Diagrama de Classes do Padrão Local de Monitorização................................. 41

Figura 2.4: Aplicação desenvolvida totalmente [SIL00]..................................................... 44

Figura 2.5: Aplicação desenvolvida reutilizando classes de biblioteca [SIL00]. ................ 44

Figura 2.6: Aplicação desenvolvida reutilizando um Framework [SIL00]......................... 44

Figura 2.7: Framework Caixa Branca. ................................................................................ 47

Figura 2.8: Framework Caixa Preta..................................................................................... 47

Figura 2.9: Notação gráfica do diagrama de classes UML. ................................................ 58

Figura 2.10: Código de uma página em HTML. ................................................................. 60

Figura 2.11: Código de uma página em XML..................................................................... 61

Figura 2.12: Estrutura de disponibilização de dados na Web.............................................. 64

Figura 3.1: Arquitetura de um Sistema de Informação para Qualidade da Energia Elétrica...................................................................................................................................... 70

Figura 3.2: Processo de captura e aplicação de padrões...................................................... 72

Figura 3.3: Processo de captura e aplicação de padrões de QEE. ....................................... 73

Figura 3.4: Diagrama de Classes do Padrão Local de Monitorização................................. 74

Figura 3.5: Diagrama de Classes do Padrão Equipamentos de QEE .................................. 75

Figura 3.6: Diagrama de Classes do Equipamento de QEE. ............................................... 76

Figura 3.7: Diagrama de Classes do Padrão Eventos em um Sistema Elétrico................... 77

Figura 3.8: Diagrama de Classes do Padrão Normas e Organizações................................. 79

Figura 3.9: Diagrama de Classes do Padrão Ocorrências de Campo. ................................. 80

Figura 3.10: As Etapas do Projeto Dirigido por Exemplo para o Desenvolvimento de um Framework................................................................................................................... 81

Figura 3.11: Etapas do Projeto Dirigido por Hot Spot para o desenvolvimento de um Framework. ................................................................................................................. 82

Figura 3.12: Ciclo de vida de Framewoks [SIL00]. ............................................................ 85

Page 9: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

X

Figura 3.13: Ciclo de vida do Framework QEE-Frame. ..................................................... 86

Figura 3.14: Diagrama de classes do QEE_Frame. ............................................................. 86

Figura 5.1: Arquitetura do Ambiente de Definição de um Banco de Dados para Qualidade de Energia Elétrica. ..................................................................................................... 98

Figura 5.2: Modelo para edição da Teoria do Domínio. ................................................... 100

Figura 5.3: Inclusão da Teoria do Domínio....................................................................... 100

Figura 5.4: Inclusão da subteoria....................................................................................... 101

Figura 5.5: Inserir Padrão de Análise. ............................................................................... 101

Figura 5.6: Inserir Referências Bibliográficas................................................................... 102

Figura 5.7: Inserir Conceito............................................................................................... 102

Figura 5.8: Inserir Associação entre Teoria do Domínio e Sub-teoria.............................. 103

Figura 5.9: Inserir Associação entre Sub-teoria e Conceito. ............................................. 103

Figura 5.10: Inserir Associação entre Subteoria e Padrões de Análise. ............................ 104

Figura 5.11:Inserir O Framework Conceitual de acordo com a Teoria do Domínio......... 104

Figura 5.12: Visualização das Subteorias e a relação com os Padrões de Análise............ 105

Figura 5.13: Demonstrativo do uso da ferramenta Rational Rose para Conversão de Dados.................................................................................................................................... 106

Figura 6.1: Integração do Framework Conceitual – QEE_Frame e Padrões de Análise para o Caso 1. .................................................................................................................... 113

Figura 6.2: Interface para definição da Linguagem de conversão do diagrama................ 114

Figura 6.3:Interface para geração do arquivo de dados no formato DTD......................... 114

Figura 6.4: Visualização da ferramenta XMLSPY............................................................ 115

Figura 6.5:Inclusão dos arquivos gerados. ........................................................................ 115

Figura 6.6:Conversão DTD/Shema. .................................................................................. 116

Figura 6.7:Demonstrativo das classes mapeadas............................................................... 116

Figura 6.8:Interface para alterações de tipos de dados. ..................................................... 117

Figura 6.9:Demonstrativo das tabelas que serão criadas no Microsoft Access................. 117

Figura 6.10: Demonstrativo do Script em SQL................................................................. 118

Figura 6.11:Seleção o SGBD que será utilizado. .............................................................. 118

Page 10: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

XI

Figura 6.12:Tabelas criadas no Microsoft Access............................................................. 119

Figura 6.13 : Integração do Framework Conceitual – QEE_Frame e Padrões de Análise para o Caso 2. ............................................................................................................ 122

Figura 9.1: Seleção da Teoria do Domínio........................................................................ 145

Figura 9.2: Seleção da Subteoria. ...................................................................................... 145

Figura 9.3: Interface para definição da Linguagem XML - DTD ..................................... 147

Figura 9.4: Geração do documento .DTD ......................................................................... 147

Figura 9.5: Demonstrativo da Criação do Projeto e Inclusão do Arquivo .DTD .............. 151

Figura 9.6: Demonstrativo do resultado da conversão para DTD/Shema. ........................ 152

Figura 9.7: Demonstrativo do ajuste nos tipos dos dados. ................................................ 152

Figura 9.8: Interface para a escolha do SGBD utilizado. .................................................. 153

Figura 9.9: Definição das Chaves Primárias. .................................................................... 153

Figura 9.10: Visualização das Tabelas que serão Criadas................................................. 153

Figura 9.11: Banco de Dados Criado com suas respectivas Tabelas................................. 154

Page 11: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

XII

Siglas

ADSOD - Ambientes de Desenvolvimento de Software Orientados a Domínio

ADS - Ambientes de Desenvolvimento de Software

ANEEL - Agência Nacional de Energia Elétrica

ANSI - American National Standars Institure

CASE - Computer-aided Software Engineering

CBEMA - Computer and Business Equipment Manufacturers Association

CICRE - Conference Internatioanledes Gands Réseux Eletriques à Haute Tesion

HTML - Hypertext Markup Language

IEC - International Eletrotechnical Commission

IEEE - Institute of Electrical and Electronics Engineers

ITI - Information Technology Industry Council

ONS - Operador Nacional do Sistema Elétrico

OOAD - Object Oriented Analysis and Design

QEE - Qualidade da Energia Elétrica

SGBD - Sistema Gerenciador de Banco de Dados

SGML - Standard Generalized Markup Language

SGQEE - Sistema de Gerenciamento da Qualidade da Energia Elétrica

SIQEE - Sistema de Informação da Qualidade da Energia Elétrica

UML - Unified Modeling Language

XML - Extensible Markup Language

Page 12: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

13

1 Introdução

Este capítulo introduz o trabalho proposto, apresentado a motivação, os objetivos, e

a metodologia utilizada, bem como uma descrição da forma como essa dissertação está

organizada.

1.1 Motivação

Sistemas de Informação para Qualidade da Energia Elétrica (SIQEE) são sistemas

computacionais que permitem a captura, armazenamento, manipulação, recuperação,

análise e apresentação dos dados relativos a Qualidade da Energia Elétrica (QEE). Esses

dados são constituídos por informações sobre os locais de monitorização, os fenômenos

eletromagnéticos monitorados, valores de referência (curvas, limites de norma, etc),

parâmetros de ajuste dos equipamentos de medição, dentre outros.

Os SIQEE manipulam uma grande quantidade de Informações, exigindo que se

trabalhe com banco de dados bem estruturados, moldados para atender as especificidades

impostas pelas características dos fenômenos envolvidos, e pelos objetivos dos resultados a

serem alcançados, de forma a possibilitar uma análise eficiente sobre a qualidade da

energia elétrica.

Em [ALV00] podemos verificar alguns objetivos que motivam pesquisas de

qualidade da energia elétrica:

• Observância de limites impostos por legislação específica;

• Obtenção de informações estatísticas para fins diversos;

• Monitorização do sistema elétrico, objetivando a garantia da qualidade da

energia elétrica e o diagnóstico de falhas;

• Monitorização dos sistemas elétricos industriais, objetivando diagnósticos e a

garantia de operação de equipamentos dentro de limite especificados pelos seus

fabricantes.

Page 13: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

14

O gerenciamento da informação sobre a QEE exige a utilização de ferramentas

computacionais apropriadas como por exemplo o uso de um SGBD [AGO00], [DIA01],

[ALV00], [NET01], [FER01], [MED03], entre outros. Dependendo do número de locais de

monitorização, do período de monitoramento e do tipo de fenômeno eletromagnético

monitorado, a monitorização da qualidade da energia elétrica pode gerar gigabytes de

dados [DAB95]. Considerando estas características e as necessidades de tratamento da

informação, a adoção de um SGBD1 em muitos casos se faz necessário, como pode ser

visto em [DAB95], [FER99], [VIV01], [SAN02], [CRU03], [MED03], [ROM03].

No entanto, técnicas de projeto de banco de dados que são usados com sucesso em

aplicações de outros domínios, não têm sido adequadamente empregadas pela comunidade

de projetistas de aplicações de Qualidade da Energia Elétrica. Isso é decorrente de alguns

fatores, os quais podemos citar:

• as aplicações de SIQEE são projetadas e desenvolvidas, muitas vezes, pelos

próprios usuários, os quais, normalmente, não possuem formação em

computação. Em geral esses profissionais não se preocupam com a modelagem

conceitual do banco de dados a ser utilizado pela sua aplicação, ou utilizam

alguma ferramenta que já disponibiliza um modelo para o armazenamento de

dados, que muitas vezes é ineficiente ao objetivo projetado pelo usuário;

• Inexperiência por parte desses projetistas que lidam com QEE, em relação ao

uso de metodologias de desenvolvimento de sistemas.

• Essa inexperiência tem resultado em alguns casos na construção de sistemas

com limitações de uso como: redundância de dados, inconsistência de dados,

etc.

Atualmente, as aplicações de SIQEE estão sendo desenvolvidas, em sua grande

maioria, pelas concessionárias, que têm grande interesse comercial neste tipo de sistema, e

pelas comunidades acadêmicas, sendo em alguns casos através de parceria entre essas

instituições.

Apesar da relevância do assunto, constata-se que existem poucos trabalhos

relacionados a projeto de banco de dados para QEE. Atualmente, quem deseja projetar um

1 Sistema Gerenciador de Banco de Dados

Page 14: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

15

SIQEE que use um SGBD começará do zero, tendo que passar por todas as fases do

projeto de sistemas, o que demanda tempo do projetista e um alto conhecimento relativo

aos fenômenos que caracterizam a QEE e, conseqüentemente, aos dados envolvidos.

Neste sentido, os especialistas têm procurado na Engenharia de Software novos

paradigmas e ferramentas de desenvolvimento de software. O incremento nos custos de

desenvolvimento e manutenção, o aumento da demanda por informatização na sociedade e

a maior complexidade das novas aplicações têm gerado desafios no processo de

desenvolvimento de sistemas de informação. Os métodos clássicos para o desenvolvimento

de software não têm sido bem sucedidos em apoiar esse novo paradigma de

desenvolvimento. Portanto a orientação a objetos tem surgido como um poderoso

instrumento para o desenvolvimento de sistemas, principalmente em relação ao conceito de

reutilização.

Existem algumas propostas para possibilitar a reutilização aceitas na área de

orientação a objetos, dentre elas podemos citar o uso de padrões e Frameworks para

domínios específicos que poderiam ser instanciados para produzir novos produtos de

domínio. A reutilização de software tem sido considerada para diminuir os custos de

desenvolvimento e manutenção bem como gerar produtos de melhor qualidade, por estar

fazendo uso de um software já desenvolvido, testado e validado.

Em Engenharia Elétrica no que diz respeito a SIQEE, são pouco explorados os

benefícios da orientação objeto, bem como o reuso. Por outro lado essa técnica mostra-se

interessante visto que estaremos reutilizando a experiência adquirida por outros projetistas,

possibilitando desta forma iniciar um SIQEE baseado em projetos anteriores. Usando as

técnicas propostas pela Engenharia de Software durante a fase de análise, poderemos

definir requisitos para um SIQEE bem como a modelagem conceitual dos dados para este

sistema.

Uma forma de prover o reuso de análise e projeto para banco de dados para QEE é

definir um meio de disponibilização dos dados. Como os usuários que lidam com QEE

estão dispersos em lugares geograficamente distantes a disponibilização destes dados na

Web é um meio interessante, uma vez que eles poderão tratar os dados e adequá-los a seus

projetos específicos de banco de dados para QEE. Para facilitar essa troca de informações

Page 15: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

16

na Web pode-se fazer o uso da XML (Extensible Markup Language), que atualmente está

sendo considerada como um padrão de transferência de dados via Web.

1.2 Objetivos

O objetivo principal desta dissertação é propor um Framework Conceitual de

Dados para Sistemas de Informação para Qualidade da Energia Elétrica (SIQEE).

Dentre os objetivos específicos podemos citar:

• definir padrões de análise, que permitam aos projetistas de um determinado

domínio de aplicação modelar fenômenos de Qualidade de Energia Elétrica e

seus relacionamentos.

• Disponibilização de dados de projeto de banco de dados na Web em um

formato padrão(XML) de forma que possam ser mapeados para diversos

fornecedores de banco de dados;

• Definir uma arquitetura para um ambiente de definição de um banco de dados

para QEE que facilite o trabalho de pessoas experientes e não experientes no

desenvolvimento de banco de dados.

Uma das características desta pesquisa é a busca por uma solução que possa ser

utilizada, não só por especialistas em projetos computacionais mas, pelos próprios usuários

de SIQEE. Este é o papel do ambiente ADEBDQEE, onde faremos o uso de técnicas de

engenharia de software, associada ao conhecimento e correta conceituação das questões

envolvendo a qualidade da energia elétrica, a fim de atender a requisitos de eficiência e

qualidade em ambas as áreas.

Como o objetivo principal deste trabalho é propor um Framework Conceitual de

Dados para SIQEE, não iremos tratar da fase de pós-processamento de dados, uma vez que

essa fase pode ser implementada de acordo com as necessidades específicas de cada

sistema para QEE.

Page 16: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

17

1.3 Metodologia

A metodologia desse trabalho consistiu em um estudo bibliográfico, seguido da

elaboração de uma proposta de um Framework Conceitual de Dados e Padrões de Análise

para a definição de um banco de dados para QEE descritos em UML.

Inicialmente, o trabalho envolveu um levantamento bibliográfico em artigos de

instituições, publicações especializadas, documentações técnicas e normas ou

recomendações relativas ao gerenciamento da qualidade da energia elétrica, bem como a

utilização de banco de dados.

A seguir, foi necessário o levantamento bibliográfico sobre Frameworks, Padrões

de Projeto e Análise na literatura existente sobre Engenharia de Software. Esse

levantamento foi importante para caracterizar os Frameworks e Padrões de Análise como

instrumentos apropriados à reutilização.

A terceira etapa consistiu em um levantamento bibliográfico indicando os aspectos

relacionados a Engenharia Elétrica, mais especificamente a QEE e a Ciência de

Computação, considerando a Engenharia de Software. Esse levantamento foi importante

para caracterizar a existência a computação, apoiando as atividades ligadas a QEE, dentre

esses aspectos foi observado a utilização de técnicas de reuso.

A seguir, a pesquisa bibliográfica se concentrou no estudo da linguagem UML.

Para tanto, utilizou-se principalmente o material da OMG (Object Management Group) e a

literatura produzida pelos três criadores da UML (Booch, Jacobson e Rumbaugh). Como a

primeira etapa destacou-se o uso de uma técnica de orientação a objetos (Framework e

Padrões de Análise), essa etapa enfatizou uma linguagem de modelagem orientada a

objetos (UML) que serviu como apoio a essas técnicas.

A próxima etapa, preocupou-se em integrar o Framework Conceitual e os Padrões

de Análise identificados. Como resultado produziu-se um diagrama de classes segundo a

UML que representa o Sistema em questão.

Page 17: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

18

A próxima etapa consistiu na preocupação da disponibilização dos dados na Web, a

fim de prover o intercâmbio de informações entre usuários interessados em projeto de

banco de dados para QEE. Neste caso foi necessária a escolha de uma linguagem que

melhor representasse o projeto de um banco de dados, o qual escolhemos XML.

Após a definição da linguagem para intercâmbio de dados foi feito o mapeamento

do diagrama de classes gerado do sistema para DTD. Estando o diagrama representado

desta forma, acontece a conversão do DTD para um SGBD específico de acordo com as

necessidades do usuário.

Finalmente para fins de verificação experimental, é proposto o estudo de dois

sistemas relacionados a QEE. A parte da inclusão da Teoria do Domínio foi programado

considerando os requisitos necessários para um sistema de QEE, o mapeamento do

diagrama de classes para DTD foi utilizada a própria ferramenta de modelagem ( Rational

Rose), e a conversão da DTD para um banco de dados relacional foi usada a ferramenta

XMLSPY 2004.

A última etapa consistiu na compilação do material produzido, na confecção final e

revisão da dissertação.

1.4 Organização da Dissertação

Essa dissertação está organizada em sete capítulos. O segundo capítulo abrange a

revisão da literatura, destacando-se a conceituação de Frameworks, Pradrões de Projeto e

Análise. Também é feita a apresentação das linguagens de marcação, destacando-se a

XML com intercâmbio de informações na Web.

No capítulo 3 é apresentado a modelagem conceitual de dados para sistemas de

informação para qualidade da energia elétrica. São definidos os requisitos de modelagem, e

a definição dos padrões de análise específicos para QEE. Também é apresentada a

metodologia de desenvolvimento de Frameworks, sendo ainda neste capítulo apresentada a

proposta do Framework específica para QEE (QEE_Frame).

Page 18: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

19

No capítulo 4 é apresentada a idéia dos Ambientes de Desenvolvimento de

Software, que são amplamente utilizados para edição da Teoria do Domínio. Esses

ambientes possuem características semelhantes ao ambiente (ADEBDQEE) proposto pelo

trabalho.

No capítulo 5, utilizando as definições anteriores, é proposto um ambiente de apoio

a definição de um banco de dados para QEE, utilizando os conceitos de reuso através de

Frameworks e padrões de análise, e a definição da Teoria do Domínio.

No capítulo 6 é proposto à verificação experimental através de dois casos exemplo

relacionados a qualidade da energia elétrica, utilizando os conceitos de Teoria do Domínio,

Frameworks e Padrões de Análise.

No capítulo 7 são apresentas as conclusões dessa dissertação, suas contribuições e

propostas de trabalhos futuros.

No Apêndice – A é apresentado a documentação do projeto do banco de dados usado

no Ambiente de Definição de um Banco de Dados para QEE.

No Apêndice – B é apresentado as interfaces adicionais que compõe o Ambiente de

Definição de um Banco de Dados para QEE.

No Apêndice – C é apresentado o arquivo .DTD para o Caso exemplo: Sistema de

Gerenciamento da Qualidade da Energia Elétrica.

No Apêndice – D é apresentado a conversão do diagrama de classes para DTD para o

Caso exemplo : Caracterização da Sensibilidade de Processos Industriais frente a

Afundamentos de Tensão.

No Apêndice – E é apresentado o mapeamento da DTD para um SGBD relacional

para o Caso exemplo : Caracterização da Sensibilidade de Processos Industriais frente a

Afundamentos de Tensão.

Page 19: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

20

2 Revisão da Literatura

2.1 A Qualidade da Energia Elétrica

A energia elétrica é considerada como um bem básico para a integração do ser

humano ao desenvolvimento. A economia de qualquer região não pode se desenvolver

completamente se não possuir fonte de energia garantida e de custo aceitável. O acesso à

energia elétrica é a porta de acesso aos serviços essenciais e ao aumento da qualidade de

vida [ALD01].

Analisando-se o sistema de energia elétrica como um todo, desde a geração até ao

consumidor, verifica-se o processo está sujeito a diversos fatores que podem afetar sua

qualidade. Dentre estes fatores, destacam-se as falhas provocadas por condições climáticas

(descarga atmosférica, vento, inundações, etc.). A própria operação normal do sistema gera

interferências de natureza elétrica como um subproduto capaz de degradar a energia

elétrica.

Conceituar Qualidade da Energia Elétrica é uma tarefa abrangente, pois o termo

engloba aspectos bem diversos, como a tecnologia usada, a satisfação dos clientes, custo

do produto, etc. Podemos dizer que o conceito de qualidade de energia elétrica está

relacionado a um conjunto de alterações que podem ocorrer no sistema elétrico.

A Qualidade da Energia Elétrica pode ser definida como a ausência relativa de

variações de tenção provocadas pelo sistema da concessionária, particularmente a ausência

de desligamentos, flutuações de tensão, transientes e harmônicos, medidos no ponto de

entrega de energia. Esta é uma definição vista sob o enfoque da identificação de qual é o

nível de qualidade de energia fornecida pela concessionária [FERN99].

Do ponto de vista do consumidor, a qualidade da energia elétrica pode ser definida

como sendo a ausência de variações manifestadas na tensão, corrente ou freqüência que

resultem em falhas ou má operação de seus equipamentos [DUG96].

Page 20: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

21

Segundo [ALD01] o conceito de qualidade na energia elétrica significa a busca por

desenvolvimento de meios para erradicar ou minimizar problemas em dispositivos

alimentados por fontes de energia.

Distúrbios de energia ocorrem no sistema elétrico de potência desde o início de seu

funcionamento. Porém, ao longo dos anos, as cargas passaram a ser mais sensíveis a estes

distúrbios e, conseqüentemente a exigir uma energia elétrica de maior qualidade.

Logo, diante de um mercado globalizado crescentemente competitivo, a qualidade

da energia elétrica passa a ser de interesse tanto para as concessionárias quanto para os

consumidores. Uma boa base de informação sobre qualidade da energia elétrica permite às

concessionárias prover aos consumidores um atendimento pré-ativo, proporcionando uma

nova oportunidade de negócio, além de subsidiar a discussão das questões contratuais de

natureza técnica, as quais tendem a ganhar especial atenção nessa nova estruturação do

setor elétrico.

O IEEE ( Institute of Electrical and Electronics Engineers), vem através do comitê

(IEE SCC22), juntamente com outras entidades internacionais (IEC – International

Eletrotechnical Commission, CICRE – Conference Internatioanledes Gands Réseux

Eletriques à Haute Tesion), coordenando normalizações junto à chamada comunidade de

qualidade de energia elétrica [DUG96]. A terminologia, bem como a classificação,

basicamente definida pela amplitude e duração dos fenômenos eletromagnéticos são

apresentadas em [IEEE95]. A seguir serão apresentados os distúrbios eletromagnéticos que

serão considerados neste trabalho.

2.1.1 Distúrbios Eletromagnéticos

Existem diversas categorias de fenômenos eletromagnéticos descritos segundo a

recomendação do IEEE, que pode ser visto em [IEEE95]. Neste trabalho estaremos

tratando três categorias: transientes, variações de tensão e os harmônicos. Segundo

[FER99] o estudo dessas categorias abrange uma grande parte dos problemas de qualidade

da energia elétrica (Figura 2.1).

Page 21: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

22

Figura 2.1: Distúrbios de tensão típicos, idealizados [FER99].

Segundo a classificação do IEEE [IEEE95], as variações de tensão e os

componentes harmônicos são fenômenos conduzidos de baixa freqüência, os transientes

impulsivos são fenômenos irradiados de alta freqüência e os transientes oscilatórios são

fenômenos conduzidos de alta freqüência.

A ocorrência de distúrbios eletromagnéticos está relacionada a uma série de fatores

identificados da operação normal de determinadas cargas ou dispositivos em um sistema

elétrico ou da ocorrência de fenômenos naturais que afetam o sistema elétrico, como

demonstrado na tabela a seguir.

Page 22: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

23

Tabela - Principais Causas dos Fenômenos Eletromagnéticos Conforme Recomendação IEE

1159 - 1995

Categorias Principais Causas

Transientes

Impulsivos Descargas atmosféricas.

Oscilatórios Energização de banco de capacitores.

Variações de Curta Duração

Afundamentos de Tensão Faltas, chaveamento de cargas pesadas, partida de grandes motores.

Salto de Tensão Faltas - Curto circuito fase-terra provocando elevação na fase sem

falta.

Interrupção Faltas, falhas em equipamentos, disfunção de controle.

Variação de Longa Duração

Interrupção Sustentada Falhas de natureza permanente e que necessitam de intervenção

manual para sua restauração.

Subtensões Ligação de cargas, desligamento de banco de capacitores.

Sobretensões Desligamento de cargas, anomalias em banco de capacitores.

Distorção de Forma de Onda

Nível de CC Distúrbios geomagnéticos, retificação de meia onda.

Harmônicas Características não lineares de cargas e dispositivos.

Interharmônicas Conversores estáticos de freqüência, ciclo conversores, motores de

indução e dispositivos a arco.

Cortes Operação normal de dispositivos de eletrônica de potência.

Ruído Dispositivos eletrônicos, circuitos de controle, equipamentos a arco,

retificadores de estado sólido, fontes chaveadas.

Flutuações de Tensão Fornos a arco.

Variações de Freqüência Saída de grande bloco de cargas ou perda de um grande gerador.

2.1.1.1 Transientes

Os transientes são classificados como impulsivos ou oscilatórios. Transientes

impulsivos são repentinas variações, unidirecionais em polaridade, nas condições de

regime permanente de tensão, corrente, ou ambas. Eles são caracterizados por seus tempos

de subida e decaimento, pelo conteúdo espectral e pela máxima amplitude alcançada, e são

classificadas em três categorias de acordo com seu tempo de subida. Transientes

Page 23: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

24

impulsivos podem excitar circuitos ressonantes do sistema elétrico produzindo os

transientes oscilatórios, que consistem em tensões ou correntes que têm polaridade de seus

valores instantâneos mudada rapidamente. Estes são caracterizados pelo conteúdo espectral

de sua freqüência predominante, e pela duração da oscilação. Os transientes oscilatórios

ocorrem, também, devido a operações de comutação e chaveamento de circuitos elétricos

[FER99].

2.1.1.2 Variações de Tensão

Variações de tensão são alterações no valor médio quadrático de uma tensão. Estas

variações são classificadas conforme sua duração e amplitude. Elas são divididas em

variações de curta duração e variações de longa duração [IEEE95] [ONS00].

a)Variações de Tensão de Curta Duração

Entende-se por Variação de Tensão de Curta Duração um desvio significativo da

amplitude da tensão por curto intervalo de tempo. A amplitude da Variação de Tensão de

Curta Duração é definida pelo valor extremo do valor eficaz (média quadrática) da tensão

em relação à tensão de referência do sistema no ponto considerado, enquanto perdurar o

evento[ONS00].

A duração da Variação de Tensão de Curta Duração é definida pelo intervalo de

tempo decorrido entre o instante em que o valor eficaz da tensão em relação à tensão de

referência do sistema no ponto considerado ultrapassa determinado limite e o instante em

que a mesma variável volta a cruzar este limite [ONS00]. A partir da duração e amplitude,

as Variações de Tensão de Curta Duração são classificadas como descrito na tabela a

seguir:

Page 24: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

25

Tabela – Denominação das Variações de Tensão de Curta Duração

Classificação Denominação Duração da Variação

Amplitude da tensão (Valor Eficaz) em relação à tensão

nominal Interrupção

Momentânea de Tensão

Inferior ou igual a três segundos

Inferior a 0,1 pu

Afundamento Momentâneo de

Tensão

Superior ou igual a um ciclo e inferior

ou igual a três segundos

Superior ou igual a 0,1 e inferior a 0,9

pu Variação

Momentânea de Tensão

Elevação Momentânea de

Tensão

Superior ou igual a um ciclo e inferior

ou igual a três segundos

Superior a 1,1 pu

Interrupção de Tensão

Superior a três segundos e inferior

ou igual a um minuto

Inferior a 0,1 pu

Afundamento Temporário de

Tensão

Superior a três segundos e inferior

ou igual a um minuto

Superior ou igual a 0,1 e inferior a 0,9

pu

Variação Temporária de

Tensão

Elevação Temporária de

Tensão

Superior a três segundos e inferior

ou igual a um minuto

Superior a 1,1 pu

2.1.1.3 Harmônicos

Harmônicos são correntes ou tensões senoidais de freqüências múltiplas da

freqüência que o sistema é designado a operar. Os componentes harmônicos, combinados

com a tensão ou correntes fundamentais, produzem alterações na forma de onda. A

distorção harmônica existe devido a características não lineares de dispositivos e cargas do

sistema elétrico. A distorção de tensão resulta da queda de tensão provocada pela passagem

de corrente pela impedância do sistema [FER99].

O indicador para avaliar o desempenho global quanto a harmônicos nos

barramentos da Rede Básica corresponde à distorção de tensão harmônica. Entende-se por

Distorção de Tensão Harmônica Total (DTHT) a raiz quadrada do somatório quadrático

Page 25: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

26

das tensões harmônicas de ordens 2 a 50. Esse conceito procura quantificar o conteúdo

harmônico total existente em um determinado barramento [ONS00].

2.1.2 Parâmetros de Referência para Análise da Qualidade da Energia Elétrica

A análise da informação da qualidade da energia elétrica, monitorada durante um

determinado período de tempo, deve ser feita por comparações, seja com valores

normalizados, valores contratuais, ou mesmo com informações auferidas em outras

monitorizações.

Entidades nacionais e internacionais como ANEEL/ONS, IEEE, ANSI e IEC estão

envolvidas na emissão de normas aplicáveis à qualidade de energia elétrica, produzindo

documentos que são mundialmente utilizados como referência [RIB98]. A seguir é

apresentado uma lista de normas e entidades:

• EN50160: é uma nova norma que cobre flicker, interharmônicas,

desvios/variações de tensão e muito mais.

• ONS - Padrões de Desempenho da Rede Básica – Submódulo 2.2,

documento aprovado pela resolução da ANEEL n° 79/02, de 24/12/2002: tem

como objetivo definir os padrões de desempenho da Rede Básica do sistema

elétrico brasileiro.

• IEC 61000-4-15: é uma norma de medição de flicker que inclui especificações

para medidores.

• IEC 61000-4-7: descreve uma técnica de medição padrão para harmônicas.

• IEEE 519 (1992): é uma prática recomendada pela IEEE, utilizada

principalmente por concessionárias de energia nos EUA. Descreve níveis

aceitáveis de harmônicas para o ponto de entrega de energia pela

concessionária.

• IEEE 1159 (1995): é uma prática recomendada pela IEE para monitoração e

interpretação apropriada dos fenômenos que causam problemas de qualidade de

energia.

• CBEMA: Computer and Business Equipament Manufacturers Association. A

CBEMA virou ITI em 1994. A curva CBEMA define os níveis de

Page 26: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

27

suportabilidade de equipamentos (originalmente desenvolvida para

copmputadores tipo “main-frame”), em função da magnitude da tensão e da

duração do distúrbio.

• ITI: Information Technology Industry Council. Grupo que trabalha para

defender os interesses da indústria de informática. A curva ITIC de

suportabilidade para equipamentos da área coberta pela tecnologia da

informação, substituiu a curva CBEMA.

2.1.3 Sistema de Informação para Qualidade da Energia Elétrica

Segundo [TON03] os sistemas de informação podem ser considerados como um

conjunto de elementos interdependentes, ou um todo organizado, ou partes que interagem

formando um todo unitário e complexo. Ainda pode-se dizer que sistemas de informação

são subsistemas das organizações e são agentes de otimização dos processos da empresa.

Logo sistemas de informação na sua grande maioria provê informações no sentido de

servir como apoio a tomada de decisões ou até mesmo tomar decisões. Para [REZ02] um

sistema de informação pode ser definido como o processo de transformação de dados em

informações que são utilizadas na estrutura decisória da empresa e que proporcionam a

sustentação administrativa visando à otimização dos resultados esperados.

Dessa forma, os sistemas de informação devem ser analisados e/ou desenvolvidos

dentro da perspectiva sociotécnica, em que tecnologia e organização devem ser ajustadas

entre si até que se obtenha uma harmonização perfeita entre os dois domínios, gerando um

terceiro estado organizacional conjunto [REZ02].

Em [PPGEE00] é apresentado um projeto que propõe um Sistema de

Gerenciamento da Qualidade da Energia Elétrica (SGQEE), que consiste basicamente, de

um sistema de monitoramento e transmissão remota de informações relativas a QEE,

associado a um banco de dados relacional, apoiado por um conjunto de programas

complementares, que permite o pré e pós-processamento de dados, bem como o cálculo

estocástico de afundamentos de tensão e a análise da informação com base em técnicas de

Inteligência Artificial (IA).

Page 27: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

28

O sistema apresentado em [PPGEE00] propõe um sistema considerando objetivos

específicos. Por outro lado, podemos definir um SGQEE de forma mais abrangente como

um Sistema Informação para Qualidade da Energia Elétrica (SIQEE).

Um SIQEE é um conjunto de algoritmos, equipamentos, metodologias, dados e

pessoas (usuário), perfeitamente integrados, de forma a tornar possível a coleta, o

armazenamento, o processamento e a análise de dados relativos a QEE, bem como a

produção de informação derivada de sua aplicação.

2.2 Instrumentos de Reutilização

A proposta de reutilização é inerente ao desenvolvimento de sistemas

computacionais. Durante as décadas de 60 e 70, a idéia de reutilização centrava-se na idéia

de reutilização de códigos de programas. Bibliotecas de funções, escritas em diversas

linguagens de programação, foram criadas e disponibilizadas para que pudessem ser

reutilizadas. A busca por mecanismos voltados a facilitar a reutilização de software teve

como resultado uma série de eventos científicos dedicados ao tema. Em 1983 ocorreu o

primeiro grande congresso na área, o Workshop on Reusability in Programming (Perlis,

1983 Apud [NEI94]).

Com o objetivo de aumentar a produtividade dos programadores e a qualidade nos

sistemas desenvolvidos, a idéia de reutilização sempre esteve associada à criação de

mecanismos que possibilitem a administração da complexidade dos sistemas.

Com a evolução da engenharia de software, surgem normas que tratam da

qualidade dos produtos de software, essas normas de modo geral é composta por um

conjunto de características e subcaracterísticas que devem ser avaliadas e previstas no

projeto do software. Dentre elas podemos citar manutenibilidade, modificabilidade,

escalabilidade. A manutenibilidade trata da facilidade de manutenção, modificabilidade

trata da facilidade de modificação e adaptação, e escalabilidade trata do risco quando se faz

alterações.

Page 28: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

29

Diante desta nova realidade a reutilização de software é um fator que pode levar ao

aumento da qualidade e da produtividade na atividade de desenvolvimento de software.

Isso é possível graças a essa nova perspectiva que esse conceito oferece, uma vez que

estamos reutilizando o que já foi desenvolvido e testado, conseqüentemente teremos um

produto de maior qualidade entregue em tempo menor e com um custo de manutenção

reduzido.

Considerando os benefícios que a reutilização proporciona, os projetistas avançados

sabem que não devem resolver cada problema a partir de princípios elementares ou zero.

Ao invés disso, eles reutilizam soluções que funcionaram no passado. Logo quando

encontram uma boa solução, eles a utilizam repetidamente.

O conceito de Tipo Abstrato de Dados (TAD) foi desenvolvido para possibilitar que

estruturas de dados pudessem ser reutilizadas [EMB87]. Para usar um TAD, o

desenvolvedor necessita conhecer apenas a interface e a funcionalidade de cada um dos

subprogramas disponíveis. Outro instrumento que utiliza os conceitos de reutilização é o

paradigma de orientação a objetos que tem, como um de seus princípios fundamentais,

possibilitar a reutilização de classes existentes através de mecanismos como especialização

e polimorfismo. Atualmente na área de Engenharia de Software, pesquisas sobre

reutilização exploram conceitos como Framework e Padrões [GAM95].

Os benefícios do reuso em projetos de banco de dados, está relacionado a projeto de

sistema orientado a objeto onde o usuário do sistema é capaz de modificar o uso que faz de

seu banco de dados [MUL99]. Para ele o projeto de banco de dados deve formulado

visando sempre a reutilização, pois talvez novas estruturas de banco de dados, conexões

com outros bancos de dados ou novos sistemas precisem utilizar seu banco de dados.

Potencial de reutilização pode ser compreendido como o grau em que um usuário

de sistema é capaz de reutilizar o banco de dados numa determinada situação. O potencial

de reutilização mede a capacidade de reutilização inerente ao sistema, a capacidade de

reutilização em um domínio específico e a capacidade de reutilização do sistema em uma

organização [MUL99]

Page 29: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

30

Este trabalho trata o uso de Frameworks e Padrões como instrumentos de

reutilização para projeto de banco de dados de QEE.

2.2.1 Reutilização de Especificações de Requisitos

Segundo [NEI94], no processo de desenvolvimento de software quanto mais cedo

forem identificados e criados recursos reutilizáveis, maior será o impacto da reutilização

nas fases posteriores. Portanto, a reutilização de modelos durante a especificação de

requisitos é o primeiro momento em que o projetista pode empregar algum tipo de recurso

reutilizável, isto é, qualquer recurso existente que possa ser útil na construção de um

sistema computacional.

Para [EDE94], o uso de abordagens de reutilização durante a fase de especificação

de requisitos apresenta as seguintes vantagens:

• redução do custo do desenvolvimento da especificação;

• redução do custo de verificação e validação da especificação;

• aumento da produtividade no desenvolvimento de especificações;

• aumento da qualidade das especificações;

• padronização das especificações;

• facilidade de comunicação entre equipes que utilizam a mesma biblioteca.

Como descrito anteriormente a reutilização é apresentada considerando o ciclo de

vida de um projeto de sistemas. A reutilização proposta neste trabalho está centrada na

reutilização de projeto para banco de dados o que apresenta as mesmas vantagens,

pesquisas sobre reutilização em Engenharia de software apresentam resultados satisfatórios

com relação ao uso de reutilização na fase de projeto.

Page 30: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

31

2.2.2 Padrões

A abordagem de Padrões2 cada vez mais se torna um assunto disseminado no

campo da Ciência da Computação. Mas ainda existem várias definições para o termo

Padrão.

Segundo [GAM95], o uso de padrões esta diretamente relacionado com a idéia de

reuso em Engenharia de Software e teve origem no trabalho do arquiteto Chistopher

Alexander que afirma:

“cada padrão descreve um problema no nosso ambiente e o núcleo da solução, de

tal forma que você possa usar esta solução mais de um milhão de vezes, sem nunca fazê-lo

da mesma maneira”. Apesar desta definição está descrita considerando os padrões em

construções e cidades, ela é aplicada a padrões de projeto orientados a objeto.

Segundo [GAM95] padrões de projeto tornam mais fácil reutilizar projeto e

arquiteturas bem sucedidas. Os padrões de projeto ajudam a escolher alternativas de

projeto que tornam um sistema reutilizável e evitar alternativas que comprometam a

reutilização, um padrão identifica um problema e apresenta uma solução para ele.

Segundo [DAN02] um padrão pode ser pensado como a reutilização da essência de

uma solução para determinados problemas similares, pode-se dizer ainda que um padrão

resolve um problema recorrente, em um determinado contexto, fornecendo uma solução

que comprovadamente funcione, além de informar resultados e compromissos da sua

aplicação, e subsídios para que seja possível adaptar esta solução a uma variante do

problema.

Em [GER99] os padrões são considerados como resultado da abstração de

problemas semelhantes das soluções utilizadas. Já [ALU01] define os padrões como uma

referência à comunicação de problemas e soluções. Em outras palavras, os padrões

permitem documentar um problema conhecido recorrente e sua solução em um contexto

específico e comunicar esse conhecimento para outras pessoas. [LAR99] considera padrões

2 Do inglês Patterns

Page 31: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

32

como fórmulas nomeadas de soluções de problemas que codificam princípios de projetos

exemplares

Como mostrado na Figure 2.1 temos o processo de identificação de um padrão que

pode ocorrer considerando diferentes contextos, essa identificação pode ocorrer nas

diversas etapas do desenvolvimento de software.

Figure 2.1: Identificação de um padrão.

Existem muitas definições para um padrão, mas todas elas têm um comum a

informação relacionada à recorrência de um par problemas-soluções em um contexto

específico.

Em [ALU01] é apresentado um conjunto de características comuns dos padrões:

• Os padrões são observados através da experiência.

• Os padrões normalmente são escritos em um formato estruturado.

• Os padrões evitam a reinvenção da roda.

• Existem padrões em diferentes níveis de abstração.

• Os padrões suportam melhorias contínuas.

• Os padrões são artefatos reutilizáveis.

• Os padrões comunicam designs e melhores práticas.

• Os padrões podem ser utilizados em conjunto para solucionar problemas

maiores.

Padrões de software abrangem diferentes níveis de abstração, podendo portanto ser

classificado em diversas categorias de modo a facilitar sua recuperação e uso, é importante

salientar que é possível haver um padrão que se encaixe em mais do que uma categoria.

Várias categorias já foram sugeridas para classificar padrões de software e algumas mais

comuns são:

• padrões de projeto: definem soluções para problemas de projeto de software;

Projeto 1 Projeto 2 Projeto 3

Page 32: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

33

• padrões arquiteturais: expressam o esquema ou organização estrutural

fundamental de sistemas de software e hardware;

• padrões de análise: descrevem soluções para problemas de análise de sistemas,

embutindo conhecimento sobre o domínio de aplicação específico;

Um padrão é uma combinação recorrente de elementos de modelagem que ocorrem

em algum contexto [LIS02]. Considerando que padrões podem ser aplicados nas diversas

etapas de desenvolvimento de software. Em [LIS00] é apresentado três categorias de

padrões: padrões de arquitetura, padrões de projeto, e idiomas. As duas primeiras

categorias incluem os padrões relacionados com a fase de projeto do sistema, mas são

aplicadas em problemas de diferentes escalas. Os padrões de projeto são mais abstratos do

que os padrões de arquitetura, enquanto que idiomas são padrões escritos em alguma

linguagem de programação, esse tipo de padrão é também conhecido como padrões de

implementação.

Uma outra categoria de padrões foi introduzida por [FOW97] inclui os padrões de

análise. Este tipo de padrão é utilizado para descrever soluções empregadas durante as

fases de análise de requisitos e modelagem conceitual dos dados. Os padrões de análise

refletem estruturas conceituais representativas do domínio da aplicação e não soluções

computacionais. Fowler em [FOW97] define um padrão de análise como:

“uma idéia que se provou útil em um contexto prático e que, provavelmente, será

útil em outras situações similares”.

A maioria dos padrões de análise publicados foram projetados, com o intuito de

resolver problemas de aplicações comerciais [FOW97]. No entanto, a idéia de padrões de

análise pode ser usada para aumentar a qualidade e a produtividade no desenvolvimento de

aplicações não-convencionais. Em [LIS00] é apresentado o uso de padrões de análise para

aplicações de Sistemas de Informação Geográfica (SIG). Em [LIS00] é apresentado o uso

de padrões de análise, de projeto e idiomas.

Em [LIS00] padrões de análise podem ser usados para documentar como os

projetistas de um determinado domínio de aplicação modelam fenômenos geográficos e

seus relacionamentos. Padrões de projeto são utilizados para documentar como os dados

Page 33: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

34

sobre o relevo de uma região são representados através de modelo numérico de terreno, e

idiomas podem definir como um modelo numérico de terreno deve ser implementado em

cada software de Sistema de Informação Geográfica.

2.2.3 Padrões de Projeto

Em Engenharia de software o ciclo de desenvolvimento de software é acontece em

espiral, portanto temos atividades que são desenvolvidas durante as fases de análise e de

projeto do processo, podemos associar essa dificuldade em definir em qual instante

acontece as atividades, a dificuldade em estabelecer a diferença exata entre padrões de

projeto e de análise.

Em [LIS00] é apresentado as principais diferenças entre um padrão de projeto e um

padrão de análise. São elas:

• Em um padrão de análise sua forma é descrita através de termos e conceitos

pertencentes ao domínio da aplicação. Já, a forma de um padrão de projeto é

descrita através de construtores genéricos de projeto de software;

• Padrões de análise não são escritos para servirem a um propósito geral. É

importante encontrar o equilíbrio entre obter um padrão muito abstrato e um

padrão muito especializado.

• Ao contrário dos padrões de análise, os padrões de projeto existentes são

apresentados de forma bem estruturada e organizados separadamente em

catálogos.

[GAM95] e outros propõem padrões de projeto como um novo mecanismo para

expressar experiências na elaboração de projetos orientados a objetos. Ensinam os novos

projetistas a trabalharem bem e padronizarem a maneira de desenvolvimento. Esses

padrões fornecem um vocabulário comum, reduzem a complexidade do sistema usando

abstrações, constituem uma base de experiência para o desenvolvimento de software

reusáveis e comportam-se como blocos de construção para serem empregados em sistemas

mais complexos.

Page 34: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

35

Os padrões de projeto apresentados por [GAM95] são organizados considerando

quatro elementos essenciais: Nome do padrão, o problema, a solução e as conseqüências.

No entanto outros itens de descrição podem ser adicionados como motivação,

participantes, sinônimos e outros padrões relacionados. A seguir é apresentado os quatro

elementos essenciais de um padrão segundo [GAM95]:

• O nome do padrão: é uma referência que podemos usar para descrever um

problema de projeto, suas soluções e conseqüências em uma ou duas palavras.

• O problema: descreve quando aplicar o padrão. Ele explica o problema e seu

contexto. Pode descrever problemas de projetos específicos, tais como

representar algoritmos como objetos.

• A solução: descreve os elementos que compõem o projeto, seus

relacionamentos, suas responsabilidades e colaborações.

• As conseqüências: são os resultados e análises das vantagens e desvantagens

da aplicação do padrão. Embora as conseqüências sejam raramente

mencionadas quando descrevemos decisões de projeto, elas são críticas para a

avaliação de alternativas de projetos e para a compreensão dos custos e

benefícios da aplicação do padrão.

Um exemplo de padrão de projeto é descrito na Figura 2.2 (Padrão Composite). A

intenção do Padrão Composite é compor objetos em estruturas de árvore para

representarem hierarquias partes-todo. Esse padrão permite aos clientes tratarem de

maneira uniforme objetos individuais e composição de objetos.

Figura 2.2: Ilustra o diagrama de classes do padrão de projeto Composite [GAM95]

Page 35: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

36

O padrão Composite pode ser usado em várias aplicações tais como: aplicações

gráficas, como editores de desenhos e sistemas de captura esquemática, que permitem aos

usuários construir diagramas complexos a partir de componentes simples. O usuário pode

agrupar componentes para formar componentes maiores, os quais, por sua vez, podem ser

agrupados para formar componentes ainda maiores. Uma implementação simples poderia

definir classes que funcionam como recipientes (containers) para estas primitivas.

O padrão Composite deve ser usado quando:

• Você quiser apresentar hierarquias partes-todo de objetos;

• Você quiser que os clientes sejam capazes de ignorar a diferença entre

composições de objetos e objetos individuais. Os clientes tratarão todos os

objetos na estrutura composta de maneira uniforme.

Logo o padrão Composite define hierarquias de classe que consistem de objetos

primitivos e objetos compostos. Os objetos primitivos podem compor objetos mais

complexos, os quais, por sua vez, também podem compor outros objetos, e assim por

diante, recursivamente. Sempre que o código do cliente espera um objeto primitivo ele

também pode aceitar um objeto composto [GAM95].

O padrão Composite também torna o cliente simples, uma vez que, podem tratar

estruturas compostas e objetos individuais de maneira uniforme, facilidade na inserção de

novas espécies de componentes, novas subclasses. Portanto os clientes não precisam ser

mudados para tratar novas classes. Sistemas orientados a objetos geralmente usam o

padrão Composite como por exemplo o Framework Compilador RTL Smaltalk.

Outro padrão de projeto também citado em [GAM95] é o padrão Strategy cuja

intenção é definir uma família de algoritmos, encapsular cada uma delas e torna-las

intercambiáveis. Strategy permite que o algoritmo varie independentemente dos clientes

que utilizam [GAM95].

Existem muitos algoritmos para quebrar um stream de texto em linhas. Codificar de

maneira fixa e rígida tais algoritmos nas classes que os necessitam não é desejável, por

várias razões tais como [GAM95]:

Page 36: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

37

• Quando os clientes necessitam quebras de linhas se tornam mais complexos se

incluírem o código de quebra de linhas. Isso os torna maiores e mais difíceis de

manter, especialmente se suportam múltiplos algoritmos de quebra de linhas.

• Quando diferentes algoritmos serão apropriados em diferentes situações. Não

queremos suportar múltiplos algoritmos de quebra de linhas se não usamos

todos eles.

• Quando é difícil novos algoritmos e variar os existentes quando a quebra de

linha é parte integrante de um cliente.

Em várias situações o uso do padrão Strategy será interessante, dentre eles podemos

citar:

• Quando muitas classes relacionadas diferem somente no seu comportamento.

As estratégias fornecem uma maneira de configurar uma classe com um, dentre

muitos componentes;

• Quando você necessita de variantes de um algoritmo. Por exemplo, pode definir

algoritmos que refletem diferentes soluções de compromisso entre

espaço/tempo.

• Quando um algoritmo usa dados de que os clientes não deveriam ter

conhecimento. O padrão Strategy deve ser usado para evitar exposição das

estruturas de dados complexas, específicas do algoritmo;

• Quando uma classe define muitos comportamentos, e estes aparecem em suas

operações como múltiplos comandos condicionais da linguagem. Em vez de

usar muitos comandos condicionais, mova os ramos condicionais relacionados

para a sua própria classe Strategy.

Podemos citar como exemplo o ET++ como InterViews que usam estratégias para

encapsular diferentes algoritmos de quebras de linhas.

Page 37: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

38

2.2.4 Padrões de Análise

Devido à abordagem de padrões ter sido introduzida na área de Engenharia de

Software, por projetistas de sistemas orientados a objetos, a categoria de padrões mais

conhecida atualmente é a dos padrões de projeto [LIS00]. Em [CUN03], [UCH], [DAN02],

[GER99], [MON02] são usados padrões de projeto.

Diversas pesquisas vem sendo realizadas com relação a padrões que auxiliem

projetistas de banco de dados a reutilizar soluções para problemas de modelagem de dados

[LIS00], [FOW97]. Os padrões que mais se adaptam a esse tipo de problemas são dos

padrões de análise visto que eles descrevem soluções para problemas de análise de

sistemas, embutindo conhecimento sobre o domínio de aplicação específico.

Um padrão de análise descreve um conjunto de classes, possivelmente pertencentes

a diferentes hierarquias de classes, e as associações existentes entre elas. Padrões de

análise podem ser vistos, como uma forma de descrever subesquemas de projetos mais

complexos, os quais ocorrem com freqüência durante o processo de modelagem de muitas

aplicações [LIS00].

Um padrão de análise descreve, em um nível arbitrário de abstração, um conjunto

de objetos do mundo real, seus relacionamentos e as regras que definem seu

comportamento e estado [LIS00].

[FOW97] define um padrão de análise como uma idéia que se provou útil em um

contexto prático e que, provavelmente, será útil em outras situações similares.

Padrões de Análise têm sido desenvolvidos para possibilitar a reutilização de

soluções de análise em diferentes sistemas. Quando identificamos os padrões, eles podem

ser mais genéricos, ou menos genéricos. Quando estes padrões são mais genéricos eles

podem ser reutilizados em aplicações de domínios diferentes, mas quando estes padrões

são menos genéricos, estes podem ser reutilizados considerando aplicações de um mesmo

domínio.

Page 38: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

39

Mesmo evidenciando que a reutilização contribui para o aumento da produtividade

entre dos projetistas, para que seja possível o uso de padrões, é necessário o cumprimento

de algumas etapas, uma delas é a documentação dos padrões.

Percebe-se que em [FOW97] e [HAY95] os padrões de análise eram descritos de

forma narrativa, sem nenhum comprometimento com uma estrutura padronizada.

Atualmente existe uma tendência a descrever padrões de análise de forma semelhante aos

padrões de projeto como está descrito em [GAM95], essa tendência pode ser explicada

visto ao grau de organização, padronização e ao crescente uso de padrões pelos projetistas.

Em [FOW00] observa-se alto valor de um padrões de análise, visto que eles

fornecem um começo melhor quando trabalha-se em um domínio novo. [FOW00] relata

que começou a coletar padrões de análise porque estava frustrado com domínios novos,

uma vez que tinha certeza que não era a primeira pessoa que os modelava.

[FOW00] viveu uma experiência interessante, pois percebeu que os padrões de

análise surgem em lugares pouco comuns, por exemplo quando começou a trabalhar em

um projeto para fazer análise financeira corporativa, foi ajudado por um conjunto de

padrões que ele havia descoberto na área de saúde.

Um padrão é muito mais que um modelo. Um padrão deve incluir a razão pela qual

ele é do modo que é. Freqüentemente se diz que um padrão é uma solução para um

problema. Um padrão deve esclarecer o problema, explicar por que ele resolve o problema

e também explicar em que circunstâncias ele funciona ou não [FOW00].

Padrões são importantes porque são o próximo estágio além da compreensão do

básico de uma linguagem ou uma técnica de modelagem. Padrões lhe dão uma série de

soluções e também lhe mostram o que faz um bom modelo e como você deve proceder

para construir um modelo. Eles ensinam através de exemplos [FOW00].

[MES98] apresenta uma estrutura de documentação de padrões semelhante a

[GAM95] porém mais simplificada, essa estrutura pode ser definida por quatro elementos:

Page 39: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

40

• Problema: fornece uma declaração sucinta do problema que necessita ser

resolvido. Normalmente colocado na forma de pergunta;

• Contexto: descreve o contexto no qual o problema foi identificado e para o qual

a solução foi proposta;

• Forças: conjunto de restrições que foram consideradas quando da elaboração da

solução do problema;

• Solução: fornece um diagrama de classes com a solução proposta.

A seguir é apresentado um exemplo de um padrão de análise considerando o

domínio de QEE:

Padrão: Local de Monitorização

Problema: Como modelar dados referentes aos locais de monitorização a fim de

obter informações de qualidade da energia elétrica?

Contexto: A monitoração da qualidade da energia elétrica pode ser executada

objetivando vários fins, uma vez determinado o escopo de um projeto de monitoração. Em

função de um objetivo de monitoração, regiões ou zonas de um sistema elétrico, definidas

pela seleção dos locais de monitoração, podem ser monitorizados a fim de obter

informações necessárias ao gerenciamento da qualidade da energia elétrica.

Forças:

• Todo consumidor tem pelo menos um local de monitorização;

• Um consumidor pode ter vários locais de monitorização;

• Necessidade de obter dados do local de monitorização para QEE.

Solução: A Figura 2.3 mostra o diagrama de classes que compõe o padrão. Em

cada local de monitorização podemos ter um ou vários contatos associados, e o consumidor

pode ter vários locais monitorados.

Page 40: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

41

Padrão Local de Monitorização

Local_Monit_ContatoCod_ContatoNom_Local_ContatoCar_ContatoTel_FaxTel_VozTel_DadosObs_Contato

Local_MonitoracaoCod_LocalDat_Inicio_MonitoracaoNom_LocalDes_LocalNum_Frequencia_alimentacao_localDat_Fim_MonitoracaoVal_Tensao_Nominal_Local

0..n1 0..n1

Monitoracao_ConsumidorCod_ConsumidorNom_ConsumidorEnd_ConsumidorUfe_ConsumidorCep_ConsumidorPais_ConsumidorTel1_ConsumidorTel2_ConsumidorObs_ConsumidorNom_Cont_Consumidor

1..n

1

1..n

1

Figura 2.3: Diagrama de Classes do Padrão Local de Monitorização

Padrões de análise têm sido propostos como instrumentos para a reutilização de

soluções durante as fases de análise de requisitos e modelagem conceitual do banco de

dados [FER98], [FOW97], [HAY95], [ROB93], [LIS00], [LIS01] e [LIS02].

2.2.5 Framework

A orientação a objeto cada vez mais tem sido um instrumento interessante para o

desenvolvimento de sistemas considerando os princípios propostos pela engenharia de

software. Podemos dizer fundamentalmente que se deseja com a orientação a objeto é

basicamente: reutilização e modularidade. No que tange a reutilização uma das propostas é

a de usar Frameworks para domínios específicos. Segundo [PRE94], Framework constitui

um avanço em termos de reutilização de software, uma vez que a reutilização ocorre não

Page 41: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

42

apenas a partir de pequenos blocos de programas, mas sim de todo ou parte de um sistema,

incluindo a reutilização de projeto.

Segundo [FAY99], um Framework é uma técnica da orientação a objeto voltada

para a reutilização que se beneficia de três características das linguagens de programação

orientada a objeto: abstração de dados, polimorfismo e herança.

Já [TAL97] considera um Framework como um conjunto de classes de software

semi-prontas e relacionadas. Visa atender a solução de um determinado domínio de

problema, de forma que as classes possam ser usadas, estendidas ou customizadas por

desenvolvedores para soluções específicas.

Como mostrado em [GAM95] um Framework é um conjunto de classes

cooperantes que constroem um projeto reutilizável para uma específica classe de software.

Por exemplo, um Framework pode ser orientado para a construção de editores gráficos

para diferentes domínios, tais como: desenho artístico, composição musical e sistemas

CAD para mecânica.

[LAR99] diz que um Framework é um subsistema extensível para um conjunto de

serviços relacionados, ou seja, um conjunto coeso de classes que colaboram para fornecer

serviços para o núcleo invariante de um subsistema lógico. Já [SIL00] define um

Framework como uma estrutura de classes inter-relacionadas, que corresponde a uma

implementação incompleta para um conjunto de aplicações de um domínio.

Enfim um framework é uma abstração de um domínio de aplicações, adequada a ser

especializada em aplicações deste domínio. A principal característica buscada ao

desenvolver um Framework, é a generalidade em relação a conceitos e funcionalidades do

domínio tratado. Além disso, é fundamental que a estrutura produzida seja flexível, isto é,

apresentar as características alterabilidade e extensibilidade [SIL00]:

• alterabilidade a capacidade de alterar a funcionalidade presente, sem

conseqüências imprevistas sobre o conjunto da estrutura, considerando os

Frameworks essa característica reflete na capacidade de alterar suas

responsabilidades em função da necessidade de uma aplicação específica, o que

Page 42: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

43

é operacionalizado através de uma identificação adequada das partes da

estrutura que diferem em aplicações distintas de um mesmo domínio.

• Extensibilidade se refere a capacidade de ampliar a funcionalidade presente,

sem conseqüências imprevistas sobre o conjunto da estrutura, essa característica

em relação ao Framework se refere a manutenibilidade do Framewok. Um

framework possui uma estrutura de classes mais complexa que a estrutura de

uma aplicação do seu domínio, essa estrutura é construída iterativamente uma

vez que a evolução de uma estrutura de um framework se estende por toda a sua

vida útil, pois a medida em que é utilizado, novos recursos podem ser

agregados.

Existem diversas definições pra o termo Framework, em contrapartida podemos

citar dois aspectos que caracterizam um Framework segundo [TAL97]:

• Os Frameworks fornecem infraestrutura e projeto: Frameworks portam

infraestrutura de projeto disponibilizada ao desenvolvedor da aplicação, que

reduz a quantidade de código a ser desenvolvida, testada e depurada.

• Os Frameworks “chamam”, não são “chamados”: um papel do framework é

fornecer o fluxo de controle da aplicação. Assim em tempo de execução, as

instâncias das classes desenvolvidas esperam ser chamadas pelas instâncias das

classes do Framework.

Para [SIL00] um Framework se destina a gerar diferentes aplicações para um

domínio. Precisa, portanto, conter uma descrição dos conceitos deste domínio.

Alguns usuários confundem Frameworks e a reutilização de classes de uma

biblioteca. Segundo [SIL00] existe uma diferença fundamental, e que no caso de

reutilização de classes de uma bilbioteca são usados artefatos de software isolados,

cabendo ao desenvolvedor estabelecer sua interligação, e no caso do Framework, é

procedia a reutilização de um conjunto de classes inter-relacionadas, esse inter-

relacionamento é estabelecido no projeto do framework. As Figuras Figura 2.4, Figura 2.5

e Figura 2.6 ilustram essa diferença, onde a parte sombreada representa classes e

associações que são reutilizadas.

Page 43: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

44

Figura 2.4: Aplicação desenvolvida totalmente [SIL00].

Figura 2.5: Aplicação desenvolvida reutilizando classes de biblioteca [SIL00].

Figura 2.6: Aplicação desenvolvida reutilizando um Framework [SIL00].

Em relação a reutilização, segundo [LIS00] um Framework não necessita estar

implementado em uma linguagem de programação para fornecer a solução parcial a uma

família de problemas. Logo é possível concluir que é uma vantagem o Framework estar

parcialmente implementado, visto que a solução para uma nova implementação está mais

próxima de ser alcançada.

Segundo [LIS00] uma das principais características de um framework é que o fluxo

de controle entre o Framework e a aplicação cliente, uma vez que no Framework os

métodos desenvolvidos para a aplicação é que são chamados pelos métodos de framework.

Isto evidencia que, além de reutilizar todo um conjunto de classes, o conhecimento sobre o

projeto do software também é reutilizado.

Page 44: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

45

Um dos primeiros Frameworks que pode ser encontrado na literatura é o Model-

View-Controller (MVC), disponível em ambiente de desenvolvimento Smalltalk, para o

desenvolvimento de interfaces para o usuário (GUI), podemos citar outros Frameworks

relacionados a esta área: MacApp, para aplicações gráficas no ambiente Macintosh, ET++,

Iterviews, Microsoft foundation Classes, Java AWT. Apesar dos Frameworks pioneiros

estarem relacionados a criação de interfaces gráficas, atualmente existem Frameworks para

diversos domínios.

Algumas literaturas tentam classificar Frameworks em diferentes dimensões,

caracterizando de acordo com seus propósitos. [FAY97] divide Frameworks em:

• Frameworks de Infra-estrutura: são usados para dar suporte a diversos

tipos de aplicação independente dos domínios endereçados por estas

aplicações. Exemplos seriam Frameworks para sistemas operacionais,

comunicação, redes e construção de interfaces.

• Frameworks de Integração: normalmente são usados para integrar

aplicações e componentes distribbuídos, como Frameworks CORBA ORB,

DCOM, implementações do padrão ODMG.

• Frameworks de Domínio de Aplicação: representam esqueletos de

aplicações para domínios específicos, como telecomunicações, manufatura e

engenharia financeira. Frameworks deste tipo capturam elementos

invariantes de domínio, e deixam em abertos aspectos específicos de cada

aplicação.

Desta forma podemos destacar que os Frameworks de Infra-estrutura e Integração

estão basicamente relacionados a problemas internos de desenvolvimento de software e são

independente de domínio, já os Frameworks de Domínio de Aplicação têm o objetivo de

apoiar o desenvolvimento de aplicações dirigidas ao usuário e produtos em domínios

específicos.

Outra forma de classificar os Frameworks é de acordo com a aplicabilidade, em

horizontais ou verticais [FAY99] [TAL97]. Frameworks horizontais são voltados à

implementações de aplicações relacionadas a infra-estruturas de comunicação de dados, de

interface de usuários e de gerenciamento de dados.

Page 45: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

46

Já os Frameworks verticais são voltados ao desenvolvimento com orientação para

um domínio de aplicação específico. Procuram atender a características comuns do

domínio e deixar as específicas para serem implementadas em aplicações construídas a

partir deles.

Os Frameworks de Domínio de Aplicação, ou verticais, são de maior interesse neste

trabalho. Procura-se trabalhar com um determinado domínio de uma aplicação (engenharia

elétrica – QEE) para, a partir dele facilitar desenvolvimento de novas aplicações .

Além da aplicabilidade os Frameworks, podem ainda classificar-se, de acordo com

sua visibilidade [BOS97]:

• Frameworks do tipo caixa-branca: permitem ao usuário visualizar como

foram implementados e a partir de classes já existentes, através de herança,

criar novas classes adicionando funcionalidades particulares de sua

aplicação.

• Frameworks do tipo caixa-preta: apenas especificam, através de

interfaces, os serviços que são por eles disponibilizados e requisitados.

Facilitam ao usuário o seu uso, mas reduzem a flexibilidade.

Um aspecto variável de um domínio de aplicação é chamado de “ponto de

especialização”3. Diferentes aplicações dentro de um mesmo domínio são distinguidas por

um ou mais Hot Spots, que representam as partes do framework de aplicação. Já os pontos

fixos4 definem a arquitetura geral de um sistema de software (componentes básicos e os

relacionamentos entre eles). Os frozen-spots ficam fixos em todas as instanciações do

Framework de aplicação [SCH97].

A Figura 2.7 apresenta um Framework caixa branca com um único hot spot

[SCH97]. Logo para a utilização do Framework é necessário fornecer a implementação

referente a esse hot spot.

3 Em inglês “Hot Spot”. 4 Em inglês “Frozen-spots”.

Page 46: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

47

Figura 2.7: Framework Caixa Branca.

A Figura 2.8 ilustra um Framework caixa preta, também com um único hot-spot.

Nesse Framework existem duas alternativas de implementação. O usuário deve escolher

uma delas ara obter sua aplicação específica. Note que na Figura 2.8 as implementações

fazem parte do Framework, e são as únicas alternativas possíveis de implementação no

hot-spot, já na Figura 2.7 a implementação não fazia parte do Framework, o que permite

qualquer implementação para o hot-spot.

Figura 2.8: Framework Caixa Preta

Geralmente os Frameworks são desenvolvidos segundo as características de um

Framework caixa-branca, isso acontece pois a medida que são utilizados, são sugeridas

várias especializações. Logo, conforme vão alcançando um grau de maturidade, tornam-se

cada vez mais parecidos com Frameworks do tipo caixa preta [PRE97].

Portanto a decisão em usar uma abordagem ou outra de um Framework para o

desenvolvimento de uma aplicação, é uma característica de cada Framework, e que será

definida na fase de projeto. De forma geral o projeto de um Framework é desenvolvido

com uma generalização de um domínio de problema. Este, estabelece a flexibilidade

necessária impondo restrições a serem consideradas pelos usuários [SIL00].

2.2.5.1 Framework x Padrões de Projeto

Os conceitos de padrões e Frameworks são às vezes confundidos, apesar de existir

algumas diferenças fundamentais. É importante ressaltar que ambos são elementos de

Hot Spot

Hot Spot

Page 47: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

48

projeto que contém microarquitetura de classes e objetos cooperante para resolver um

problema recorrente de projeto orientado a objetos. Em [GAM95], são apresentados três

diferenças entre padrões e Frameworks:

• padrões de projeto são mais abstratos que Framewoks. Os Framewoks

podem ser implementados, mas somente exemplos de padrões podem ser

implementados. Um ponto forte dos Frameworks é que podem ser

implementados em uma linguagem de programação, e não apenas

estudados, mas executados e reutilizados diretamente. Já os padrões de

projeto têm que ser implementados cada vez que forem reutilizados, eles

explicam também as intenções, custos e benefícios e conseqüências de um

projeto.

• padrões de projeto são elementos de arquitetura menores que os

Frameworks. Um Framework típico contém vários padrões de projeto, mas

a recíproca não é verdadeira.

• padrões de projeto são menos especializados que os Frameworks. Os

Frameworks sempre têm um particular domínio de aplicação. Um

Framework para um editor gráfico poderia ser usado na simulação de uma

fábrica, mas ele não seria confundido com um Framework para simulação.

Por outro lado, os padrões de projeto podem ser usados em praticamente

qualquer tipo de aplicação. Apesar da existência de padrões de projeto mais

específicos de um domínio, mesmo assim eles não ditam a arquitetura de

uma aplicação da maneira como um Framework faz.

Os Frameworks estão se tornando cada vez mais comuns e importantes. Eles são a

maneira pela qual os sistemas orientados a objetos conseguem a maior reutilização. A

tendência é que as aplicações orientadas a objetos terminarão por consistir-se em camadas

de Frameworks que cooperam uns com os outros.

A maioria dos trabalhos relacionados ao uso de Frameworks, estão ligados a

aplicações, neste trabalho propõe uma abordagem relacionada ao uso de Frameworks em

um projeto de banco de dados. Neste caso estamos propondo um Framework conceitual,

segundo [LIS00] o objetivo de um Framework conceitual é o de fornecer um diagrama de

classes que pode ser usado como base para a modelagem das classes do domínio da

Page 48: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

49

aplicação. O termo Framework conceitual significa que o produto gerado a partir do uso do

framework não é um software executável, mas sim, um esquema conceitual de dados que,

posteriormente, deverá ser traduzido para um esquema de dados específico do domínio no

qual será desenvolvida a aplicação. No caso deste trabalho o Framework está relacionado

ao domínio de qualidade na energia elétrica.

2.3 Qualidade de Energia Elétrica e Apoio Computacional

Os processos industriais modernos cada vez mais utilizam dispositivos de controle

baseados em tecnologia microprocessada com o objetivo de atingir as metas gerenciais de

produtividade e qualidade. Em conseqüência, suas cargas têm se tornado muito sensíveis

aos fenômenos associados à qualidade da energia, trazendo grandes prejuízos devido às

interrupções de seus processos, perdas de produção, perdas de insumos e custos associados

à mão-de-obra e a reparos de equipamentos [MED03].

As concessionárias de energia elétrica por sua vez, estão sofrendo desgastes na sua

imagem empresarial, além dos custos com pedidos de ressarcimento de prejuízos sofridos

por consumidores, decorrentes da má qualidade da energia [MED03].

Várias pesquisas estão sendo desenvolvidas no que diz respeito a dados relativos a

QEE, essas pesquisas em sua maioria são apoiadas por ferramentas computacionais.

Portanto dispor de apoio computacional para tratar sistemas que visam QEE apresenta-se

como uma alternativa crescentemente utilizada, como veremos a seguir.

Para [MED03], [NET01] os recursos computacionais estão sendo usados pelas

empresas de energia elétrica no sentido de implementar programas de diagnósticos e

controle da qualidade da energia elétrica, já que a mesma está se transformando num fator

de competitividade no mercado de energia elétrica. [MED03] apresenta um programa de

monitoração com o objetivo de determinar indicadores que expressem a QEE nos pontos

de conexão com a transmissora e em alguns pontos de entrega, de forma qualitativa e

quantitativa, permitindo estabelecer relações de causa-efeito que venham subsidiar ações

Page 49: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

50

de caráter preventivo ou corretivo para operações do sistema elétrico ou mesmo no

planejamento da operação de expansão do sistema elétrico.

Já [NET01] apresenta um algoritmo Neuro-DEA que através da medida da

eficiência relativa identifica os valores das tensões que não causam prejuízos ao sistema

bem como os pontos onde estas tensões prejudicariam o bom funcionamento dos

equipamentos.

[AGO00] mostra que as transformações ocorridas nos últimos anos na organização

dos Sistemas de Energia Elétrica, com o estabelecimento de um ambiente competitivo,

principalmente na geração e na comercialização, têm sinalizado para o aproveitamento

máximo das capacidades das instalações. Ao mesmo tempo, novas metodologias e novos

equipamentos (FACTS, por exemplo) são constantemente desenvolvidos, e precisam ser

incorporados nas ferramentas de apoio ao setor elétrico de forma rápida e eficiente. Assim,

um bom suporte computacional ao desenvolvimento dessas ferramentas torna-se

imprescindível.

Para [KAG03] as ferramentas computacionais destinadas a análises e diagnósticos

de sistemas de distribuição integrados são muito procuradas atualmente, pois as

regulamentações do setor têm exigido das concessionárias um melhor desempenho de seus

sistemas elétricos com enfoque direto em qualidade de fornecimento. O trabalho proposto

por [KAG03] apresenta uma metodologia de cálculo de índices técnicos descritivos,

capazes de diagnosticar as redes de distribuição, além de descrever um modelo

computacional para estimação de índices técnicos de qualidade de fornecimentos de

energia das redes de média e baixa tensão.

[ROM03] mostra o uso de programas computacionais que permitem ao usuário

simular algumas situações no sistema elétrico, como por exemplo simular faltas deslizantes

aplicadas ao longo das linhas e barramentos existentes dentro de uma área de influência

pré-definida, e na monitoração das tensões na barra de interesse onde se deseja obter

índices de qualidade. O trabalho proposto por [ROM03] apresenta uma ferramenta para

essa simulação denominada “ANAQUALI”.

Page 50: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

51

[PEL03] usa recursos computacionais para implementar um modelo de

planejamento que estabelece as providências e obras prioritárias, em uma dada área

geográfica da empresa que maximizem a relação benefício/custo. [PEL03] apresenta uma

ferramenta denominada “SISQUALI” que permite tal funcionalidade.

[CRU03] apresenta as características principais do sistema de monitoramento da

qualidade da energia elétrica da Chesf e sua experiência na operação e manutenção de uma

rede de instrumentos digitais de medição para fins da análise da qualidade da energia

elétrica fornecida pela empresa, na administração de um sistema de coleta, armazenamento

e distribuição de dados e nas atividades desenvolvidas em uma plataforma para teste e

simulações. Neste trabalho é descrito a rede de monitoração de QEE da Chesf, bem como a

administração do banco de dados e o sistema de distribuição de dados disponibilizados na

Intranet da empresa.

Para [DIA01], [ALV00], [FER99], [FER01] as informações relativas a QEE

proporciona as concessionárias prover aos consumidores um atendimento pré-ativo,

configurando uma nova oportunidade de negócio, e as ferramentas computacionais dão

apoio no que diz respeito a monitoração, a aquisição, tratamento e disponibilização de

dados relativos a QEE.

[DIA01] discute o resultado adquirido no desenvolvimento do projeto [PPGEE00]

onde foi implantado uma rede piloto de monitoração da QEE, essa discussão apresenta

critérios utilizados no desenvolvimento de um sistema de aquisição de dados para

gerenciamento da Qualidade da Energia Elétrica, baseado na instalação de uma rede de

equipamentos de monitoramento da QEE em pontos chave do sistema, que permite avaliar

uma série de fatores como: fenômenos eletromagnéticos a serem observados, metodologias

e protocolos de medição, tratamento e disponibilização dos dados medidos. Com isso é

possível definir requisitos de hardware, software, topologia da rede de monitoramento,

arquitetura do sistema, transmissão dos dados e especificação de um equipamento monitor

de QEE.

[ALV00] fundamenta-se em um sistema de gerenciamento da QEE, desenvolvido a

fim de permitir um eficiente tratamento da informação, tratando a grande quantidade de

dados aquisitados, permitindo a extração de informações específicas, disponibilizando-as

Page 51: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

52

na forma de relatórios formatados para atender aos objetivos estabelecidos em [FER99]. A

partir da recuperação da informação contida no banco de dados uma série de outras

informações pode ser levantada a fim de responder, à necessidade, ou o objetivo, da

avaliação.

Já [FER01] apresenta que uma rede de monitores instalada em pontos específicos

do sistema elétrico, pode gerar uma grande quantidade de informações, sob diferentes

formas de registro de variações na tensão ou corrente do sistema monitorado. Isto indica a

necessidade de um sistema de gerenciamento que minimize a quantidade de dados

armazenados e maximize a eficiência de sua análise, para isso foi desenvolvido um banco

de dados relacional cujo objetivo global é a produção automatizada de relatórios que

auxiliem no gerenciamento da qualidade da energia elétrica em um sistema elétrico.

[VIV01] teve por objetivos especificar e desenvolver para a Companhia de

Eletricidade do Rio de Janeiro – CERJ, um sistema que tivesse a característica de aquisitar

anomalias relacionadas a sub-tensão, sobre tensão e harmônicos de tensão, transmitir esses

dados até um Servidor de Comunicação e disponibiliza-los em um Servidor de Dados com

programas visualizadores adequados para permitir a um especialista da área analisá-los e

tomar decisões pertinentes. O sistema prevê também, a disponibilização do banco de dados

para um Servidor Web para que as informações possam ser acessadas mediante uma

autenticação, por consumidores ou agências reguladoras.

Em [SAN02] tendo em vista a necessidade de competição neste novo mercado e

vislumbrando as informações necessárias para o real conhecimento de seus clientes, a AES

Eletropaulo está construindo uma base de dados de medição que permite o

acompanhamento diário via Web do comportamento de seus clientes de Alta e Média

Tensão, de suas subestações de transmissão e distribuição, o tratamento de clientes com

várias plantas como uma mesma companhia, além do estudo e a análise de dados

históricos.

[FAV02] apresenta um projeto que trata a obtenção das informações com qualidade

e prazos determinados, para a aquisição de dados das medições de fronteira, optou-se pela

instalação de medidores de retaguarda, aproveitando-se os transformadores de

instrumentos existentes. As informações são registradas em memória local dos medidores,

Page 52: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

53

essas informações são coletadas pelo sistema de aquisição e armazenadas em um SGBD

(Oracle), aplicativos acessam a base de dados para o cálculo da curva de carga e para a

apresentação dos dados sob forma de tabelas e gráficos. Este trabalho apresenta a

experiência da ELEKTRO na implantação de um sistema de aquisição e tratamento de

dados das medições de fronteira.

[OLI99] trata questões relativas a QEE e sua relação com a conservação de energia.

Determina as principais medidas de conservação adotadas pelo PROCEL (Programa

Nacional de Conservação de Energia Elétrica) dentro dos programas de GLD,

quantificando física e economicamente os efeitos destas sobre a Qualidade. Objetivando

por fim levantar argumentos para que os programas de conservação incluam em suas

análises de viabilidade econômica as medidas de mitigação dos distúrbios gerados.

[DAB95] apresenta um software para um sistema de gerenciamento da qualidade da

energia elétrica. Os dados são adquiridos pelos monitores de QEE, tratados e inseridos no

banco de dados, este trabalho usou o SGBD Microsoft Access, arquitetura Cliente/servidor

e a Structures Query Language (SQL) para consulta aos dados.

Analisando estas propostas, percebe-se que:

• Existem propostas relativas a Qualidade da Energia Elétrica que usam

algoritmos sem especificar uma base de dados, e outras que necessitam guardar

informações, quando isso ocorre, geralmente usam um SGBD (relacional) para

armazenamento.

• Nas propostas que usam banco de dados, não é apresentado o projeto do banco

de dados, vê-se que a definição dos requisitos para a definição do banco de

dados está associada a experiência adquirida pelos profissionais que lidam com

QEE.

• Quando se deseja projetar um banco de dados, não existe o reuso das

informações adquiridas por outros projetos/pesquisadores.

• Os recursos de orientação a objetos são pouco utilizados.

Page 53: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

54

2.4 UML - Linguagem de Modelagem Unificada

A partir da década de 70, métodos orientados a objetos começaram a surgir,

vislumbrando a mudança de paradigma. A programação orientada a objetos já estava

amadurecendo, bastava portanto criar para ela uma metodologia, e começamos a conhecer

a análise orientada a objetos.

Tem-se comprovado que a orientação a objetos vem propiciar aos desenvolvedores

aumento de produtividade, diminuição do custo de desenvolvimento e principalmente de

manutenção, maior portabilidade e reutilização de código. A orientação a objetos baseia-se

em vários conceitos como objetos, classes, encapsulamento, herança, polimorfismo e

outros.

Desde os primeiros conceitos de orientação a objetos, diversos métodos foram

apresentados à comunidade, mas a maioria procuravam estender os métodos estruturados,

logo tínhamos uma insatisfação por parte dos usuários que não conseguiam encontrar uma

satisfação no que havia disponível.

A partir de meados da década de 90 começava a surgir novas abordagens que

procuravam trabalhar o novo paradigma. Vários pesquisadores através de suas publicações

deram grandes contribuições à orientação a objetos: Ward Cunningham e Kent Beck, Sally

Shlaer e Steve Mellor, Jim Odell e James Martin, Peter Coad e Ed Yourdon, James

Rumbaugh (OMT – Object Modeling Technique), Grady Booch (Método Booch), Ivar

Jacobson (OOSE – Object-Oriented Software Engineering).

Os métodos que mais que mais cresciam no mercado eram: Booch’93, OMT-2 e

OOSE, cada método apresentava pontos significativos. Resumidamente, o OOSE possuía

seu foco em casos de uso (use case), provendo suporte à engenharia de negócios e análise

de requisitos. O OMT-2 era expressivo na fase de análise dos sistemas de informação, já

Booch’93 destacava-se na fase de projeto.

Os esforços para a unificação desses métodos tiveram início com James Rumbaugh

e Grady Booch na Rational Software, mais tarde juntou-se a essa equipe Jacobson com o

Page 54: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

55

intuito de incorporar o método OOSE. O método unificado passou a se chamar UML –

Unified Modeling Language.

Durante o ano de 1996 a UML já era vista pelas organizações como uma estratégia

de negócios. Um requerimento de proposta de padronização emitido pela OMG5 gerou

uma união de forças a fim de produzir uma resposta a esse requerimento. Houve

participação ativa da comunidade de engenharia de software, além de várias empresas de

software que passaram a contribuir no intuito de fortalecer a UML. Assim consegui-se uma

linguagem bem definida, expressiva, poderosa e genericamente aplicável.

Para [BOO99] a UML é uma linguagem-padrão para a elaboração da estrutura de

projetos de software, que poderá ser empregada para a visualização, especificação,

construção e a documentação de artefatos que façam uso de sistemas complexos de

software.

Segundo [FOW00] a UML é chamada de linguagem de modelagem, não é um

método. A maioria dos métodos consiste, pelo menos em princípio, de uma linguagem de

modelagem e de um processo. A linguagem de modelagem é a notação utilizada por

métodos para expressar projetos. O processo é a sugestão de quais passos a serem seguidos

na elaboração de um projeto.

Para o [OMG99], a UML consiste na especificação semi-formal de um metamodelo

para representar a semântica de modelos de análise e projeto orientado a objeto, incluindo

modelos estáticos, comportamentais, de uso e arquiteturais.

Para [MEL02] a UML é uma linguagem para especificação, visualização,

construção e documentação de artefatos6 de sistemas de software.

Um fator importante no uso da UML é que ela é independente de linguagens de

programação quanto de processos de desenvolvimento, logo ela pode ser utilizada para a

5 É uma organização internacional, que promove a teoria de prática da tecnologia orientada a objeto em desenvolvimento de sistemas. A patente da organização inclui o estabelecimento de normas industriais e especificações de gerenciamento de objetos para prover um padrão comum para desenvolvimento de aplicações. 6 Exemplos de artefatos: requisitos, arquitetura, projeto, código fonte, planos de projeto, testes, protótipos, versões, e etc.

Page 55: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

56

modelagem de sistemas, não importa qual a linguagem de programação que será utilizada

na implementação do sistema, ou qual a forma de desenvolvimento adotada.

A UML é uma linguagem visual pra modelar sistemas orientados a objetos. Isso

quer dizer que a UML é uma linguagem construída de elementos gráficos (visuais)

utilizados na modelagem que permite representar os conceitos do paradigma de orientação

a objetos. Através de elementos gráficos definidos nesta linguagem pode-se construir

diagramas que representam diversas perspectivas de um sistema [ BEZ02].

O desenvolvimento de um sistema de software demanda múltiplas visões dos

desenvolvedores, ou seja, eles devem ter a possibilidade de estudar esse sistema a partir de

várias perspectivas. Segundo [BOO99] um sistema pode ser descrito por cinco visões

interdependentes do sistema, as visões propostas são:

• Visão de Casos de Uso: descreve o sistema de um ponto de vista externo como

um conjunto de interações entre o sistema e os agentes externos ao sistema.

• Visão de Projeto: enfatiza as características do sistema que dão suporte, tanto

estrutural quanto comportamental, às funcionalidades externamente visíveis do

sistema.

• Visão de Implementação: corresponde à distribuição física dos sistemas em

seus subsistemas e à conexão entre esses partes.

• Visão de Processo: esta visão enfatiza as características de concorrência

(paralelismo), sincronização e desempenho do sistema.

É importante lembrar que dependendo das características e complexidades do

sistema, nem todas as visões precisam ser construídas.

Na terminologia da UML os documentos que são criados na modelagem são

denominados artefatos de software ou artefatos, esses artefatos compõem as visões do

sistema. Os artefatos gráficos produzidos durante o desenvolvimento de um sistema de

software são definidos através dos diagramas da UML:

Page 56: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

57

• Diagrama de classe: utilizado na construção do modelo de classes desde o nível

de análise até o nível de especificação.

• Diagrama de objetos: podem ser vistos como instâncias de diagramas de

classes, da mesma forma que objetos são instâncias de classes7.

• Diagrama de componentes: mostra os vários componentes de software de um

sistema e suas dependências.

• Diagrama de implantação: representa a topologia física do sistema e,

opcionalmente, os componentes que são executados nessa topologia.

• Diagrama de caso de uso: corresponde a uma visão externa do sistema e

representa graficamente os atores, casos de uso e relacionamentos entre esses

elementos, onde o objetivo é ilustrar em um nível alto de abstração quais

elementos externos interagem com que funcionalidades do sistema.

• Diagrama de seqüência: a ênfase está na ordem temporal das mensagens

trocadas entre os objetos.

• Diagrama de colaboração: enfatiza os relacionamentos que há entre os objetos

que participam da realização de um cenário.

• Diagrama de transição de estados: utilizado para realizar a análise das

transições entre estados dos objetos de um sistema de software, podem prever

todas as possíveis alterações realizadas, em função de um evento que pode

ocorrer.

• Diagrama de atividades: é um tipo especial de diagrama de estados, em que são

representados os estados de uma atividade, em vez dos estados de um objeto,

esse diagrama é orientado a fluxo de controle.

Essa dissertação se concentra no diagrama de classes, pois esse é o diagrama central

para descrever a estrutura dos Frameworks, e na descrição dos padrões de análise. Apenas

alguns recursos da UML serão utilizados, os quais fazem parte do modelo de classes, cujos

principais construtores são mostrados na Figura 2.9. Em relação ao SIQEE este apresenta

características que indicam a viabilidade de disponibilização deste sistema na Web, logo o

uso de linguagem padrão torna-se fator importante.

7 Diagramas de objetos também são chamados de diagramas de instâncias.

Page 57: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

58

Pacote

Subclasseatributo : domínio

Método()

Suclasseatribributo : domínio

Método()

Classeatributo : domínio

Método()

Classe Agregadaatributo : domínio

Método()0..*1 0..*1

ClasseComponenteatributo : domínio

Método()

Figura 2.9: Notação gráfica do diagrama de classes UML.

Segundo [CON03] na Web Application Extension for UML (WAE), a notação

UML é estendida com semântica e restrições adicionais para permitir a modelagem de

elementos da arquitetura específica da Web como parte do modelo de sistema. Para

aplicações Web significa que os modelos UML, precisam capturar a execução da lógica de

negócios nas páginas Web, nos scripts do cliente e nos componentes Web. Tendo um único

modelo central de toda a lógica de negócio em um sistema, conseguimos compreendê-lo

melhor e, eventualmente, aperfeiçoá-lo em futuras versões.

Segundo [JON01], os objetivos principais definidos pelos criadores da UML são os

seguintes:

• Prover aos usuários uma linguagem de modelagem visual expressiva e pronta

para uso, de forma que eles possam desenvolver e compartilhar modelos

significativos;

• Prover mecanismos de extensibilidade e especialização para ampliar os

conceitos centrais;

• Ser independente de linguagens de programação e processos de

desenvolvimento particulares;

objeto: classe Instanciação

Agregação Composição

Multiplicidade

Associação Generalização/ Especialização

Page 58: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

59

• Prover uma base formal para entendimento da linguagem de modelagem;

• Estimular o crescimento do mercado de ferramentas orientadas a objetos;

• Suportar conceitos de desenvolvimento de nível mais alto, tais como

colaborações, estruturas, modelos e componentes;

• Integrar as melhores práticas.

De acordo com [FUR98], a UML pode ser usada para as seguintes atividades ao

longo de um processo de desenvolvimento de software:

• Mostrar as fronteiras de um sistema e suas funções principais utilizando atores

e casos de uso;

• Ilustrar a realização de casos de uso com diagramas de interação;

• Representar uma estrutura estática de um sistema utilizando diagramas de

classe;

• Modelar o comportamento de objetos com diagramas de transição de estado;

• Revelar a arquitetura de implementação física com diagramas de componente e

de implantação;

• Estender sua funcionalidade através de estereótipos.

Segundo [TON03] a UML tem como objetivo prover as necessidades de

desenvolvedores de software com uma linguagem de modelagem visual completa,

buscando atingir os seguintes aspectos:

• disponibilizar de mecanismos de especificações que possam expressar os níveis

conceituais;

• independência de processos de desenvolvimento e linguagens de programação;

• incentivo do crescimento das aplicações desenvolvidas no conceito da

orientação a objetos;

• Permissão de suporte a conceitos de desenvolvimento de alto nível, tais como

Frameworks, padrões e componentes;

Considerando os objetivos definidos por [JON01] essa dissertação está relacionada

ao segundo e ao terceiro objetivo, em relação as atividades descritas por [FUR98] está

relacionada a terceira e sexta, e em relação a [TON03] está relacionada a todos os itens.

Page 59: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

60

2.5 Linguagens de Marcação

As linguagens de marcação já existem a algum tempo de várias formas, cuja

característica fundamental é a capacidade de descrever símbolos ou marcadores inseridos

em um documento de texto para definir o significado que aqueles símbolos dão ao texto

associado [CAR01]. Já [HOL01] define uma linguagem de marcação como uma referência

à descrição do documento, ou seja, do modo como o conteúdo do documento deve ser

interpretado.

O objetivo principal de uma linguagem de marcação é fornecer uma descrição

detalhada de como o documento dever ser estruturado independente de qual processador

possa estar processando os dados, e a tarefa de formatação é deixada para as folhas de

estilo que o desenvolvedor cria [PIT99].

A HTML(Hypertext Markup Language), linguagem de marcação de

hipertexto popularizou o uso de linguagens de marcação, foi criada em 1990 como uma

técnica para a criação e vinculação de documentos, e execução de links. Com o

crescimento do uso da Web para disseminação das informações novas necessidades foram

surgindo excedendo as capacidades da HTML. A XML (Extensible Markup Language),

linguagem de marcação extensível, foi criada para superar essas limitações e capacitar uma

nova geração de intercâmbio de informações. As figuras Figura 2.10 e Figura 2.11

apresentam um exemplo de uma página HTML e XML respectivamente.

Figura 2.10: Código de uma página em HTML.

<HTML> <HEAD> <TITLE> Livro </TITLE> </HEAD> <BODY> <CENTER> <H1>

Qualidade na Energia Elétrica Autor Ricardo Aldabó Editora Artliber

</H1> </CENTER> Engenharia Elétrica </BODY> </HTML>

Page 60: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

61

Figura 2.11: Código de uma página em XML.

2.5.1 Características da XML

A XML, [W3C98] é um padrão aprovado pela W3C8 (Worls Wide Web

Consortium) que deve se tornar um formato universal para a troca de informações na Web.

A SGML (Standard Generalized Markup Language), linguagem de marcação

generalizada padrão, é predecessora da XML, mas também devido a sua generalidade

tornou-se complexa demais para o seu uso amplamente na Web. Contudo segundo

[CAR01] como a XML é definida como um subconjunto de SGML, qualquer documento

XML válido também é um documento SGML válido, mas o inverso não é verdadeiro.

Em [PIM00], apresenta a XML como uma meta-linguagem, o que significa que

XML provê recursos para a definição de gramáticas que caracterizam linguagens para

classes de documentos específicos, com conjunto de elementos, atributos e regras de

composição bem determinados.

8 Órgão que define os padrões para a Web.

<?xml version=”1.0” encoding=”utf-8”?> <LIVRO>

<AREA> Engenharia Elétrica </AREA> <TITULO>

Qualidade na Energia Elétrica </TITULO> <AUTOR> Ricardo Aldabó </AUTOR> <EDITORA> Artliber </EDITORA> </LIVRO>

Page 61: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

62

Já [GRA02], diz que a XML é uma linguagem usada para representar dados como

uma string que inclui uma “marcação” intercalada a fim de descrever as propriedades dos

dados. O uso de marcação permite que o texto seja intercalado por informações

relacionadas a seu conteúdo ou forma.

Nas figuras Figura 2.10 e Figura 2.11 podemos observar as diferenças entre XML e

HTML, segundo [ABT99] podemos citar os seguintes aspectos:

• novas tags9 podem ser definidas à vontade;

• estruturas podem ser aninhadas a profundidades arbitrárias;

• um documento XML pode conter uma descrição opcional de sua gramática.

Visto que as tags podem ser definidas de acordo com a necessidade do sistema, isso

faz com que as tags deixam de ser fixas e se tornam mais auto-descritivas. Logo pode-se

ainda atribuir nomes mais significativos ao conteúdo referenciado. Já a gramática descrita

no terceiro aspecto pode ser usada pelas aplicações que usam XML e que necessitam

validar a estrutura do documento. Esta descrição da gramática é chamada esquema, no qual

existem as seguintes propostas: DTD e XML Schema.

Diferente da HTML, XML exige que a todo elemento de abertura seja associado

um elemento de fechamento, mesmo que nenhum dados esteja delimitado por tais

elementos.

De acordo do [PIT99] a XML é uma linguagem de marcação mais avançada do que

o HTML, afirma ainda que a HTML é usado basicamente para apresentação de conteúdo e

o XML para estruturar os dados, mesmo assim a XML não é uma substituta da HTML, e

também não é uma HTML com marcas extras.

Na Web a HTML é muito utilizada muito embora ela trate as informações de forma

superficial, visto que descreve a disposição de textos, imagens e controles em uma página

e não o seu conteúdo. Essa característica é o inverso da XML, uma que vez que ela

descreve o conteúdo em vez da apresentação.

9 São marcas combinantes que são balanceadas devendo ser fechadas em ordem inversa à aquelas que foram abertas. O texto entre as marcas é o conteúdo.[ABT99]

Page 62: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

63

Esta diferença agrega uma vantagem para XML em relação a HTML. Segundo

[SUC98], a XML permite que a troca eletrônica de dados na Web seja legível para o

computador, o que não acontece na HTML, uma vez que a troca de documentos é legivel

apenas para o homem. Com a XML há um ganho semântico pois os programas passam a

entender a estrutura dos documentos disponíveis na Web, possibilitando assim pesquisas

inteligentes das informações armazenadas.

Para [PIT99] a XML é na realidade uma maneira de solucionas determinados

problemas que são encontrados ao usarmos a HTML. Com a XML temos:

• Melhor controle em relação ao layout;

• Menos esforço no servidor Web devida à capacidade de acessar informações do

lado do cliente;

• O uso de vários tipos de links;

• A capacidade de publicar qualquer tipo de informação tanto na Internet quanto

em Intranets.

• Um número menor de problemas para exibir páginas longas.

2.5.2 XML como intercâmbio de Informações

Com a evolução da Internet, a World Wide Web (Web) se tornou um vasto

repositório de dados dos mais variados domínios. A XML vem sendo usada para a

representação e intercâmbio de dados na Web.

Segundo [CH98], um software precisaria ser apenas capaz de exportar e importar os

dados utilizados no formato XML para que conseguisse operar com outras ferramentas

compatíveis com XML. A [OMG99b] especifica os quatros seguintes cenários onde o

XML pode ser útil:

• Combinação de ferramentas em um ambiente heterogêneo;

• Cooperação através de definições comuns de metamodelos;

• Troca de experiências em um ambiente distribuído com facilidade de

publicação e captura de informações;

• Promoção de padrões de projeto e reutilização.

Page 63: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

64

Neste trabalho estaremos utilizando XML para disponibilização de um esquema

para um banco de dados independente do SGBD. A Figura 2.12 representa a estrutura de

disponibilização de dados na Web utilizando XML, o que facilitaria da troca de

informações entre grupos de pesquisas de QEE, pois os dados estariam em formato padrão,

fazendo com que cada grupo tenha apenas uma ferramenta para capturar dados em formato

XML e armazenar em seu banco de dados de acordo com a tecnologia usada.

Em [MAG01] é apresentado uma possível solução para o problema de dados semi-

estruturados é extraí-los de páginas Web e armazená-los em banco de dados relacional para

posterior manipulação. Neste sentido, diversas abordagens têm sido propostas para a

extração e estruturação de dados na Web.

Figura 2.12: Estrutura de disponibilização de dados na Web

2.6 Modelo de Dados

A modelagem de dados teve seu início sob o enfoque da abordagem Entidade-

Relacionamento proposto por Peter P. Chen na década de 70, mas tem evoluído com o

passar dos anos, para enfoques que a tornam mais próxima ao conceito de orientação a

objeto o qual é foco deste trabalho.

Banco de Dados QEE

Disponibilização de dados Web em formato XML

Ferramenta de Extração de Dados na Web

Oracle DB2 Outros

Page 64: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

65

Para [COU97] é importante entender o conceito de modelo antes de entender a

modelagem de dados, para ele o modelo é representação abstrata e simplificada de um

sistema real, com a qual se pode explicar ou testar o seu comportamento, em seu todo ou

em partes.

Um modelo de Dados é uma coleção de conceitos que podem ser usados para

descrever um conjunto de dados e operações para manipular esses dados [BAT92], já

[NAV00] diz que um modelo de dados é uma coletânea de conceitos que podem ser

utilizados para descrever a estrutura de um banco de dados, fornecendo meios necessários

para alcançar essa abstração.

Segundo [KOR99] um modelo de dados é um conjunto de ferramentas conceituais

usadas para a descrição de dados, relacionamentos entre dados, semântica de dados e

regras de consistência.

A modelagem de dados ajuda a organizar sua forma de pensar sobre os dados,

esclarecendo o significado e a aplicação prática deles. Ajuda não somente a comunicar as

necessidades, mas também a comunicar de que forma pretende atendê-las. Provê uma

plataforma a partir da qual pode utilizar para projetar e construir com um certo grau de

segurança quanto ao sucesso [MUL99].

A modelagem de dados é a primeira etapa em um projeto de banco de dados. Ela

estabelece o vínculo entre as necessidades dos usuários e a solução de software que as

atende, é a abstração inicial que encobre a complexidade do sistema [MUL99].

Com relação a dimensão dos modelos de dados segundo [NAV00], eles podem ser

classificados em duas dimensões: em função da etapa de desenvolvimento do projeto de

banco de dados em que o modelo é utilizado, um exemplo seria o projeto conceitual, lógico

e físico, a outra dimensão seria em função da flexibilidade e poder de expressão.

A etapa de projetar um banco de dados está relacionada com o ciclo de vida de

desenvolvimento de software, onde a cada etapa, novas informações e detalhes são

acrescidos ao projeto de software [PRE01]. Durante o projeto de banco de dados, as

Page 65: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

66

informações que compõe o banco de dados são especificadas utilizando-se modelos de

dados em diferentes níveis de abstração, iniciando por modelos de alto nível de abstração.

Com relação a dimensão de flexibilidade e expressividade, o termo flexibilidade

está relacionado, neste contexto à facilidade com a qual o modelo pode tratar com

aplicações complexas, enquanto que a expressividade refere-se à habilidade de gerar

diferentes abstrações em uma aplicação [NAV00]. Segundo este aspecto os modelos são

classificados como: primitivos (ou de arquivos), modelos de dados clássicos (relacional,

hierárquico, redes), modelos semânticos de propósito especial (CAD/CAM e SIG) e

modelos orientado a objetos.

Considerando essas duas classificações este trabalho estará considerando o nível de

abstração empregados nos modelos conceituais e modelos orientado a objetos.

2.6.1 Modelagem Conceitual de Banco de Dados

Segundo [NAV00], o projeto de banco de dados envolve três fases: projeto

conceitual, projeto lógico e projeto físico. Este trabalho tem enfoque no projeto conceitual.

Uma das etapas de um processo de desenvolvimento de um projeto de banco de

dados é criar um esquema conceitual para o banco de dados, utilizando um modelo

conceitual de alto nível, essa etapa é chamada de projeto conceitual.

Segundo [NAV00] o esquema conceitual é uma descrição concisa dos requisitos de

dados feitos pelos usuários, devido a esses conceitos não incluírem detalhes sobre

implementação, são geralmente mais fáceis de serem compreendidos e podem ser

utilizados para a comunicação de usuários não-técnicos.

[MUL99] diz que um modelo conceitual representa as informações no banco de

dados. Esse esquema representa as estruturas, operações e as restrições do modelo de

dados que você está utilizando. Já [COU97] define um modelo conceitual como aquele em

que os objetos, suas características e relacionamentos têm representação fiel ao ambiente

Page 66: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

67

observado, independente das limitações quaisquer impostas por tecnologias, técnicas de

implementação ou dispositivos físicos.

Em [HEU01] define-se um modelo conceitual como uma descrição do banco de

dados de forma independente de implementação em um SGBD. O modelo conceitual

registra que dados podem aparecer no banco de dados, mas não registra como estes dados

estão armazenados considerando o SGBD.

A modelagem conceitual é feita com base em algum formalismo conceitual, como

por exemplo Entidade-Relacionamento ou Orientação a Objetos. Esse formalismo provê

um conjunto de conceitos, elementos e regras que são usados no processo de modelagem

da realidade, enquanto que a linguagem de descrição fornece uma gramática para a

apresentação do esquema conceitual resultante da modelagem.

Logo esse diferencial é o mais importante para o contexto deste trabalho, uma vez

que podemos derivar diferentes estruturas de implementação a partir de um mesmo modelo

conceitual. Assim, a partir deste modelo conceitual poderemos a qualquer instante, derivar

um modelo para implementação de um SGDB relacional. Se futuramente a necessidade

não for mais um modelo relacional, descartamos o modelo derivado, voltaremos ao modelo

conceitual, aplicaremos as regras de derivação e poderemos ter um outro tipo de modelo.

Page 67: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

68

3 Modelagem Conceitual de Dados para Sistemas de Informação da

Qualidade da Energia Elétrica

Esse capítulo apresenta os modelos conceituais de banco de dados para aplicações

para SIQEE, bem como a proposta de um modelo conceitual para um banco de dados para

QEE considerando o paradigma de orientação a objetos.

Pesquisas vêm sendo desenvolvidas com o objetivo de se encontrar um projeto

ideal para um banco de dados de QEE que atenda as necessidades dos usuários.

Geralmente os projetos desses bancos de dados têm como base a experiência dos seus

projetistas em conjunto com os usuários ligados a área de engenharia elétrica.

Em geral, as publicações que apresentam resultados de trabalhos que usam um

SGBD não apresentam um projeto conceitual adequado para o banco de dados para QEE,

como pode ser visto em [DAB95], [FERN99], [VIV001], [FAV02], [SAN02],

[CRU03],[ROM03], [MED03]. Apesar de não apresentar um modelo conceitual é possível

notar que tais trabalhos usam um SGBD relacional. Os trabalhos [DIA01], [FER01] e

[PPGEE00] também não apresentam um modelo conceitual, mas foi desenvolvido um

modelo lógico considerando um SGBD relacional específico.

Podemos observar que tais bancos de dados para QEE não aproveitam as

experiências adquiridas em outros projetos, ou seja, eles sempre começam do zero. Isto

acontece devido a falta de maturidade no desenvolvimento destes tipos de aplicações e de

ferramental e métodos adequados de trabalho. Isto normalmente leva a ineficiência, a

geração de erros e perda de tempo. Por outro lado a engenharia de software tem proposto

metodologias e técnicas de reuso baseadas em orientação a objetos, que, utilizadas de

forma apropriada, podem levar a grandes ganhos de eficiência e qualidade no

gerenciamento da informação sobre a QEE. Como foi apresentado no item 2.2 existem

vários instrumentos de reutilização que apóiam um projeto de sistemas, e que podem ser

usados no projeto de um banco de dados, a fim de garantir qualidade, rapidez e sucesso no

processo de desenvolvimento.

Neste trabalho estaremos utilizando Padrões de Análise e um Framework

Conceitual (QEE_Frame), aplicáveis as etapas de requisitos e modelagem conceitual de

Page 68: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

69

banco de dados para QEE visando facilitar o desenvolvimento de novos bancos de dados.

O objetivo é apresentar um modelo conceitual de um banco de dados (framework de

dados), que através de uma ferramenta de software permitirá a qualquer usuário não

especialista editar o modelo e montar o seu banco de dados para QEE.

O Framework Conceitual chamado QEE_Frame, utiliza a linguagem de modelagem

unificada UML acrescida de alguns esteriótipos (um mecanismo de extensão fornecido

pela UML ) para identificar pontos de variabilidade.

3.1 Requisitos de Modelagem Conceitual para SIQEE

A Figura 3.1 apresenta uma arquitetura de um Sistema de Informação para a

Qualidade da Energia Elétrica. A definição desta arquitetura foi possível considerando

vários aspectos: a definição de sistemas de informação, o conceito de QEE, e da análise

dos trabalhos relacionados [DAB95], [FERN99], [VIV001], [FAV02], [SAN02],

[CRU03],[ROM03], [MED03].

Analisando essa arquitetura para um SIQEE percebe-se que esse tipo de sistema

provê um conjunto de atividades, incluindo:

• Medição de diversos fenômenos eletromagnéticos através de equipamentos

específicos (medidores) localizados nos locais onde se quer monitorar;

• Armazenamento destas medidas, normalmente através de um banco de dados

digital;

• Pesquisas sobre estas representações para produzir novas medidas e descobrir

novos relacionamentos através da integração de fontes diversas;

Page 69: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

70

Figura 3.1: Arquitetura de um Sistema de Informação para Qualidade da Energia Elétrica.

Na Figura 3.1 observamos que em geral temos equipamentos monitores de QEE

localizados nos locais os quais desejamos monitorar, esses locais podendo estar

relacionados a um mesmo consumidor, ou a consumidores diferentes. Dados

correspondentes aos fenômenos eletromagnéticos em investigação são localmente

detectados, transmitidos e processados. Pode-se optar por várias formas de transmissão de

dados, as mais usadas são através de redes locais ou remotamente para consumidores

localizados em pontos geograficamente distantes. Os dados são transmitidos para um

servidor de dados que será responsável em armazenar toda a informação do sistema.

Esse servidor de dados geralmente utiliza um SGBD onde os dados podem ser

processados e armazenados. Para a disponibilização da informação há uma comunicação

entre o servidor de dados e os clientes, essa comunicação podendo ser via rede local ou

remotamente.

Os clientes têm acesso a base de dados com consultas pré-definidas que servem

para análise de dados relativos a QEE.

Com base nessas atividades é possível definir os requisitos para modelagem

conceitual de um SIQEE:

Rede Local Local de Monitoração

Servidor

Medidor

Medidor

Medidor Dados de

QEE

Meio de Comunicação

Usuários

Usuários

Usuários

Disponibilização da Informação

Page 70: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

71

• Requisitos de dados convencionais cadastrais para os locais de monitorização e

consumidores;

• Tipos de equipamentos e ajustes necessários;

• Os parâmetros que caracterizam os fenômenos eletromagnéticos medidos ou

simulados;

• Valores de referência para QEE, tais como limites, curvas estabelecidas e etc;

• Características de ocorrências de Campo;

3.2 Padrões de Análise de QEE

Uma das técnicas que vem crescendo em termos de utilização pelos projetistas de

sistemas orientados a objetos é o emprego de instrumentos que possibilitem a reutilização

de componentes de software através da definição de padrões. Estes padrões podem ser de

análise, projeto, implementação entre outros. Consideraremos aqui os padrões de análise.

Um padrão de análise é um mecanismo de reutilização que permite aos projetistas

menos experientes reutilizarem o conhecimento de outros especialistas durante a fase de

análise. Para [FOW97] a contribuição mais significativa não é o modelo fornecido como

solução, mas sim, o raciocínio que está por trás desta solução.

O processo de reconhecimento ou captura de um novo padrão de análise requer do

projetista, habilidade e experiência suficientes para perceber analogias existentes entre

partes de um projeto, de um sistema em estudo, que possam ser recorrentes em outros

sistemas.

Segundo [FER98], o processo de criação de padrões é feito através da identificação

de partes de um projeto que são possíveis candidatas à reutilização. Em seguida, esse

diagrama deve ser abstraído, suas especificidades devem ser eliminadas e o padrão deve

ser documentado de acordo com uma linguagem de descrição de padrões.

Para [ROB93] para que um analista consiga identificar um novo padrão de análise é

necessário que ele possua a habilidade de abstração. O processo de descoberta de padrões

Page 71: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

72

reutilizáveis é uma tarefa mais difícil que utilizá-los, isso justifica-se pois esses padrões

devem desconsiderar aspectos característicos do sistema ou da organização ao qual o

sistema está sendo desenvolvido.

Em [LIS00] é apresentado um processo de captura de padrões, como está

apresentado na Figura 3.2, onde é apresentado o processo de criação e uso de padrões onde

a aplicação de padrões requer a percepção de uma analogia entre um problema atual e os

padrões disponíveis, com a conseqüente adaptação no projeto, do padrão identificado.

Figura 3.2: Processo de captura e aplicação de padrões.

O uso do processo apresentado na Figura 3.2 apresentou um resultado satisfatório

em [LIS00], porém para a definição de padrões de análise para QEE, foi necessário propor

uma extensão a esse processo, uma vez que tais padrões apresentam especificidades que

não foram consideradas por [LIS00].

Para gerar padrões para QEE, ou seja, aspectos comuns entre diversas aplicações,

propomos um novo processo baseado em comparação de aplicações desenvolvidas, com

análise de domínio do problema e com abordagem de padrões conhecidos. Comparação de

diversas aplicações foi feita por meio de revisão de literatura. Análise de domínio foi

conseguida através da experiência de especialistas, verificando-se as normas e relatórios

técnicos especializados. Por fim tinha-se a experiência de construir um sistema de

qualidade em energia elétrica.

A proposta sugerida na Figura 3.3 pode ser adaptada para qualquer domínio desde

que apresente um conjunto consistente de informações como os relatórios técnicos

Sistema A Sistema B

P1 P2

Padrão Abstrato

Abstração Especialização

Analogia

Page 72: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

73

especializados, normas relativas ao domínio (se existirem), e experiência de

projetistas/usuários de um determinado domínio.

Figura 3.3: Processo de captura e aplicação de padrões de QEE.

A próxima etapa após o reconhecimento dos padrões é definir a linguagem que irá

descrever o padrão de análise. É importante que seja uma linguagem de amplo

conhecimento e fácil de ser entendida pelos usuários, que seja extensível a fim de atender

as especificidades que possam a vir a existir para aplicação.

De acordo com as características apresentadas no item 2.4, a UML atende a todos

esses requisitos. Assim para apresentar os padrões de análises propostos será utilizado a

notação gráfica do diagrama de classes da linguagem UML.

A seguir serão apresentados exemplos dos padrões de análise para QEE, baseado na

estrutura de definição de padrões apresentado no item 2.2.4.

3.2.1 Padrão Local de Monitorização

Problema: Como modelar dados referentes aos locais de monitorização a fim de

obter informações de qualidade da energia elétrica?

Experiência no domínio

Sistema A Sistema B

P1 P2

Padrão Abstrato

Abstração Especialização

Analogia

Relatórios Técnicos

Especializados

Normas

Page 73: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

74

Contexto: A monitoração da qualidade da energia elétrica pode ser executada

objetivando vários fins, uma vez determinado o escopo de um projeto de monitoração. Em

função de um objetivo de monitoração, regiões ou zonas de um sistema elétrico, definidas

pelas seleções dos locais de monitorização, podem ser monitorados a fim de se obter

informações necessárias ao gerenciamento da qualidade da energia elétrica.

Forças:

• Todo consumidor tem pelo menos um local de monitorização;

• Um consumidor pode ter vários locais de monitorização;

• Necessidade de obter dados do local de monitorização para QEE.

Solução: A Figura 3.4 mostra o diagrama de classes que compõe o padrão. Em

cada local de monitorização podemos ter um ou vários contatos associados, e o consumidor

que está sendo pesquisado pode ter vários locais monitorados.

Padrão Local de Monitorização

Local_Monit_ContatoCod_ContatoNom_Local_ContatoCar_ContatoTel_FaxTel_VozTel_DadosObs_Contato

Local_MonitoracaoCod_LocalDat_Inicio_MonitoracaoNom_LocalDes_LocalNum_Frequencia_alimentacao_localDat_Fim_MonitoracaoVal_Tensao_Nominal_Local

0..n1 0..n1

Monitoracao_ConsumidorCod_ConsumidorNom_ConsumidorEnd_ConsumidorUfe_ConsumidorCep_ConsumidorPais_ConsumidorTel1_ConsumidorTel2_ConsumidorObs_ConsumidorNom_Cont_Consumidor

1..n

1

1..n

1

Figura 3.4: Diagrama de Classes do Padrão Local de Monitorização

Page 74: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

75

3.2.2 Padrão Equipamento de QEE

Problema: Como modelar dados referentes aos equipamentos (medidores) de

QEE?

Contexto: Os monitores de qualidade da energia elétrica são equipamentos com

capacidade para identificar informações de fenômenos eletromagnéticos diversos, em

diversas faixas de freqüências. Eles também possuem memória de dados, e são dotados de

dispositivos de transmissão de dados, tratamento de dados, entre outras características.

Forças:

• Existem diversos equipamentos para medição/monitoração da QEE disponíveis

no mercado, cada qual com seus critérios de aquisição e pré-tratamento de

dados, e diferentes formatos de registro de dados.

• Necessidade de se atender a diferentes formas de caracterização dos fenômenos

eletromagnéticos relativos a QEE, em decorrência do fato de ser ainda

incipiente a normatização relativa ao assunto .

Solução: A Figura 3.5 mostra o diagrama de classes que compõe o padrão. Um

equipamento de QEE pode ter vários canais. Cada canal pode ter uma grandeza associada a

um rótulo. Ao longo do tempo, esse equipamento pode estar monitorando locais diferentes.

Padrão Equipamento de QEE

CanalCod_CanalNom_GrandezaInd_GrandezaRot_Grandeza

EquipamentoCod_EquipamentoNum_SerieNom_FabricanteNom_ModeloVer_SoftwareStr_Inic_PcStr-Inic_EquipamentoObs_Equipamento

Canal_EquipamentoCod_Canal_EquipamentoNum_CanalRaz_Transf_DeRaz_Transf_ParaUni_Grandeza

1*

**

1*

Figura 3.5: Diagrama de Classes do Padrão Equipamentos de QEE

Page 75: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

76

3.2.3 Padrão Ajuste dos Equipamentos de QEE

Problema: Como modelar parâmetros de ajustes para os equipamentos de

monitoração de QEE?

Contexto: Os dados coletados pelos equipamentos monitores de QEE são entregues

sob a forma de pacotes de dados com uma formatação sugerida pelo fabricante. Este

formato de dados carrega toda a informação de identificação dos dados, de ajuste do

equipamento e dos eventos propriamente ditos.

Forças:

• Para um equipamento podemos ter vários ajustes a fim de monitorar a QEE.

• Necessidade de armazenar as informações dos ajustes para apoiar a análise

relativa aos dados coletados.

• Os ajustes influenciam nos dados referentes aos distúrbios elétricos.

Solução: A Figura 3.6 mostra o diagrama de classes que compõe o padrão. Um

equipamento de QEE pode ter vários ajustes. Cada parâmetro de ajuste tem um tipo

associado. Em função do ajuste feito no equipamento teremos diferentes quantidades de

dados.

Padrão Ajuste Equipamentos QEE

Parametro_AgusteCod_Param_ajustavelDat_AjusteVal_Ajuste

Tipos_AjustesCod_AjusteDes_AjusteUni_AjusteIdc_Ajuste1* 1*

Figura 3.6: Diagrama de Classes do Equipamento de QEE.

Page 76: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

77

3.2.4 Padrão Eventos em um Sistema Elétrico

Problema: Como caracterizar distúrbios em um sistema elétrico?

Contexto: Os eventos são rótulos de identificação dos fenômenos eletromagnéticos

monitorados ou simulados. Eles estão relacionados com um conjunto de dados referentes

aos distúrbios. Distúrbios são informações que, após um tratamento formam pacotes de

informações que são identificados por um evento. Cada evento está relacionado a um local

de monitorização.

Forças:

• Os distúrbios têm a característica de possuírem um tamanho e formato que

variam em função dos ajustes do equipamento monitor de QEE.

• Necessidade de caracterização de diferentes fenômenos eletromagnéticos

(afundamentos, harmônicos,etc.).

Solução: A Figura 3.7 mostra o diagrama de classes que compõe o padrão. Eventos

são informações sobre distúrbios eletromagnéticos que são medidos pelos monitores de

QEE. Essa solução permite através do esteriótipo <<incomplete>>, mostrar que podem

existir outros distúrbios monitorados de acordo com a necessidade do projeto de banco de

dados .

<<Incomplete>>

Padrão Eventos em um Sistema Elétrico

Eventos_Tendencia_Vef

Cod_Tend_RmsVal_MaximoVal_MedioVal_Minimo

Eventos_VtcdCod_VtcdDes_Max_AmpMedia_AmpDur_VtcdDes_Padrao_AmpMed_AmpPer_TensaoPer_EnergiaIdc_Tipo_Vtcd

Eventos_HarmonicosOrd_HarmonicoMod_harmonicoAng_Harmonico

Tratamento_EventosCod_Tratamento_EventosTam_Janela_EventosTip_Janela_EventosDes_Janela_Eventos

Eventos_EstampaCod_EventoIdc_Tipo_EventoDat_Inicio_Evento

<<Incomplete>>

1* 1*

<<Incomplete>>

Figura 3.7: Diagrama de Classes do Padrão Eventos em um Sistema Elétrico.

Page 77: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

78

3.2.5 Padrão Normas e Organizações

Problema: Como modelar alguns valores de referência de QEE, considerando a

legislação atual ou futura, considerando os padrões brasileiros ou internacionais?

Contexto: Os valores de referência para a análise dos dados coletados, são aqueles

valores utilizados como referência para a comparação com os dados de distúrbios. A

Europa é a região mais avançada em relação a normas de QEE, uma vez que a norma

EN50160 foi oficialmente adotada por vários países. Nos EUA, muitas concessionárias têm

usado normas como a IEEE 519 apenas como referência. No Brasil, a ANEEL adotou para

a rede básica do sistema interligado brasileiro os critérios e limites para QEE definidos no

documento Padrões de Desempenho da Rede Básica. Com o crescimento de mercados

competitivos a possibilidade da inclusão de cláusulas referentes a QEE pode ser tornar

comum no futuro.

Forças:

• Necessidade de ter vários valores comparativos a fim de diagnóstico de QEE.

• Possibilidade de surgimento de novas normas ou ampliação das existentes.

Solução: A Figura 3.8 mostra o diagrama de classes que compõe o padrão. São

valores de referência para a análise dos dados coletados, são aqueles valores utilizados

como referência para a comparação com os objetos de dados de eventos. Esses valores são

limites normalizados ou não, tais como: EM 50160, IEC 61000-4-15, IEC 519, IEC 1159,

CBEMA, ITIC, valores propostos de curvas de suportabilidade de equipamentos, limites

estabelecidos por normas (IEE/ANSI, IEC, ABNT), e sumários de outras pesquisas.

Page 78: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

79

Padrão Normas e Organizações

Norma_InstitutoCod_NormaNom_NormaNom_IntitutoDat_Norma

Harm_Ind_TensaoCod_CitRef_CitNum_CitLim_Perc_CitNiv_Tensao_Inf_CitNiv_Tensao_Sup_Cit

Harm_ind_CorrenteCod_CicRef_CicNum_CicIscilLim_Perc_Cic

Comp_Harm_DhtCod_DhtRef_DhtVal_DhtTip_DhtNiv_Tensao_Inf_DhtNiv_Tensao_Sup_Dht

<<Incomplete>> <<Incomplete>> <<Incomplete>>

Tipo_CurvaCod_CurvaNom_CurvaTip_InterpolacaoDes_Curva

Dado_CurvaCod_Par_OrdenadoNum_TensaoNum_Amplitude**

Figura 3.8: Diagrama de Classes do Padrão Normas e Organizações.

3.2.6 Padrão Ocorrências de Campo

Problema: Como modelar as ocorrências de campo considerando as várias

possibilidades observadas?

Contexto: As ocorrências de campo são informações diversas de registro de falhas

ocorridas junto ao local de monitoração, ou seja, fatos ocorridos no ambiente monitorado.

Os seus registros contêm informações de ocorrências de falhas em equipamentos instalados

no sistema elétrico monitorizado.

Forças:

• As informações de ocorrências de campo auxiliam no diagnóstico na relação

entre as falhas ocorridas e os eventos registrados pelo equipamento de

monitoração de QEE.

• Um local pode ter várias ocorrências e com uma certa freqüência.

• Um local pode ter várias ocorrências aleatoriamente.

Page 79: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

80

Solução: A Figura 3.9 mostra o diagrama de classes que compõe o padrão.

Ocorrências de campo são informações diversas de registros de falhas ocorridas junto a um

local de monitoração. Os registros devem conter informações de ocorrências de falhas em

equipamentos instalados no sistema elétrico monitorizado, para que se encontrem

associações entre estas falhas e os eventos registrados pelo instrumento monitor de

qualidade de energia. Estes registros são provenientes de informações dos usuários do

sistema elétrico.

Padrão Ocorrências de Campo

Tipo_FalhaCod_Idc_FalhaDes_IdcTipo_Falha

PeriodicidadeCod_PeriodicidadeDes_Periodicidade

OcorrenciaCod_OcorrenciaDat_OcorrenciaHor_OcorrenciaDur_OcorrenciaObs_Ocorrencia

1

*

1

*

FalhasCod_FalhasDes_Falhas

*

1

*

1

**

Figura 3.9: Diagrama de Classes do Padrão Ocorrências de Campo.

3.3 Metodologia de Desenvolvimento de Frameworks

Existem algumas propostas de metodologias de desenvolvimento de Frameworks.

Essas metodologias consistem na captura de informações do domínio, a construção e o

teste da estrutura de Frameworks. Podemos citar três metodologias de desenvolvimento de

Frameworks: Projeto Dirigido por Exemplo (Example-Driven Design) [JOH93], Projeto

Dirigido por Hot Spot (Hot Spot Driven Design) [PRE95] e a metodologia de projeto da

empresa Taligent [TAL95]. Estas metodologias se caracterizam por estabelecer linhas

gerais, sem se ater à definição de técnicas de modelagem ou detalhar o processo.

Resumidamente no Projeto Dirigido por Exemplo estabelece que o

desenvolvimento de um Framework para um domínio de aplicação é decorrente de um

processo de aprendizado a respeito deste domínio, que se processa concretamente a partir

de desenvolvimento de aplicações ou do estudo de aplicações desenvolvidas

Page 80: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

81

O processo de generalização ocorre a partir da busca de elementos que recebem

nomes diferentes, mas representam a mesma coisa, recorrendo a parametrização para

eliminar diferenças, particionando elementos para tentar obter elementos similares,

agrupando elementos similares em classes.

Figura 3.10: As Etapas do Projeto Dirigido por Exemplo para o Desenvolvimento de um Framework.

Segundo [JOH93] o processo de desenvolvimento do Projeto Dirigido por Exemplo

(Figura 3.10), atravessa as etapas de análise, projeto e teste. A forma para desenvolver um

Framework é:

a) Análise do domínio:

• assinalar as abstrações já conhecidas;

• coletar exemplos de programas que poderiam ser desenvolvidos a partir do

Framework;

• avaliar a adequação de cada exemplo;

b) Projetar uma hierarquia de classes que possam ser especializada para abranger

os exemplos (um Framework) – nesta etapa o autor recomenda a utilização de design

patterns.

c) Testar o framework usando-o para desenvolver os exemplos (implementar, testar

e avaliar cada exemplo usado na primeira etapa, utilizando para isto o Framework

desenvolvido).

O Projeto Dirigido por Exemplo carece de um conjunto de técnicas de modelagem

e de um processo de desenvolvimento detalhado. Isto sugere que a metodologia poderia ser

Analisar o domínio de aplicações

(aplicações existentes)

Projetar estrutura de classes

(o framework)

Testar sobre exemplos

Page 81: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

82

complementada por subsídios de metodologia OOAD - Object Oriented Analysis and

Design (Análise e Projeto Orientados a Objetos).

Já o Projeto Dirigido por Hot Spot [PRE95] a essência desta metodologia é

identificar os Hot Spots na estrutura de classes de um domínio, e, a partir disto, construir o

Framework. Um Framework possui partes propositalmente indefinidas – o que lhe dá a

capacidade de ser flexível e se moldar a diferentes aplicações. Podem ser definidas as

seguintes etapas (Figura 3.11):

• Na primeira etapa o desenvolvedor do Framework, a partir de informações de

especialistas do domínio, define uma estrutura de classes.

• Na segunda etapa, também com o auxílio de especialistas do domínio , são

identificados os Hot Spots. Deve-se definir o grau de flexibilidade que deve ser

mantido em cada caso.

• Na terceira etapa, faz-se o projeto do Framework (ou reelaboração do projeto).

Consiste em modificar a estrutura de classes inicialmente definida, de modo a

comportar a flexibilidade requerida

• A quarta etapa, consiste num refinamento da estrutura do Framework a partir de

novas intervenções de especialistas do domínio. Se após isto o Framework

avaliado como satisfatório, está concluída uma versão do Framework.

Figura 3.11: Etapas do Projeto Dirigido por Hot Spot para o desenvolvimento de um Framework.

Identificação de classes (Metodologia OOAD)

Identificação de Hot Spots

(Re)projeto do Framework

Adaptação do Framework

Design Patterns

Hot Spots Satisfazem?Não

Sim: Framework concluído

Page 82: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

83

Segundo [PRE95] a etapa de projeto do desenvolvimento do Framework é centrado

em design patterns, cuja aplicação é fundamental para garantir flexibilidade ao Framework

Por outro lado a metodologia proposta pela empresa Taligent [TAL95] difere das

anteriores pelo conjunto de princípios que norteia o desenvolvimento de Frameworks. A

visão de desenvolver um Framework cubra as características e necessidades de um

domínio é substituída pela visão de produzir um conjunto de Frameworks estruturalmente

menores e mais simples, que usados conjuntamente, darão origem às aplicações. Isso

justifica-se porque pequenos Frameworks são mais flexíveis e podem ser reutilizados mais

frenquentemente. Assim, a ênfase passa a ser o desenvolvimento de Frameworks pequenos

e direcionados a aspectos específicos do domínio. Essa metodologia apresenta os passos a

seguir:

• identificar e caracterizar o domínio do problema;

• definir a arquitetura e o projeto;

• implementar o Framework;

• desdobrar o Framework.

Em [SIL00] é apresentado uma análise comparativa dessas metodologias,

ressaltando que nenhuma das metodologias estabelece técnicas de modelagem capazes de

conter a descrição de projeto de Frameworks ou detalha o processo de desenvolvimento.

Sugerindo a necessidade de buscar subsídios em outras áreas, como as metodologias

OOAD, para a definição de um procedimento concreto de desenvolvimento.

Essas metodologias não atendem completamente ao desenvolvimento de um

Framework Conceitual para projeto de banco de dados que estamos visualizando, devido

às características destes ambientes de energia elétrica e ao conhecimento e experiência que

dispúnhamos para montar este framework. Isto levou esse trabalho a definir os passos que

inclui características da metodologia do Projeto Dirigido por Exemplo e do Projeto

Dirigido por Hot Spot, como pode ser visto a seguir:

• Na primeira etapa, com o auxílio de especialistas do domínio (engenheiros,

projetistas, etc), normas técnicas, relatórios especializados, aplicações

Page 83: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

84

consultadas na literatura, e aplicação desenvolvida foram analisados e

identificadas as classes comuns que irão compor os Framework.

• A segunda etapa consiste em modificar a estrutura de classes inicialmente

definida, de modo a comportar a flexibilidade requerida. Nesta fase são usados

os padrões de análise que irão garantir a flexibilidade requerida, ou seja,

genérico o suficiente para ser utilizado em qualquer banco de dados para QEE.

• Na terceira etapa, são feitas as modificações no Framework procurando

otimizar o projeto final do Framework.

3.4 Framework QEE_Frame

O QEE_Frame é um Framework conceitual que fornece um diagrama de classes

básico para auxiliar o projetista nos primeiros passos na modelagem conceitual de dados de

QEE, a partir do qual serão incluídos os padrões de análise necessários ao banco de dados

para QEE, que o projetista deseja construir.

O QEE_Frame é definido de acordo com as regras do formalismo da orientação a

objetos, utilizando a notação gráfica do diagrama de classes da linguagem UML (Figura

3.14).

O processo de desenvolvimento de um Framework pode seguir a linha do processo

unificado interativo e incremental, apesar desta linha está associada a uma aplicação

convencional, ela pode ser adaptada a fim de atender o desenvolvimento de um

Framework.

O ciclo de vida de um Framework pode ser associado em parte ao ciclo de vida de

uma aplicação convencional. Eles se diferem porque o Framework nunca é um artefato de

software isolado mas sua existência está sempre relacionada a existência de outros

artefatos, originados do Framework, a partir dele ou que exercem alguma influência na

definição da estrutura de classes do Framework.

Page 84: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

85

Em [SIL00] ( Figura 3.12 ) é apresentado um demonstrativo do ciclo de vida de um

Framework, onde é apresentado várias fontes de informação que influem na definição da

estrutura de um Framework: artefatos de software existentes, artefatos de software

produzidos a partir do Framework e o conhecimento do desenvolvedor do Framework ( ou

da equipe de desenvolvimento). As setas representam o fluxo de informações que levam à

produção da estrutura de classes do Framework, bem como de aplicações sob o

Framework.

Figura 3.12: Ciclo de vida de Framewoks [SIL00].

É importante ressaltar a importância do papel do desenvolvedor. Ele responsável

por decidir que classes comporão a estrutura do Framework, suas responsabilidades e a

flexibilidade provida aos usuários do Framework. O desenvolvedor atua na construção e

manutenção do Framework.

No caso do QEE_Frame esse ciclo de vida sofre algumas alterações devido as

especificidades que esse framework requer, na Figura 3.13 é apresentado o ciclo de vida

para um Framework Conceitual para QEE.

Na Figura 3.13 é possível observar que as fontes de informação que influem na

estrutura da Framework aumentaram, uma vez que além das aplicações analisadas, é

necessário a interação com o usuário de QEE (engenheiro, projetista, etc), deve-se avaliar

os relatório técnicos especializados apresentados em vários trabalhos referentes a QEE, e

Page 85: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

86

principalmente as normas existentes em relação a transmissão e distribuição da energia

elétrica referentes a índices de qualidade de QEE.

Figura 3.13: Ciclo de vida do Framework QEE-Frame.

O QEE_Frame será definido de acordo com as regras do formalismo da orientação

a objetos, utilizando a notação gráfica do diagrama de classes da linguagem UML. A

Figura 3.14 mostra o diagrama de classes do QEE_Frame.

Objeto Convencional

PesquisaDes_pesquisa

*

*

Consumidor

1*

Local Monitoração*

11*

1

* *

*

Objeto QEE/Distúrbio

Evento**

Figura 3.14: Diagrama de classes do QEE_Frame.

Usuário

Normas

Relatórios

Aplicações

Aplicação

Alteração do framework

Modelo Lógico da nova aplicação

Alteração do framework

Geração Esquema Lógico

framework

Geração/ Alteração do framework

Geração do framework

Page 86: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

87

Pesquisa e Consumidor

As classes Pesquisa e Consumidor formam a base de qualquer aplicação de QEE.

Toda aplicação que trata QEE tem como objetivo o gerenciamento e a manipulação de um

conjunto de dados para um determinado consumidor que estará associado a uma pesquisa,

estando ainda relacionado a um sistema de distribuição/transmissão específico.

A idéia de Pesquisa visa agregar todas as informações referentes a um estudo de

QEE, sejam estas informações dos consumidores ou mesmo de pontos do sistema da

concessionária. Caso a pesquisa de QEE seja feita em um consumidor, informações como

o segmento de atuação, tipo de processo, entre outras são aqui reunidas. A vantagem que se

percebeu em usar essa definição no esquema conceitual é que esse mecanismo funciona de

forma a reduzir a complexidade dos sistemas que venham a se tornar grandes.

Sempre teremos um consumidor, ou seja quem faz o uso da energia elétrica que

está relacionado a um ou mais locais de monitorização, esses apresentam características

físicas, localização geográfica e características elétricas. O registro de locais de

monitorização deve ser composto por informações que descrevam ou caracterizem o local

de monitorização. Desta forma, permite-se o relacionamento dos locais com variáveis do

sistema elétrico (níveis de tensão, tamanho de alimentadores, existência de bancos de

capacitores e etc.)

Objeto Convencional

Normalmente num banco de dados relacionado a QEE, além dos dados referentes a

eventos/distúrbios elétricos (harmônicos, afundamentos de tensão e etc), existem também

objetos convencionais presentes em qualquer sistema de informação, como por exemplo

dados cadastrais do local onde aconteceram os distúrbios.

Evento e ObjetoQEE/Distúrbio

Eventos são rótulos de identificação dos eventos monitorados ou simulados. Estes

eventos possuem um aspecto temporal uma vez que estarão associados a uma data e hora.

Embora tenha sido adotado o nome “eventos”, essa classe representa a todos os dados

registrados pelo equipamento monitor de QEE, inclusive o dados de registro contínuo,

independente de sua ocorrência ser ou não eventual.

Page 87: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

88

ObjetoQEE/Distúrbio é uma generalização de todas as classes do domínio. Neste

caso são incluídas aquelas classes que representam fenômenos relativos a QEE (Exemplo:

harmônicos, VTCD, valor eficaz, etc).

Através do Framework QEE_Frame é possível gerar um esquema conceitual

elaborado a partir da especialização das suas classes com a inclusão dos padrões de

análise. Nada impede o uso de padrões de projeto em conjunto com os padrões de análise.

Page 88: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

89

4 Ambiente de Desenvolvimento de Software (ADS)

Este capítulo apresenta as principais características de Ambiente de

Desenvolvimento de Software no que se refere a conceituação, bem como a utilização de

um Ambiente de Desenvolvimento de Software Orientado a Domínio, o qual será proposto

um ambiente de definição para um banco de dados para QEE.

A qualidade e produtividade de software podem ser melhoradas pelo uso de

Ambientes de Desenvolvimento de Software (ADS). Um ADS é um sistema

computacional que provê suporte para o desenvolvimento, reparo e melhorias em software

e para o gerenciamento e controle destas atividades; contendo uma base de dados central e

um conjunto de ferramentas de apoio [OLI99a]. A base central atua como um repositório

para todas as informações relacionadas ao projeto ao longo do seu ciclo de vida e as

ferramentas oferecem apoio para as várias atividades técnicas e gerenciais passíveis de

automação que devem ser realizadas no projeto [MOU92].

4.1 Teoria do Domínio

A análise de domínio é definida para procurar organizar informações de domínio de

forma a torná-las reutilizáveis. Existem várias pesquisas dedicadas a engenharia de

software [OLI99a],[MIL95],[SIL00a]. Em [MIL95] foram identificados cinco níveis de

reutilização de informações de desenvolvimento de software:

• conhecimento ambiental: refere-se ao conhecimento sobre transferência de

tecnologias e sobre os sistemas em uso;

• conhecimento externo: refere-se ao conhecimento do processo de

desenvolvimento utilizado e sobre o domínio ou área de aplicação para o qual

os sistemas são desenvolvidos;

• arquiteturas funcionais: referem-se à especificação de funções e objetos de

dados;

• estruturas lógicas: consistem de processos e arquiteturas de dados e os

fragmentos de código.

Page 89: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

90

• Essa classificação serviu de guia para a definição e estruturação de informações

nos diferentes trabalhos de orientação a domínio, que procuram organizar as

informações do domínio em um conjunto de itens que pudessem ser reutilizados

ao se descrever e construir um software.

Para [OLI99a] o trabalho de análise de domínio baseia-se nas seguintes crenças:

• a necessidade de uma especificação para um domínio de informações

reutilizáveis, que refere-se à identificação, aquisição e representação das

informações dentro de um domínio;

• o nível de coesão dos problemas do domínio, que torna possível a captura do

conhecimento necessário para a solução de diversos problemas, sob a forma de

um conjunto finito e pequeno de descrições reutilizáveis;

• a estabilidade dos problemas de domínio, que torna possível diminuir o custo da

captura e representação da informação através da reutilização durante longos

períodos e em diversas situações e lugares.

O ambiente ADEBDQEE considera as especificações apresentadas anteriormente

por [OLI99a]. Este ambiente considera o uso de Frameworks e padrões de análise, neste

sentido [FAV97] afirma que a engenharia do domínio foi dificultada durante alguns anos

pela falta de tecnologias adequadas para registrar os resultados da análise de domínio, o

que foi conseguido com o surgimento e uso dos Frameworks orientados a objetos e os

padrões de modelagem.

A Teoria do Domínio é o modelo é o modelo de conhecimento do domínio a ser

utilizado para assistir o desenvolvimento ao longo do desenvolvimento de software[OLI].

A definição da teoria do domínio consiste em definir uma ontologia do domínio. Ontologia

é uma especificação explícita de uma conceituação, ou seja, uma especificação explicita

dos objetos, conceitos e outras entidades que assumimos existir em um área de interesse,

além das relações entre estes conceitos e restrições expressas através de axioma [GRU95].

Para [VAN97] uma ontologia do domínio expressa uma conceituação para um domínio

particular, definindo restrições na estrutura e conteúdo do conhecimento desse domínio.

Page 90: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

91

Devido a grande quantidade de informações de um domínio a definição de uma

ontologia de domínio pode se tornar um processo muito longo. Portanto em [OLI] é define-

se que a teoria do domínio deve ser dividida em subteorias. Cada subteoria considera os

conceitos do domínio e relação entre esses conceitos que estão semanticamente mais

relacionados e em um mesmo nível de abstração. Para compor a teoria do domínio como

um todo são criadas também relações entre as subteorias. Cada subteoria pode se vista

como uma ontologia sobre uma parte do domínio específica.

4.2 Ontologia

O termo ontologia vem da filosofia significando uma explicação sistemática da

existência, ou seja, o que significa “existir”. O termo vem sendo amplamente utilizado em

diversas áreas, o que proporciona diferentes propostas para definir para o termo ontologia:

• Ontologia é uma especificação explícita de uma conceituação [GRU95].

• Ontologia é uma descrição parcial e explicita de uma conceituação [GUA95].

• Ontologia é uma teoria sobre o domínio que especifica um vocabulário de

entidades, classes, propriedades, predicados e funções e um conjunto de

relações que necessariamente amarram esses vocabulários [FIK99].

Portanto percebe-se que existem várias visões e definições de ontologia na

literatura, mas qualquer definição resultará em um vocabulário, que representará o

entendimento consensual de um grupo de pessoas que atuam sobre um mesmo domínio. A

conceituação apresentada por [FIK99] é a que será usada neste trabalho.

Segundo [FOU02] as ontologias de aplicação descrevem conceitos dependentes do

domínio e da tarefa particulares e são especializações de ambas as ontologias, de domínio e

de tarefa. Estes conceitos freqüentemente correspondem a papéis desempenhados por

entidades do domínio quando da realização de uma certa atividade.

Uma ontologia pode ser utilizada com muitos objetivos que podem proporcionar

muitos benefícios [FOU02], um deles é tornar viável o entendimento comum, bem como

possibilitar a interoperabilidade de sistemas.

Page 91: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

92

A utilização de ontologias tem um forte impacto na aquisição do conhecimento,

pois o conhecimento geral do domínio é capturado, organizado e especificado na forma de

um modelo de conhecimento [FAL98]. Além disso, ontologias possibilitam o

compartilhamento e o reuso do conhecimento por diferentes aplicações [FOU02].

Para representar um domínio é necessário focar em um número limitado de

conceitos que são suficientes e pertinentes para se criar uma abstração dele. Assim, um

aspecto central de qualquer atividade de modelagem consiste em desenvolver uma

conceituação: um conjunto de regras informais que restringem a estrutura de um pedaço de

realidade que um agente usa para isolar e organizar conceitos e relações pertinentes

[MIA02].

Portanto ontologias têm sido usadas para construir um ADSOD, isso deve-se a

necessidade de definir um modelo que torne explícita a conceituação básica do domínio em

questão, logo ontologias podem ser muito úteis para apoiar a orientação a domínio em um

ADS.

Segundo [MIA02] a idéia básica do uso de ontologias como especificações é

conduzir ao reuso de software em níveis de abstração mais altos. Se um ADSOD incorpora

uma ontologia de domínio, aplicações neste domínio podem ser desenvolvidas com base

em uma especificação compartilhada. Também, componentes de domínio, tais como

Frameworks e padrões de análise, que foram desenvolvidos com base em ontologias

podem ser usados em outras atividades do processo de software.

Um dos benefícios do uso de ontologias no desenvolvimento de software é a

reutilização de especificações de domínio na fase de especificações de requisitos. Portanto

para cada nova aplicação ao invés de definir uma conceituação nova, usa-se uma

abordagem baseada em ontologias, e elicitação e a modelagem de requisitos podem ser

realizadas em duas fases. Primeiro, o conhecimento de domínio geral deve ser extraído e

especificado na forma de ontologias. Estas ontologias são usadas para guiar a segunda fase

da análise de requisitos, quando são consideradas as particularidades de uma aplicação

especificações, diminuindo os custos da primeira fase e permitindo o compartilhamento e

reuso do conhecimento [MIA02].

Page 92: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

93

Neste sentido este trabalho apresenta no ambiente ADEBDQEE que uso ontologias

para conduzir o reuso no que diz respeito a especificações do domínio na fase de

especificações de requisitos utilizando Frameworks e padrões de análise.

4.3 Ontologia e Base de Conhecimento

Na literatura percebe-se uma certa confusão quando define-se a ontologia e base de

conhecimento uma vez que às vezes são referenciadas como tendo o mesmo significando,

isso pode ser justificado uma vez que ambos capturam conceitos e suas relações dentro de

um domínio.

Para [GOM95] A generalidade da informação é a diferença mais importante entre

ontologias e base de conhecimento. As definições de ontologias são mais gerais do que o

conhecimento de uma base de conhecimento, de forma que estas podem ser compartilhadas

entre diferentes sistemas devendo ser independentes do sistema que irá compartilhar ou

reutilizar.

Segundo [GUA97] a diferença entre ontologia e base de conhecimento está

relacionada ao propósito de uma ontologia que é uma base de conhecimento particular

descrevendo fatos assumidos sempre como verdade por uma comunidade de usuários em

virtude de um significado em comum acordo sobre o vocabulário utilizado.

Portanto, uma ontologia provê um conjunto de conceitos e termos para descrever

algum domínio enquanto a base de conhecimento usa estes termos para representar o que

verdadeiro sobre o mundo real ou hipotético [SWA99]. Segundo [MUS98] uma base de

conhecimento pode ser vista como uma instanciação de uma ontologia, que significa

preencher as decisões dos conceitos da ontologia detalhado a aplicação que estiver sendo

construída.

Um dos objetivos deste trabalho é apoiar o entendimento do domínio

disponibilizando conhecimento do domínio. Esse conhecimento dever representar as

características do domínio, suas restrições e organização. Além disso esse conhecimento

Page 93: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

94

deve ser útil na construção de ferramentas de desenvolvimento de software. Dessa forma,

optamos por utilizar ontologias para modelagem do domínio.

Essa escolha se deve a várias razões: o não comprometimento da modelagem do

conhecimento do domínio com qualquer aspecto que não seja as características do próprio

domínio, a possibilidade de trabalhar com o conhecimento que seja processável e que

possa ser utilizado em assistentes para apoio ao desenvolvimento no domínio, a boa e clara

definição de como esse conhecimento deve ser explicitado, estruturado e representado

[OLI99a].

4.4 Ambientes de Desenvolvimento de Software Orientado a Domínio (ADSOD)

Existem várias propostas para Ambiente de Desenvolvimento de Software Orientado

a Domínio. Estes ambientes tornam disponível o conhecimento sobre o domínio numa

representação simbólica utilizando ontologias do domínio e a identificação de possíveis

tarefas realizadas no domínio em questão.

Segundo [OLI99a] um Ambiente de Desenvolvimento de Software Orientado a

Domínio (ADSOD) são ADS que apóiam o desenvolvimento de software em domínios

específicos através do uso do conhecimento deste domínio durante todo o processo de

desenvolvimento para auxiliar o desenvolvedor no entendimento do problema. O domínio

é uma área de aplicação, no que se refere a essa dissertação o domínio é QEE.

A concepção desses ambientes está baseada na premissa de que uma das principais

dificuldades no desenvolvimento de sistemas é o fato dos desenvolvedores de software não

conhecem, ou não estarem familiarizados com o domínio para o qual devem desenvolver

um determinado sistema.

A idéia principal dos ADSOD é o uso do conhecimento do domínio no ADS.

Segundo [OLI99a] as principais questões para a definição de um ADSOD referem-se a:

• Qual o conhecimento que deve estar disponível no ambiente.

• Como este conhecimento deve estar organizado e representado.

• Quando e como utilizar este conhecimento definido durante o desenvolvimento.

Page 94: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

95

Para definir o conhecimento que deve estar disponível no ambiente e como este

conhecimento deve estar armazenado foi definida a Teoria do Domínio, que deve conter o

conhecimento do domínio a ser utilizado no ambiente. A Teoria do Domínio considera

descrições de tarefas relacionadas aos conceitos para facilitar o entendimento do

domínio[OLI99a].

Com relação a quando e como utilizar o conhecimento definido durante o

desenvolvimento, deve-se considerar o estudo e investigação do domínio nas diferentes

atividades do processo de software apoiando suas realizações [SIL00a].

Os elementos teoria do domínio, descrição de processo e processo de software são

incorporados ao ADSOD através de ferramentas de definição e são utilizados ao longo do

desenvolvimento de um sistema específico através de ferramentas de desenvolvimento.

A Teoria do Domínio é um modelo de conhecimento do domínio a ser utilizado

para assistir o desenvolvedor ao longo do desenvolvimento de software.

Page 95: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

96

5 Ambiente de Definição de um Banco de Dados para Qualidade de

Energia Elétrica

A existência do Framework Conceitual bem como a definição dos padrões de análise

não é suficiente para proporcionar os engenheiros eletricistas, projetistas, profissionais

ligados a QEE o uso apropriado destes conceitos a fim de apoiar o desenvolvimento de um

banco de dados para QEE. Isso justifica-se pelos seguintes fatores:

• Existência de pessoas ligadas a área de QEE mas que não dominam os

conceitos relacionados a engenharia de software;

• Existência de pessoas ligadas a área de engenharia de software, mas que não

conhecem plenamente o domínio pesquisado (QEE);

• A possibilidade da rotatividade de pessoas trabalhando em um projeto, o que

implica em explicar os conceitos básicos relacionado as duas áreas (QEE,

engenharia de software)a este novo membro .

Portanto, é necessária a existência de um Ambiente de Definição de um Banco de

Dados para Qualidade de Energia Elétrica (ADEBDQEE) com recursos que auxiliem nas

diversas atividades de desenvolvimento de um banco de dados. Este é um ambiente que

apresenta características de um Ambiente de Desenvolvimento de Software Orientado a

Domínio, justamente por propor um conjunto de ferramentas para o desenvolvimento

(análise, projeto e implementação), mas também a representação do conhecimento do

domínio, encurtando o tempo de aprendizado como um todo, tanto para a equipe no início

do projeto, quanto para novos integrantes que chegam à equipe durante o desenvolvimento.

A Figura 5.1 apresenta uma arquitetura para o Ambiente de Definição de um Banco

de Dados para Qualidade de Energia Elétrica, a qual é composta por três módulos. O

módulo gráfico fornece ao projetista uma interface que permite ao mesmo definir as

informações do domínio, e permite a recuperação e definição das informações de um

Framework conceitual, bem como dos padrões de análise.

O modulo dicionário de dados gera o esquema conceitual de um banco de dados

para QEE considerando o Framework conceitual, os padrões de análise e as extensões

Page 96: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

97

necessárias definidas utilizando o módulo gráfico. Esse esquema conceitual estará em

formato XML a fim de proporcionar intercâmbio de informações na Web.

O módulo geração automática ficará responsável em ler o arquivo XML com o

esquema desejado e mapear para o SGBD específico para a aplicação em questão. Por

exemplo se estivermos tratando de um banco de dados relacional, este módulo será

responsável em ler o arquivo XML e mapear para tabelas.

Page 97: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

98

Figura 5.1: Arquitetura do Ambiente de Definição de um Banco de Dados para Qualidade de Energia

Elétrica.

5.1 Módulo Gráfico

Ambiente de Definição de um Banco de Dados para Qualidade de Energia Elétrica

(ADEBDQEE) apresenta um módulo gráfico que faz uso de uma ferramenta CASE10 como

apoio a modelagem de dados. Foram analisadas duas ferramentas o Rational Rose e o

Microsoft Visio Professional. Inicialmente optou-se pelo uso da ferramenta Rational Rose

10 Computer-aided software engineering (engenharia de software com o auxílio do computador. Ele se refere a uma gama de diferentes tipos de programas utilizados para apoiar as atividades de processo de software, como a análise de requisitos, modelagem de sistemas, a depuração e os testes [PRE01].

Módulo Gráfico

Linguagem Programação

Ferramenta Case

Informações Domínio

Editor deDomínio

Repositório Padrões Análise

Editor dePadrões

Módulo Dicionário de Dados

Esquema Conceitual

QEE

XML

Módulo Geração Automática

Regras de Transformação

Oracle Ms. Access

Interbase Outros Formatos

Framework Conceitual

Page 98: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

99

por apresentar uma facilidade em apoiar o processo de desenvolvimento de software e por

apresentar uma facilidade de exportação de diagramas para várias ferramentas disponíveis

no mercado.

O módulo gráfico apresenta também um editor de domínio que permite fazer a

edição da Teoria do Domínio, a linguagem usada para desse editor foi o Microsoft Visual

Basic, foram analisadas algumas linguagens tais como Pascal e Java. A escolha foi

definida devido a plataforma de apoio apresentada no projeto [PPGEE00], que será o

projeto instanciado e que poderia ser adicionado ao Sistema de Gerenciamento da

Qualidade da Energia Elétrica (SGQEE) como um módulo adicional. Mas nada impede o

desenvolvimento deste módulo utilizando outras linguagens.

Desta forma, esse módulo apresenta como saída um esquema conceitual para um

banco de dados definido em um formato de diagrama de classes da UML. Nesse módulo

também teremos armazenado toda a teoria do domínio, o que facilitará a evolução ou

criação de um Framework proporcionando o reuso de análise e projeto, e a recuperação do

conhecimento para novos membros que venham a participar do projeto.

No módulo gráfico temos a primeira etapa que é a edição da teoria do domínio.

Esse módulo foi construído considerando as características da Teoria do Domínio

apresentado no item 4.1, ou seja, um modelo que utiliza ontologias do domínio e relaciona

conceitos do domínio com tarefas pertinentes aquele domínio. Neste caso teremos

subteorias, conceitos, características desses conceitos e suas relações, o que implicou na

definição de um modelo que considerasse essas características. Na Figura 5.2 apresenta o

modelo que representa a definição do domínio e a descrição dos conceitos. No Apêndice A,

é apresentado a descrição do modelo, definição das entidades, atributos e relacionamentos.

Page 99: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

100

Subteoria_Concei to_Bi bl io

Subteoria_PadraoAnali se

T eoria_Framework

SubTeoriaConceito

T eoria_Subteoria

Teoria_DominioCodTeoria INomTeoria A80DesTeoria A255

Sub_TeoriaDominioCodSubTeoria INomSubTeoria A80DesSubTeoria A255

Subteoria_ConceitoCodConceito ISinConceito A80DesConceito A255NomConceito A100

Framework_ConceitualCodFramework INomArqFramework A80

Padrao_AnaliseCodPadrao INomPadrao A80DesProblema A100ContextoPadrao A255ForcasPadrao A255ArquivoPadrao A100SolucaoPadrao OLE

BibliografiaCodBibliografia IAutorBibliografia A80DescBibliografia A200EditEveBibliografia A100InfoBibliografia A255

Figura 5.2: Modelo para edição da Teoria do Domínio.

As principais funções do módulo gráfico são:

- Permitir a entrada de informações de domínio: a partir de uma interface

amigável, o ambiente permite a inserção de todas as informações sobre o domínio

desejado;

- Permitir o acesso ao framework conceitual para QEE: a partir da interface

gráfica, o ambiente permite a visualização do Framework conceitual que irá ajudar os

usuários na definição do seu banco de dados para QEE.

- Permitir o acesso aos padrões de análise para QEE: a partir da interface

gráfica, o ambiente permite a visualização dos padrões de análise para QEE.

Na Figura 5.3 é a fase onde é permitida a edição da Teoria do Domínio (Apêndice-

B é apresentado um demonstrativo da possibilidade de seleção das teorias existentes),

cada uma das subteorias (Figura 5.4), seus conceitos (Figura 5.7).

Figura 5.3: Inclusão da Teoria do Domínio.

Page 100: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

101

Figura 5.4: Inclusão da subteoria

No Apêndice-B é apresentada a possibilidade de seleção das subteorias.

No ambiente ADEBDQEE podemos inserir padrões de análise como é mostrado na

Figura 5.5, a edição é feita através da ferramenta Rational Rose.

Figura 5.5: Inserir Padrão de Análise.

Para o Domínio de QEE foi necessário incluir a idéia de referências bibliográficas,

para que o usuário quiser ter mais informações sobre determinado conceito, tenha esses

dados no ambiente como é mostrado na Figura 5.6.

Page 101: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

102

Figura 5.6: Inserir Referências Bibliográficas.

Outra funcionalidade do ambiente ADEBDQEE é a possibilidade do desenvolvedor

ao longo do projeto identificar e relacionar quais conceitos da Teoria do Domínio serão

utilizados em um determinado projeto, neste momento teremos a informação das

referências estão associadas a cada conceito, como é possível verificar na Figura 5.7.

Figura 5.7: Inserir Conceito.

Page 102: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

103

Uma Teoria do Domínio pode ter várias sub-teorias associadas, que por sua vez

pode ter vários conceitos, essas determinações podem ser vistas nas Figuras Figura 5.8 e

Figura 5.9.

Figura 5.8: Inserir Associação entre Teoria do Domínio e Sub-teoria.

Figura 5.9: Inserir Associação entre Sub-teoria e Conceito.

Page 103: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

104

Cada Subteoria pode ter padrões associados que ajudaram no processo de definição

do banco de dados para QEE, essa associação pode ser vista na Figura 5.10.

Figura 5.10: Inserir Associação entre Subteoria e Padrões de Análise.

A inserção do Framework Conceitual pode ser feita como pode ser visto na Figura

5.11, sua edição é feita pela ferramenta Rational Rose.

Figura 5.11:Inserir O Framework Conceitual de acordo com a Teoria do Domínio.

Page 104: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

105

O usuário pode visualizar cada padrão de análise associado a cada subteoria, isso

facilita o reuso dos padrões (Figura 5.12).

Figura 5.12: Visualização das Subteorias e a relação com os Padrões de Análise.

Durante a construção da ontologia para dados de QEE, foi possível notar que essa

Teoria do Domínio apresentava detalhes que não se adequavam ao modelo proposto por

[OLI99a] e [SIL00], portanto foi necessário apresentar mudanças no modelo para edição

da Teoria do Domínio. Desta forma essas modificações acarretaram mudanças também na

interface.

Após a definição da Teoria do Domínio, o usuário será capaz de apresentar um

Framework Conceitual para um banco de dados para QEE, através de uma interface gráfica

que permite incluir o Framework, e editá-lo através da ferramenta Rational Rose. Também

é possível fazer uma associação das subteorias identificadas com os padrões de análise,

esses são editáveis através da ferramenta Rational Rose.

5.2 Módulo Dicionário de Dados

Page 105: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

106

Nesta etapa teremos um diagrama de classes que representará um banco de dados

para QEE de acordo com a Teoria do Domínio, o Framework e os padrões de análise

selecionados. A ferramenta utilizada para modelagem (Rational Rose) do banco de dados

oferece a funcionalidade de conversão do diagramas de classes para o formato XML

(Figura 5.13), porém essa ferramenta faz o mapeamento do diagrama de classes para a

DTD e os coloca em arquivos separados, essa característica nos levou a usar uma

ferramenta intermediária que gerasse a DTD em um só arquivo. Essa forma de geração é

importante visto que podemos ter desenvolvedores interessados em desenvolver suas

próprias ferramentas de extração de dados, facilitando desta forma a leitura dos dados.

Existem várias ferramentas de modelagem que podem ser utilizadas para o mesmo

propósito tais como: Together, PowerDesigner entre outras. Neste trabalho estaremos

utilizando as ferramentas Rational Rose e a PowerDesigner, para modelagem dos dados e

mapeamento para XML.

Figura 5.13: Demonstrativo do uso da ferramenta Rational Rose para Conversão de Dados.

5.3 Módulo Geração Automática

Page 106: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

107

Este módulo é mais específico, ou seja, dependente do SGBD o qual deseja-se

utilizar. O módulo dicionário de dados faz a leitura dos dados no formato XML, e converte

para o modelo lógico do SGBD considerado. No caso, os dados são convertidos para um

SGBD relacional.

Como a XML é um formato padrão, basta que o usuário conheça tal formato e faça

a conversão para o SGBD que deseja utilizar. Todo processo é auxiliado por ferramentas

específicas de mapeamento. Neste caso estaremos utilizando a ferramenta XMLSPY-2004

que será utilizada para a conversão dos dados em formato XML para tabelas para um

banco de dados específico.

A ferramenta XMLSPY foi desenvolvida pela empresa Altova, a escolha desta

ferramenta foi por dispor de um ambiente integrado que pode facilitar a troca de

informações entre várias ferramentas, e por apresentar um pacote de desenvolvimento de

documentos XML e de todos os documentos relacionados ( folhas de estilo, schemas, etc)

[ALT04].

Page 107: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

108

6 Aplicação: Casos Exemplo

O estudo de caso tem o objetivo de avaliar o desempenho da metodologia de uso de

Frameworks e padrões de análise para projeto de banco de dados, verificando a

possibilidade de intercâmbio de informações na Web. Conforme mencionado na

introdução desta dissertação, foge ao escopo do trabalho a fase de pós-tratamento de dados.

Os casos estudados a seguir têm diferentes objetivos de monitorização, ou seja, são

diferentes situações em que o foco de interesse na qualidade da energia elétrica varia. O

primeiro caso é o Sistema de Gerenciamento da Qualidade da Energia Elétrica [PPGEE00],

já o segundo caso é a Caracterização da Sensibilidade de Processos Industriais Frente a

Afundamentos de Tensão [LEB03].

6.1 A Teoria do Domínio

A Teoria do Domínio para QEE foi definida segundo as normas relativas a QEE, a

partir de especialistas em QEE do grupo de pesquisa GERQUALI [PPGEE00] além de

consulta a trabalhos tais como: [PPGEE00], [FER99], [FERN99], [FER01], [ALV00],

[DIA01], [SAN02], entre outros.

É importante salientar que não é o objetivo desse trabalho explorar em todas os

detalhes o domínio de QEE. A Teoria do Domínio, apresentada a seguir, foi particularizada

para atender as necessidades do domínio em QEE, o que não impede a sua evolução

considerando as especificidades de novas teorias de domínio. Nosso objetivo foi utilizar

essa teoria para mostrar a sua aplicabilidades no ADEBDQEE.

A seguir serão apresentados cada um dos passos realizados para a definição da

Teoria do Domínio.

6.1.1 Identificação do Propósito

Page 108: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

109

A definição de uma Teoria do Domínio para QEE, tem como objetivo apoiar o

desenvolvimento de um banco de dados para QEE. Dessa forma, é estabelecido um

vocabulário comum que possa facilitar a comunicação entre os diferentes participantes no

desenvolvimento de projeto de banco de dados, ou seja, desenvolvedores, engenheiros de

conhecimento, especialistas (engenheiros eletricistas) e usuários em geral.

A Teoria do Domínio para QEE, visa definir, hierarquizar e organizar conceitos no

que se refere a informações relativas a QEE.

6.1.2 Definição

Para definição da Teoria do Domínio vários ciclos de captura e especificação foram

realizados. Inicialmente foram analisados o conhecimento de especialistas em QEE,

procurando registrar os conceitos a medida em que iam surgindo. Com isso foi identificado

um conjunto de conceitos importantes da área de QEE que englobam informações de

diferentes níveis de abstração. Também foi necessário a análise de normas relativas a QEE,

e os trabalhos relacionados na área. Com a junção desses conceitos, foi possível perceber

que desenvolver sistemas nesta área pode requerer qualquer uma dessas informações o que

leva a necessidade de definição de diferentes conjuntos de conceitos que irão compor

diferentes sub-teorias para o domínio. A partir desses aspectos, identificaram-se as

seguintes questões de competência gerais:

a) Como estão organizados os dados relativos a locais de monitorização?

b) Que informações de equipamentos de monitorização são necessárias?

c) Como caracterizar os diferentes distúrbios eletromagnéticos monitorados?

d) Quais informações de ocorrência de campo devem ser armazenadas?

e) Como podemos analisar dados de QEE, utilizando valores de referência?

Para a identificação das sub-teorias foram definidas, inicialmente, questões de

competência gerais com base no objetivo definido para a Teoria do Domínio, ou seja, o

que seria importante e útil para o desenvolvimento de um banco de dados para QEE, e que,

portanto a Teoria do Domínio deveria contemplar. Foram identificados Grupos Principais.

Page 109: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

110

6.2 Caso 1- Sistema de Gerenciamento da Qualidade da Energia Elétrica.

O primeiro caso estudado é o Sistema de Gerenciamento da Qualidade da Energia

Elétrica – SGQEE [PPGEE00], projeto cujo objetivo, consiste de um sistema de

monitoramento e transmissão remota de informações sobre QEE, associado a um banco de

dados relacional, apoiado por m conjunto de programas complementares, que permitem o

pré e pós-processamento de dados, bem como o cálculo estocástico de afundamentos de

tensão e análise da informação com base em técnicas de Inteligência Artificial. O sistema é

estruturado com base em objetivos específicos, capazes de fornecer de forma simples e

automatizada, relatórios que atendam a estes objetivos.

Considerando a arquitetura definida de acordo com a Figura 5.1 foi definido o

ambiente para o SGQEE.

6.2.1 Edição da Teoria do Domínio

A Teoria do Domínio, trata do sistema que desejamos pesquisar, descrevendo as

informações sobre o domínio em questão, neste caso estaremos pesquisando o domínio do

sistema SGQEE, como pode ser visto na Figura 5.3, onde temos:

• Teoria: Sistema de Gerenciamento da Qualidade da Energia Elétrica.

• Descrição da Teoria: O Sistema de Gerenciamento da Qualidade da Energia

Elétrica gerencia informações sobre QEE, sejam estas provenientes de

monitoração ou de simulações computacionais, bem como o pós-processamento

de dados para análise.

6.2.2 Edição da Sub-teoria

Para identificação das Sub-teorias foram definidas, inicialmente, questões de

competência gerais com base no objetivo definido para a Teoria do Domínio, como foi

visto no item 6.1.2 . A partir dessas questões gerais foi possível chegar às sub-teorias a

seguir:

Page 110: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

111

• Local de Monitorização: para responder a questão a), essa sub-teoria

caracteriza os dados cadastrais dos locais que desejamos monitorar.

• Informações de Equipamentos: para responder a questão b), essa sub-teoria

caracteriza as informações cadastrais dos equipamentos, bem como dos ajustes.

• Informações de Medição: para responder a questão c), essa sub-teoria

caracteriza os fenômenos relacionados a QEE que estão sujeitos a

monitorização de locais específicos.

• Ocorrências de Campo: para responder a questão d), as ocorrências de campo

são informações diversas de registro de falhas ocorridas junto a um local de

monitoração. Os registros devem conter informações de ocorrências de falhas

em equipamentos instalados no sistema elétrico monitorizado, para que

encontrem relacionamentos entre estas falhas e os eventos registrados pelo

instrumento monitor de qualidade de energia. Esses registros são provenientes

de informações dos usuários do sistema elétrico e são , inicialmente, coletadas a

partir de um formulário que, contendo informações também sobre o sistema

elétrico, pode vir a fornecer informações para diagnóstico da ocorrência.

• Valores Comparativos: para responder a questão e), os valores de referência

para a análise dos dados coletados, são aqueles valores utilizados como

referência para a comparação com os objetos de dados de eventos. Neste caso

estaremos considerando as normas relativas a afundamentos de tensão.

6.2.3 Edição de Conceitos

A partir das informações coletadas como descrito no item 6.1.2, é necessário definir

os conceitos relacionados a cada sub-teoria. A inclusão pode ser feita como pode ser vista

na Figura 5.7, os conceitos identificados são listados a seguir:

• Sub-teoria Local de Monitorização

o Informações do Consumidor: Informações gerais do consumidor

monitorado;

o Informações do Contato do Local de Monitorização: Informações do

responsável pelo local de monitorização.

• Sub-teoria Informações de Equipamentos

Page 111: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

112

o Informações gerais do equipamento;

o Informações dos canais do equipamento;

o Informações relativas aos ajustes do equipamento.

• Sub-teoria Informações de Medição

o Informações de Harmônicos;

o Informações de Variação de Tensão de Curta Duração;

o Informações de Valor Eficaz.

• Ocorrências de Campo

o Tipo de Falha do Sistema: Identificação de falhas que podem ocorrer como

software e hardware, evidências físicas;

o Periodicidade: Freqüência que o ocorre a falha.

• Valores Comparativos

o Curvas: Curvas usadas como referência, por exemplo CBEMA;

o Valores propostos de curvas de suportabilidade de equipamentos;

o Limites específicos estabelecidos por normas (IEEE/ANSI. IEC, ABNT);

o Sumários de outras pesquisas.

6.2.4 Integração do Framework Conceitual com os Padrões de Análise

Para gerar um esquema para um banco de dados para QEE, considerando o SGQEE,

utilizamos o Framework Conceitual e os padrões de análise identificados no item 3.2. Na

Figura 6.1 é apresentada uma instância do QEE_Frame onde podemos verificar o uso dos

padrões de análise. Após fazer a integração do Framework Conceitual com os padrões de

análise identificados, teremos um diagrama de classes que irá representar o banco de dados

para QEE, que então poderá ser mapeado para qualquer SGBD específico. Na Figura 6.1

foram omitidos os atributos das classes com o objetivo de simplificação do diagrama.

Page 112: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

113

Padrão Local de Monitoração

Padrão Equipamento de QEE

Padrão Ajuste Equipamentos QEE

Tipos_AjustesParametro_Aguste

1n 1n

Padrão Eventos em um Sistema Elétrico

Eventos_Tendencia_Vef

Eventos_VtcdEventos_Harmonicos

Canal

Tratamento_EventosEventos_Estampa

<<Incomplete>>

<<Incomplete>> <<Incomplete>>

1n 1n

Canal_Equipamento

1n

1n

1*

1*

Padrão Ocorrências de Campo

Tipo_Falha

Periodicidade

Falhas

n 1n 1

Monitoracao_Consumidor

Pesquisa nn

Local_Monit_Contato

Ocorrencia

1 n1 n

nn

Padrão Normas e Organizações

Norma_Instituto

Harm_Ind_Tensao Harm_ind_Corrente Comp_Harm_Dht

<<Incomplete>> <<Incomplete>> <<Incomplete>>

Dado_CurvaTipo_Curva

nn

Equipamento

1

*

1

*

nn

Local_Monitoracao

1..n

1

1..n

1

*

1

*

1

0..n1 0..n1

*1

*1

*

11

*

Figura 6.1: Integração do Framework Conceitual – QEE_Frame e Padrões de Análise para o Caso 1.

6.2.5 Conversão do Diagrama de Classes em DTD

A etapa de conversão está relacionada com a Figura 5.1, ou seja, com o módulo

dicionário de dados, devido as especificidades das ferramentas foi feita a importação do

diagrama de classes da ferramenta Rational Rose para a PowerDesigner como pode ser

visto da figura . Para fins de visualização consideramos parte do diagrama de classes

apresentado na Figura 6.1. Consideramos a parte do diagrama reverente aos locais de

monitorização.

Na ferramenta PowerDesigner define-se a linguagem para conversão (XML-DTD)

que será utilizada como pode ser visto na Figura 6.2

Page 113: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

114

Figura 6.2: Interface para definição da Linguagem de conversão do diagrama.

Após a definição da linguagem é feita a geração do arquivo como pode ser visto na

Figura 6.3.

Figura 6.3:Interface para geração do arquivo de dados no formato DTD

Temos então o arquivo .DTD gerado como pode ser visto no Apêndice C.

6.2.6 Mapeamento da DTD para um SGBD relacional

A etapa de mapeamento está relacionada ao módulo de geração automática, neste

caso utilizaremos a ferramenta XMLSPY, como pode ser visto na Figura 6.4.

Page 114: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

115

Figura 6.4: Visualização da ferramenta XMLSPY.

Com essa ferramenta é possível fazer o mapeamento da DTD gerado para um SGBD

relacional, para tal, temos que criar um projeto e incluir os arquivos .DTD. Como pode ser

visto na Figura 6.5.

Figura 6.5:Inclusão dos arquivos gerados.

O próximo passo é a conversão para DTD/ Shema, formato W3C Shema.(Figura 6.6)

Page 115: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

116

Figura 6.6:Conversão DTD/Shema.

Na figura a seguir podemos verificar o mapeamento de cada classe.

Figura 6.7:Demonstrativo das classes mapeadas.

Após o mapeamento é necessário fazer algumas alterações manuais para os atributos em

relação aos tipos, e definições de chave primária(Figura 6.8)

Page 116: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

117

Figura 6.8:Interface para alterações de tipos de dados.

Como a conversão será feita para o Microsoft Access a Figura 6.9 mostra o

resultado alcançado. O script também pode ser armazenado em arquivo .sql (Figura 6.10).

Figura 6.9:Demonstrativo das tabelas que serão criadas no Microsoft Access.

Page 117: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

118

Figura 6.10: Demonstrativo do Script em SQL.

Finalmente na fase final é feita a conversão do Shema para um banco de dados

relacional (Microsoft Access) como pode ser visto na Figura 6.11, define-se o banco para o

qual deseja realizar a conversão, e automaticamente as tabelas são criadas( Figura 6.12).

Figura 6.11:Seleção o SGBD que será utilizado.

Page 118: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

119

Figura 6.12:Tabelas criadas no Microsoft Access.

6.3 Caso 2- Caracterização da Sensibilidade de Processos Industriais Frente a

Afundamentos de Tensão

O segundo caso estudado é o trabalho de Caracterização da Sensibilidade de

Processos Industriais Frente a Afundamentos de Tensão [LEB03], onde o objetivo deste

projeto propor uma metodologia para caracterização da sensibilidade das cargas e

processos incorporados a assimetria, o desequilíbrio, e outras características dos

afundamentos de tensão, tais como salto de ângulo de fase, ponto de início, e métodos de

caracterização a um parâmetro. Os estudos envolvendo afundamentos de tensão são

conduzidos a partir da monitoração das tensões do sistema elétrico ou através da utilização

de metodologias de predição [LEB03].

6.3.1 Edição da Teoria do Domínio

A seguir é apresentada a definição da Teoria do Domínio:

Page 119: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

120

• Teoria: Caracterização da Sensibilidade de Processos Industriais Frente a

Afundamentos de Tensão.

• Descrição da Teoria: Caracterização da sensibilidade das cargas e processos

incorporando a assimetria, o desequilíbrio, e outras características dos

afundamentos de tensão, tais como salto de ângulo de fase, ponto início, e

métodos de caracterização de um parâmetro. Apresentando formas alternativas

para caracterizar o distúrbio, levando em conta a assimetria e o desequilíbrio

dos fasores de tensão, além de classificação dos eventos e os indicadores

utilizados para avaliar uma determinada barra do sistema.

6.3.2 Edição da Sub-teoria

Para identificação das Sub-teorias também foram definidas, inicialmente, questões

de competência gerais com base no objetivo definido para a Teoria do Domínio como foi

visto no item 6.1.2 . A partir dessas questões gerais foi possível chegar a sub-teorias a

seguir, que são editadas no ambiente de acordo com a Figura 5.3:

• Local de Monitorização: para responder a questão a), essa sub-teoria

caracteriza os dados cadastrais dos locais de desejamos monitorar.

• Informações de Equipamentos: para responder a questão b), essa sub-teoria

caracteriza as informações cadastrais dos equipamentos, bem como dos ajustes.

• Informações de Medição: para responder a questão c), essa sub-teoria

caracteriza os fenômenos relacionados a QEE que estão sujeitos a

monitorização de locais específicos.

Destacamos que para esse estudo de caso aconteceu o reuso de conhecimento

definido pelo estudo de caso do item 6.2.

6.3.3 Edição de Conceitos

A partir das informações coletadas como descrito no item 6.1.2, também foi

definido os conceitos relacionados a cada sub-teoria. A inclusão pode ser feita como pode

Page 120: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

121

ser vista na Figura 5.7. Essa interface permite a associação entre os conceitos e as

bibliografias existentes. Caso a bibliografia desejada não exista é possível incluir uma nova

como é mostrado na Figura 5.6. Os conceitos identificados são listados a seguir:

• Sub-teoria Local de Monitorização

o Informações do Consumidor: Informações gerais do consumidor

monitorado;

o Informações do Contato do Local de Monitorização: Informações do

responsável pelo local de monitorização.

• Sub-teoria Informações de Equipamentos

o Informações gerais do equipamento;

o Informações dos canais do equipamento;

o Informações relativas aos ajustes do equipamento.

• Sub-teoria Informações de Medição

o Informações de Variação de Tensão de Curta Duração;

Nesta definição aconteceu o reuso total dos conceitos ligados as sub-teorias: Local

de Monitorização e Informações de Equipamentos, já o conceito relacionado a Informações

de Medição sofreu alterações de forma a atender este novo caso. Por outro lado alguns

conceitos não foram utilizados.

6.3.4 Integração do Framework Conceitual com os Padrões de Análise

Para gerar um esquema para um banco de dados para QEE, considerando

Caracterização da Sensibilidade de Processos Industriais Frente a Afundamentos de

Tensão, utilizamos o Framework Conceitual e os padrões de análise identificados no item

3.2, alguns serão reusados sem requerer mudanças, outros sofreram adaptações antes de

integração, e outros não serão utilizados. Os padrões de análise que não forem utilizados

podem ser facilmente incorporados quanto necessários.

Na Figura 6.13 é apresentada uma instância do QEE_Frame onde podemos verificar

o uso dos padrões de análise. Após fazer a integração do Framework Conceitual com os

padrões de análise identificados, teremos um diagrama de classes que irá representar o

banco de dados para QEE, que então poderá ser mapeado para qualquer SGBD específico.

Page 121: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

122

Na Figura 6.13 foram omitidos os atributos das classes com o objetivo de simplificação do

diagrama.

Padrão Local de Monitoração

Padrão Equipamento de QEE

Padrão Ajuste Equipamentos QEE

Tipos_AjustesParametro_Aguste

1n 1n

Padrão Eventos em um Sistema Elétrico

Eventos_Vtcd

Canal

Tratamento_Eventos Eventos_Estampa

<<Incomplete>>

1n 1n

Canal_Equipamento

1n

1n

1*

1*

Monitoracao_Consumidor

Pesquisa nn

Local_Monit_Contato

Equipamento

1

*

1

*

nn

Local_Monitoracao

1..n

1

1..n

1

*

1

*

0..n1 0..n1

*

11

*

Figura 6.13 : Integração do Framework Conceitual – QEE_Frame e Padrões de Análise para o Caso 2.

6.3.5 Conversão do Diagrama de Classes em DTD

Nesta etapa foram utilizados os mesmos critérios que no estudo de caso anterior

onde os resultados podem ser verificados no Apêndice D.

6.3.6 Mapeamento da DTD para um SGBD relacional

Nesta etapa também foram adotados os mesmos critérios dos itens anteriores os

quais podem ser verificados no Apêndice E.

Page 122: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

123

7 Conclusões

Esta dissertação apresentou instrumentos que podem ser utilizados a fim de apoiar a

modelagem conceitual de um banco de dados para QEE. Esses instrumentos utilizam o

paradigma de orientação a objetos, empregando conceitos de reutilização baseada em

padrões de análise.

A partir da constatação que a maioria das aplicações de SIQEE são projetadas e

desenvolvidas pelos próprios usuários, houve uma preocupação em possibilitar uma

solução que possa ser utilizada na prática tanto por especialistas em computação quanto

por usuários sem experiência nesta área.

Inicialmente foram identificados e descritos alguns padrões de análise em

aplicações para QEE, com base em várias de informação como foi descrito no item 3.2 .

Padrões de análise são fáceis de serem utilizados porém difíceis de serem identificados,

requer do projetista uma habilidade de perceber sub-esquemas recorrentes, abstrair os

elementos essenciais de forma a torná-lo independente da aplicação, e depois documentar

esses padrões usando alguma linguagem de descrição de padrões. Foi então implementado

um ambiente de apoio a definição de um banco de dados para QEE, considerando a teoria

do domínio, padrões de análise e o Framework Conceitual.

Uma das grades vantagens do uso da UML foi a possibilidade de adotar uma

solução simples, utilizando os próprios recursos da linguagem. Assim alcançou-se uma

notação gráfica compacta de fácil aprendizado e entendimento por parte de usuários e

projetistas não especialistas em modelagem conceitual.

A solução UML/ QEE_Frame é independente de plataforma, essa característica é

uma vantagem proposta pela solução uma vez que habilita o usuário a utilizar qualquer

ferramenta CASE para UML existente no mercado.

Com os estudos de caso, foi possível fazer a verificação da arquitetura proposta

(arquitetura para definição de um banco de dados para QEE). Uma vez que no primeiro

estudo de caso o resultado alcançado foi coerente ao projeto [PPGEE00], e com o segundo

Page 123: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

124

estudo de caso criou-se um novo banco de dados de acordo com a suas especificidades de

forma satisfatória.

7.1 Contribuições da dissertação

Utilização do paradigma de orientação a objetos para banco de dados para QEE, o

que não foi encontrado na literatura consultada. A definição de requisitos para modelagem

conceitual de um SIQEE.

O instrumento principal da abordagem de reutilização proposta na dissertação é o

Framework Conceitual QEE_Frame, ele fornece um entendimento básico dos elementos

presentes em qualquer banco de dados para QEE, servindo como ponto de partida para a

modelagem conceitual de banco de dados para QEE. Também foi possível definir uma

metodologia para a definição deste Framework. Não foi identificado na literatura

consultada nenhum padrão de análise para aplicações relacionadas a QEE, bem como a

utilização de um Framework Conceitual para apoiar o projeto de um banco de dados para

QEE.

Outra contribuição é a descrição de um conjunto de padrões de análise para QEE,

bem como uma proposta que representa a captura e a aplicação de padrões de QEE. Esses

padrões estão documentados utilizando uma linguagem universal que é a UML, o que

facilita a troca de informações entre grupos de pesquisa.

Com a definição do Framework QEE-Frame e um conjunto de padrões de análise,

foi possível estabelecer a possibilidade integração com aplicações SIG (Sistema de

Informação Geográfica). Essa nova possibilidade ser torna interessante uma vez que os

projetos orientados a objetos utilizando o conceito de reutilização, Frameworks e padrões

de análise, apresentados para SIG estão evoluídos e apresentam resultados satisfatórios.

Essa integração é uma oportunidade interessante visto que aplicações relativas a QEE

apresentam dados com características geográficas, o que apresentaria apoio a análise dos

dados relativos a QEE.

Page 124: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

125

Uma contribuição importante é a definição de um ambiente para apoiar os

projetistas de banco de dados para QEE, que proporciona trabalhar com reutilização em um

nível mais alto de abstração que é a reutilização do conhecimento. Além de possibilitar a

integração das áreas de Engenharia Elétrica e Engenharia de Software, a fim de prover uma

melhor utilização dos dados para QEE.

7.2 Trabalhos Futuros

O resultado de processo de modelagem conceitual é um esquema conceitual de

dados. Após validado e aprovado, o esquema conceitual tem de ser transformado em um

esquema lógico, o qual é dependente do software a ser utilizado. Como não existe um

modelo lógico de SIQEE único não existe uma regra única para a transformação de um

esquema conceitual para um esquema lógico. Portanto pode-se desenvolver ferramentas

para a transformação de um esquema conceitual em um esquema lógico de SIQEE.

Essa primeira versão do ambiente ADEBDQEE não está na Web, mas foi projetado

de forma a facilitar a migração para a Web, isso seria uma vantagem para o ambiente uma

vez que teríamos a possibilidade de usuários localizados no consumidor pudessem interagir

diretamente com a adição de Teorias de Domínio. Com relação ao módulo geração

automática também teríamos uma vantagem, visto que o módulo dicionário de dados

disponibiliza os dados em formato XML, esse formato é compatível com a Web como foi

visto no item 2.5, o que facilita os grupos de pesquisas em QEE a criarem um módulo de

geração automática a fim de atender a necessidades de suas aplicações específicas para

QEE.

O desenvolvimento de uma ferramenta CASE específica para o ambiente

ADEBDQEE a fim de integrar a edição dos padrões de análise e do Framework

Conceitual.

Um dos pontos importantes e críticos de um SIQEE é o armazenamento de dados e

sua disponibilização. Com relação ao armazenamento, observa-se que teremos dados

referenciados ao longo do tempo, portanto temos uma grade massa de dados que serão

analisados após um certo período. Neste caso temos um alto custo para armazenamento e

Page 125: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

126

uma grande quantidade de informações, o que torna interessante a troca de dados entre as

diversas instituições que se preocupam com a QEE, hoje na maioria dos casos a troca de

informação acontece através de instituições que trabalham em parceria, ou através de

grupos de pesquisas.

Com relação a disponibilização dos dados, as informações relativas a QEE são de

interesse das concessionárias, consumidores e grupos de pesquisa em QEE, mas hoje

somente os grupos de pesquisas e as concessionárias têm acesso a esse tipo de informação

de modo limitado, através de consultas pré-definidas.

Atualmente o processo de disponibilização de dados de QEE na Web é pouco

utilizado, uma forma interessante seria a disponibilização de dados utilizando o padrão

XML descrito nesta dissertação de forma a prover dados padronizados facilitando a troca

de informações na Web.

A disponibilização de consultas na Web apresenta grandes benefícios uma vez que

teremos medições distribuídas ao longo de áreas geográficas extensas. Desta forma

teremos usuários espalhados geograficamente tendo acesso aos dados. Esses dados além de

serem visualizados podem ser tratados e inseridos em um novo banco de dados, uma forma

de permitir essa funcionalidade, é fazendo o uso de XML (Extensible Markup Language).

A XML [W3C98] é um padrão aprovado pela W3C (World Wide Web Consortium) que

deve se tornar um formato universal para a troca de informações na Web.

Page 126: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

127

8 Referências Bibliográficas

[ABT99] ABTEBOUL, S. et al. Data on the Web: From Relations to Semistructured Data and XML. Morgan Kaufmann, 1999.

[AGO00] AGOSTINI, M.. N. et al. Desenvolvimento e Implementação de uma Base Computacional Orientada a Objetos para Aplicações em Sistemas de Energia Elétrica. Anais do XIII Congresso Brasileiro de Automática – CBA2000. Setembro, 2000. Florianópolis.

[ALD01] ALDABO, R. Qualidade na Energia Elétrica. São Paulo, Artliber, 2001.

[ALU01] ALUR, D. et al. Core J2EE Patterns: Best Practices and Design Strategies. Prentice Hall, 1ª. Edição, 2001. [ALT04] XML SPY 4.0 . Tutoriais Altova Inc. & Altova GmbH, 2003. Disponível com o software shareware em http://www.xmlspy.com

[ALV00] ALVES, M. F. et al. Um Sistema para o Gerenciamento da Qualidade da Energia Elétrica. XIII Congresso Brasileiro de Automática - CBA 2000, Setembro 2000, Florianópolis.

[BEZ02] BEZERRA, E. Princípios de Análise e Projeto de Sistemas com UML. Editora Campus, Rio de Janeiro, 2002.

[BAT92] BATINI, C. et al. Conceptual Database Design: Na Entity-Relationship Approach. Redwood: Benjamin/Cummings, 1992.

[BOO99] BOCH, G., et al. The Unified Modeling Language User Guide. Addison-Wesley, 1999.

[BOS97] BOSCH, J. Adapting Object-oriented Components. In: Workshop Component-oriented programming WCOP ´97, Jyvaskylä; Finland, 1997. Disponível em: http://www5.bth.se/cgi-bin/MsmGo.exe?grab_id=60675328&EXTRA_ARG=&CFGNAME=MssFind%2Ecfg&host_id=4&page_id=5409&query=Adapting+objectoriented+componentes&hiword=ADAPTING+OBJECTORIENTED+COMPONENTES+COMPONENT+COMPONENTS+ADAPTATION+ADAPT+ADAPTED+ADAPTERS+ADAPTER+ADAPTS+OBJECTORIENTATION+ADAPTION+ADAPTOR+ADAPTORS+COMPONENTY+ADAPTIONS+COMPONENTI+ Acesso em (13/01/2004)

[CAR01] CARLSON, D. Modeling XML Applications with UML Practical e-Business Applications. Addison Wesley, 2001.

[CHE02] CHEN, S.; F.Y.Lu. Web-Based Simulation of Power Systems. IEEE Computer Applications in Power, Vol. 15, n° 1, janeiro/2002.

[CUN03] CUNHA, G. E., et al. Proposta de Padrões de Software para Reutilização Sistemática em Sistemas de Software Orientados a Objetos. 2003

[CON03] CONALLEN, J. Building Web Applications with UML. Addison Wesley 2003.

[COU97] COUGO, P. S. Modelagem Conceitual e Projeto de Banco de Dados. Campus, Rio de Janeiro, 1997

[CRU03] CRUZ, J. C. A. O. et al. Administração de uma Rede de Aquisição e Distribuição de Dados para Avaliação da Qualidade da Energia Elétrica. V SBQEE-Seminário Brasileiro sobre Qualidade da Energia Elétrica, Agosto 2003, Aracaju.

Page 127: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

128

[DAB95] DABBS, B. et al. The Power Quality Database: A Software Toll for Utility Engineers to Solve Problems. IEEE Computer Applications in Power, p 72-79.

[DAN02] DANTAS, A., et al. Suporte a Padrões no Projeto de Software. XVI SBES – Simpósio Brasileiro de Engenharia de Software, Outubro 2002, Gramado.

[DIA01] DIAS V. C. et al. Um Sistema de Aquisição de Dados para o Gerenciamento da Qualidade da Energia Elétrica. IV SBQEE –Seminário Brasileiro sobre Qualidade da Energia Elétrica, Agosto 2001, Porto Alegre.

[DUG96] DUGAN, R. C.; Mcgranahan, M. F., et al. Eletrical Power Systems Quality. McGraw-Hill, 1996.

[ECL04] Plataforma Eclipse. Disponível em http://www.eclipse.org. Acesso (15/01/2004)

[EDE94] EDELWEISS, N., Sistemas de Informação de Escritórios: um Modelo para Especificações Temporais. Porto Alegre: CPGCC da UFRGS, 1994. Tese Doutorado.

[EMB87] EMBLEY, D. W., WOODFIELD, S. N., A knowledge structure for reusing abstracr data types. In: International Conference on Software Engineering, 1987, Monterey. New York: IEEE Computer Socity Press, 1987.

[FAL98] FALBO, R., Integração de Conhecimento em um Ambiente de Desenvolvimento de Software. COPPE/UFRJ, Rio de Janeiro, RJ, 1998. Tese de Doutorado.

[FAV97] FAVARO, J. Standardizing Production of Domain Components. Standard View, vol 5, no. 2, 1997.

[FAV02] FAVARIN, S. et al. Sistema de Telemedição e Supervisão de Qualidade de Energia Elétrica. Seminário Internacional sobre Automação e Redes de Distribuição de Energia Elétrica e Centros de Controle, Setembro 2002, São Paulo.

[FAY97]FAYAD,M., et al. Object-Oriented Application Frameworks. Communications of the ACM, New Yok, v. 40, n. 10, 1997.

[FAY99] FAYAD, M. et al. Building Applications Frameworks. Editora John Willey e Songs, 1999.

[FER98] FERNANDEZ, E. B. Building Systems Using Analysis Patterns. Procs. of Int. software Architecture Workshop – ISAW3, 1998.

[FER99] FERNANDES, D. E. B., et al. Development of na Automated Power Quality Management System. IEEE – Transmission and Distribution Conference, 1999, New Orleans.

[FERN99] FERNANDES, D. E. B., Uma Metodologia de Gerenciamento da Qualidade da Energia Elétrica. PUC-Minas, Belo Horizonte, PPGEE, 1999. Dissertação de Mestrado.

[FER01] FERNANDES, D. E. B., et al. Um Banco de Dados Relacional para o Gerenciamento da Qualidade da Energia Elétrica. IV SBQEE –Seminário Brasileiro sobre Qualidade da Energia Elétrica, Agosto 2001, Porto Alegre.

[FIK99] FIKES, R. et al. Distributed Repositories of Highly Expressive Reusable Ontologies”. IEEE Intelligent Systems & Their Applications, vol 14, no. 2, 1999.

[FOU02] FOURO, A. M. M. Apoio à Construção de Base de Dados de Pesquisa em Ambientes de Desenvolvimento de Software Orientados a Domínio. COPPE/UFRJ, Rio de Janeiro, 2002. Dissertação de Mestrado.

[FON99] FONSECA, V. R. C. Cálculo Estocástico do Afundamento de Tensão. PUC-Minas, Belo Horizonte, PPGEE, 1999. Dissertação de Mestrado.

[FOW97] FOWLER, M., Analysis Patterns: Reusable Object Models, Addison Wesley, 1997.

Page 128: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

129

[FOW00] FOWLER, M., et al. UML Distilled – A Brief Guide to the Standard Object Modeling Language. Addison Wesley, 2000.

[FRA02] FRANCO, C. S. et al. Sistema de Geração de Base de Dados. Seminário Internacional sobre Automação e Redes de Distribuição de Energia Elétrica e Centros de Controle, Setembro 2002, São Paulo.

[FUR98] FURLAN, J. D. Modelagem de Objetos através da UML. Makron Books, São Paulo, 1998.

[GAM95] GAMMA, E. et al. Design Patterns: Elements of Reusable Object-Oriented Software, Addison Wesley, 1995.

[GER99] GERBER, L. D. Uma Linguagem de Padrões para o Desenvolvimento de Sistemas de Apoio à Decisão Baseado em Frameworks. Porto Alegre, PUCRS, 1999. Dissertação Mestrado.

[GOM95] GÓMEZ-PÉREZ, A. Some Ideas and Examples to Evaluate Ontologies. In Proceedings of 11th Coference in Artificial Intelligence for Applications, Los Angeles, 1995.

[GRA02] GRAVES, M. Designing XML Databases. Prenctice Hall, 2002.

[GRU95] GRUBER, T. R. Towards Principles for the Design of Ontologies used for Knowledge Sharing. International Journal Human-Computer Studies, no. 43, 1995

[GUA95] GUARINO, N., et al. “Ontologies and Knowledge Bases – Towards a Terminological Clarification”. In: Mars, N. J., Towards Very Large Knowledge Bases: Knowledge Building and Knowledge Sharing, IOS Press, Amsterdan, 1995.

[GUA97] GUARINO, N. Semantic Matching: Formal Ontological Distinctions for Information Organization, Extraction and Integration. In: Information Extraction: a Multidisciplinary Approach to na Emerging Information Tecnhology, 1997.

[HAY95] HAY, D. C. Data Model Patterns: Conventions of Thought. Dorset House Publishing, 1995.

[HEU01] HEUSER, C. A. Projeto de Banco de Dados. Sagra Luzzatto, edição 4, número 4, 2001.

[HOL01] HOLZNER, S. Inside XML. New Riders Press, 2001.

[IEEE95] IEEE STANDARS BOARD, IEE Std 1159 – 1995 – Recommended pratice for Monitoring Electric Power Quality, USA, 1995.

[JOH93] JOHNSON, R. E. How to Design Frameworks, OOPSLA, 1993. Disponível para ftp em: st.cs.uiuc.edu. Conectar como anonymous. Pasta: /pub/papers/framework

[JON01] JONES, M. P. Fundamentos de Desenho Orientado a Objeto com UML. São Paulo, Makron Books, 2001

[KAG03] KAGAN, N., et al. Desenvolvimento de Ferramenta Automatizada para Estimação da Qualidade de Fornecimento das Redes de Distribuição. V SBQEE-Seminário Brasileiro sobre Qualidade da Energia Elétrica, Agosto 2003, Aracaju.

[KOR99] KORTH, H. F. et al. Sistemas de Banco de Dados. Makron Books, edição 3, 1999.

[LAR99] LARMAN, C. Applying UML and Patterns – An Introduction to Object-Oriented Analysis and Design. Prentice-Hall, 1999. [LEB03] LEBORGHE R. C. Uma Contribuição à Caracterização da Sensibilidade de Processos Industriais Frente a Afundamentos de Tensão. Itajubá, Universidade Federal de Itajubá, 2003. Dissertação de Mestrado

Page 129: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

130

[LIS00] LISBOA, J. F., Projeto Conceitual de Banco de Dados Geográficos através da Reutilização de Esquemas, utilizando Padrões de Análise e um Framework Conceitual, Porto Alegre, UFRGS, PPGC, 2000. Tese de Doutorado.

[LIS01] LISBOA J. F. et al. Padrões de Análise para Aplicações de Gestão Urbana em Sistemas de Informação Geográfica. In: Latin American conference on Pattern Languages of Programming, 2001.

[LIS02] LISBOA J. F., et al. Reutilização de Esquemas de Banco de Dados em Aplicações de Gestão Urbana. Revista IP-Informática Pública, Belo Horizonte, V.4, n1, 2002.

[MAG01] MAGALHÃES, K. V. et al. Uma Abordagem de Dados Semi-Estruturados em Banco de Dados Relacionais. XVI Simpósio Brasileiro de Banco de Dados, Rio de Janeiro, 2001.

[MED03] MEDEIROS, M. O. M. et al. Monitoração da Qualidade de Energia de um Sistema de Distribuição. V SBQEE- Seminário Brasileiro sobre Qualidade da Energia Elétrica, Agosto 2003, Aracaju.

[MEL02] MELO, A . C. Desenvolvendo Aplicações com UML. Brasport, Rio de Janeiro, 2002.

[MES98] MESZAROS, G., et al. A Pattern Language for Pattern Writing. Disponível em: http://webclass.cqu.edu.au/Patterns/Resources/writers/language/patterns.html#1.0 ou http://hillside.net/patterns/writing/patterns.htm#1.0

[MIA02] MIAN, P. G. et al. Orientação a Domínio em ODE. Universidade Federal do Espírito Santo. In: InfoUYClei, Montevideo, Uruguay, 2002.

[MIL95] MILI, H., et al. Reusing Software: Issues and Research Directions. IEEE Transactions on Software Engineering, Vol. 21,no. 26, 1995.

[MON02] MONTEIRO, O. L. D. Aplicações de Padrões de Projeto no Desenvolvimento de Frameworks – Um estudo de Caso. Florianópolis, UFSC, PPGCC, 2002. Dissertação Mestrado.

[MOU92] MOURA, L. M. et al. Ambientes de Desenvolvimento de Software, COPPE/UFRJ, Rio de Janeiro, 1992. Documento Técnico.

[MUL99] MULLER, R. J. Database Designer for Smarties using UML for Data Modeling. Academic Press, 1999.

[MUS98] MUSEN, M. A . Modern Architectures for Intelligent Systems: Reusable Ontologies and Problem Solving Methods. JAMIA, Journal of the American Medical Informatics Association, 1998.

[NAV00] NAVATHE, S. B., et al. Fundamentals of Database Systems. Addison Wesley, 3rd Edition, 2000.

[NEI94] NEIGHBORS, J. M. An assessment of reuse technology after ten years. In: International Conference on Software Reuse, 3., 1994, Rio de Janeiro. Proceedings... Los Alamitos, Califórnia: IEEE Computer Socity Press, 1994.

[NET01] NETO, L. B., et al. DEA: Uma Aplicação no Controle da Qualidade da Energia Elétrica. Simpósio Brasileiro de Pesquisa Operacional, Novembro 2001, Campos do Jordão.

[OLI99] OLIVEIRA, A. et al. Conservação de Energia e sua Relação com a Qualidade da Energia Elétrica. XV SNPTEE –Seminário Nacional de Produção e Transmissão de Energia Elétrica, Outubro 1999, Foz do Iguaçu.

[OLI99a] OLIVEIRA, K. M. Modelo para a Construção de Desenvolvimento de Software Orientados a Domínio. Universidade Federal do Rio de Janeiro,COPPE, 1999. Tese de Doutorado.

[OLI] OLIVEIRA, K. M. et al. O Uso da Teoria do Domínio no Processo de Desenvolvimento de Software.

Page 130: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

131

[OMG99] OMG, Unified Modeling Language Specification. Versão 1.3, 1999. Disponível em: http://www.rational.com.br/uml Acesso em: (13/01/2004) [ONS00] Operador Nacional do Sistema Elétrico-NOS/ANEEL. Padrões de Desempenho da Rede Básica. 2000. Disponível em : http:://www.ons.org.br. [PEL03] PELEGRINI, M. A.et al.SISQUALI: Uma Ferramenta de Planejamento de Redes de Distribuição Utilizando Parâmetros de Qualidade. V SBQEE- Seminário Brasileiro sobre Qualidade da Energia Elétrica, Agosto 2003, Aracaju.

[PIM00] PIMENTEL, M. G. C., et al. XML: Explorando suas Aplicações na Web. XX Congresso Nacional da Sociedade Brasileira de Computação , XIX Jornada de Atualização em Informática, Julho 2000, Curitiba.

[PIT99] PITTS-MOULTIS, N. XML Black Book. Coriolis Groups, 1999.

[PPGEE00] PUC-MG/No. PPGEE-65/2000. Projeto de Pesquisa: Gerenciamento da Qualidade da Energia Elétrica; financiamento CEMIG/PUC-FIP, abril 2000.

[PRE94] PREE, W. Meta Patterns – a means for capturing essencial of reusable object-oriented design. In European Conference on Object-Oriented Programming.

[PRE95] PREE, W. Design Patterns of Object-Oriented software Development. Addison Wesley, 1995.

[PRE97] PREE, W., Essencial Framework Design Patterns. New York, 1997. Disponível em: Acesso em:

[PRE01] PRESSMAN, R. S. Software Engineering: A Practitioner’s Approach. Edição 5, McGraw-Hill, 2001.

[REZ02] REZENDE, D. A . Engenharia de Software e Sistemas de Informação. Edição 2, Brasport, Rio de Janeiro, 2002.

[RIB98] RIBEIRO, T. N. Uma Discussão dos Critérios e Normas Relativos à Qualidade da Energia Elétrica. PUC-MG, Agosto, 1998. Dissertação de Mestrado.

[ROB93] ROBERTSON, S. et al. Reusing the Products of Analysis. Procs. of Int. Workshop on Software Reusability. Lucca, Italy, 1993. Disponível em: http://www.atlsysguild.com/GuildSite/SQR/reusingAnalysis.html Acesso em (13/01/2004) [ROM03] ROMERO, S. P., et al. Um Programa para Simulação de Afundamentos Momentâneos de Tensão. Seminário Brasileiro sobre Qualidade da Energia Elétrica, Agosto 2003, Aracaju.

[SAN02] SANTOS, N. A . M. et al. Construção de Base de Dados de Medição Utilizando de Ferramentas de Telemetria, Agregação e Análise via Web. Seminário Internacional sobre Automação e Redes de Distribuição de Energia Elétrica e Centros de Controle, Setembro 2002, São Paulo.

[SIL00] SILVA, R. P. Suporte ao Desenvolvimento e uso de Frameworks e Componentes. Porto Alegre, UFRGS, PPGC, 2000. Tese de Doutorado.

[SIL00a] SILVA C. G. M. Neturno: Um Ambiente de Desenvolvimento de Software Orientados ao Domínio de Acústica Submarina. COPPE/UFRJ, 2000. Dissertação de Mestrado.

[SCH97] SCHMIDT, H. A .Systematic Framework Design by Generalization. Communications of the ACM, vol 40, no.10, 1997.

[SUC98] SUCIU, D. Semistructured Data and XML. The 5th Internacional Conference of Foundations of Data Organization - FODO’98, Kobe, Japan, Novembro, 1998.

Page 131: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

132

[SWA99] SWARTOUT, W., et al. Ontologies – Guest Editors Introduction. IEEE Intelligent Systems & Their Applications, vol 14, no. 1, 1999.

[TAL97] TALIGENT, Inc. Building Object-Oriented Frameworks. 1997. Disponível em: http://lhcb-comp.web.cern.ch/lhcb-comp/Components/postscript/buildingoo.pdf Acesso em: (09/01/2004)

[TON03] TONSING,S. L. Engenharia de Software. Futura, São Paulo, 2003

[UCH] UCHÔA, E. M. A ., et al. Integração de Sistemas de Dados Heterogêneos usando Frameworks.

[VAN97] VAN, H. G. et al. Using Explicit Ontologies in KBS Development. International Journal of Human-Computer Studies, val. 45, no. 2/3, 1997.

[VIV01] VIVEKANANDA, R. et al. Monitoração e Apresentação dos Indicadores de Qualidade da Rede de Distribuição da CERJ, via Site dedicado na Internet, baseado em Medições de Harmônicos e Afundamentos de Tensão. Seminário Internacional sobre Automação e Redes de Distribuição de Energia Elétrica e Centros de Controle, Outubro 2001, Puerto Iguazu, Argentina.

[W3C98] The World Wide Web Consortium. Extensible Markup Language (XML) 1.0, February 1998. http://www.w3.org/TR/REC-xml

Page 132: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

133

9 Apêndices

No Apêndice – A é apresentado o projeto do banco de dados usado no Ambiente de

Definição de um Banco de Dados para QEE.

No Apêndice – B é apresentado as interfaces adicionais que compõe o Ambiente de

Definição de um Banco de Dados para QEE.

No Apêndice – C é apresentado o arquivo .DTD para o Caso exemplo: Sistema de

Gerenciamento da Qualidade da Energia Elétrica.

No Apêndice – D é apresentado a conversão do diagrama de classes para DTD para o

Caso exemplo : Caracterização da Sensibilidade de Processos Industriais frente a

Afundamentos de Tensão.

No Apêndice – E é apresentado o mapeamento da DTD para um SGBD relacional

para o Caso exemplo : Caracterização da Sensibilidade de Processos Industriais frente a

Afundamentos de Tensão.

Page 133: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

134

Apêndice - A

Standard CDM report

Page 134: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

135

Table of Contents The 'Table of contents' field needs to be updated!

CDM GraphsCDM GraphsCDM Graphs

Global model GraphGlobal model GraphGlobal model Graph

Subteoria_Conceito_Biblio

Subteoria_PadraoAnalise

Teoria_Framework

SubTeoriaConceito

Teoria_Subteoria

Teoria_DominioCodTeoria INomTeoria A80DesTeoria A255

Sub_TeoriaDominioCodSubTeoria INomSubTeoria A80DesSubTeoria A255

Subteoria_ConceitoCodConceito ISinConceito A80DesConceito A255NomConceito A100

Framework_ConceitualCodFramework INomArqFramework A80

Padrao_AnaliseCodPadrao INomPadrao A80DesProblema A100ContextoPadrao A255ForcasPadrao A255ArquivoPadrao A100SolucaoPadrao OLE

BibliografiaCodBibliografia IAutorBibliografia A80DescBibliografia A200EditEveBibliografia A100InfoBibliografia A255

Lists of objectsLists of objectsLists of objects

Data Item ListData Item ListData Item List Name Code Type

ArquivoPadrao ARQUIVOPADRAO A100 AutorBibliografia AUTORBIBLIOGRAFIA A80 CodBibliografia CODBIBLIOGRAFIA I CodConceito CODCONCEITO I CodFramework CODFRAMEWORK I CodPadrao CODPADRAO I CodSubTeoria CODSUBTEORIA I CodTeoria CODTEORIA I ContextoPadrao CONTEXTOPADRAO A255 DescBibliografia PERIODICOBIBLIOGRAFIA A200 DesConceito DESCONCEITO A255 DesProblema DESPROBLEMA A100 DesSubTeoria DESSUBTEORIA A255 DesTeoria DESTEORIA A255 EditEveBibliografia EDITEVEBIBLIOGRAFIA A100 FigFramework FIGFRAMEWORK PIC ForcasPadrao FORCASPADRAO A255 InfoBibliografia INFOBIBLIOGRAFIA A255 NomArqFramework NOMARQFRAMEWORK A80 NomConceito NOMCONCEITO A100 NomPadrao NOMPADRAO A80 NomSubTeoria NOMSUBTEORIA A80 NomTeoria NOMTEORIA A80 SinConceito SINCONCEITO A80

Page 135: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

136

Name Code Type SolucaoPadrao SOLUCAOPADRAO OLE

Entity ListEntity ListEntity List Name Code

Bibliografia BIBLIOGRAFIA Framework_Conceitual FRAMEWORK_CONCEITUAL Padrao_Analise PADRAO_ANALISE Sub_TeoriaDominio SUB_TEORIADOMINIO Subteoria_Conceito SUBTEORIA_CONCEITO Teoria_Dominio TEORIA_DOMINIO

Relationship ListRelationship ListRelationship List Name Code

Subteoria_Conceito_Biblio SUBTEORIA_CONCEITO_BIBLIO Subteoria_PadraoAnalise SUBTEORIA_PADRAOANALISE SubTeoriaConceito SUBTEORIACONCEITO Teoria_Framework TEORIA_FRAMEWORK Teoria_Subteoria TEORIA_SUBTEORIA

Entity InformationEntity InformationEntity Information

Entity BibliografiaEntity BibliografiaEntity Bibliografia Name: Bibliografia Code: BIBLIOGRAFIA Label: Number: Generate Table: Yes

Description Informações sobre referencias bilbiográficas onde possa ser encontrado informações adicionais a respeito do Conceito.

Attribute List Name Code Type I M

CodBibliografia CODBIBLIOGRAFIA I Yes Yes AutorBibliografia AUTORBIBLIOGRAFIA A80 No No DescBibliografia PERIODICOBIBLIOGRAFIA A200 No No EditEveBibliografia EDITEVEBIBLIOGRAFIA A100 No No InfoBibliografia INFOBIBLIOGRAFIA A255 No No

Data Item CodBibliografia

Description Código identificador da Bibliografia

Data Item AutorBibliografia

Description

Page 136: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

137

Autor da Bibliografia relacionada.

Data Item DescBibliografia

Description Nome do livro, artigo, etc. da Bibliografia relacionada.

Data Item EditEveBibliografia

Description Editora / Evento: Congresso Bibliografia relacionada.

Data Item InfoBibliografia

Description Informações adicionais.

Reference List Entity Card Dep. Relationship

Subteoria_Conceito(SUBTEORIA_CONCEITO)

1,n No Subteoria_Conceito_Biblio(SUBTEORIA_CONCEITO_BIBLIO)

Entity Framework_ConceitualEntity Framework_ConceitualEntity Framework_Conceitual Name: Framework_Conceitual Code: FRAMEWORK_CONCEITUAL Label: Number: Generate Table: Yes

Description Informações sobre os frameworks existentes. Que pertecem a alguma Teoria de Domínio

Attribute List Name Code Type I M

CodFramework CODFRAMEWORK I Yes Yes NomArqFramework NOMARQFRAMEWORK A80 No Yes

Data Item CodFramework

Description Código idenficador do Framework Conceitual.

Data Item NomArqFramework

Description Nome do Arquivo que idenfica o Framework.

Page 137: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

138

Annotation Arquivos de idenficação: .mdl

Reference List Entity Card Dep. Relationship

Teoria_Dominio(TEORIA_DOMINIO) 1,1 No Teoria_Framework(TEORIA_FRAMEWORK)

Entity Padrao_AnaliseEntity Padrao_AnaliseEntity Padrao_Analise Name: Padrao_Analise Code: PADRAO_ANALISE Label: Number: Generate Table: Yes

Description Infomações de Padrões de Análise para QEE, de acordo com a Teoria do Domínio.

Attribute List Name Code Type I M

CodPadrao CODPADRAO I Yes Yes NomPadrao NOMPADRAO A80 No Yes DesProblema DESPROBLEMA A100 No Yes ContextoPadrao CONTEXTOPADRAO A255 No Yes ForcasPadrao FORCASPADRAO A255 No Yes ArquivoPadrao ARQUIVOPADRAO A100 No Yes SolucaoPadrao SOLUCAOPADRAO OLE No No

Data Item CodPadrao

Description Identifica o padrão de análise.

Data Item NomPadrao

Description Nome do Padrão de Análise.

Data Item DesProblema

Description Fornece uma declaração sucinta do problema que necessita ser resolvido.

Annotation Normalmente colocado na forma de pergunta.

Data Item ContextoPadrao

Page 138: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

139

Description Contexto: descreve o contexto no qual o problema foi identificado e para o qual a solução foi proposta.

Data Item ForcasPadrao

Description Forças: Conjunto de restrições que foram consideradas quando da elaboração da solução do problema.

Data Item ArquivoPadrao

Description Arquivo .mdl que identifica o padrão.

Data Item SolucaoPadrao

Description Solução: Fornece um diagrama de classes com a solução proposta.

Reference List Entity Card Dep. Relationship

Sub_TeoriaDominio(SUB_TEORIADOMINIO)

1,n No Subteoria_PadraoAnalise(SUBTEORIA_PADRAOANALISE)

Entity Sub_TeoriaDominioEntity Sub_TeoriaDominioEntity Sub_TeoriaDominio Name: Sub_TeoriaDominio Code: SUB_TEORIADOMINIO Label: Number: Generate Table: Yes

Attribute List Name Code Type I M

CodSubTeoria CODSUBTEORIA I Yes Yes NomSubTeoria NOMSUBTEORIA A80 No Yes DesSubTeoria DESSUBTEORIA A255 No Yes

Data Item CodSubTeoria

Description Código idenficador da subteoria do domínio.

Data Item NomSubTeoria

Description Nome da subteoria do domínio.

Data Item DesSubTeoria

Page 139: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

140

Description Descrição da Subteoria do Domínio.

Reference List Entity Card Dep. Relationship

Padrao_Analise(PADRAO_ANALISE) 1,n No Subteoria_PadraoAnalise(SUBTEORIA_PADRAOANALISE)

Subteoria_Conceito(SUBTEORIA_CONCEITO)

1,n No SubTeoriaConceito(SUBTEORIACONCEITO)

Teoria_Dominio(TEORIA_DOMINIO) 1,n No Teoria_Subteoria(TEORIA_SUBTEORIA)

Entity Subteoria_ConceitoEntity Subteoria_ConceitoEntity Subteoria_Conceito Name: Subteoria_Conceito Code: SUBTEORIA_CONCEITO Label: Number: Generate Table: Yes

Description Definição dos Conceitos para as Subteorias.

Attribute List Name Code Type I M

CodConceito CODCONCEITO I Yes Yes SinConceito SINCONCEITO A80 No No DesConceito DESCONCEITO A255 No No NomConceito NOMCONCEITO A100 No No

Data Item CodConceito

Description Código identificador do Conceito.

Data Item SinConceito

Description Sinônimo do Conceito.

Data Item DesConceito

Description Descrição do Conceito.

Data Item NomConceito

Description Nome que identifica o conceito.

Page 140: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

141

Reference List Entity Card Dep. Relationship

Bibliografia(BIBLIOGRAFIA) 1,n No Subteoria_Conceito_Biblio(SUBTEORIA_CONCEITO_BIBLIO)

Sub_TeoriaDominio(SUB_TEORIADOMINIO)

1,n No SubTeoriaConceito(SUBTEORIACONCEITO)

Entity Teoria_DominioEntity Teoria_DominioEntity Teoria_Dominio Name: Teoria_Dominio Code: TEORIA_DOMINIO Label: Number: Generate Table: Yes

Description Responsável pela Definição da Teoria do Domínio

Annotation Exemplo: Domínio Sistema Gerenciador para Qualidade da Energia Elétrico, Sistema de Monitoração da Qualidade da Energia Elétrica.

Attribute List Name Code Type I M

CodTeoria CODTEORIA I Yes Yes NomTeoria NOMTEORIA A80 No Yes DesTeoria DESTEORIA A255 No Yes

Data Item CodTeoria

Description Código que idenfica a Teoria do Domínio.

Data Item NomTeoria

Description Nome da Teoria da Domínio

Data Item DesTeoria

Description Descrição da Teoria do Domínio

Reference List Entity Card Dep. Relationship

Framework_Conceitual(FRAMEWORK_CONCEITUAL)

1,n No Teoria_Framework(TEORIA_FRAMEWORK)

Sub_TeoriaDominio(SUB_TEORIADOMINIO)

1,n No Teoria_Subteoria(TEORIA_SUBTEORIA)

Page 141: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

142

Relationships InformationRelationships InformationRelationships Information

Relationship Subteoria_Conceito_BiblioRelationship Subteoria_Conceito_BiblioRelationship Subteoria_Conceito_Biblio Name: Subteoria_Conceito_Biblio Code: SUBTEORIA_CONCEITO_BIBLIO Label: Entity 1: Bibliografia Entity 2: Subteoria_Conceito Cardinality: Many to Many Entity 2 dependent of Entity 1: No Entity 1 --> Entity 2: Role: Mandatory: Yes Dominant: No Min, Max: 1, n Entity 2 --> Entity 1: Role: Mandatory: Yes Dominant: No Min, Max: 1, n

Relationship Subteoria_PadraoAnaliseRelationship Subteoria_PadraoAnaliseRelationship Subteoria_PadraoAnalise Name: Subteoria_PadraoAnalise Code: SUBTEORIA_PADRAOANALISE Label: Entity 1: Sub_TeoriaDominio Entity 2: Padrao_Analise Cardinality: Many to Many Entity 2 dependent of Entity 1: No Entity 1 --> Entity 2: Role: Mandatory: Yes Dominant: No Min, Max: 1, n Entity 2 --> Entity 1: Role: Mandatory: Yes Dominant: No Min, Max: 1, n

Relationship SubTeoriaConceitoRelationship SubTeoriaConceitoRelationship SubTeoriaConceito Name: SubTeoriaConceito Code: SUBTEORIACONCEITO Label:

Page 142: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

143

Entity 1: Sub_TeoriaDominio Entity 2: Subteoria_Conceito Cardinality: Many to Many Entity 2 dependent of Entity 1: No Entity 1 --> Entity 2: Role: Mandatory: Yes Dominant: No Min, Max: 1, n Entity 2 --> Entity 1: Role: Mandatory: Yes Dominant: No Min, Max: 1, n

Relationship Teoria_FrameworkRelationship Teoria_FrameworkRelationship Teoria_Framework Name: Teoria_Framework Code: TEORIA_FRAMEWORK Label: Entity 1: Teoria_Dominio Entity 2: Framework_Conceitual Cardinality: One to Many Entity 2 dependent of Entity 1: No Entity 1 --> Entity 2: Role: Mandatory: Yes Dominant: No Min, Max: 1, n Entity 2 --> Entity 1: Role: Mandatory: Yes Dominant: No Min, Max: 1, 1

Relationship Teoria_SubteoriaRelationship Teoria_SubteoriaRelationship Teoria_Subteoria Name: Teoria_Subteoria Code: TEORIA_SUBTEORIA Label: Entity 1: Teoria_Dominio Entity 2: Sub_TeoriaDominio Cardinality: Many to Many Entity 2 dependent of Entity 1: No Entity 1 --> Entity 2: Role: Mandatory: Yes Dominant: No

Page 143: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

Conceptual Data Model Proj_ADEBDQEE

PowerDesigner 28/9/2005 Page

144

Min, Max: 1, n Entity 2 --> Entity 1: Role: Mandatory: Yes Dominant: No Min, Max: 1, n

Page 144: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

145

Apêndice – B

Esse apêndice apresenta a possibilidade de recuperação e alteração das Teorias do Domínio e Subteorias, Figuras Figura 9.1e Figura 9.2.

Figura 9.1: Seleção da Teoria do Domínio.

Figura 9.2: Seleção da Subteoria.

Page 145: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

146

Apêndice – C

Demonstrativo da geração do documento .DTD gerado para o Caso 1: Sistema de

Gerenciamento da Qualidade da Energia Elétrica. (Parte)

<?xml version="1.0" encoding="UTF-8"?> <!ELEMENT Local_Monitoracao (Cod_Local,Dat_Inicio_Monitoracao,Nom_Local,Des_Local,Num_Frequencia_alimentacao_local,Dat_Fim_Monitoracao,Val_Tensao_Nominal_Local)> <!ELEMENT Local_Monit_Contato (Cod_Contato,Nom_Local_Contato,Car_Contato,Tel_Fax,Tel_Voz,Tel_Dados,Obs_Contato,Local_Monitoracao+)> <!ELEMENT Monitoracao_Consumidor (Cod_Consumidor,Nom_Consumidor,End_Consumidor,Ufe_Consumidor,Cep_Consumidor,Pais_Consumidor,Tel1_Consumidor,Tel2_Consumidor,Obs_Consumidor,Nom_Cont_Consumidor,Local_Monitoracao)> <!ELEMENT Cod_Local (#PCDATA)> <!ELEMENT Dat_Inicio_Monitoracao (#PCDATA)> <!ELEMENT Nom_Local (#PCDATA)> <!ELEMENT Des_Local (#PCDATA)> <!ELEMENT Num_Frequencia_alimentacao_local (#PCDATA)> <!ELEMENT Dat_Fim_Monitoracao (#PCDATA)> <!ELEMENT Val_Tensao_Nominal_Local (#PCDATA)> <!ELEMENT Cod_Contato (#PCDATA)> <!ELEMENT Nom_Local_Contato (#PCDATA)> <!ELEMENT Car_Contato (#PCDATA)> <!ELEMENT Tel_Fax (#PCDATA)> <!ELEMENT Tel_Voz (#PCDATA)> <!ELEMENT Tel_Dados (#PCDATA)> <!ELEMENT Obs_Contato (#PCDATA)> <!ELEMENT Cod_Consumidor (#PCDATA)> <!ELEMENT Nom_Consumidor (#PCDATA)> <!ELEMENT End_Consumidor (#PCDATA)> <!ELEMENT Ufe_Consumidor (#PCDATA)> <!ELEMENT Cep_Consumidor (#PCDATA)> <!ELEMENT Pais_Consumidor (#PCDATA)> <!ELEMENT Tel1_Consumidor (#PCDATA)> <!ELEMENT Tel2_Consumidor (#PCDATA)> <!ELEMENT Obs_Consumidor (#PCDATA)> <!ELEMENT Nom_Cont_Consumidor (#PCDATA)>

Page 146: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

147

Apêndice – D Conversão do Diagrama de Classes do Caso 2: Caracterização da Sensibilidade de

Processos Industriais frente a Afundamentos de Tensão para DTD.

A seguir são descritas as etapas para a conversão do diagrama de classes:

1- Definição da linguagem:

Figura 9.3: Interface para definição da Linguagem XML - DTD

2- Interface para geração do documento:

Figura 9.4: Geração do documento .DTD

Page 147: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

148

3- Documento gerado

<?xml version="1.0" encoding="UTF-8"?> <!ELEMENT Pesquisa (Cod_pesquisa,Des_pesquisa)> <!ELEMENT Local_Monit_Contato (Cod_Contato,Nom_Local_Contato,Car_Contato,Tel_Fax,Tel_Voz,Tel_Dados,Obs_Contato,Local_Monitoracao+)> <!ELEMENT Local_Monitoracao (Cod_Local,Dat_Inicio_Monitoracao,Nom_Local,Des_Local,Num_Frequencia_alimentacao_local,Dat_Fim_Monitoracao,Val_Tensao_Nominal_Local,Monitoracao_Consumidor+,Equipamento+,Pesquisa+)> <!ELEMENT Monitoracao_Consumidor (Cod_Consumidor,Nom_Consumidor,End_Consumidor,Ufe_Consumidor,Cep_Consumidor,Pais_Consumidor,Tel1_Consumidor,Tel2_Consumidor,Obs_Consumidor,Nom_Cont_Consumidor)> <!ELEMENT Canal (Cod_Canal,Nom_Grandeza,Ind_Grandeza,Rot_Grandeza,Canal_Equipamento*)> <!ELEMENT Canal_Equipamento (Cod_Canal_Equipamento,Name,Num_Canal,Raz_Transf_De,Raz_Transf_Para,Uni_Grandeza,Equipamento+)> <!ELEMENT Equipamento (Cod_Equipamento,Num_Serie,Nom_Fabricante,Nom_Modelo,Ver_Software,Str_Inic_Pc,Str-Inic_Equipamento,Obs_Equipamento,Parametro_Aguste*)> <!ELEMENT Tipos_Ajustes (Cod_Ajuste,Des_Ajuste,Uni_Ajuste,Idc_Ajuste,Parametro_Aguste*)> <!ELEMENT Parametro_Aguste (Cod_Param_ajustavel,Dat_Ajuste,Val_Ajuste)> <!ELEMENT Eventos_Vtcd (Cod_Vtcd,Des_Max_Amp,Media_Amp,Dur_Vtcd,Des_Padrao_Amp,Med_Amp,Per_Tensao,Per_Energia,Idc_Tipo_Vtcd)> <!ELEMENT Eventos_Estampa (Cod_Evento,Idc_Tipo_Evento,Dat_Inicio_Evento,Tratamento_Eventos*,Canal_Equipamento*)> <!ELEMENT Tratamento_Eventos (Cod_Tratamento_Eventos,Tam_Janela_Eventos,Tip_Janela_Eventos,Des_Janela_Eventos)> <!ELEMENT Cod_pesquisa (#PCDATA)> <!ELEMENT Des_pesquisa (#PCDATA)> <!ELEMENT Cod_Contato (#PCDATA)> <!ELEMENT Nom_Local_Contato (#PCDATA)> <!ELEMENT Car_Contato (#PCDATA)> <!ELEMENT Tel_Fax (#PCDATA)> <!ELEMENT Tel_Voz (#PCDATA)> <!ELEMENT Tel_Dados (#PCDATA)> <!ELEMENT Obs_Contato (#PCDATA)> <!ELEMENT Cod_Local (#PCDATA)> <!ELEMENT Dat_Inicio_Monitoracao (#PCDATA)> <!ELEMENT Nom_Local (#PCDATA)>

Page 148: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

149

<!ELEMENT Des_Local (#PCDATA)> <!ELEMENT Num_Frequencia_alimentacao_local (#PCDATA)> <!ELEMENT Dat_Fim_Monitoracao (#PCDATA)> <!ELEMENT Val_Tensao_Nominal_Local (#PCDATA)> <!ELEMENT Cod_Consumidor (#PCDATA)> <!ELEMENT Nom_Consumidor (#PCDATA)> <!ELEMENT End_Consumidor (#PCDATA)> <!ELEMENT Ufe_Consumidor (#PCDATA)> <!ELEMENT Cep_Consumidor (#PCDATA)> <!ELEMENT Pais_Consumidor (#PCDATA)> <!ELEMENT Tel1_Consumidor (#PCDATA)> <!ELEMENT Tel2_Consumidor (#PCDATA)> <!ELEMENT Obs_Consumidor (#PCDATA)> <!ELEMENT Nom_Cont_Consumidor (#PCDATA)> <!ELEMENT Cod_Canal (#PCDATA)> <!ELEMENT Nom_Grandeza (#PCDATA)> <!ELEMENT Ind_Grandeza (#PCDATA)> <!ELEMENT Rot_Grandeza (#PCDATA)> <!ELEMENT Cod_Canal_Equipamento (#PCDATA)> <!ELEMENT Name (#PCDATA)> <!ELEMENT Num_Canal (#PCDATA)> <!ELEMENT Raz_Transf_De (#PCDATA)> <!ELEMENT Raz_Transf_Para (#PCDATA)> <!ELEMENT Uni_Grandeza (#PCDATA)> <!ELEMENT Cod_Equipamento (#PCDATA)> <!ELEMENT Num_Serie (#PCDATA)> <!ELEMENT Nom_Fabricante (#PCDATA)> <!ELEMENT Nom_Modelo (#PCDATA)> <!ELEMENT Ver_Software (#PCDATA)> <!ELEMENT Str_Inic_Pc (#PCDATA)> <!ELEMENT Str-Inic_Equipamento (#PCDATA)> <!ELEMENT Obs_Equipamento (#PCDATA)> <!ELEMENT Cod_Ajuste (#PCDATA)> <!ELEMENT Des_Ajuste (#PCDATA)> <!ELEMENT Uni_Ajuste (#PCDATA)> <!ELEMENT Idc_Ajuste (#PCDATA)> <!ELEMENT Cod_Param_ajustavel (#PCDATA)> <!ELEMENT Dat_Ajuste (#PCDATA)> <!ELEMENT Val_Ajuste (#PCDATA)> <!ELEMENT Cod_Vtcd (#PCDATA)> <!ELEMENT Des_Max_Amp (#PCDATA)> <!ELEMENT Media_Amp (#PCDATA)> <!ELEMENT Dur_Vtcd (#PCDATA)> <!ELEMENT Des_Padrao_Amp (#PCDATA)> <!ELEMENT Med_Amp (#PCDATA)> <!ELEMENT Per_Tensao (#PCDATA)> <!ELEMENT Per_Energia (#PCDATA)> <!ELEMENT Idc_Tipo_Vtcd (#PCDATA)> <!ELEMENT Cod_Evento (#PCDATA)> <!ELEMENT Idc_Tipo_Evento (#PCDATA)> <!ELEMENT Dat_Inicio_Evento (#PCDATA)>

Page 149: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

150

<!ELEMENT Cod_Tratamento_Eventos (#PCDATA)> <!ELEMENT Tam_Janela_Eventos (#PCDATA)> <!ELEMENT Tip_Janela_Eventos (#PCDATA)> <!ELEMENT Des_Janela_Eventos (#PCDATA)>

Page 150: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

151

Apêndice – E

Mapeamento do documento .DTD gerado para um SGBD relacional (ferramenta

XMLSPY ). Para tal estamos considerando o Caso 2: Caracterização da Sensibilidade de

Processos Industriais frente a Afundamentos de Tensão.

A seguir são descritas as etapas para chegar ao objetivo final:

1- Criação projeto na ferramenta XMLSPY, e importação do arquivo .DTD gerado na fase anterior (Figura 9.5):

Figura 9.5: Demonstrativo da Criação do Projeto e Inclusão do Arquivo .DTD

Page 151: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

152

2- Conversão do DTD/Shema no formato W3C Shema (Figura 9.6), e ajuste dos tipos de dados (Figura 9.7):

Figura 9.6: Demonstrativo do resultado da conversão para DTD/Shema.

Figura 9.7: Demonstrativo do ajuste nos tipos dos dados.

Page 152: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

153

3- Criar o Banco de Dados (considerando o SGBD a ser utilizado – Figura 9.8) de acordo com o Shema gerado:

Figura 9.8: Interface para a escolha do SGBD utilizado.

4- Definição dos atributos que são chave primária (Figura 9.9):

Figura 9.9: Definição das Chaves Primárias.

5- Visualização das tabelas que serão geradas (Figura 9.10):

Figura 9.10: Visualização das Tabelas que serão Criadas.

Page 153: Proposta de um Framework Conceitual de Dados e Padrões de ... · II Viviane Cristina Dias Proposta de um Framework Conceitual de Dados e Padrões de Análise para a Definição de

154

6- Resultado das tabelas criadas no Microsoft Access.

Figura 9.11: Banco de Dados Criado com suas respectivas Tabelas.