Você está na página 1de 49

TRABALHO DE FIM DE

DEDICATÓRIA

Dedicamos esse trabalho à Deus, causa primordial de todas as coisas, influenciador e


motivador na trilha certa para a conclusão satisfatória deste projecto, maior incentivador das realizações
dos nossos sonhos.
TRABALHO DE FIM DE

AGRADECIMENTO

. Agradecemos primeiramente aos nossos pais pelo apoio financeiro e mental, para a
concretização do Projecto sem esquecer aos nossos amigos e colegas pelo incentivo dado, em especial
aos do curso de Informática de Gestão pelo conhecimento transmitido e os esforços incansáveis. E sem
esquecer ao nosso orientador Fernandes Manuel pela sabedoria transmitida e com a qual elaborou-se o
Projecto.
Ao conselho de júri que minuciosamente avaliará a nossa defesa e a toda a plateia que irá
testemunhar a mesma. À todos o nosso muito obrigado!
TRABALHO DE FIM DE

EPÍGRAFE

“ Escreva algo que valha a pena ler ou faça algo que valha a pena escrever ”.

«Benjamin Franklin»
TRABALHO DE FIM DE

LISTA DE ILUSTRAÇÕES
TRABALHO DE FIM DE

LISTA DE ABREVIAÇÕES E SIGLAS


TRABALHO DE FIM DE

RESUMO

Este trabalho apresenta o resultado de um estudo científico feito sobre a Implementação


de um Web Site no Complexo Escolar Nossa Senhora da Anunciação como um factor de sucesso na
Sociedade, mostraremos como melhorar a comunicação entre a instituição e os encarregados de
educação, facilitando o acesso dos encarregados as informações dos seus educandos. Vamos criar um
site que inclui o encarregado no ensino e aprendizagem.
Palavras-chaves: Inclusão, Encarregado, Ensino, Aprendizagem, Web.
TRABALHO DE FIM DE

ABSTRACT
This work presents the result of a scientific study carried out on the Implementation
of a Web Site at the Nossa Senhora da Anuciação School Complex as a success factor in society.
responsible for the information of their students. Let's create a website that includes the person in
charge of teaching and learning.
Keywords: Inclusion, In charge, Teaching, Learning, Web.
TRABALHO DE FIM DE

SUMÁRIO
TRABALHO DE FIM DE

INTRODUÇÃO

O desenvolvimento crescente de tecnologias traz a necessidade de realizar tarefas de maneiras


cada vez mais simples e informatizada, ou seja, de modo que seja exigido o menor esforço possível por
parte das pessoas.

O aplicativo web está relacionado com o armazenamento na nuvem. Toda informação é


guardada de forma permanente em grandes servidores da internet que enviam aos nossos dispositivos
ou computadores os dados requeridos no momento, deixando uma cópia temporária dentro dele. Em
qualquer momento, lugar e usando qualquer dispositivo podemos acessar este serviço, precisamos
apenas de uma conexão com a internet e nossas informações de acesso, que geralmente são nome de
usuário e senha. Estes grandes servidores da internet que prestam o serviço de armazenamento estão
localizados ao redor do mundo, fazendo com que o serviço prestado não seja tão caro e na maioria dos
casos gratuitos e extremamente seguros.

A evolução das tecnologias e da informática tem possibilitado diversos segmentos, além do


próprio computador, como: controles eletrônicos de acesso, automação comercial, sistemas de gestão
empresarial e de negócios, redes de computadores, comércio eletrônico, controle ambiental, sistemas de
comunicação, gerenciamento de documentos, e até mesmo brinquedos. O sector de Tecnologia da
Informação (TI) se estabeleceu completa e definitivamente em todos os segmentos, não importando
tamanho ou finalidade das empresas. As grandes empresas, devido ao grande volume de dados, não
podem ignorar os movimentos da tecnologia.
TRABALHO DE FIM DE

PROBLEMÁTICA

Um Web App é um site na internet que se comporta como um aplicativo. É acessado como


qualquer outro site pelo navegador e tem comportamento responsivo (layout adaptado para
smartphones).
Como a criação de um aplicativo web ajudará na inclusão do encarregado no ensino e
aprendizagem?

HIPÓTESE

Os encarregados de educação estão cada vez mais afastados do ensino e aprendizagem


dos seus educandos.
H.1: Implementação de um aplicativo web para o complexo escolar privado Nossa Senhora da
Anunciação.
H.2: Fazer relatórios semanais com o desenvolvimento do comportamento dos educandos para
os seus encarregados.
TRABALHO DE FIM DE

JUSTIFICATIVA

A oportunidade de oferecer uma solução tecnológica, a fim de facilitar na comunicação


entre a instituição e os encarregados, podendo também ter bons profissionais neste departamento que
assumam a grande responsabilidade de levar adiante e prestar esclarecimentos sobre demais
informações e garantir que o departamento (departamento de avaliação da inclusão do encarregado no
ensino e aprendizagem). Evolua conforme os objectivos da instituição.
TRABALHO DE FIM DE

DELIMITAÇÃO

Na elaboração desse trabalho de prova de aptidão profissional, nos delimitamos a


fazer a pesquisa na província de Luanda, na Cidade do Sequele, depois do bloco 13, propriamente
no Complexo Escolar Privado Nossa Senhora da Anunciação.
TRABALHO DE FIM DE

OBJECTIVOS

Segundo SANTOS (1999, p.60) tudo aquilo que o pesquisador pretende conseguir
como resultado final de uma investigação é denominado objectivo.

 Geral
 Criação de um aplicativo web para facilitar a comunicação entre o encarregado de
educação e a instituição;
Específicos
 Fazer a coleta de informações sobre a instituição em causa;
 Definir o aplicativo web.
 Iniciar a criação, aplicando conhecimentos sobre as linguagens
 Ferramentas de programação web.
 Realizar testes para verificação do seu funcionamento e possível correção de erros
emergidos.
 Apresentar o aplicativo web.
 Reduzir o esforço mental e físico dos funcionários da secretaria.
 Aumentar a qualidade de atendimento.
 Aumentar a segurança no acesso aos dados.
TRABALHO DE FIM DE

CAPÍTULO I - FUNDAMENTAÇÃO TEÓRICA

1.1-Aplicativo

O aplicativo(app) é um software para dispositivos eletrônicos que auxiliam os usuários a


