Desenvolvimento e Design de Sites WEB

Alguns problemas em relação a Web Sites são comuns ao navegar na Internet. Dentre eles, podemos destacar: sites mal definidos e projetados; falta de atualização e sites eternamente “em construção”; sites defasados em relação à tecnologia de software. Do ponto de vista das empresas que contratam equipes para construir seus sites, alguns problemas também são comuns, tais planejamento errado da proposta e estouro dos prazos e custos, equipes mal organizadas e sem a competência adequada, falta de documentação referente ao material do site e dificuldades de implementação e manutenção do mesmo.

Ao se consultar um web site, certas questões podem ser levantadas pelo usuário. Estas questões podem ser classificadas em algumas categorias mais amplas: Questões de Usabilidade: Onde posso encontrar a informação ou o serviço? como posso solicitar este serviço? Quais informações devo fornecer? Qual foi o resultado? Era o que eu queria?; Questões de Funcionamento: O site tem a informação ou serviço que eu preciso? Eu mandei os dados, mas o site processou errado; Questões de Desempenho: A página demora a carregar; O servidor não responde em tempo; A página demora a ser exibida; Questões de Portabilidade: O site não é exibido corretamente neste browser; A linguagem script não funciona neste browser ou servidor.

Todos esses problemas levantados ocorrem devidos a uma série de fatores. Tipicamente um Site Web é desenvolvido sem planejamento ou projeto, indo-se diretamente para a implementação. Assim, não são feitas a definição de objetivos a análise dos requisitos, o design, os testes e a manutenção. Tudo isso se deve ao fato da maioria das pessoas considerarem que basta saber HTML e um pouco de programação para desenvolver um Site Web; no entanto, as competências profissionais necessárias são muitas e não são encontradas num único profissional, mas em um time de profissionais qualificados.

Dentre as características que um bom web site deve apresentar, podemos citar: do ponto de vista do usuário, o site deve ser legível, atrativo, organizado, com informações corretas e atualizado; do ponto de vista de design, ele deve ser adequado aos usuários, à tecnologia e ao propósito; do ponto de vista de implementação e manutenção, deve ser eficiente, robusto, confiável, bem documentado, manutenível, testável, portável e reutilizável.

Bons web sites devem ser desenvolvidos baseados em princípios de engenharia: por se tratar do desenvolvimento de um produto complexo, deve ser realizado por uma equipe de pessoas especializadas, com a aplicação de métodos, técnicas, ferramentas modelos e princípios adequados e com planejamento e gerenciamento de custos, prazos e pessoal. Tudo isto deve visar a qualidade final do produto e do processo. Para tanto, deve-se considerar três fases principais na construção do web site: definição, desenvolvimento e operação do mesmo.

Na fase de definição, é realizada a análise de requisitos, restrições e recursos em relação ao web site. São propostas soluções e feito o estudo de viabilidade de cada uma delas. É feito também o planejamento e gerenciamento do desenvolvimento, são realizadas estimativas e análise de riscos utilizando padrões, e, por fim são criados protótipos de apresentação.

Na fase de desenvolvimento, são desenvolvidos os designs de software de sua arquitetura, conceitual, da interface de usuário e de algoritmos e estruturas de dados. Também é feita a implementação destes conceitos, a codificação, tradução e programação, e são realizados os testes de programas e testes de usabilidade.

Na fase de operação, começa-se pela implantação do web site na rede, realizando sua instalação e configuração. Verifica-se também seu funcionamento, operação e suporte. Com o site já estando na rede, é preciso cuidar de sua manutenção, realizando eventuais correções e cuidando da evolução do site, em todos os aspectos, manter a atualização do mesmo, e extrair dados de sua utilização, dados estes que irão alimentar todas as etapas dentro desta fase.

Detalhando todo este processo, a primeira questão a ser levantada ao ser planejar um web site é: qual é seu propósito? Um site pode ser informativo, cuja principal função é prestar informações; pode ser funcional, cujo propósito é oferecer serviços; ou pode ser de entretenimento, com a intenção de divertir pessoas. A grande maioria dos sites têm múltiplos propósitos, ou seja, possuem uma combinações de mais de um destes três aspectos.

Outras questões relevantes que devem ser levantadas: quanto à ligação em rede, o site estará disponível na Internet, em uma Intranet ou uma Extranet? Em relação ao público que acessará o site, será público corporativo, será um público restrito e com acesso controlado, um público seletivo (por assunto) ou o site será aberto ao o público geral?

