• Nenhum resultado encontrado

Sistemas de Informação com base na Web: vantagens das páginas dinâmicas e breve referência às tecnologias para

III.2 Web Sites Tradicionais vs Aplicações Web

III.2.1 Páginas Dinâmicas e Páginas Estáticas

No contexto da Internet, as páginas estáticas são páginas codificadas apenas com código HTML ao passo que páginas dinâmicas são aquelas que, não estando predefinidas com código HTML, passam a existir no momento que o cliente Web as requisita (o servidor constrói a página no momento que o utilizador faz o pedido, deixando a mesma de existir logo que o cliente abandone a página). As páginas estáticas geralmente são criadas e armazenadas no formato tal como serão mostradas aos utilizadores. As páginas dinâmicas, também consideradas virtuais, são geradas em tempo real, por programas específicos, ou seja, não existem formatadas até ao momento em que são requisitadas [Borbinha et al., 1995]. Geralmente as páginas dinâmicas que integram componentes3 de base de dados,

3ActiveX Data Object - ADO - (ex: Connection object, Recordset object; Field object, etc), objectos através

independentemente da tecnologia utilizada para a sua elaboração, compreendem três aspectos [Morris, 2000]:

(i) existência de código HTML que, nalguns casos, pode existir misturado com o código responsável pela dinâmica das páginas e que serve fundamentalmente para definir a estrutura de formatação da página que é apresentada ao utilizador; (ii) o conteúdo da página é construído, no momento em que a página é requerida pelo utilizador, com base nos dados que se encontram armazenados em suportes de dados;

(iii) qualquer entrada de dados efectuada pelo utilizador pode resultar numa página, ou seja, de acordo com os parâmetros introduzidos ou seleccionados pelo utilizador poderá resultar uma página Web diferente, uma vez que o utilizador pode influenciar o estado da business logic da aplicação.

O conceito de páginas dinâmicas, apesar de começar a popularizar-se apenas nos últimos anos com a integração das bases de dados, não é novo e existe desde que surgiu a possibilidade do utilizador, a partir de um cliente browser, introduzir dados e obter resultados personalizados. Existem muitos projectos na Web que, desde a sua origem, apresentam características dinâmicas tais como os ‘search engine’ e os forum’s interactivos de discussão [Morris, 2000]. Mas, dada a dificuldade em programar esse tipo de aplicações e tendo em conta que só os peritos em programação o conseguiam fazer, apenas os grandes projectos utilizavam as referidas características dinâmicas. Hoje em dia, devido à variedade de tecnologias e ferramentas de programação que se encontram disponíveis no mercado, já se começa a assistir à passagem dos conteúdos da Web, de um ambiente estático para um ambiente dinâmico, dado os benefícios que daí advêm e, principalmente, devido à facilidade em programar esse tipo de aplicações utilizando os pacotes comerciais estruturados que se encontram disponíveis no mercado, como por exemplo, a tecnologia ASP - Active Server Pages - da Microsoft [Chalnick, 1996; Luckevich, 2000]. Assim, são várias as vantagens que os sites com geração dinâmica de conteúdos apresentam face aos sites tradicionais que, geralmente, são constituídos por páginas estáticas. Estas vantagens não se apresentam só do ponto de vista do administrador da aplicação, mas também a nível da ‘usabilidade’, uma vez que facultam ao utilizador

uma maior interactividade com o sistema [Davidson, 2001; Yerkey, 2001]. Vejamos alguns exemplos:

(i) facilidade em actualizar os conteúdos informativos que constituem as páginas, uma vez que os dados se encontram centralizados em Bases de Dados (BD). Quando se actualizam os dados da BD os mesmos serão actualizados automaticamente nas páginas Web, sem ser necessário reformular todo o documento, o que permite manter os conteúdos actualizados sem grande esforço;