realizar determinadas tarefas. Eles podem ser facilmente identificados, pois são aqueles quadradinhos
espalhados pela tela do celular. Existem duas categorias de aplicativos no mercado: Os nativos e os
híbridos. O aplicativo nativo é o mais conhecido por todos os usuários. É instalado e armazenado
diretamente no smartphone e geralmente é encontrado em lojas para download, como Play Store e App
Store. Esse aplicativo tem acesso a todos os recursos do smartphone.
Esses aplicativos tem o maior aproveitamento do usuário. Na maioria dos casos esses
aplicativos também funcionam offline e como são oferecidos pelas lojas onde são baixados, têm a
garantia da segurança.
Já os híbridos, são os aplicativos que tem um código muito parecido para diversas plataformas
diferentes. Isso significa que o programador escreve apenas um código para funcionar em aparelhos
Apple e aparelhos Android. É necessário alterar apenas algumas partes do código que contém
particularidades para pode acessar recursos, como localização.
Programadores afirmam que a principal diferença entre os híbridos e nativos é que os nativos
oferecem uma experiência melhor ao usuário por causa do fluxo. Nos nativos existe uma maior fluidez
devido aos recursos disponíveis para uso e por causa do uso da linguagem específica de cada sistema
operacional.
1.1.2-APLICATIVO WEB
Um aplicativo web é um site na internet que se comporta como um aplicativo. É acessado
como qualquer outro site pelo navegador e tem comportamento responsivo (layout adaptado para
smartphones), o Facebook é um exemplo. Pode-se criar um ícone do site na tela inicial do smartphone
para que o Web App seja diretamente acessado.
O aplicativo web não consegue utilizar todas as funções do smartphone, o que impossibilita
algumas ações. Ele não ocupa espaço na memória do aparelho, mas só funciona se tiver acesso à
internet. É uma ótima opção se o seu objetivo é ter presença online no mundo mobile, pois possui
simplicidade de programação e se adapta a diversas plataformas.
Para definir um aplicativo, podemos destacar as seguintes definições:
 Progressivo – Funciona para qualquer usuário, independentemente do navegador escolhido,
pois é criado com aprimoramento progressivo como princípio fundamental.
TRABALHO DE FIM DE

 Responsivo – Se adequa a qualquer formato: desktop, celular, tablet ou o que for inventado a
seguir.
 Independente de conectividade – Aprimorado com service workers para trabalhar off-line ou
em redes de baixa qualidade.
 Semelhante a aplicativos – Parece com aplicativos para os usuários, com interações e
navegação de estilo de aplicativos, pois é compilado no modelo de shell de aplicativo.
 Atual – Sempre atualizado graças ao processo de atualização do service worker.
 Seguro – Fornecido via HTTPS para evitar invasões e garantir que o conteúdo não seja
adulterado.
 Descobrível – Pode ser identificado como “aplicativo” graças aos manifestos W3C e ao escopo
de registro do service worker, que permitem que os mecanismos de pesquisa os encontrem.
 Reenvolvente – Facilita o reengajamento com recursos como notificações push.
 Instalável – Permite que os usuários “guardem” os aplicativos mais úteis em suas telas iniciais
sem precisar acessar uma loja de aplicativos.
 Linkável – Compartilha facilmente por URL, não requer instalação complexa.
TRABALHO DE FIM DE

1.1.3-Como funcionam as aplicações web

A web é uma rede mundial de computadores interligados por internet. É um conjunto de


protocolos que usa uma tecnologia padrão chamada TCP/IP (Transmission Control Protocol / Internet
Protocol). A web permite que qualquer pessoa acesse informações ou aplicativos em qualquer parte do
mundo.

Sendo assim, as aplicações web são programas, sistemas informatizados, que atendem a
determinada necessidade do usuário. O acesso a elas pode ser feito de qualquer lugar, de qualquer
dispositivo, desde que seja conectado à internet.

Por isso, um aplicativo web é um programa que você pode acessar diretamente através da
internet, sem precisar baixá-lo em seu computador. Os aplicativos webs são utilizados para atender a
demandas específicas, como fazer uma pesquisa, comprar um produto ou serviço, entre outros.

As aplicações web, também chamadas de aplicativos web ou aplicações web, são programas
desenvolvidos especialmente para ser acessados através de um navegador web ou de um aplicativo,
como o Google Chrome, o Firefox, o Internet Explorer, o Safari, o Opera e o Maxthon.

Você pode usar as aplicações do seu dispositivo móvel para fazer diversas coisas: baixar
músicas e vídeos, acessar redes sociais, fazer ligações, enviar mensagens, tirar fotos, ler e-mails, ver
vídeos, ler livros, navegar na Internet entre outras coisas.

1.2-Diferença entre aplicativo web e aplicativo

A diferença entre a app Mobile e Web


O aplicativo mobile funciona através de um software instalado no smartphone que roda sem
interrupções no sistema operacional, desenvolvido exclusivamente para dispositivos portáteis. No caso
do aplicativo web, ao invés do smartphone, ele pode ser baixado no notebook, computador e até smart
tv.
TRABALHO DE FIM DE

1.3-Tipos aplicativos web mais populares

1- Apps de página única


Este tipo de aplicação web é indicado para serviço de e-mail e o setor de comunicação, pois
permite roteamento otimizado e experiência de navegação. Além disso, ajuda a manter a estrutura
visual consistente do aplicativo da web usando lógica de apresentação.

Exemplo: gmail, google, google maps, twitter

2- Sistema de gerenciamento de conteúdo


Este tipo de aplicação web é indicado para plataformas de blogging, plataforma de Marketing e
Vendas, portais de notícias. Com esta aplicação é possível organizar o conteúdo do site facilmente,
oferece funcionalidade de usuário e grupo, obter as funcionalidades de grupo e usuário. Além disso, é
de fácil integração e suporte de linguagem. Ex: drupal, jommla,wordpress

3- Aplicativos de comércio eletrônico


Este tipo de aplicação web é indicado para empresas de comércio eletrônico. Com esta aplicação
é possível que as empresas vendam produtos usando uma única plataforma e expandam seus negócios
globalmente alcançando o público máximo.

Ex: Amazon: Com 197 milhão de visitantes mensais Amazon está no topo da lista ao fornecer a melhor
experiência de compra para seus usuários. ...

 Sephora

 Lenskart

 Walmart

 Nike

 Nykaa

 H&M
TRABALHO DE FIM DE

1.4-História da Internet.

A Internet é a maior rede de computadores do Mundo, abrangendo praticamente todos os


países;  Escrevemos Internet com um «I» maiúsculo por esta ser considerada, precisamente, a «rede
das redes».
A Internet surge em 1969, nos Estados Unidos da América; Com objectivo de desenvolver
uma rede de comunicações para interligar os supercomputadores da defesa americana e de algumas
grandes universidades, de forma a que, no caso de haver um ataque nuclear, as comunicações não
fossem interrompidas; Em 1972, a DARPA (Defense Advanced Research Projects Agency) apresenta a
ARPANET garantindo que as ligações existiam entre todas as bases de defesa e, em caso de destruição
de uma delas, a comunicação estabelecer-se-ia automaticamente, através de uma outra base;
Início dos anos 80: a ARPANET adopta um conjunto de protocolos – TCP/IP – que permitem
que universidades, centros de investigação e outros departamentos militares e governamentais
americanos criem as suas próprias redes e se liguem também à ARPANET!
TRABALHO DE FIM DE

1.5-Navegadores (Browser)
Browser é um termo recorrente na internet e serve como sinônimo, em inglês, para “navegador
de internet”. O termo define apps como google Chrome, safari, opera, Firefox e Edge que, em comum,
permitem que o usuário acesse sites de internet e também interaja com essas páginas de diversas
formas.
Os 8 melhores navegadores de internet em 2020:
 Mozilla Firefox.
 Google Chrome.
 Opera.
 Microsoft Edge.
 Safari.
 Vivaldi.
 Maxthon.
 Brave.
