• Nenhum resultado encontrado

A Engenharia de Software é área do conhecimento que estuda, analisa e indica as melhores abordagens para o desenvolvimento de um software, seja ele para funcionar em computadores de mesa, em navegadores de internet ou aplicativos para celulares. Todo software é produzido por um processo. Há diversos processos de softwares diferentes, mas segundo Sommerville (2011, p. 18), todos devem incluir quatro atividades fundamentais: 1) Especificação de software. A funcionalidade do software e as restrições a seu

funcionamento devém ser definidas.

2) Projeto e implementação de software. O software deve ser produzido para atender às especificações.

3) Validação de software. O software deve ser validado para garantir que atenda às demandas do cliente.

4) Evolução de software. O software deve evoluir para atender às necessidades de mudança dos clientes.

Um sistema que esteja sempre disponível e acessível independentemente do Sistema Operacional em utilização pelo usuário (Windows, Linux MAC OS, Android, IOS, etc.),

Capítulo 3. REVISÃO DA LITERATURA 40 precisa ser desenvolvido para a web. As principais tecnologias para desenvolvimento web são: HTML, que está em sua versão 5, CSS que está na versão 3, JavaScript, PHP e um Banco de Dados (MySQL, PostgreSQL, etc.).

3.4.1 HTML

HTML vem da expressão em InglêsHyperText Markup Language (Linguagem de Marcação de Hipertexto), sendo amplamente utilizada para criação de sistemas que funcionam na web. Tim Berners-Lee criou o HTML original no início dos anos 90 e a partir de então, o mesmo teve sucessivas melhorias, através das novas versões que foram liberadas com o passar do tempo (TONSIG, 2012) .

A versão 5, HTML5 aprimorou a versão 4, HTML4. O HTML5 tem suporte para a linguagem de programação JavaScript, CSS, bem como possuem Application Programming Interface (API), Interface de Programação de Aplicativos, capazes de fazer a permissão da própria manipulação dos elementos, de forma que eles continuem com o melhor desempenho possível (FERREIRA; EIS, 2017).

Trata-se de uma linguagem de marcação textual que usa elementos (tags) específicas e padronizadas para definir a estrutura de um documento, indicando, por exemplo, como deve ser configurado um parágrafo de texto, onde deve ter uma quebra de linha entre outras.

Os navegadores de Internet, também conhecidos como Browsers, a exemplo de Mozilla Firefox, Google Chrome, Microsoft Edge e Safari, que são os mais utilizados, interpretam o documento marcado com a linguagem HTML e mostra para o usuário o resultado que vem em forma de conteúdo multimídia (texto, imagens, vídeo, áudio, etc.).

3.4.2 CSS e JavaScript

O Cascading Style Sheets (CSS) é uma linguagem usada para a apresentação e formatação de documentos escritos em HTML. O CSS permite a separação entre os conteúdos dos documentos, definidos, por exemplo, usando o HTML, e a apresentação deste. Esta tecnologia serve para cuidar da apresentação e da aparência da página criada em HTML (SERRA, 2011) .

Com CSS, pode-se adicionar cores, fontes, espaçamentos, alinhamentos e muitos outros recursos que contribuem para formar o design do conteúdo da aplicação web que será entregue para o usuário. Ao se construir aplicativos web com o HTML5, tem-se a marcação dos elementos localizados no documento para que sejam interpretados pelo navegador. O visual do aplicativo é criado utilizando-se as Folhas de Estilo em Cascata ou simplesmente CSS. A parte dinâmica que permite a interação entre o usuário e os

Capítulo 3. REVISÃO DA LITERATURA 41 elementos (botões, caixas de textos e outros) no aplicativo é criada utilizando a linguagem de script conhecida como JavaScript.

Segundo Serra (2011), JavaScript é uma linguagem multiplataforma e orientada a objetos. A sua utilização deve ocorrer em conjunto com outras tecnologias, como o caso do HTML para aplicações web. Ela permite o trabalho com um conjunto de objetos para manipulação de dados de mesmo tipo, datas e elementos como operadores lógicos e aritméticos, estruturas de controle de repetição, condicionais, entre outros. O JavaScript é baseado na linguagem ECMAScript.

Observa-se pela Figura 3, que o HTML sozinho seria apenas estrutura da aplicação web, uma vez que ele consegue formatar os elementos de forma que sejam interpretados pelo navegador de Internet. Ele sozinho não é suficiente para criar aplicações web com design e interatividade que permitam a usabilidade satisfatória do sistema. É preciso fazer uso de outras tecnologias como CSS e JavaScript. O CCS é permite o acabamento visual da aplicação web e o JavaScript cuida das atividades relacionadas a ações e eventos que envolvam interação e resposta ao usuário.

