• Nenhum resultado encontrado

2.3 MODELAGEM DE SISTEMA AMBIENTAL

2.3.3 Modelagem de Sistemas

Modelagem de sistemas (POLLONI, 2000; FELGUEIRAS, 2001) parte da prototipação uma ideia de forma concreta, ferramental, com o objetivo de permitir que questionamentos e análises sejam feitos graças à visualização do produto. Toda prototipação de um projeto, ou modelagem de sistema, deve conter as características do problema e as necessidades para sua solução, evoluindo e obtendo forma para gerar novas ideias e realimentando, com isso, as ferramentas de análise. Este tipo de modelagem deve ser aplicado a projetos de pequeno e médio portes e que não envolvam muitos usuários, tendo como principais requisitos para a prototipação, entre outros, um ambiente de fácil acesso em teleprocessamento, um editor de tela de fácil especificação de atributos de campos, um gerador de relatórios, um gerador de processos, uma infraestrutura de manuseio de dados e uma linguagem de quarta geração.

A modelagem (SILVA, 2005; FELGUEIRAS, 2001) deve considerar que os processos da natureza resultam de interações espaços- temporais complexas entre os diversos elementos que os compõem. No modelo matemático de um processo, as propriedades ambientais são tratadas como variáveis do modelo, enquanto que suas inter-relações são representadas por operações aritméticas ou lógicas. Essas estruturas representam digitalmente o comportamento do atributo no espaço-tempo e são usadas diretamente pelos modelos computacionais.

Ao encontro da simplicidade da programação de softwares, destaca-se a Programação Orientada ao Objeto (POO), a qual se baseia na ideia de que toda estrutura de dados utilizada em um programa deve estar intimamente associada às operações que realizam seu acesso, e vice-versa, criando mecanismos para sistematizar o desenvolvimento dos pequenos módulos de software independentes e componíveis. Neste sentido, a Programação Modular, frequentemente chamada de design bottom-up, surgiu com o intuito de resolver as deficiências da

Programação Estruturada. Ao invés de iniciar com o problema principal e decompô-lo ao nível de rotinas, a Programação Modular encoraja a criação de pequenos módulos de software independentes e componíveis. A solução de um determinado problema pode ser resolvida juntando-se os pequenos módulos de software, de forma a obter pedaços cada vez maiores até que o problema seja resolvido.

Polloni (2000) acrescenta que a Modularização foi um avanço na abstração do problema, já que a generalização permite que a solução dada a um problema seja mais facilmente empregada em outros, possibilitando, com isso, um maior grau de reutilização do código escrito. Este paradigma foi o primeiro passo para alcançar a Programação Orientada ao Objeto (POO), do qual se salientam os seguintes conceitos:

 Objetos: reúne diversas operações e um conjunto de dados utilizado por essas operações e é composto por uma coleção de dados privados e um conjunto de métodos que atuam sobre esses dados;

 Atributo: é uma característica comum aos objetos descritos pela classe; cada atributo está associado a uma ou mais variáveis;  Métodos: é formado por uma interface e sua complementação, a

qual descreve as características externas do método, como seu nome, os tipos de parâmetros e tipos de valores retornados;  Classe: todos os objetos criados a partir de uma mesma classe

vão compartilhar as características por ela descritas, tais como a estruturação de dados privados e a implementação dos métodos. Em função desse compartilhamento, cada objeto é uma instância de uma classe;

 Protocolo: é um conjunto de métodos de uma classe. Todas as instâncias de uma mesma classe devem ser capazes de executar as mesmas tarefas de acordo com a mesma implementação. Esse conjunto de serviços é chamando de protocolo;

 Variáveis de instância: são os elementos que compõem a coleção de dados privados de cada objeto. Cada objeto apresenta valores armazenados em suas variáveis de instância - dois objetos não são iguais se armazenarem o mesmo conjunto

de valores, mas são na verdade, objetos diferentes com o mesmo estado interno;

 Herança: constitui-se em todas as abstrações definidas para a classe genérica que é herdada por todas as classes dos subconjuntos;