Um navegador, também conhecido pelos termos em inglês Web browser, é um programa de
computador que habilita seus usuários a interagirem com documentos virtuais da internet, também
conhecidos como páginas da web, que podem ser escritas em linguagens como HTML, XHTML ou
HTML5 com ou sem linguagens como o CSS e que estão hospedadas num servidor web.
1.5.1-Características dos Navegadores
Os principais navegadores possuem características em comum na interface tais como:
Voltar para a página anterior, ir para página posterior, recarregar(refresh) a URL, estratégias
para escolher sites favoritos e o conceito de abas (entre outros). Uma outra característica comum entre
eles é apresentar um histórico dos sites navegadores ao longo do tempo.
Diferentes navegadores podem ser distinguidos entre si pelas características que apresentam.
Navegadores modernos e páginas Web criadas mais recentemente tendem a utilizar muitas
técnicas que não existiam nos primórdios da web. Como notado anteriormente, as disputas entre os
navegadores causaram uma rápida e caótica expansão dos próprios navegadores e padrões da World
Wide Web.
TRABALHO DE FIM DE

Exemplos de navegadores WorldWideWeb - por Tim Berners-Lee em 1990 para NeXTSTEP.


Viola, por Pei Wei, para Unix em 1992. Midas - por Tony Johnson em 1992 para Unix. Samba - por
Robert Cailliau para Macintosh. Mosaic - por Marc Andreessen e Eric Bina em 1993 para Unix. Aleks
Totic desenvolveu uma versão para Macintosh alguns meses depois. Arena - por Dave Raggett em
1993. Lynx - o Lynx surgiu na Universidade de Kansas como um navegador hypertexto independente
da Web. O estudante Lou Montulli adicionou a o recurso de acesso via TCP-IP na versão 2.0 lançada
em março de 1993. Cello - por Tom Bruce em 1993 para PC. Opera - por pesquisadores da empresa de
telecomunicações norueguesa Telenor em 1994. No ano seguinte, dois pesquisadores, Jon Stephenson
von Tetzchner e Geir Ivarsøy, deixaram a empresa e fundaram a Opera Software. Netscape - pela
Netscape em outubro de 1994. Internet Explorer - pela Microsoft em 23 de agosto de 1995. Safari - pela
Apple Inc. em 23 de junho de 2003. Mozilla Firefox - pela Mozilla Foundation com ajuda de centenas
de colaboradores em 9 de novembro de 2004.

SeaMonkey - pelo Mozilla Foundation - Baseado no Gecko (Mozilla) - Site:


http://www.seamonkey-project.org/releases/seamonkey2.0.5/. Flock - pela Flock Inc. baseado no
Firefox em 22 de junho de 2006. Google Chrome - pela Google em setembro de 2008. Baidu Spark
Browser pela Baidu. Konqueror - pelo Time de Desenvolvedores do KDE. Dooble - por... - Um
navegador Open Source para Linux/Unix, MAC OS e Windows - Site: http://dooble.sourceforge.net/.
Midori - por Christian Dywan - Um navegador leve baseado no WebKitGTK+ e o navegador official
do XFCE - Site: http://www.twotoasts.de/. Safari - pela Apple
TRABALHO DE FIM DE

1.6-Protocolo de Internet
Protocolo de internet (em inglês: Internet Protocol, ou o acrónimo IP) é um protocolo de
comunicação usado entre todas as máquinas em rede para encaminhamento dos dados. Tanto no
Modelo TCP/IP, quanto no Modelo OSI, o importante protocolo da internet IP está na camada
intitulada camada de rede.
Funcionamento. Os dados numa rede IP que são enviados em blocos referidos como ficheiros
(os termos são basicamente sinónimos no IP, sendo usados para os dados em diferentes locais nas
camadas IP). Em particular, no IP nenhuma definição é necessária antes do nó tentar enviar ficheiros
para um nó com o qual não comunicou previamente. O IP oferece um serviço de datagramas (pacotes)
não confiável (também chamado de melhor esforço); ou seja, o pacote vem quase sem garantias.
O pacote pode chegar desordenado (comparado com outros pacotes enviados entre os mesmos
nós), também podem chegar duplicados, ou podem ser perdidos por inteiro. Se a aplicação requer maior
confiabilidade, esta é adicionada na camada de transporte. Os roteadores são usados para reencaminhar
datagramas IP através das redes interconectadas na segunda camada. A falta de qualquer garantia de
entrega significa que o desenho da troca de pacotes é feito de forma mais simplificada. (Note que se a
rede cai, reordena ou de outra forma danifica um grande número de pacotes, o desempenho observado
pelo utilizador será pobre, logo a maioria dos elementos de rede tentam arduamente não fazer este tipo
de coisas - melhor esforço.
Contudo, um erro ocasional não irá produzir nenhum efeito notável.) O IP é o elemento
comum encontrado na Internet pública dos dias de hoje. É descrito no RFC 791 da IETF, que foi pela
primeira vez publicado em setembro de 1981. Este documento descreve o protocolo da camada de rede
mais popular e atualmente em uso. Esta versão do protocolo é designada de versão 4, ou IPv4. O IPv6
tem endereçamento de origem e destino de 128 bits, oferecendo mais endereçamentos que os 32 bits do
IPv4.
TRABALHO DE FIM DE

1.7-HTML
As páginas da web são estruturadas através do Hypertext Markup Language (Linguagem de
Marcação de Hypertexto). A criação da página ocorre através de etiquetas que informam ao navegador
como ele deve apresentar o conteúdo. Essas etiquetas são conhecidas como tags, através das quais é
informado se aquela estrutura é um parágrafo, tag ou uma tabela tag table. O número de etiquetas é
grande, existindo cerca de 116 representações de estruturas na versão 5.
As recomendações da linguagem são desenvolvidas pela W3C e suas licenças são gratuitas.
Atualmente está em sua quinta versão, e trouxe importantes tags como nav e navbar, ambas para
informar estrutura de navegação. O benefício dessas novas tags são a acessibilidade para os sites, uma
vez que leitores de site, crawlers (robôs que coletam informações de páginas da web) ou até mesmo
ferramentas de acessibilidade identificam com maior precisão o que aquela estrutura representa.
A utilização do HTML em algumas situações, como o uso de suas novas tags, pode ser um
problema para os desenvolvedores. A linguagem HTML é desenvolvida a partir das recomendações da
W3C, e cabe às empresas como Mozilla, Google e Microsoft implementarem as características em seus
navegadores. Dessa forma, algumas tags funcionam em alguns navegadores e em outros não.

Um exemplo da sintaxe do HTML:


TRABALHO DE FIM DE
TRABALHO DE FIM DE

1.8-PHP

PHP (Hypertext Preprocessor) é uma linguagem de programação para web de script open-
source, trabalha mesclado ao HTML (Hypertext Markup Language) e é executado no lado servidor, o
que possibilita que o site seja dinâmico, e garante mais segurança nas informações, já que o código
PHP é todo processado no lado servidor e o lado cliente fica responsável apenas de apresentar os dados
a tela do usuário.