Figura 3 – Analogia Funcional do HTML, CSS e JavaScript

Fonte: Serra (2011)

As três tecnologias supramencionadas e ilustradas na Figura 3 se complementam e permitem a criação de aplicações que envolvem riqueza de detalhes, adapntando-se às experiências e necessidades do usuário, bem como funcionando em multiplataformas. Com essas tecnologias é possível criar aplicações responsivas, isto é, que se adaptam a diversos tamanhos de telas para que o aplicativo funcione bem em computadores, tablets ou smartphones.

3.4.3 Linguagem de programação PHP

A linguagem de ProgramaçãoHypertext Preprocessor(PHP) é utilizada para realizar interação com o Banco de Dados.Niederauer (2008), afirma que “PHP é uma das linguagens de programação mais utilizadas na web para a criação de páginas dinâmicas”. Suas principais características são:

Capítulo 3. REVISÃO DA LITERATURA 42 • Gratuita e de código aberto:o arquivo de instalação pode ser obtido em http:/

/www.php.net.

• Embutida no HTML: o HTML e o PHP podem ocupar o mesmo espaço no documento. É possível começar escrever em PHP e no meio colocar um trecho em HTML e depois voltar para o PHP, e assim por diante.

• Baseada no servidor: quando você acessa uma página PHP através do seu navegador, todo o código PHP é executado no servidor, e somente o resultado final é exibido para o usuário. Portanto, o navegador exibe a página já processada, sem consumir recursos de seu computador.

• Bancos de dados: diversos bancos de dados são suportados pelo PHP: MySQL, PostgreSQL, SQLite, InterBase, Oracle, SQL Server, entre outros que oferecem suporte à linguagem SQL (Structured Query Language).

• Portabilidade: pode-se executar o PHP no Linux, Unix ou Windows NT, entre outros.

PHP é tecnologia imprescindível ao passo que facilita a integração e interação da aplicação web com o Banco de Dados, onde ficam armazenados os dados processados pelo usuário durante a utilização da aplicação web. Ela apresenta facilidade de uso e aprendizado. Como existem muitos materiais na comunidade de desenvolvedores, com esforço reduzido o programador pode montar páginas em HTML integrado com PHP capaz de processar dados fornecidos pelo usuário e amazená-los no banco de dados, bem como realizar consultas de acordo com a necessidade.

3.4.4 Banco de dados MySQL

Para a persistência dos dados tratados no Sistema de Informação proposto, será adotado um Banco de Dados (BD) que implemente o modelo relacional, descrito por Elmasri e Navathe (2011, p. 39) como “um modelo que representa o banco de dados na forma de uma coleção de relações, informalmente, cada relação é análoga a uma tabela de valores”.

Reafirmando o conceito e incentivando a utilização de um BD, Medeiros (2006, p. 5) afirma que: “Banco de Dados é um sistema de armazenamento que possui um arquivo físico de dados, armazenado em dispositivos periféricos, onde estão armazenados os dados relacionados entre si, de diversos sistemas, para consulta e atualização pelo usuário”.

A persistência de dados em um determinado BD é possível a partir da projeção do mesmo, realizada sob os requisitos do sistema por meio da criação de um modelo ou descrição dos tipos de dados que serão armazenados. Este modelo é conhecido como Modelo Conceitual do BD.

Capítulo 3. REVISÃO DA LITERATURA 43 O MySQL é um Sistema Gerenciador de Bancos de Dados (SGBD) relacional que utiliza a linguagem padrão SQL (Structured Query Language), e é largamente utilizado em aplicações para a Internet. É o mais popular entre os bancos de dados com código-fonte aberto. Há mais de cinco milhões de instalações do MySQL no mundo todo, inclusive em sites com alto volume de dados e de tráfego, como Associated Press, Google, NASA, Sabre Holdings e Suzuki (NIEDERAUER, 2008).

Sua popularidade, como também o fato de ter a licença de utilização livre de pagamento em alguns casos foram determinantes para a sua seleção. Além das características já citados, o MySQL ainda conta com velocidade, escalabilidade e confiabilidade. Isso explica a sua popularidade e o aumento de seu uso em aplicações para ambiente web.

Com embasamento em Heuser (2004), infere-se que a primeira atividade para a projeção de um Banco de Dados é a construção de um modelo conceitual apresentado como um Diagrama Entidade-Relacionamento (DER). Ele apresenta as necessidades de uma instituição no que diz respeito ao armazenamento dos dados independentemente da implementação e permite uma melhor visualização de como eles se relacionarão entre si, quando persistentes no BD.

Documentos relacionados