De uma maneira geral, a modelagem de sistemas compreende três fases (POLLONI, 2000; FELGUEIRAS, 2001; SILVA, 2005): projeto conceitual, projeto lógico e projeto físico. O modelo conceitual é uma descrição de alto nível da estrutura do banco de dados, independente do software. Seu propósito é descrever o conteúdo da estrutura do banco de dados, a partir da visão de seu criador, e não as estruturas de armazenamento que serão requeridas para manejar a informação.

O modelo lógico visa à descrição da estrutura do banco de dados que pode ser acessada por um Software Gerenciador de Banco de Dados (SGBD). Os modelos lógicos computam um atributo de saída, resultado do modelo, pela aplicação de regras lógicas simples sobre os atributos de entrada; levam em conta algumas limitações e programam recursos como adequação de padrão e nomenclatura e definem as chaves primárias e estrangeiras. Este modelo deve ser criado considerando os exemplos de modelagem de dados criados no modelo conceitual.

No modelo físico, executa-se a modelagem física do modelo de banco de dados, ponderando as limitações impostas pelo SGBD escolhido e devendo ser criado com base nos exemplos de modelagem de dados produzidos no modelo lógico, ou seja, pelos requisitos não funcionais dos programas que acessam os dados.

Os modelos computacionais simples (FELGUEIRAS, 2001; SPORL, 2007) são executados diretamente nos SIGs, através de operações básicas, lógicas e aritméticas, contidas nos seus módulos de análise ou de álgebra de dados espaciais. Já os modelos complexos são muitas vezes executados fora do ambiente SIG, por sistemas de modelagem específicos. Nestes casos, os SIGs são usados como base de armazenamento de dados espaciais e, também, como ferramentas de visualização para os dados de entrada e de saída dos modelos.

Para maior aproximação da realidade, a modelagem deve considerar que os processos da natureza resultam de interações espaço- temporais complexas entre os diversos elementos que os compõem, ou seja, as propriedades ambientais. No modelo matemático de um processo, as propriedades ambientais são tratadas como variáveis do

modelo enquanto que suas inter-relações são representadas por operações aritméticas ou lógicas.

Com base nos trabalhos avaliados durante a pesquisa bibliográfica, constatou-se que, independente do tipo, a confecção de uma modelagem de sistema inclui, frequentemente, as seguintes fases:

a. 1ª fase - Reconhecer e delimitar o problema de interesse, criando o diagrama conceitual para visualizar as interações entre os componentes;

b. 2ª fase - Escolher a estrutura quantitativa geral, selecionando as formas funcionais das equações e a unidade básica de tempo, codificando-as no computador para a realização das simulações. Estas estruturas podem ser equações diferenciais, matriz algébrica, ou modelos de compartimentos;

c. 3ª fase - Observar a validade do modelo a fim de confirmar se este é adequado para satisfazer os objetivos propostos pelo projeto. Nesta fase, são executadas tarefas, como:

 Análise de sensibilidade: mede-se a sensibilidade dos parâmetros, isto é, em que medida os parâmetros modificam os resultados do modelo;

 Verificação - calibração: descobre-se que valores minimizam diferença entre os dados observados e os calculados pelo modelo;

 Validação: é o teste que o modelador fará para saber se os parâmetros encontrados na calibração são válidos para outros períodos do mesmo sistema.

A resolução de um problema exige a sua modelagem, para possibilitar a previsão do comportamento das variáveis envolvidas, a representação de fenômenos e o aprendizado de como controlar esses fenômenos. Na construção de um modelo deve-se maximizar sua utilidade e para isso, três aspectos básicos devem ser considerados: a complexidade do modelo, a credibilidade dos resultados e o grau de consideração das incertezas.

A incerteza desempenha papel fundamental na utilidade de um modelo, por exercer influência direta sobre os demais aspectos. Em

outras palavras, um maior grau de incerteza na modelagem reduz a complexidade quanto ao raciocínio e ao processamento de informações, aumenta a credibilidade e, consequentemente, aumenta a utilidade do sistema.