O PHP era uma solução para utilização em suas páginas pessoais, contudo necessidades foram
surgindo e novas versões foram lançadas, contendo novos recursos, como, interpretador de comandos
SQL (Linguagem de consulta estruturada), orientação a objetos, herança, polimorfismo, apontadores de
memória e outros (PHP.NET, 2014), sendo esta utilizada por aplicações referências como MediaWiki,
Facebook, Drupal, Joomla, WordPress, Magento e o Oscommerce. Essa linguagem também
disponibiliza suporte a um grande número de bases de dados, inclusive MySQL o qual será utilizado no
contexto desse trabalho. Segundo Bento (2014) alguns motivos de usar o PHP e o MySQL são: PHP
nasceu para a web e sua integração com servidores web é simples, tem uma curva de aprendizado
suave, comparada a outras linguagens, PHP e MySQL são tecnologias livres, é fácil de encontrar
serviços de hospedagem que oferecem PHP e MySQL. Serviços de hospedagem que as oferecem são
mais baratos que serviços semelhantes para outras tecnologias e MySQL é leve e rápido, mesmo para
quantidades razoavelmente grandes de dados.

1.8.1-Banco de dados MYSQL

Banco de dados é um local no qual é possível armazenar informações, para consulta ou


utilização, quando necessário. Todos os bancos de dados são constituídos por três elementos básicos:
campos, registros e tabelas.

Cada banco de dados possui complexas estruturas internas de funcionamento, uma diferente da
36 outra, a fim de facilitar o acesso aos elementos do banco de dados foi criada e distribuída pela IBM
em 1981 uma linguagem de consulta, o SQL, que se tornou uma linguagem de acesso aos bancos de
dados muito articulada e funcional que pode ser empregada em computadores de arquiteturas
totalmente diferentes e é a linguagem utilizada pelo MySQL (FERRARI, 2007) MySQL é o banco de
dados de código aberto mais popular do mundo, que possibilita a entrega econômica de aplicações de
banco de dados confiáveis, de alto desempenho e escaláveis, com base na Web e incorporadas
(ORACLE, 2014) Nele ficam armazenadas todas as informações dos usuários, documentos e caminhos
de imagens mantidos pelo sistema proposto. As operações suportadas por esse banco são inclusão,
exclusão, atualização de registros, alterações de estrutura e outras.

O banco de dados MySQL além de ter um excelente desempenho, possui compatibilidade e


fácil integração com a linguagem de programação PHP, um dos motivos da escolha desse kit, PHP +
MySQL, para o desenvolvimento deste trabalho.
TRABALHO DE FIM DE

1.9-CSS (Cascading Style Sheets)

Uma página HTML não tem detalhes, cor ou estilo. Essa transformação pode ser obtida
através do uso do CSS que é a abreviação para o termo em inglês Cascading Style Sheet, traduzido para
o português como Folhas de Estilo em Cascata. Essa tecnologia tem a função de descrever como é o
elemento, ou seja, define o estilo, como a cor ou tamanho de letra de um elemento numa página web.

A tecnologia CSS tem a única e exclusiva função de estilizar a página. Através da estilização
pode-se atribuir algum efeito. Um exemplo é uso de atributos, como ao passar o mouse em alguma
estrutura realizar a troca de cor da letra. A especificação do CSS é desenvolvida pela W3C e pode ser
encontrada na página oficial da especificação no site W31.

Atualmente ele está em sua terceira versão. O CSS funciona através de seletores. Cada tag do
HTML ou ID utilizado na construção da página são seletores. Além disso, a tecnologia possui artifícios
que permitem criar classes que são conjuntos de estilos para atribuir a elementos. Assim adiciona-se um
efeito específico às estruturas que possuem a classe.

1.10-JavaScript

JavaScript (JS) é uma linguagem de programação interpretada, criada em 1995 por Brendan
Eich e atualmente segue o padrão encontrado em ECMAScript 5.1.

Por padrão ela funciona somente no navegador e não interage com outras partes do
computador do usuário, por exemplo criando arquivos ou executando comandos. A linguagem foi
desenvolvida para fornecer interatividade nas páginas da web, pois antes eram estáticas, compostas
somente por HTML e CSS.

O JS conta com um interpretador que executa operações em tempo real sem a necessidade de
enviar dados para o servidor, executando no próprio navegador. Assim, através do JavaScript podemos
fazer operações como validações de dados. Essa possibilidade de tratar informação no próprio
navegador permite que servidor não se sobrecarregue. Um exemplo é o caso dos formulários, que
através do uso da linguagem é possível validar se todos os campos estão preenchidos e com dados
corretos, antes de enviar para o servidor.
TRABALHO DE FIM DE

1.11-Framework

Os sistemas computacionais oferecem soluções para problemas que normalmente são


parecidos e recorrentes, o que torna a reutilização do código algo bastante útil. Assim surgiram os
frameworks.

Estes são códigos interligados e comuns a determinados problemas. Existem vários


frameworks usados em diferentes situações, como: Ionic Framework, usado para desenvolvimento
móvel; XUnit Framework, usado em teste de código automatizados ou para games, como o Phaser.
Segundo (MATTSSON, 1996), um framework é uma arquitetura desenvolvida com o objetivo de
atingir a máxima reutilização, representada como um conjunto de classes abstratas e concretas, com
grande potencial de especialização.

A utilização de frameworks no desenvolvimento de aplicações traz benefícios originados de


suas características principais: são modulares, reusáveis, extensíveis e eventualmente assumem o
controle da execução invocando métodos da aplicação quando necessário (inversão de controle). A
diferença entre bibliotecas e frameworks é que as funções do framework são interligadas e nas
bibliotecas não há interligação.

1.111.1-Frameworks e Desenvolvimento Web

A utilização de frameworks no desenvolvimento web é imensa e se faz essencial para o


sucesso da aplicação. A maioria dos frameworks para desenvolvimento web se baseiam no padrão de
projeto Model-View-Controller (MVC) visto que websites são extremamente dependentes de como é
realizada a interação com os dados e o modo que os mesmos são apresentados nas páginas web. “O
MVC foi proposto em 1980 como uma abordagem para design de GUI2, permitindo múltiplas
representações de um objeto e diferentes interações com estas representações” (SOMMERVILLE,
2011, p. 432, tradução nossa). Considerando o domínio dos websites, cada componente lógico do
MVC pode ser definidos da seguinte maneira:

 Model: responsável por gerenciar os dados do sistema.


 View: responsável por definir como os dados serão representados e exibidos aos
usuários. É a partir da view que o usuário faz a interação com o sistema.
 Controller: responde às interações do usuário, definindo quais operações serão
realizadas, quais dados serão manipulados e quais views serão utilizadas para
representá-los. Sommerville (2011) também afirma que, apesar das diferenças, todos os
frameworks para aplicações web geralmente oferecem as seguintes funcionalidades:
 Segurança: inclusão de classes para auxiliar o processo de autenticação de usuários e
gerenciamento de permissões.
 Páginas web dinâmicas: capacidade de criação de templates, onde somente
determinadas partes dos mesmos são alteradas.
 Suporte a Banco de Dados: Permitem a interação da aplicação com um banco de dados
externo, facilitando a execução de consultas e CRUD (Create, Read, Update, Delete)
de registros.
TRABALHO DE FIM DE

 Gerenciamento de sessões: possuem classes para definir e gerenciar sessões dos


usuários.