Em relação a este último aspecto, a identificação do papel dos usuários é uma questão bastante relevante. Quais papéis desempenham os usuários do site? Por exemplos, eles são compradores, funcionários, educadores, alunos, etc. ? Diferentes perfis de usuários possuem diferentes necessidades e realizam diferentes tarefas. Podem-se levantar alguma questões para identificar os usuários: quem usa o site? Quem fornece informações ao site? Quem solicita de informações do site?

O levantamento do perfil dos usuários também deve levar em consideração as capacidades e limitações físicas e cognitivas destes, para verificar a necessidade de fornecer opções de acessibilidade. Também deve-se considerar o conhecimento destes sobre o assunto do site, se há necessidade de vocabulário específico, de conhecimentos sobre a Web e computadores e de fornecer informações de ajuda. Outra questão importante é a cultura e a linguagem do usuário, se é necessária uma interface em outro idioma, e se estão sendo utilizados termos ou imagens de uma cultura específica.

Em um site que fornece serviços, é também necessário realizar uma análise de tarefas. Tal análise descreve o conjunto de atividades mentais e físicas necessárias para atingir a meta Tais tarefas originam-se das necessidades dos usuários, e devem refletir o ponto-de-vista deste, e não do site.

Tendo sido feito estes levantamentos, é necessário então levantar os requisitos do próprio site, dentre eles: Requisitos operacionais: qual a tecnologia necessária para a construção de site? Qual é possível?; Requisitos de conteúdo: quais informações o site deve conter?; Requisitos funcionais: quais serviços o site deve oferecer?; Requisitos de interação: como o usuário vai utilizar o site? Requisitos de desenvolvimento: pessoal, prazos, custos e equipamentos, qual a disponibilidade de cada um desses?

Os requisitos operacionais têm por objetivo definir o ambiente operacional do site. São definidos com base no escopo do site (intranet, internet ou extranet) e em seu propósito (funcional, informativo, entretenimento). Tais dados são fáceis de definir numa intranet, mas são imprevisíveis na internet. Além disso, freqüentemente ao se projetar um site, têm que se lidar com restrições de custos. Além disso, é necessário definir os requisitos de hardware, tanto do lado do servidor, que leva em conta a capacidade, o sistema operacional, o tipo de servidor Web, além da necessidade de se trabalhar com banco de dados, quanto do lado do cliente.

Os requisitos de conteúdo envolvem quais informações incluir no site, o que depende do propósito do site. Em um site corporativo, deve-se incluir informações gerais sobre objetivos e histórico da empresa, sobre pessoal, informações sobre os serviços e informações de ajuda. Pode-se transportar os conteúdos impressos, adaptando-os ao novo meio.

Os requisitos de funcionalidade determinam obviamente qual a funcionalidade do site e quais os serviços serão oferecidos nele. Tais serviços, no entanto, não devem determinar como o site será implementados, e podem ser descritos através de modelos. Como exemplos, têm-se a busca de produtos, o cálculos de juros, exibição de vídeos, etc.

Na fase de desenvolvimento, temos a definição design do site em diversos aspectos: o design conceitual, que é a descrição geral do domínio e do site; o design do conteúdo, que explicita quais informações que devem ser fornecidas ao usuário; o design da interface de usuário, que define a organização, a interação e a apresentação do site; e o design funcional, que define a arquitetura dos programas e o projeto de banco de dados.

Detalhando cada um destes designs, o design conceitual descreve o vocabulário do domínio, seus conceitos e relacionamento entre páginas. Também direciona a funcionalidade e a arquitetura da informação. Normalmente este design pode ser descrito por Diagramas de Classes ou Entidade-Relacionamento.

O design de interface determina como as páginas estão organizadas, determina como o usuário pode navegar e como os serviços podem ser utilizados, bem como a apresentação do site, sob aspectos estéticos e visuais.

O design funcional define arquitetura dos componentes funcionais, tanto do ponto de vista lógico quanto físico. Também são definidos quais programas implementam os serviços de processamento dos dados e acesso a banco de dados. Nesta etapa também são geradas as primeiras páginas HTML e projeto de bancos de dados.

Finalizando, chegamos à etapa de implementação, onde é feita a codificação das páginas em HTML, o desenho das imagens, a codificação dos programas em uma linguagem compatível com o servidor ou sistema operacional e a criação dos arquivos e tabelas do banco de dados. Neste ponto começa a etapa final de testes e correções, que inclui a correção do conteúdo, verificação dos links, testes de correção dos programas, testes de usabilidade, ou seja a facilidade de navegar e usar os serviços no site, testes de portabilidade e de desempenho. Tendo passado por todas estas etapas, o site estará pronto para ser colocado na rede.