(ii) possibilidade de descentralizar o processo de actualização de dados; ou seja, a inserção e alteração dos dados pode ser feita pela própria fonte, ao invés de ser encaminhada para um ponto central que se encarregaria de fazer a respectiva actualização. Geralmente, quando se descentraliza o processo de actualização de dados, a probabilidade de acontecerem erros é menor, assim como também é menor o tempo que decorre até à disponibilização da informação;

(iii) como neste tipo de aplicações o conteúdo fundamental das páginas se encontra armazenado em BD, as pessoas responsáveis pela actualização desses conteúdos não necessitam de saber absolutamente nada de HTML, mas apenas saber utilizar as interfaces para a entrada de dados, podendo, para tal, seguir um conjunto de procedimentos;

(iv) com este tipo de aplicações torna-se muito fácil incorporar as características de interactividade e personalização que os utilizadores esperam, coisa que num ambiente estático é, simplesmente, impossível.

Contudo, apesar do ambiente dinâmico apresentar uma série de vantagens, o ambiente estático ainda não foi posto totalmente de lado. Isto porque existe alguma motivação, por parte de alguns programadores, que conduz à preferência de ambientes estáticos face aos dinâmicos. Esta preferência apoia-se, basicamente, em dois factores:

(i) dificuldade na implementação de aplicações com geração de conteúdos dinâmicos, face à facilidade e rapidez de criação de páginas estáticas utilizando código HTML. Hoje em dia, é muito fácil encontrar pessoas que saibam

utilizar HTML; o mesmo já não acontece quando se muda para o ambiente dinâmico;

(ii) as páginas dinâmicas, devido ao seu meio mais complexo, também têm a tendência de bloquear mais depressa do que as páginas estáticas. Muitas vezes, quando se consultam páginas dinâmicas na Web, surgem páginas de erro, ao invés da informação esperada. Geralmente esse tipo de erros acontece no servidor onde as páginas se encontram armazenadas e deve-se à natureza das mesmas (dinâmicas). Actualmente, uma taxa de erro ligeiramente mais elevada é o preço que se paga pelas vantagens de um ambiente dinâmico. Mas isto não deve ser motivo para inibições, uma vez que os próprios fornecedores dos programas estão a trabalhar no sentido de melhorar a tecnologia existente. Daí o surgimento de novas versões, como é o caso dos pacotes comerciais da ASP, lançados pela Microsoft [Sussman, 2000].

Mesmo que, eventualmente, se encontrem alguns obstáculos em relação à utilização de ambientes dinâmicos, isso não deve ser motivo para abdicar destas tecnologias, uma vez que se assiste a uma permanente melhoria das tecnologias que permitem uma fácil utilização das ferramentas para o desenvolvimento de aplicações neste tipo de ambientes. Portanto, a escolha deve debruçar-se fundamentalmente sobre as características da aplicação que se pretende desenvolver. Ou seja, é crucial analisar e parametrizar os factores relevantes para o sucesso da aplicação no presente e perspectivar o seu futuro. Por exemplo, deve pensar-se na eventual necessidade de actualizações dos conteúdos informativos, possibilidade de crescimento do domínio da aplicação, natureza da informação e níveis de acesso, entre outros aspectos. De acordo com o resultado da análise é conveniente, então, optar por um ambiente dinâmico ou, caso este não se justifique, por um ambiente estático. Para além disto, a escolha também não deve ser alheia ao problema da Web invisível, uma vez que a informação gerada dinamicamente é invisível aos motores de pesquisa, um dos instrumento de busca mais utilizados para procurar informação na

Web. Obviamente que, se a informação dos Web sites com geração dinâmica de conteúdos

não aparece nos motores de pesquisa, pode tornar-se numa grande desvantagem, nomeadamente, quando os potenciais utilizadores são desconhecidos e se encontram espalhados por todo o mundo. Geralmente este problema não se coloca quando o público

alvo da informação disponível pelo Web site é restrito e, por sua vez, conhecido4, como acontece no caso das Intranets.

III.3 Requisitos para a Construção de Aplicações Web com geração