Interações de Usuário: suporte à AJAX para criação de páginas mais interativas. 2.2.2
Laravel O framework utilizado para o desenvolvimento deste trabalho foi o Laravel3. A primeira
versão dele foi lançada em 2011 e nos últimos anos o framework evoluiu rapidamente, se tornando
bastante popular entre os desenvolvedores PHP. Assim como grande maioria dos frameworks para
aplicações web, o Laravel também segue o padrão MVC. Ele é open-source e, embora seja
extremamente poderoso, possui uma curva de aprendizado bem pequena. Isso se dá pelo fato dele
possuir uma linguagem bastante expressiva, além de simplificar a execução de diversas tarefas
necessárias durante o desenvolvimento de aplicações web. Uma das grandes vantagens do Laravel é a
criação de migrations, que basicamente são um controle de versão para o banco de dados da aplicação.
Deste modo, fazer modificações na estrutura do banco de dados e compartilhamento do mesmo entre
desenvolvedores se torna algo extremamente simples de ser feito.
TRABALHO DE FIM DE

1.12.1-O que é Front End?


Podemos classificar como a parte visual de um site, aquilo que conseguimos interagir. Quem
trabalha com Front End é responsável por desenvolver por meio de código uma interface gráfica,
normalmente com as tecnologias base da Web (HTML, CSS e JavaScript).
Algumas pessoas podem confundir um pouco esse trabalho com o que um designer faz (no
passado existia uma entidade chamada Webmaster que fazia tudo isso e mais um pouco), mas a
diferença aqui é que o designer vai utilizar alguma ferramenta visual para desenhar a interface, do
Photoshop ao Sketch, e quem faz front-end estará mais próxima do código em si, que irá rodar em um
navegador Web como Chrome, Firefox ou Safari. (Confira também nossa webserie sobre as Fronteiras
do Front-end).

1.12.2 -O que é Back End?


Back End, como o próprio nome sugere, vem da ideia do que tem por trás de uma aplicação.
Pode ficar meio abstrato em um primeiro momento, mas pense que para conseguir usar o Facebook no
dia a dia, os dados do seu perfil, amigos e publicações precisam estar salvos em algum lugar, sendo
esse lugar um banco de dados e processados a partir de lá.
Não basta apenas o front-end em HTML e CSS! O Back End trabalha em boas partes dos casos
fazendo a ponte entre os dados que vem do navegador rumo ao banco de dados e vice-versa, sempre
aplicando as devidas regras de negócio, validações e garantias em um ambiente onde o usuário final
não tenha acesso e possa manipular algo. Um desenvolvedor front-end normalmente trabalha criando
toda a parte visual dos sites por meio de linguagens de marcação e programação — que detalharemos
no tópico seguinte —, além de bibliotecas e frameworks como Angular, ReactJS, Vue.js, entre outras.
Apesar de esses profissionais não precisarem saber desenvolver o back-end dos projetos —
sobre os quais falaremos melhor daqui a pouco —, é importante ter noção de como um sistema desse
tipo funciona, uma vez que o código produzido será conectado diretamente aos sistemas desenvolvidos
por alguém da área de back-end. As atribuições, nesse caso, ficam por conta da criação de páginas com
boa navegação, adaptáveis para qualquer tipo de tela, que contem com carregamento otimizado e que
funcionem corretamente nos principais navegadores utilizados e na integração com o restante do
projeto.
É importante frisar que, embora o desenvolvimento de front-end trate do lado visual e interativo
de um site, ele não é o mesmo que web design. As atribuições de um desenvolvedor back-end não
incluem a criação de páginas bonitas ou responsivas, como acontece com profissionais front-end. Em
vez disso, eles são responsáveis por implementar arquiteturas robustas, que se comuniquem com o
banco de dados e que garantam a segurança dos dados enviados pelo usuário. Desenvolvedores dessa
área utilizam linguagens como C#, Java, Ruby ou até mesmo JavaScript — por meio do Node.js. Além
disso, também são mais próximos de ramos como a análise de dados, machine learning e big data.

Fases de desenvolvimento de um site:


Fase 1 - Análise das Necessidades do Cliente
TRABALHO DE FIM DE

Fase 2 - Layout / Conceito Gráfico


Fase 3 - Produção / Desenvolvimento Front-end
Fase 5 - Inclusão de Conteúdo
Fase 4 - Programação de Formulários e Implantação de CMS
Fase 6 - Publicação

CAPÍTULO II – METODOLIA DE PESQUISA

No presente estudo optou-se por uma investigação predominantemente qualitativa, uma vez
que este incide sobre aspectos da vida educativa e por se considerar o procedimento, mas consistente
em função das caraterísticas do estudo.
Tipo de pesquisa, População, Amostra, Analise de dados, Coletas de dados.

2.1. TIPO DE PESQUISA


 Pesquisa qualitativa examinamos as evidências baseadas em dados verbais e visuais para
entender o fenômeno em profundidade.

2.2. POPULAÇÃO
 Alunos, Funcionários e encarregados.

2.3. AMOSTRA
 Funcionários do complexo escolar NSA.

2.4. COLECTA DE DADOS


 Para obtenção de dados para aplicação no projecto utilizamos diversas técnicas de
pesquisa.
2.5. ANÁLISE DE DADOS
 Analise qualitativa.
TRABALHO DE FIM DE

CAPÍTULO III - FUNDAMENTAÇÃO PRÁTICA

Levando em conta o avanço tecnológico e a globalização, é visível a cada dia o aumento de


instituições a aderir a tecnologia (sistemas para gestão e outras) para realizar tarefas da mesma, de
modo a auxiliar os seus funcionários. Pelo estatuto que o Colégio Nossa Senhora da Anunciação possui,
surge a necessidade de a instituição evoluir e consequentemente aderir a tecnologia.
Sendo a gestão do colégio a gestão da movimentação física de pessoas e não só bens entre
pontos diferentes, neste relatório abordaremos sobre a Criação de um aplicativo web para o
Complexo Escolar Privado NSA. Para isso, criamos um aplicativo para gestão do colégio que permite
o registo e a recolha de dados, para melhorar o controlo das operações de alunos, funcionários.

3.1 Motivação
O que nos motivou a realizar este trabalho foi a vontade de enriquecer os nossos
conhecimentos a nível de programação e cultivarmos o espírito de trabalho em equipa.

3.2 Estrutura do relatório

Este relatório está estruturado da seguinte forma:


Capítulo 1 - Introdução: Neste capítulo é apresentada uma breve
introdução do projeto, assim como a motivação, os objetivos do trabalho e a estrutura do relatório.
Capítulo 2 – Domínio do problema: Neste capítulo apresentamos o
objeto de estudo, a situação atual da instituição, os problemas a serem resolvidos, âmbito do projeto,
solução proposta, orçamentos, viabilidade e benefícios.
Capitulo 3 – Analise de requisitos: Neste capítulo apresentamos os
requisitos funcionais e não funcionais da aplicação, os atores principais que irão interagir com a
aplicação, o diagrama de contexto, diagrama de fluxo de dados, dicionário de dados e por fim o
diagrama entidade relacionamento ou DER.
TRABALHO DE FIM DE

Capitulo 4 – Conceção da base de dados: Neste capítulo apresentamos a


análise de existência, conceitos principais na conceção, entidade (objetos), atributos, identificação,
chaves, cardinalidade, relacionamento, o Modelo Conceitual, Modelo Lógico e Modelo Físico de
Dados.
Capitulo 5 – Desenho: Neste capítulo é apresentado as estruturas dos
formulários do sistema – GesTransportes como, formulário splash, formulário de acesso ao sistema,
formulário do menu principal, entre outros.
Capítulo 6 – Arquiteturas do sistema e Extratos de códigos: Neste
capítulo é apresentado a arquitetura física, a arquitetura lógica e extratos de códigos utilizados para a
conceção da aplicação.
Capitulo 7 – Tecnologias e ferramentas utilizadas: Neste capítulo é
apresentado as tecnologias e ferramentas que foram utilizadas para elaboração deste projeto.
Conclusão: é feita uma breve descrição das conclusões do trabalho.
Recomendações: é apresentado as recomendações para o colégio e os
projetos futuros.

Domínio do Problema
2.1 Objeto de estudo
O Complexo Escolar Privado Nossa Senhora da Anunciação encontra-se
localizado na província de Luanda, Município de Cacuaco, Centralidade do Sequele, depois dos prédios
cor de rosa, foi inaugurado em 2016.
E possui os seguintes cursos médios técnicos profissionais:
 Informática de gestão.
 Contabilidade de gestão.
 Gestão empresarial.
 Saúde.

Puniv:
 Ciências económicas e jurídicas;
 Ciências físicas e biológicas.

2.2 Situação actual da instituição


Atualmente não existe um Sistema que permite a inclusão do encarregado
no ensino e aprendizado, o que exige muito mais dos funcionários da secretária.
O número de estudantes tem crescido arduamente num ritmo muito
positivo, que ao passar dos anos surgem novas ideias e melhorias.
TRABALHO DE FIM DE

2.3 Objetivo da instituição


A instituição tem como objetivo principal informatizar as operações em
todas áreas.
2.4 Problemas a serem resolvidos
a) Reduzir o tempo de espera por parte dos encarregados na secretaria;
b) Reduzir a quantidade de informações arquivadas em papeis;
C)Interligar todas as áreas da instituição para aumentar o nível de eficácia
no atendimento ao encarregado.
d)Facilitar o encarregado para o acompanhamento periódico do educando. 2.5 Âmbito
do projeto

Tendo em conta os problemas identificados, será desenvolvido um


aplicativo web para o controle dos alunos por parte dos encarregados.

2.6 Solução proposta


Para ultrapassar ou resolver os problemas acima citados propôs-se a
implementação de um aplicativo web para o controle dos alunos.
Será criada uma base de dados que guardará todos os registos pelo que já
não será necessário o uso de arquivos em papel dentro da instituição, a interface é tão simples que os
encarregados não terão dificuldades em aceder ou fazer o uso do Web Aplicativo.

2.7 Orçamento
2.7.1 Custos dos Materiais
ID Material usado Valor (Akz) Qtd Total (Akz)

01
CorelDraw x18 50.000.00 1 50.000,00
02
Microsoft Visual Studio Code 20.000.00 1 20.000,00
03
Microsoft Office 2016 35.000.00 1 35.000,00
04
Photoshop 25.000.00 1 25.000.00
Custo total
130.000,00
Tabela 1. Custos dos materiais
TRABALHO DE FIM DE

2.7.2 Custo total do projeto


ID Descrição Valor total (Akz)
01 Custos dos materiais 130.000,00
02 Mão-de-obra 1.000.000
Custo total 1.130.000
Tabela 2. Custo total do projeto

2.8 Viabilidade
2.8.1 Benefícios
A criação de um aplicativo para o complexo escolar privado Nossa Senhora da
Anunciação, vai fornecer benefícios tais como:
a) Maior controlo de entrada e saída de dados
b) Facilidade ao acesso de informações
c) Segurança no acesso aos dados
d) Atualização de dados de forma eficaz
e) Melhoria no atendimento dos clientes

Análise requisitos

Levando em conta tudo que foi dito, a seguir é apresentado os requisitos


funcionais e não funcionais que foram previstos para a aplicação.

3.1 Requisitos funcionais


Para o desenvolvimento do aplicativo, foram previstas as seguintes funcionalidades:
[RF01] A aplicação deve permitir que apenas os funcionários registados
tenham acesso ao sistema informando o nome de usuário e senha (número da matrícula).

[RF02] A aplicação deve permitir a consulta das informações de alunos


como notas, quantidade de faltas, conduta disciplinar, entre outros.

[RF03] A aplicação deve permitir actualização dos registos de alunos,


encarregados, professores, notas, turmas e entre outros.
TRABALHO DE FIM DE

[RF04] A aplicação só deve mostrar as informações dos alunos aos


respectivos encarregados.

[RF05] A aplicação deve permitir a visualização e impressão de relatórios


de alunos.

3.2 Requisitos Não funcionais


[RNF01] Integridade: A aplicação deve garantir a integridade das
informações armazenadas na base de dados.

[RNF02] _Segurança: A aplicação deve zelar pela confidencialidade dos


dados, permitindo apenas acesso às pessoas competentes, depois de serem devidamente
autenticadas a autoridade para visualização e alteração dos mesmos.

[RNF03] Nível de abstração: A aplicação deve criar níveis de abstração


para garantir que os funcionários realizem somente operações que lhes competem.

3.3 Actores principais


Os principais actores que irão interagir com o sistema são:

Funcionário de nível 1: é o responsável por cadastrar, atualizar, eliminar,


imprimir, consultar funcionários e contas de acesso… Ou seja, tem acesso total no sistema.

Funcionário de nível 2: é o responsável por cadastrar, atualizar, e


consultar alunos.

3.4 Diagrama de fluxo de dados

O diagrama de fluxos de dados (DFD): é uma representação gráfica do "fluxo" de


dados através de um sistema de informação, modelando seus aspectos de processo. Ela fornece apenas
uma visão do sistema, a visão estruturada das funções, ou seja, o fluxo dos dados. Frequentemente, eles
são uma etapa preliminar usada para criar uma visão geral do sistema que pode posteriormente ser
elaborado. Os DFDs também podem ser usados para a visualização do processamento de dados.

3.6 Dicionário de dados

Para o diagrama entidade relacionamento – DER, temos o seguinte dicionário de dados:


Aluno
a) Aluno – Entidade que define dados relativos aos alunos
TRABALHO DE FIM DE

b) num_matrícula – número de matrícula do aluno


c) nome_ aluno– nome do aluno
d) foto – foto do aluno

Login
a) Login – Entidade que define dados relativos as contas de acesso ao sistema
b) nome_usuario – nome de usuário
c) senha – senha do usuário
d) codigo_funcionario – código de funcionário do usuário
Encarregado
a) Encarregado - Entidade que define os dados relativos…
b) num_telefone – número de telefone do encarregado
Pessoa
a) Pessoa - Entidade que define os dados relativos a pessoa
b) Sexo – sexo da pessoa
c) nome – nome da pessoa
d) BI – Identificação da pessoa
Disciplina
a) disciplina – Entidade que define os dados relativos a disciplina

Funcionário
a) Funcionário - Entidade que define os dados relativos aos funcionários
b) idade – idade do funcionário
c) foto– foto do funcionário
d) num_telefone – número de telefone do funcionário

conduta_disciplinar
a) conduta_disciplinar – entidade que define o comportamento

Classe

a) classe – entidade que define os dados relacionados as classes

Turma

a) turma – entidade que define os dados relacionados as turmas

Curso

a) curso– entidade que define os dados relacionados os cursos


TRABALHO DE FIM DE

Tipo_curso

a) Tipo_curso – entidade que define os dados relacionados aos tipo de


cursos

Tipo funcionário

a) Tipo_funcionário – entidade que define os dados relacionados ao tipo de


funcionário

Nota

a) Nota – entidade que define os dados relacionados as notas

Faltas

a) Faltas – entidade que define os dados relacionados as faltas

3.3 DER – diagrama de entidade de relacionamento


Um diagrama entidade relacionamento (DER) é um modelo de dados para
descrever os dados ou aspetos de informação de um domínio de negócio ou seus
requerimentos de processo, de uma maneira abstrata que em última análise se presta a
ser implementada em uma base de dados, como uma base de dados relacional. Os
principais componentes das DER são entidades (coisas) e os relacionamentos que
podem existir entre eles, e a base de dados. Na página a seguir apresentamos o DER da
nossa base de dados.
TRABALHO DE FIM DE

Conceção da base de dados

Bases de dados são coleções organizadas de dados que se relacionam deforma a criar algum
sentido (Informação) e dar mais eficiência durante uma pesquisa ou estudo
.
TRABALHO DE FIM DE

4.1 Análise de existência

Estudo da análise de existência é a parte em que fomos recolher informações do nosso objecto
de estudo, ter conhecimento dos problemas e desejos do mesmo sobre o assunto do nosso trabalho.
Enfim levar uma solução adequada para os problemas sobre a gestão de transportes. Com as
informações recolhidas neste capítulo, começamos a criar a nossa base de dados.

4.2 Conceitos Principais na concepção

4.2.1 Entidade (objetos)

Pode ser entendida como algo da realidade, modelada, onde deseja-se manter informações na
base de dados (BD). Por exemplo, em um sistema escolar, algumas entidades podem ser os alunos,
professores, horário, disciplinas e avaliações. Notemos que uma entidade pode representar tanto objetos
concretos (alunos), como objetos abstratos (horário). A entidade é representada por um retângulo, que
contém o nome da entidade. Ou seja, uma entidade é um objeto no mundo real que pode ser
identificado de forma única em relação aos outros objetos.

4.2.2 Atributos

Dados elementares que caracterizam as entidades e as relações.


Ex: Aluno (#Num_Processo, Nome_aluno, Tel_encarregado, sala,sexo,ano_
lectivo, data_emissao, num_bi).

Notemos que, até o momento, as entidades não guardam informação alguma. Elas apenas
representam um objeto existente no cenário da empresa. Para guardar informações, devemos definir os
atributos das entidades. Dessa forma, atributos são propriedades particulares que descrevem cada
entidade. Para ser capaz de representar todas as informações de uma entidade, os atributos são
classificados conforme demonstrado a seguir:

Atributo simples: ocorre quando uma característica da entidade é representada por um único
atributo. Por exemplo, na entidade Empregado, temos os seguintes atributos simples: Matrícula, Nome,
Sexo e Salário.
Atributo composto: o seu conteúdo é formado por vários itens menores,
por isso, o chamamos de atributo composto.

Exemplo: em algumas empresas, o atributo Endereço é composto por


TRABALHO DE FIM DE

informações, como: Rua, Número da casa, Bairro e município.


4.2.3 Identificação
Apresentamos até este ponto a necessidade de incluirmos campos na estrutura de dados das
entidades para que se efetuem os relacionamentos, ou seja, existem campos comuns para a ligação.
Quando um campo em uma entidade caracteriza-se por ser a chave de identificação única de
ocorrências desta entidade, denomina-se chave primária.
Quando em uma entidade temos um campo que é chave primária de outra entidade,
denomina-se chave estrangeira. Esta ligação realiza-se por comparação do valor da Chave Estrangeira
com o valor da Chave Primária de outra tabela.
4.2.4 Chave
As tabelas relacionam-se umas as outras através de chaves. Uma chave é um conjunto de um
ou mais atributos que determinam a unicidade de cada registo.
Por exemplo, se uma base de dados tem como chaves Código do Produto e ID Sistema, sempre
que acontecer uma inserção de dados o sistema de gerenciamento de banco de dados irá fazer uma
consulta para identificar se o registo já não se encontra gravado na tabela.
Temos dois tipos de chaves:

Chave primária: (PK - Primary Key) é a chave que identifica cada registo
dando-lhe unicidade. A chave primária nunca se repetirá.
Chave Estrangeira: (FK - Foreign Key) é a chave formada através de um
relacionamento com a chave primária de outra tabela. Define um
relacionamento entre as tabelas e pode ocorrer repetidas vezes. Caso a chave primária
seja composta na origem, a chave estrangeira também o será.

4.2.5 Cardinalidade (coeficiente)


Em modelagem de dados a cardinalidade é um dos princípios fundamentais sobre o
relacionamento de uma base de dados relacional. Nela são definidos o graus de relação entre duas
entidades ou tabelas. CARDINALIDADE o número máximo e mínimo de ocorrências de uma entidade
que estão associadas às ocorrências de outra entidade que participa do relacionamento. Ou seja, a
cardinalidade é importante para ajudar a definir o relacionamento, pois ela define o número de
ocorrências em um relacionamento.
Tipos de Cardinalidade Mínima
Considera-se apenas duas cardinalidades mínimas:
TRABALHO DE FIM DE

Opcional: indica que o relacionamento é opcional. Representa-se pelo número 0.


Obrigatória: indica que o relacionamento é obrigatório. Representa-se pelo número 1.
Cardinalidade Máxima
Dois valores de cardinalidades máximas são usados:
cardinalidade máxima 1 cardinalidade máxima “muitos”, referida
pela letra “n”

4.2.6 Relacionamento
É um conjunto de associações entre entidades. O relacionamento é
representado por um losango. Esse losango é ligado por linhas aos retângulos que
representam as entidades participantes do relacionamento.

Relações: Associações entre entidades estabelecidas de acordo com as


necessidades de gestão.
Tipos de relacionamento
Existem três tipos de relacionamento entre entidades:
• um-para-um
• um-para-muitos
• muitos-para-muitos

Existem alguns tipos de relacionamentos possíveis na DER: Um para um (1 para 1) - indica que
as tabelas têm relação unívoca entre si. Você escolhe qual tabela vai receber a chave estrangeira. um-
para-um será usado nos casos onde o registro de uma tabela só poderá ter uma associação com um
registro de outra tabela.

Um para muitos ou um-para-vários (1 para N) - a chave primária da tabela que tem o lado 1 está
para ir para a tabela do lado N. No lado N ela é chamada de chave estrangeira;

Muitos para muitos ou vários-para-vários (N para N) - quando tabelas têm entre si relação n..n, é
necessário criar uma nova tabela com as chaves primárias das tabelas envolvidas, ficando assim uma
chave composta, ou seja, formada por diversos campos-chave de outras tabelas. A relação então se
reduz para uma relação 1..n, sendo que o lado n ficará com a nova tabela criada.

Os relacionamentos 1 para 1 e 1 para N podem ser mapeados diretamente em chaves


estrangeiras nas tabelas originais. Já o relacionamento N para N exige o uso de uma tabela auxiliar. No
relacionamento N: N não há chave estrangeira.
TRABALHO DE FIM DE

4.3 Conceção do novo sistema informatizado


4.3.1 Etapa Conceptual
A etapa Conceptual nos ajuda a conceber e organizar uma base de dados segundo as
informações que nós recolhemos. A convenção internacional traçou regras e normas sobre análise
conceptual, que vamos aplicar para concepção e criação da base de dados.
4.3.1.1 Divisão da Análise Conceptual

Há três tipos de modelos de dados: o conceitual, o lógico e o físico. Todos concordam que uma
estrutura de dados com qualidade é imprescindível para garantir a legitimidade da base de dados
facilitando a manutenção do sistema de aplicação. Em geral temos 3 partes principais na concepção de
uma base de dados, que são:
a) Modelo conceptual de dados (MCD)
b) Modelo lógico de dados (MLD)
c) Modelo Físico de dados (MFD)
4.3.1.2 Diagrama de Classe

O diagrama de classes ilustra graficamente como será a estrutura do software (em nível
micro ou macro – veremos adiante sobre as possibilidades de uso do diagrama), e como
cada um dos componentes da sua estrutura estarão interligados.
TRABALHO DE FIM DE

Modelo Logico de dados (MLD)

Compreende uma descrição das estruturas que serão armazenadas na base de BD e que resulta
numa representação gráfica dos dados de uma maneira lógica, inclusive nomeando os componentes e
ações que exercem uns sobre os outros.

Diagrama de caso de uso


TRABALHO DE FIM DE

Esse diagrama documenta o que o sistema faz do ponto de vista do


usuário. Em outras palavras, ele descreve as principais funcionalidades do sistema e a
interação dessas funcionalidades com os usuários do mesmo sistema. Nesse diagrama
não nos aprofundamos em detalhes técnicos que dizem como o sistema faz.
TRABALHO DE FIM DE

Diagrama de Actividade

Na UML, um diagrama de atividade fornece uma visualização do


comportamento de um sistema descrevendo a sequência de ações em um processo. Os
diagramas de atividades são semelhantes a fluxogramas porque mostram o fluxo entre as
ações em uma atividade; no entanto, os diagramas de atividades também podem mostrar
fluxos paralelos ou simultâneos e fluxos alternativos. Nos diagramas de atividades, os
eles de atividades e extremidades de atividades são utilizados para modelar o fluxo de
controle e os dados entre as ações.
TRABALHO DE FIM DE

Desenho

5.1.3 Formulário de acesso ao sistema (login)

O formulário de acesso ao sistema é o que verifica se o utilizador que pretende


aceder ao sistema tem autorização ou não (ao preencher os campos usuário e senha). Se
ele tiver, o sistema faz uma consulta automática para obter o nível deste utilizador. Este
nível define as operações que o utilizador pode fazer no sistema.

Figura 7 - Formulário de acesso

5.1.4 Formulário principal


Este formulário é o que dá acesso a todos outros formulários necessários
para trabalhar, ou seja, é o ambiente de trabalho do sistema.

5.1.4.1 Menus
O formulário principal está dividido por menus que são:

a) Menu Gestransporte
b) Menu Registar/Editar
c) Menu Consulta
d) Menu Relatório
e) Menu Sobre
f) Friso Acesso Rápido

Figura 9 – Formulário para edição de conta de acesso

5.1.4.3 Menu Registar/Editar


O menu Registar/Editar oferece as seguintes opções:
a) Funcionário: nesta opção é aberto um formulário que permite registar, editar e
remover os dados relativos aos funcionários.
TRABALHO DE FIM DE

Figura 10 - Formulário de cadastro dos funcionários

b) Aluno: nesta opção é aberto um formulário que permite registar, editar, remover e
imprimir relatório dos dados relativos ao processo e a matrícula de alunos.

Figura 11 - Formulário de cadastro de alunos

a) Funcionário: nesta opção abre um formulário que exibe o relatório de


dados dos funcionários e dá a possibilidade de imprimi-lo.
TRABALHO DE FIM DE

Arquiteturas do sistema e Extratos de códigos

6.1 Arquitetura física do sistema

Este Sistema, não tem uma arquitetura física, porque todos os dados estão
dispostos em um único computador, ou seja, é uma aplicação monolítica.

6.2 Arquitetura lógica do sistema

Uma arquitetura lógica de dados descreve com precisão as propriedades e os


relacionamentos de cada uma das entidades de dados envolvidas em um domínio
organizacional ou problema de negócio a ser resolvido com apoio de TI, compondo um
desenho detalhado a partir do qual líderes de projeto e desenvolvedores possam
trabalhar com relativa independência. A arquitetura lógica do nosso sistema encontra-se
no apêndice C.

6.3 Extratos de códigos


Nesta secção apresentamos alguns extratos de códigos utilizados para o
funcionamento do sistema na linguagem utilizada PHP.

6.3.1 Codificação da tela Splash


Figura 20 – codificação da tela splash

Tecnologias e ferramentas utilizadas

No desenvolvimento deste projeto foram utilizadas uma variedade de


tecnologias e ferramentas. A seguir são descritos as plataformas e programas de suporte
utilizados no desenvolvimento do sistema em cada camada específica.

7.1 Recursos Tecnológicos a) _SQL:_Structured_Query_Language,_ou


Linguagem_de_Consulta_
estruturada ou SQL: é a linguagem de pesquisa declarativa padrão para base
de dados relacional (base de dados relacional). Muitas das características originais do
SQL foram inspiradas na álgebra relacional;
TRABALHO DE FIM DE

7.2 Ferramentas

a) MySQL é um sistema gerenciador de banco de dados relacional de


código aberto usado na maioria das aplicações gratuitas para gerir suas
bases de dados. O serviço utiliza a linguagem SQL (Structure Query
Language – Linguagem de Consulta Estruturada), que é a linguagem
mais popular para inserir, acessar e gerenciar o conteúdo armazenado
num banco de dados.

b) Visual Studio Code (VS Code) é um editor de código de código


aberto desenvolvido pela Microsoft. A saber, ele está disponível para
Windows, Mac e Linux. É criado com Electron, ferramenta criada pelo
GitHub que permite a criação de softwares Desktop com HTML, CSS
e JavaScript.
TRABALHO DE FIM DE

Conclusão
O desenvolvimento deste projeto permitiu-nos adquirir e enriquecer os nossos
conhecimentos nas tecnologias utilizadas, serviu-nos como uma grande preparação para
o ensino superior, já que desenvolveu a nossa capacidade em implementação de
aplicações informáticas utilizando a linguagem de programação PHP conectadas com a
bases de dados do MYSQL.
Com este projeto (Criação de um aplicativo para o complexo escolar privado
NSA) o trabalho na secretaria da instituição será duas vezes mais eficaz e simples, na
matrícula de alunos e funcionários, já que tudo será guardado numa base de dados de
maneira ordenada. Este projeto trará uma grande vantagem para instituição e de certeza
que aumentará o prestígio da mesma!

Você também pode gostar