Você está na página 1de 89

REPÚBLICA DE ANGOLA

MINISTÉRIO DO ENSINO SUPERIOR


UNIVERSIDADE KATYAVALA BWILA
Instituto Superior Politécnico

DEPARTAMENTO DE INFORMÁTICA

Aplicação Web para Gestão e Publicação de


Informação no Instituto Médio Politécnico Privado Poli
Disciplinar - Catumbela

Nº_______/2018

Autor: Marcelino Canhani Calembe

BENGUELA / 2018

Inovação-Investigação- Desenvolvimento
Região Académica II- Benguela e Kwanza Sul
UNIVERSIDADE KATYAVALA BWILA
Instituto Superior Politécnico
Departamento de Informática

TRABALHO DE FIM DE CURSO PARA A OBTENÇÃO DO GRAU DE


LICENCIATURA EM CIÊNCIAS DA COMPUTAÇÃO

Aplicação Web para Gestão e Publicação de


Informação no Instituto Médio Politécnico Privado Poli
Disciplinar - Catumbela

AUTOR: Marcelino Canhani Calembe


ORIENTADOR: Me. Yuniel Peña González
CO-ORIENTADOR: Me. Luís Sérgio Timóteo Elias.

Benguela / 2018

ii
AGRADECIMENTOS

Em primeiro lugar os meus agradecimentos à Deus, pela vida, protecção e


força concedida durante o percurso da vida estudantil, e não só, em seguida
agradeço aos meus pais pelo apoio e incentivo durante estes tempos de
formação, também queria agradecer pela disposição e apoio de forma
incondicional da direcção do Instituto Médio Politécnico Privado Poli Disciplinar
-Catumbela em particular o Subdirector Pedagógico Leonardo Vicente. Meus
agradecimentos também ao meu irmão Félix Canhani Calembe, ao tio
Malaquias Chimbambi Ngolo e o amigo José Tandavala pela grande ajuda que
me deram e pelos professores que ao longo da trajectória transmitiram os
conhecimentos necessários e fundamentais, destacando o meu orientador o
Professor Me. Yuniel Peña González e o co-orientador Professor Me. Luís
Sérgio Timóteo Elias pelo incentivo, paciência e suporte dado no decorrer da
elaboração deste trabalho. E também pelo companheirismo dos colegas ao
longo do nosso percurso estudantil, em fim a todos que direita ou
indirectamente apoiaram-me, a minha gratidão.

iii
DEDICATÓRIAS

Dedico este trabalho aos meus familiares e à todos os estudantes e


amantes das Tecnologias de Informação e Comunicações (TICs), em
especial aos estudantes de Ciências da Computação do Instituto Superior
Politécnico da Universidade Katyavala Bwila.

iv
PENSAMENTO

“Programar não é fácil, mas está distante de ser difícil ”

Autor desconhecido

v
RESUMO
A aplicação Web para gestão e publicação de informação no Instituto Médio
Politécnico Privado Poli Disciplinar-Catumbela é fundamentalmente baseada
em processos actuais das actividades da instituição tais como: Informações
sobre as áreas que a constituem, actividades e finalidades de cada
departamento, sobre tudo a gestão, informação sobre as ocorrências passadas
e futuras das actividades na instituição, promover um intercâmbio entre a
instituição – estudantes e a sociedade em geral ultrapassando assim o factor
distância, informações sobre os cursos leccionados e suas saídas profissionais,
actualizações das propinas, confirmação de matrículas, disponibilidade de
listas, pautas e também na perspectiva de cada pessoa com requisitos
necessários se candidatar a uma das vagas para um curso ou emprego que a
instituição dispõe.

A aplicação perspectivou-se em desenvolve-la para minimizar as dificuldades


que a instituição enfrenta como: Gerir o fluxo de informações, publicá-las e
actualiza-las para dar respostas certas e rápidas em tempo oportuno.

Uma vez sistematizados, todos os processos possíveis, aumentarão a


eficiência e segurança dos dados, proporcionando à facilidade aos usuários do
sistema através de uma interface amigável e simples. Uma vez dinamizados os
processos das actividades por intermédio da aplicação darão credibilidade e
certezas sobre tudo, aqueles que queiram matricular-se concludentemente
aqueles que frequentam face a tendência que passa na boa prestação e
administração dos serviços.

O sistema possui uma base de dados integrado a ele, a linguagem de


programação utilizada é o Python usando a framework Django, e para interface
HTML e Bootstrap, com padrão do CSS, o Django e Javascript na dinamização
das páginas, estas ferramentas são utilizadas para o desenvolvimento de
páginas web, o Apache é o servidor de web ideal para o projecto e integra o
Mysql como servidor de dados.
Palavras-chave: Aplicação Web, Sistema de gestão e publicação,
automatização dos processos.

vi
ABSTRACT

The web application for the information management and publication at private
school Poli Disciplinar institution- Catumbela is fundamentally based on current
processes of the institution activities such as:

The Informations about the areas which constitute it, activities and aims of
each department, throughout the management, the information about the past
and future occurrences of the institution activities, to promote an overlap
between the institution and students above all the society in general,
overcoming the distance factors, fees updating, enrollment confirmation, lists
availability, results and also in the perspective of each person with necessary
requirement enroll their names as a candidate of vacancies, for a course or a
job available.

The perspective of the application was on developing it to minimize the


difficulties that the institution faces such as: managing the flow of information,
publishing it and updating them so that it can supply the right and quick answers
in the right moment.

Once that the processes are inserted in the system, all the possible processes
will increase the data efficiently and safely, supplying the ease of the system
user, through a friendly and simple interface. Once it is inserted dynamically the
activities processes throughout the application will give credibility and rightness,
though, those who want to enroll their names and concludingly those who face
the tendency which goes through a good job administration.

The system posses a data base inside it, a program language used is the so
called Python, using the Framework Django, and for the interface HTML and
Bootstrap, with a CSS pattern, the Django and Javascript on dinamization of the
web pages, the Apache is an ideal web server for the Project and it gets in the
Mysql as a data server.
Keywords: Web application, management and publication system and
processes automatization.

vii
ÍNDICE

RESUMO……………………………………………………………………………….vi
ABSTRACT…………………………………………………………………………... vii
LISTA DE FIGURAS…………………………………………………………….........x
LISTA DE TABELAS……………………………………………………………….…xi
LISTA DE ABREVIATURAS E ACRÓNIMOS………..……………………….......xii
ÍNDICE.......................................................................................................................... viii
INTRODUÇÃO .............................................................................................................. 13
Contribuição prática do Sistema (Gestschool)........................................................ 19
Estrutura do trabalho. ..................................................................................................... 20
CAPÍTULO 1. FUNDAMENTAÇÃO TEÓRICA......................................................... 21
1.1 Sistemas de gestão numa organização. ............................................................ 21
1.2 Breve descrição do objecto de Estudo. ................................................................. 23
1.3 Descrição das ferramentas utilizadas. ............................................................... 24
1.3.1 Metodologia para o Desenvolvimento do Projecto. ...................................... 24
1.3.2 Visão Geral da UML ..................................................................................... 28
1.3.3 StarUml.......................................................................................................... 29
Servidores ............................................................................................................... 29
1.3.4 Sistemas de Gestão de Base de Dados. ......................................................... 30
1.3.5 Servidor web .................................................................................................. 32
1.3.6 Tecnologias back-End ................................................................................... 33
1.3.7 Tecnologias front-End ................................................................................... 39
1.3.8 Ambiente de Desenvolvimento Integrado ..................................................... 41
A apresentação de Entidade .................................................................................... 42
1.3.9 Conclusão do capítulo ................................................................................... 43
CAPÍTULO 2 – DESCRIÇÃO DA SOLUÇÃO PROPOSTA....................................... 44
2.1 Modelagem do Negócio........................................................................................ 44
2.1.1 Descrição do Negócio .................................................................................... 44
2.1.2 Processo do Negócio ..................................................................................... 45
2.1.3 Actores do Negócio ....................................................................................... 45
2.1.4 Trabalhadores do Negócio ............................................................................. 46
2.1.5 Entidade do Negócio ..................................................................................... 47

viii
2.2 Objecto de automatização ..................................................................................... 52
2.3 Requisitos do sistema ........................................................................................... 53
2.3.1 Requisitos Funcionais .................................................................................... 53
2.3.2 Requisitos não funcionais .............................................................................. 54
2.4 Análise e desenho do sistema ............................................................................... 55
Descrição do sistema .............................................................................................. 55
2.4.1 Actores do sistema ......................................................................................... 55
2.4.2 Descrição do Sistema..................................................................................... 56
2.4.3 - Casos de uso do sistema. ............................................................................. 56
2.5 Descrição do Software. ......................................................................................... 66
2.6 Desenho do sistema de base de dados. ............................................................. 67
2.6.1 Diagrama de componentes............................................................................. 70
2.6.2 A Segurança dos dados no sistema (Gestschool) ................................... 71
2.7 Implantação. ......................................................................................................... 71
2.8 Modelo de teste ..................................................................................................... 73
2. 9 Conclusão do Capítulo ........................................................................................ 75
CONCLUSÕES .............................................................................................................. 76
RECOMENDAÇÕES..................................................................................................... 77
TRABALHO FUTURO ................................................................................................. 77
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 78
APÊNDICE .................................................................................................................... 80

ix
LISTA DE FIGURAS Pág.

Figura 1- As fases de metodologias do RUP………………………….…….……24


Figura 2- Esquema da framework MVC……………………….………………..…37
Figura 3 – Esquema da framework Django padrão MVT………………………..38
Figura 4 – Actores de Negócio…………………………………..…………....…....46
Figura 5 – Diagrama de actividade de caso de uso do negócio: cadastrar o
pagamento de propinas ………………………………………………………….…50
Figura 6 – Diagrama de actividade de caso de uso do negócio: Publicar
Candidaturas……………………………………………….…….…………………..52
Figura 7 – Diagrama do caso de uso do sistema…………………………..........57
Figura 8 - Diagrama de actividade do caso de uso do sistema: Fazer login no
sistema………………………………..………………………………………....……58
Figura 9 - Diagrama de sequência do caso de uso do sistema: Fazer login no
sistema……………..………………………………………………………..………..59
Figura 10- Diagrama de colaboração do caso de uso do sistema: Fazer login no
sistema…………………………………………………..…………………………….60
Figura 11 -Diagrama de actividade do caso de uso do sistema: cadastrar
estudantes….....................……………………………………………………….….61
Figura 12- Diagrama de colaboração do caso de uso do sistema: cadastrar
estudante….….…………………………………………………………………….…61
Figura 13 - Diagrama de sequência do caso de uso do sistema: Cadastrar
estudante………………………………………………………………..………….…62
Figura 14 -Diagrama de actividade do caso de uso do sistema: cadastrar
funcionário….....................……………………………………………………….….64
Figura 15- Diagrama de sequência do caso de uso do sistema: cadastrar
funcionário…..……………………..……………………………………………….…64
Figura 16 - Diagrama de colaboração do caso de uso do sistema: Cadastrar
funcionário…………………………………..…………………………..………….…65
Figura 17 – Modelo físico da Base de Dados……………………..……....…..….68
Figura 18 – Desenho de Classe…………………………………….….…………..69
Figura 19 -Diagrama de Componentes…………………………..………………..70
Figura 20 – Diagrama de Implantação………………………………………….…72

x
LISTA DE TABELAS Pág.

Tabela 1 - Actores do negócio……………………………………………………..46


Tabela 2 - Trabalhadores do negócio………………………………………….…..47
Tabela 3 - Entidade do negócio……………………………………….……...…….47
Tabela 4- Casos de uso do negócio…………………….…………….…..……….48
Tabela 5 - Descrição do caso de uso do negócio: Cadastrar o pagamento de
propinas……………………………..………………………………………..……….49
Tabela 6 - Descrição do caso de uso do negócio: Publicar
Candidaturas……………………………………………………………………….…51
Tabela 7 – Actores do sistema……………………………………………………..55
Tabela 8- Descrição do caso de uso do sistema: Fazer login no
sistema………………………….……………………………………………………58
Tabela 9 – Descrição do caso de uso do sistema: Cadastrar
estudante…………………………………………………………………………….60
Tabela 10 – Descrição do caso de uso do sistema: Cadastrar
funcionário…………………………………………………………………………….63
Tabela 11 – Descrição do caso de uso de teste: Activar e desactivar
utilizador……………………………………………………………………….………74
Tabela 12 – Descrição do caso de uso de teste: Iniciar sessão………………..74

xi
ABREVIATURAS E ACRÓNIMOS

App - Application.

CRUD – Create, update, Delete. (em português criar actualizar e eliminar).

CSS – Cascading Style Sheets, (em português folhas de estilo em


cascatas).

FTP – File Transfer Protocol (Protocolo de transferência de ficheiro)

HTML - Hypertext Markup Language, (em português Linguagem de


Marcação de Hipertexto).

IDE – Integrated Development Environment (em português Ambiente de


Desenvolvimento Integrado).

IIS – Internet Information Server (Servidor da Informação na Internet)

JS – Javascript.

MVC – Model View Controller (Modelo Visão Controlador)

MVT – Model View Template (Modelo Visão Templates)

PHP – Hypertext Preprocessor (Pré – Processador de Hipertexto)

RUP – Racional Unified Process (em português Processo Racional


Unificado).

SGBD – Sistema Gestor de Base de Dados.

SGBDR – Sistema Gestor de Base de Dados Relacionais.

SQL – Structured Query Language (em português Linguagem Estruturado


de Consulta).

TIC – Tecnologias de Informação e Comunicação.

UML – Unified Modeling Language (em português Linguagem de


Modelagem Unificado).

URL – Uniform Resource Locator (Localizador Padrão de Recursos)

XML – eXtensible Markup Language (Linguagem de Marcação extensível)

xii
INTRODUÇÃO

Actualmente, vivemos num mundo exigente e muito competitiva em todas as


organizações, um mundo que pede respostas certas e rápidas para suprir
algumas necessidades em tempo oportuno e até mesmo resolução de diversos
problemas desde os mais simples aos mais complexos e o sector das
Tecnologias de Informação e Comunicações (TICs) tem sido um dos mais
dinâmicos a responder a essa escassez de respostas.
Um sistema de gestão ajuda uma organização a compartilhar informação,
trabalhar em equipa e trabalhar de acordo com os mais elevados padrões de
qualidade e meio ambiente através de uma série de estratégias, incluindo
optimização de processos, foco na gestão e pensamento disciplinado de
gestão (Martins, 2006).
Este trabalho de investigação trata de um sistema de gestão designado
Gestschool que é uma aplicação Web para gestão e publicação de informação
no Instituto Médio Politécnico Privado Poli Disciplinar – Catumbela, é
fundamentalmente baseada em processos actuais das actividades da
instituição tais como: Informações sobre as áreas que a constituem, actividades
e finalidades de cada departamento, sobre tudo a gestão, informação sobre as
ocorrências passadas e futuras das actividades na instituição, promover um
intercâmbio entre a instituição – estudantes e a sociedade em geral
ultrapassando assim o factor distância, informações sobre os cursos
leccionados e suas saídas profissionais, actualizações das propinas,
confirmação de matrículas, disponibilidade de listas, pautas e também na
perspectiva de cada pessoa com requisitos necessários se candidatar a uma
das vagas para um curso ou emprego que a instituição dispõe.

A aplicação perspectivou-se em desenvolve-la para minimizar as dificuldades


que a instituição enfrenta como: Gerir o fluxo de informações, publicá-las e
actualiza-las para dar respostas certas e rápidas em tempo oportuno.

Uma vez sistematizados, todos os processos possíveis, aumentarão a


eficiência e segurança dos dados, proporcionando à facilidade aos usuários do
sistema através de uma interface amigável e simples. Uma vez dinamizados os

13
processos das actividades por intermédio da aplicação darão credibilidade e
certezas sobre tudo, aqueles que queiram matricular-se concludentemente
aqueles que frequentam face a tendência que passa na boa prestação e
administração dos serviços.

O sistema possui uma base de dados integrado a ele, a linguagem de


programação utilizada é o Python usando a framework Django, e para interface
HTML e Bootstrap, com padrão do CSS, o Django e Javascript na dinamização
das páginas, estas ferramentas são utilizadas para o desenvolvimento de
páginas web, o Apache é o servidor de web ideal para o projecto e integra o
Mysql como servidor de dados. E o mercado não para de crescer e apresentar
novas práticas de exercer as actividades em tempo recorde e com benefícios
maiores nas instituições. O sistema integrado de gestão já é utilizado por
diversas corporações de médio e grande porte, é um instrumento muito eficaz
para integrar várias áreas de uma organização, aumentando a confiabilidade e
a produtividade.
Um sistema informático é uma necessidade nas organizações, visto que as
instituições de ensino cada vez mais precisam saber as preferências da
comunidade estudantil e em conformidade com as necessidades da sociedade
de uma forma geral face aos cursos que devem ser ministrados para dar
soluções as dificuldades ou problemas que a mesma enfrenta.
A principal actividade é o ensino onde são leccionados vários cursos como
Gestão Empresarial, Contabilidade, Gestão de Recursos Humanos, Finanças,
Informática de Gestão, Estatística e Planeamento e Administração do Estado e
Local e Autarquias.
Neste trabalho buscou-se desenvolver e implantar uma ferramenta de gestão
escolar (Gestschool) que se caracteriza em duas partes: página cliente e um
painel de controlo.
Página cliente: A página cliente é a parte do sistema que se apresenta em
disposição para o mundo todo através da internet, basta ter acesso ao domínio
da página cliente, ali o usuário não precisa de uma senha para aceder e
visualizar as informações disponíveis na mesma. A página cliente tem como
objectivo fornecer as informações úteis para a comunidade estudantil assim
como a sociedade no geral, informações como: publicar candidaturas, informar

14
eventos por se realizar ou já realizados, números actuais dos estudantes
matriculados e que já terminaram e disponibilizar uma linha de contactos tais
como números telefónicos, emails ou mensagem directa e formulário de
candidaturas.
Painel de controlo: Já o painel de controlo é o foco principal deste trabalho,
para se ter acesso nesta área restrita o usuário precisa de uma senha e um
nome de usuário previamente registado, quando o usuário fornecer os dados
para ter acesso ao painel de controlo, o sistema faz a devida verificação se os
dados que estão sendo fornecidos constam no banco de dados, se constam o
usuário tem acesso se não o sistema informa ao usuário que não encontrou um
credencial com os dados fornecido e o problema ter sido: [1] o nome ou a
senha do usuário foi mal digitado, [2] o usuário esqueceu – se da senha, [3] o
usuário não existe no banco de dados. Se o problema for caso 1 ou 2 o usuário
pode enviar recuperar a sua senha através de um correio electrónico válido que
foi fornecido ao sistema.
Todavia mediante a exigência do mercado e a necessidade de modernizar as
instituições com tecnologias e métodos que promovam crescimento
consequentemente optimizar os riscos de perdas de dados e incrementar
eficiência, formulou-se um problema científico: Como automatizar e melhorar
o processo de gestão e publicação de informações do Instituto Médio
Politécnico Privado Poli Disciplinar-Catumbela nos mais diversos sectores que
a compõe? E em concordância com o problema de investigação, definiu-se
como objecto do estudo:
O processo de gestão e Publicação de informação no Instituto Médio
Politécnico Privado Poli Disciplinar - Catumbela.
No entanto identificou-se como campo de acção: Áreas dos Departamentos
Pedagógico e Finanças do Instituto Médio Politécnico Privado Poli Disciplinar -
Catumbela.

15
Para atingir tais metas, foi estabelecida os seguintes objectivos:
Objectivo geral:
Desenvolvimento de uma Aplicação Web para gestão e publicação de
informação no Instituto Médio Politécnico Privado Poli Disciplinar - Catumbela.
Objectivos específicos:
 Revisar Bibliografia;
 Estudar as ferramentas necessárias para o desenvolvimento do sistema;
 Elaborar o projecto da Engenharia de software;
 Implementar a aplicação;
 Testar a aplicação;
Métodos:

Para elaboração deste trabalho, utilizou-se o Racional Unified Process (RUP)


como metodologia de desenvolvimento de software, auxiliado por outros
diferentes métodos e técnicas de investigação que permitiram a busca e
recolha das informações necessárias, tais métodos são:

Análise e síntese: Para (Andrade, 2003), a análise é o processo mental de


decomposição, separação das partes de um todo, visando compreende-lo
melhor. Ele ainda acrescenta que a síntese é a operação que consiste em
recompor o um todo a partir dos seus elementos;
Este método ajudou-nos a ter uma visão geral do que se vai tratar ao longo de
todo percurso, permitiu saber das dificuldades quanto à gestão e publicação da
informação dos departamentos pedagógico e de finanças do Instituto Médio
Politécnico Privado Poli Disciplinar - Catumbela e dividi-los para uma
construção eficaz de respostas aos problemas mais corrente, para obter um
sistema que se ajusta a realidade das dificuldades concretas.
Método histórico: O método histórico consiste em investigar acontecimentos,
processos e instituições do passado para verificar a sua influência na
sociedade de hoje, pois as instituições alcançaram sua forma actual de
alterações de suas partes, componentes ao longo do tempo, influenciadas pelo
contexto cultural particular de cada época. Seu estudo deve remontar aos
períodos de sua formação e de suas modificações (Lakatos, 2003).

16
Este método permitiu compreender como Instituto Médio Politécnico Privado
Poli Disciplinar – Catumbela comunica-se, conhecer os antecedentes históricos
no processo de interacção com os estudantes e a sociedade de forma geral
para obter um sistema que ajuda a tornar a instituição efectivamente de escola
inclusiva e participativa. Também serviu para compreender outros sistemas
similares já desenvolvidos de forma a criar um sistema que se adequa num
contexto actual ultrapassando assim algumas limitações dos sistemas
anteriores.

Método indutivo: é um processo mental por intermédio do qual, partindo de


dados particulares, suficientemente constatados, infere-se uma verdade geral
ou universal, não contida nas partes examinadas. Portanto, o objectivo de
argumentos indutivos é levar a conclusão cujo conteúdo é muito mais amplo do
que o das premissas na qual se basearam (Marconi & Lakatos, 2003);

Este método permitiu generalizar questões encontradas ao longo da


investigação, uma vez a aplicação resultante é versátil e abrangente, isto é,
pode ser aplicada a qualquer que presta serviço similar. Serviu também para
incrementar outras funcionalidades que permitirão cautelar outras
preocupações futuras do Instituto Médio Politécnico Privado Poli Disciplinar -
Catumbela além das que foram manifestadas.
Técnicas de investigação:

Observação: É o procedimento de investigação que consiste em recolher


dados verbais junto de grupos, ou amostras de sujeitos, escolhidos em função
de objectivos precisos, com o fim de descrever e de analisar uma situação
particular (Marconi & Lakatos, 2003)

Esta, permitiu não só ver e ouvir, mas também examinar os factos relativos ao
funcionamento dos departamentos de Pedagogia e Finanças e em função do
problema desta investigação. Permitiu fazer uma observação de como se gere
e são publicadas as informações, possibilitou no trabalho em desenvolver uma
aplicação que se reflicta aos anseios da comunidade académica e a instituição
de modo particular.

Entrevista: É o encontro entre duas ou mais pessoas com finalidade de que


uma delas obtenha informação a respeito de um determinado assunto ou

17
problema, mediante uma conversa de carácter profissional. A entrevista pode
ser: padronizada e não padronizada (Marconi & Lakatos, 2003).

Esta técnica de investigação possibilitou, através de perguntas informais e não


padronizadas as entidade no processo de gestão e publicação de informações,
saber o nível de conhecimento dos funcionários sobre as Tecnologias de
Informação e Comunicação (TIC) e possibilitou conhecer os problemas
correntes para construir uma solução eficaz que venha trazer novas práticas de
trabalhos para uma administração e prestação de serviços produtivo,
proporcionando interfaces simples e legendas na operacionalidade do sistema.

Pesquisa bibliográfica: A pesquisa bibliográfica, ou de fontes secundárias


abrange toda biblioteca já tornada pública em relação ao tema de estudo,
desde publicações avulsas, boletins, jornais revistas, livros, pesquisas,
monografias, teses, materiais cartográficos, etc. Inclusive os meios de
comunicação orais: Rádios, gravações em fita magnética e audiovisuais: vídeo
tutoriais, sua finalidade é colocar o pesquisador em contacto direito com tudo o
que foi escrito, dito ou filmado sobre determinado assunto, inclusive
conferência seguidas de debates que tenham sido transcritos por alguma
forma, quer publicadas, quer gravadas (Marconi & Lakatos, 2003).

Esta técnica permitiu realizar a busca de informação sobre meios informáticos


e certos livros que auxiliaram no desenvolvimento desta aplicação. Foi
importante durante o processo de busca da maior parte das informações
contidas nesta monografia, as definições das ferramentas utilizadas e dos
artefactos utilizados durante a engenharia de software.

18
Contribuição prática do Sistema (Gestschool).
Com a aplicação implementada perspectiva-se um contributo muito importante
porque aumentarão a eficiência e eficácia para aquisição de qualquer
informação, proporcionando também facilidade aos usuários do sistema
através de uma interface amigável e simples. Minimizará as dificuldades que a
instituição enfrenta como gerir o fluxo de informações, publicá-las e actualiza-
las para dar respostas certas e rápidas em tempo oportuno.

Contribuirá também sobre tudo no âmbito social ultrapassando o factor


distância, ao aceder a página em qualquer lugar determinado. Para os
estudantes já matriculados além de terem acesso as informações disponíveis
na página cliente ao aceder o domínio da aplicação uma vez cadastrados
também terão a oportunidade através de um “menu propinas” saberem da
situação da mesma se está actualizada ou não uma vez feita o respectivo
pagamento, que pode também submeter o recibo de pagamento para a sua
actualização na aplicação e confirmar matrículas em qualquer ponto tendo
acesso a internet. Esta funcionalidade é exclusiva porque para ter acesso a
este menu deve estar cadastrado e possuir uma senha.

Já ao Administrador do Sistema que tem todos os privilégios, facilitará na


obtenção de relatórios ou as análises das actividades realizadas em um
determinado tempo em qualquer lugar que estiver. O sistema ainda
proporcionará a qualquer pessoa candidatar-se a uma das vagas disponíveis
tanto para um curso ou emprego desde que reúna requisitos necessários.

19
Estrutura do trabalho.

Este trabalho de investigação está dividido em dois capítulos fundamentais.


Antecedido por uma introdução, o primeiro (1) capítulo faz menção a
fundamentação Teórica com base em vários autores. O mesmo capítulo faz
uma descrição do objecto de estudo, os métodos utilizados e definem-se os
principais conceitos e fundamentos das ferramentas utilizadas para o
desenvolvimento do sistema de gestão.
No segundo (2) capítulo descreve-se a solução da proposta, apresentado ao
Instituto Médio Politécnico Privado Poli Disciplinar – Catumbela. Definiu-se os
processos de negócio, os actores e trabalhadores do negócio e os diagramas
de casos de uso do negócio. Descreveu-se as características do sistema
proposto a ser realizado, fez-se a análise e desenho do sistema para a
construção do sistema de gestão, processo este que percorre etapas diversas
para o seu desenvolvimento.

20
CAPÍTULO 1. FUNDAMENTAÇÃO TEÓRICA

Este capítulo dedicou-se em apresentar a descrição do método de estudo e


descrever uma abordagem das tecnologias que serviram de suporte para o
desenvolvimento do Aplicativo de gestão do Instituto Médio Politécnico Privado
Poli Disciplinar - Catumbela. Os princípios e conceitos teóricos necessários
para o desenvolvimento do sistema são aqui definidos, sobretudo os
considerados fundamentais para a apresentação da investigação realizadas
durante este trabalho.

1.1 Sistemas de gestão numa organização.

O sistema de gestão é um programa de computador considerado um software


inteligente de alta performance, que veio para automatizar os processos
internos e externos de uma empresa ou instituição de ensino, para facilitar
actividades rotineiras que antes exigiam um trabalho mais exaustivo (Rascão,
2004).

Para (Cabello, 2007), os sistemas de gestão são classificados de acordo com


suas características na faixa de funcionalidade, complexidade e tipo de
tecnologia. No entanto, o mercado dos sistemas de gestão oferece outra
classificação, a ser tomada nesta investigação, esta é:

Aplicações básicas de gestão.

Suite de gestão.

Sistema Integrado.

Cada uma dessas classificações é dada pelo tamanho e da quantidade de


informações intercambiadas, especificando-as seguidamente:

Aplicações básicas de gestão: são programas que informatizam uma área ou


actividade específica de uma organização, abrange uma gama de
funcionalidades comuns na gestão de uma pequena instituição. Operam de
forma isolada, sem integração com outros sistemas de informação. Várias
dessas aplicações básicas de gestão podem ser encontradas no directório do
programa no site: http://ciberconta.unizar.es/enlaces/es/TecProg.
21
Suites de gestão: é um conjunto de aplicações que abrangem diversas áreas e
actividades de uma organização e apoia o intercâmbio e partilha de dados.
Cada programa funciona de forma autónoma, mas pode haver troca de dados
entre aplicações. Há uma grande variedade no mercado: contabilidade,
faturamento e ponto de venda de loja, folha de pagamento e recursos
humanos, gestão de negócios e contactos com clientes. Exemplos destas
suites de gestão são: Suite Sage One da empresa SP-Sage, Suite Contawin da
empresa Islasof.

Sistemas de gestão integrados: são sistemas que tentam integrar a gestão de


quase todas as áreas de uma organização em uma única solução. Entre os
sistemas integrados de gestão incluem: ERP (Enterprise Resource Planning),
CRM (Customer Relationship Management) e SCM (Supply Chain
Management). Estes sistemas de gestão prevêem uma filosofia inclusiva.

Uma vez vista as definições anteriores, o sistema em estudo perspectivou-se


num sistema de gestão Integrado.

O modelo ERP (Planeamento de Recurso Corporativo), integra todos os dados


e processos de uma organização em um único sistema. A integração pode ser
vista sob a perspectiva funcional (sistemas de finanças, contabilidade, recursos
humanos, fabricação, marketing, vendas, compras etc.) e sob a perspectiva
sistémica (sistema de processamento de transacções, etc.), (Oliveira &
Hatakeyama, 2007).

O ERP é uma plataforma desenvolvida para integrar os diversos


departamentos de uma organização, possibilitando o armazenamento de todas
as informações do negócio.

22
1.2 Breve descrição do objecto de Estudo.

Este trabalho enquadra-se no campo de gestão de sistemas escolares e


Processo de automatização à gestão dos Departamentos de Pedagogia e
Finanças do Instituto Médio Politécnico Privado Poli Disciplinar – Catumbela,
com a necessidade de melhorar a gestão dos mais diversos sectores que a
instituição comporta.
Propôs-se em desenvolver este tema tendo em conta as condições actuais da
Instituição em questão, esta Instituição ainda usa os métodos tradicionais de
gestão no entanto tem se registado anomalias e falta de transparência na
gestão escolar, atrasos na hora de lavrar os relatórios e um dispêndio
exagerado de papéis na divulgação de informações e no recrutamento de novo
pessoal assim como no marketing da instituição, e contudo este software
impulsionara um nível crescente de dinamismo e organização das actividades.
Do ponto de vista social o trabalho ira possibilitar na economia e gestão de
tempo dos estudantes e a sociedade de forma geral, já na instituição é quanto
à sua modernização. Do ponto de vista económico possibilitara a instituição
organizar as suas finanças através dos relatórios financeiros, fornecidos pelo
sistema. O sistema integrado de gestão já é utilizado por diversas corporações
de médio e grande porte, é um instrumento muito eficaz para integrar várias
áreas de uma organização, aumentando a confiabilidade e a produtividade
(Amaral & Zorrinho, 2002).
Um sistema de informática é uma necessidade nas organizações, visto que as
instituições cada vez mais precisam saber as preferências da sociedade face
as soluções de determinados problemas, priorizarem investigações dos
problemas corrente que afligem a sociedade e também nas tomadas de
decisões como um diferencial competitivo.

23
1.3 Descrição das ferramentas utilizadas.
No processo do desenvolvimento deste sistema proposto, procurou-se
seleccionar as melhores ferramentas para desenvolvê-lo, sendo que será uma
aplicação Web diferente dos softwares desktop, desta forma ira possibilitar ao
administrador da instituição obter os relatórios ou as análises das actividades
realizadas em um determinado tempo em qualquer lugar que estiver.
A seguir temos algumas tecnologias ou ferramentas utilizadas neste trabalho e
suas actividades.

1.3.1 Metodologia para o Desenvolvimento do Projecto.


Pode-se dizer que a metodologia de desenvolvimento abrange todo o ciclo de
vida do projecto em questão, incluindo todas as regras criadas, os padrões
adoptados, ferramentas que serão utilizadas, e todos os pontos relevantes para
a definição do processo de desenvolvimento completo (Jacobson, 1998)

Neste projecto optou-se por utilizar o Rational Unified Process (RUP), por se
tratar de uma metodologia com etapas bem definidas e cada uma delas com
objectivos bem definidos. Para a RATIONAL SOFTWARE CORPORATION,
“...Ele oferece uma abordagem baseada em disciplinas para atribuir tarefas e
responsabilidades dentro de uma organização de desenvolvimento. Sua meta é
garantir a produção de software de alta qualidade que atenda às necessidades
dos usuários dentro de um cronograma e de um orçamento previsíveis.” O RUP
não foi aplicado em sua plenitude, por se tratar de uma metodologia bastante
extensa e com grande número de artefactos gerados, leia-se documentos,
relatórios ou diagramas. Alguns deles foram considerados desnecessários,
fazendo uso somente dos relevantes e fundamentais (Sommerville, 2007).

Em seguida serão listadas as 4 fases do RUP na visão de (Sommerville, 2007)

Figura 1- As fases de metodologias RUP.

24
.
Fase de concepção: Esta fase abrange as tarefas de comunicação com o
cliente e planeamento. É feito um planeamento de projecto avaliando os
possíveis riscos, as estimativas de custos e prazos. Estabelecendo as
prioridades, levantando os requisitos do sistema preliminarmente analisa-los.
Assim, haverá uma concordância das partes interessadas na definição do
escopo do projecto, onde são examinados os objectivos para se decidir sobre a
continuidade do desenvolvimento.
Fase de Elaboração. Abrange a Modelagem do modelo genérico do processo.
O objectivo desta fase é analisar de forma mais detalhada a análise do domínio
do problema, revisando os riscos que o projecto pode sofrer e a arquitectura
dos projectos começando a ter sua forma básica. As Indagações feitas como o
plano do projecto é confiável, os custos são admissíveis? São esclarecidas
nesta etapa.
Fase de construção: Desenvolve ou adquire os componentes de Software. O
principal objectivo desta fase é a construção do sistema de software, como foco
de desenvolvimento de componente e outros recursos do sistema. É na fase da
construção que ocorre o processo da codificação do sistema.
Fase da transição: Nesta fase é feita a entrega do software para o utilizador
para testar a funcionalidade do sistema. O objectivo desta fase é disponibilizar
o sistema, para ser compreendido pelo utilizador. Nesta fase os usuários do
sistema são submetidos a um treinamento e também a realização de testes da
versão beta do sistema visando garantir que o mesmo possua o nível
adequado de qualidade.
Cada uma dessas fases inclui um maior ou menor grau, quanto aos fluxos de
trabalhos do RUP destes temos:
Modelagem do negócio: Descreve os processos de negócio, identificando
quem participa e as atividades que requerem automatização.
Requerimentos: Define o que é que o sistema deve fazer para o qual se
identificam as funcionalidades requeridas e as restrições que se impõem.
Nesta fase foram listados todos os requisitos do sistema, baseando-se na
solicitação inicial do cliente. Através desta etapa as funcionalidades
necessárias foram listadas e descritas, proporcionando uma base para o
desenvolvimento, detalhadamente o avanço para as próximas fases. A

25
elaboração e descrição dos casos de uso ocorre neste momento, as regras de
negócio são bem definidas e o protótipo do sistema é elaborado. Neste ponto o
cliente avaliou os casos de uso, visando o entendimento de ambas as partes
dos objectivos e do escopo do sistema. Sendo aprovados os casos de uso e o
protótipo, a próxima fase pode ser iniciada.
Análise e desenho: Descreve como o sistema será realizado a partir da
funcionalidade prevista e as restrições impostas (requerimentos), por isso
indica com precisão o que se deve programar.
Com os casos de uso finalizados, iniciou-se a análise do sistema, onde foi
definida a sua arquitectura. Nesta definição de arquitectura, foi feita a divisão
do desenvolvimento do sistema em camadas, para a melhor divisão e
centralização das responsabilidades de cada camada. Esta divisão foi baseada
no modelo em N-Camadas, utilizando na prática o modelo em três camadas.
Estas foram especificadas em camada de apresentação ou interface com o
usuário, camada de negócio e camada de acesso a dados. A camada de
apresentação é a responsável pelas validações de tela e apresentação de
dados ao usuário. A de acesso a dados realiza a comunicação directa com os
dados armazenados em banco. A de negócio realiza a comunicação entre
essas duas camadas, recebendo as requisições da interface, realizando todo o
processamento lógico do sistema. Ela entrega e busca informações da camada
de acesso a dados e, tratando-as conforme seja necessário, devolve os dados
para a camada de aplicação. A camada de aplicação nunca realiza solicitações
directas à camada de acesso a dados, e vice-versa. Nesta fase também foram
desenvolvidos os diagramas essenciais do sistema, como o diagrama de
classes, sequência, de estado, entre outros, e também a modelagem do banco
de dados.

Implementação: Define como se organizam as classes e objectos em


componentes, quais nodos se utilizarão e a localização neles dos componentes
e a estrutura de capas da aplicação.
Possui como objectivo a implementação propriamente dita do sistema
modelado, baseando-se na documentação gerada nas fases anteriores. Aqui
foram aplicados conhecimentos sobre as regras de negócio especificadas, e
feita a modularização do sistema para possibilitar a melhor divisão de tarefas,

26
visando também facilitar a futura integração entre os módulos desenvolvidos.
Foram analisados os casos de uso e os diagramas detalhadamente, e foi
implementado exactamente o que estava especificado. Quando da ocorrência
de inconsistências na documentação, o assunto foi discutido e, quando
necessário, a documentação foi alterada para se adaptar a real necessidade
identificada.
Prova: Busca os defeitos ao longo do ciclo de vida. Antes de colocar o sistema
em produção, houve necessidade de realizar os testes, o usuário ou os
funcionários tiveram de ter contacto com o sistema.
Instalação: Finalmente, o sistema deve ser implantado no cliente, levando em
conta o ambiente necessário e os pré-requisitos definidos inicialmente para seu
correcto funcionamento.

27
1.3.2 Visão Geral da UML
A linguagem UML foi escolhida por ser a linguagem padrão para a elaboração
da estrutura de um projecto de software. Esta linguagem indica como criar e ler
modelos bem formulados, que permitem a compreensão de um sistema.
Segundo os autores (Nunes & O`neil, 2004) a UML é uma linguagem destinada
a visualizar, especificar, construir e documentar os artefactos de um sistema
complexo de Software.

Além disto, como afirmam (Nunes & O`neil, 2004) a UML, apesar de sua
expressividade, não é de difícil entendimento e manuseio.

Os diagramas aqui apresentados foram desenvolvidos utilizando o Software


StarUML, uma plataforma que utiliza a linguagem UML 2.0 em sua notação. Tal
programa foi escolhido por apresentar a possibilidade de criação de todos os
diagramas necessários neste projecto, além de ser um Software de fácil acesso
e possuir uma versão gratuita.

Análise de Requisitos
Nessa fase que capturamos as expectativas dos usuários sobre o sistema a ser
desenvolvido. As ideias de caso de uso, actores. Serão aqui capturadas ideias
representadas como funções do sistema através de notações chamadas
também as interacções do sistema junto a usuários ou outros sistemas
demonstrados através de actores. Com a visão dos diagramas montados nessa
fase o cliente terá uma ideia dos recursos que estarão disponíveis na aplicação
e ficará mais fácil o seu entendimento a respeito dos requisitos solicitados.
Nessa fase do projecto estudam-se quais serão as entidades necessárias para
o funcionamento do sistema. Ou seja, aqui descobrimos superficialmente as
classes que irão compor o sistema. Para isso temos o diagrama de Classe
representando as entidades e seus relacionamentos (Jacobson, 1998).
Design
Aqui se explora as soluções mais técnicas como descrição mais detalhada do
relacionamento do sistema junto aos sistemas ligados e possível adição de
novas classes para completar o projecto a partir para codificação do sistema.

28
Programação
Nessa fase toda a parte já elaborada será convertida em código. Estudam-se
todas as classes e seus relacionamentos e a partir disso o código é gerado.
Teste
Nessa fase são realizados os testes de unidade e os testes de integração. Os
testes de unidade são aplicáveis individualmente em cada classe. Já os testes
de integração são aplicados sobre um conjunto de classes e seus recursos (por
exemplo, conexão a banco de dados). Por fim o software é testado pelo usuário
final para verificar se o que foi estabelecido no modelo de diagrama do caso de
uso realmente foi atingido.
A UML permite ainda responder aos requisitos técnicos relevantes para uma
evolução dos sistemas informáticos, como a arquitectura da aplicação
informática, a capacidade de reutilização dos componentes desenvolvidos e a
independência em relação ao equipamento. Por estas e outras razões
apresentadas a UML justifica assim a utilização do termo linguagem unificada
(Martins, 2006), o software utilizado foi o StarUML.

1.3.3 StarUml
StarUML é uma ferramenta Open Source utilizada para desenvolvimento rápido
de projectos modelados pela UML. É uma das ferramentas mais usadas para
criar os diagramas e casos de usos do sistema entre outros requisitos
(Rodrigues, 2012).
A StarUml é uma ferramenta usada para desenhar os diagramas de Caso de
uso, diagramas de Actividade, sequência e Colaboração.

Servidores
O termo servidor é largamente aplicado a computadores completos, embora
um servidor possa equivaler a um software (por exemplo, um servidor de base
de dados) ou partes de um sistema computacional, ou até uma máquina que
não seja necessariamente um computador.

29
1.3.4 Sistemas de Gestão de Base de Dados.
Todas as organizações, por menor que sejam, possuem quantidades cada vez
maiores de dados e informações a armazenar. Contudo, a manipulação destas
informações se tornou quase impossível de ser realizada manualmente
(através de papel principalmente), pois de erros principalmente ocasionado
pelo desgaste do funcionário em conseguir recuperar informações requisitadas.
Neste sentido, torna-se mais fácil encontrar a informação numa base de dados
que recorre a uma das tecnologias de informação de maior sucesso e
confiança. Ou seja, sistemas de bases dados estendem a função do papel ao
guardar a informação em computadores.
Um Sistema de gestão base de dados (SGBD) é um conjunto de aplicações
informáticos utilizadas para definir, aceder e gerir os dados existentes numa
base de dados (Damas, 2005). Neste contexto, por base de dados se entende
uma colecção de dados estruturados, organizados e armazenados de forma
persistentes (Damas, 2005).
Características ou requisitos de um sistema de gestão de base de dados
(SGBD):
 Eficiência: ser capaz de aceder, processar e alterar grandes volumes de
dados de forma eficiente;
 Robustez: manter os dados de forma consistente, mesmo após falhas de
hardware ou software;
 Controlo de acesso: controlar o acesso dos utilizadores;
 Persistência: permitir que os dados armazenados durem por longos
períodos.

Alguns gestores de bases de dados mais utilizados nas diversas plataformas e


tecnologias actualmente:
 MySQL- segundo (Pereira & Poupa, 2013) é um sistema de gestão de
base de dados relacionais, suporta a linguagem de consulta Estrutural (SQL,
strutured Query Language), é open source e é um dos sistema de gestão de
base de dados mais utilizados como profissional. O Mysql foi desenvolvendo e
é disponibilizado pela empresa MySQL AB limited company, que actualmente

30
vende um conjunto de serviços e produtos relacionados com tecnologia
MySQL.
Oracle - é o mais antigo gestor de base de dados no mundo. Com diversas
ferramentas para desenvolvedores nas diferentes linguagens de programação,
como consta na documentação e sítio na web Oracle corporation de suporte de
clientes.

Postgre- É o que chamamos de SGBDR (alguns o chamam de objecto-


relacional), ou seja, é um Sistema de Gerência de Bancos de dados Relacional
estendido e livre. "R" porque ele adopta uma abordagem relacional. A
abordagem em um SGBD é caracterizada pela forma como os dados estão
organizados nesse SGBD. Em um SGBD relacional, os dados estão
organizados em forma de tabelas (linhas e colunas) e suas relações (chaves
estrangeiras). Notem que essa é uma definição bastante simplista de um banco
de dados relacional (The_PostgreeSQL_Devolopment_Group, 2018).

SQLite - é uma biblioteca de código aberto (open source) desenvolvido na


linguagem C que permite a disponibilização de um pequeno banco de dados na
própria aplicação, sem a necessidade de acesso a um SGDB separado. A
estrutura de banco junto com a aplicação é denominada de “banco de dados
embutido” e é indicada para aplicações de pequeno porte, que utilizam poucos
dados. A grande vantagem dos bancos de dados embutidos está em sua
simplicidade: é mais prático implementar e administrar do que a implementação
de SGDB separados, utilizando soluções como SQL Server e Oracle. Por outro
lado, a performance e limitação de recursos são desvantagens do SQLite e
soluções semelhantes (Orozco & Adrían, 2013).

Contudo o sistema de gestão de bases de dados utilizado no projecto foi o


MYSQL por ser uma ferramenta bastante eficiente porque proporciona ao
projecto mas interactividade com o banco de dados, inserções e consultas de
informações em uma grande lista existente no sistema, e com os recursos mais
complexos de procedimento de dados e suportes externos.

O MySQL se tornou o mais popular banco de dados open source do mundo


porque possui consistência, alta performance, confiabilidade e é fácil de usar.
Actualmente é usado em mais de 6 milhões de instalações em todos os

31
continentes (inclusive na Antárctica), que vão desde instalações em grandes
corporações à específicas aplicações embarcadas. Além disso, o MySQL se
tornou a escolha de uma nova geração de aplicações, que utilizam o modelo
LAMP.(Linux,Apache,MySQL,PHP).
O MySQL funciona em mais de 20 plataformas, incluindo Linux, Windows, HP-
UX, AIX, NetWare, dando a você flexibilidade e controlo. Se você é novo na
tecnologia de banco de dados ou um colaborador, ou um DBA experiente, a
MySQL oferece uma gama completa de produtos certificados, testados e
homologados pela própria MySQL AB, além de treinamento consultoria e
suporte para fazer o seu projecto bem sucedido. O MySQL é de utilização
gratuita (Pereira & Poupa, 2013)

1.3.5 Servidor web


Servidor web é um programa de computador responsável por armazenar e
trocar informações com outras máquinas.
Existem várias opções dentro destas categorias de programas. A seguir são
descritos alguns deles.
1.3.5.1 IIS
A internet Information Server (IIS), faz parte da “família” Microsoft Windows
Server que é uma integração de servidores local e web. O IIS é um software
para criação e hospedagem de aplicações web dinâmico, gestão de FTP e
SMTP. O IIS é responsável pelo processamento das páginas ASP, podendo
também processar páginas PHP, desde que este recurso seja instalado
(Microsoft_Corporation, 2018).
1.3.5.2 Apache
O Apache é o software de servidor web mais utilizado. Desenvolvido e mantido
pela Apache Software Foundation, o Apache é um software de código aberto
disponível gratuitamente. Ele roda em 67% de todos os servidores web no
mundo (The_Apache_Software_Foundation, 2017). É rápido, confiável e
seguro. Pode ser altamente personalizado para atender às necessidades de
muitos ambientes diferentes, usando extensões e módulos.
As principais características é por ser multiplataforma, robustez, gratuita e
possuir a capacidade de adaptabilidade e boa documentação. Tem vantagens
sobre os outros servidores, como código fonte completa e uma licença

32
irrestrita. É compatível com a especificação http/1.1, permite mudanças nas
suas características mesmo as mais internas através da utilização de módulos
(isso implica em flexibilidade) e tem sua própria API padronizando toda
programação interna (The_Apache_Software_Foundation, 2017).

1.3.6 Tecnologias back-End

A linguagem de programação permite que o programador especifique


precisamente sobre quais dados os computadores poderão actuar, como estes
dados serão armazenados ou transmitidos, e quais acções devem ser tomadas
sobe várias circunstâncias.

A linguagem de programação é um conjunto de regras sintácticas e semânticas


usadas para definir um programa de computador. Hoje existem várias
linguagens de programação tais como: C, C++, Java, python, C#, PHP,DELPHI
entre outros (Fischer, 1993).

Java
Java é uma linguagem base de desenvolvimento para todos os aplicativos em
rede e é o padrão global de implementação e distribuição de aplicações, jogos,
dispositivos móveis, conteúdo baseado em web, software corporativos, etc. O
Java possui uma vasta comunidade de desenvolvimento e possibilita
desenvolver, implantar e usar aplicações e serviços estimulantes (Balagtas,
2013)

PHP
A Sigla PHP significa Pré-Processador de Hipertexto. O PHP é uma linguagem
de programação para gerar documentos HTML; O PHP é interpretado e
executado do lado do servidor, possibilitando o acesso de base de dados. Pode
ser executada em qualquer das plataformas: Unix, Linux, Windows, Solaris
HPUX. Pode ser executado a partir de diversos servidores de internet, entre
eles o Apache e o IIS. (Pereira & Poupa, 2013)

Neste trabalho, para o desenvolvimento da aplicação web do Instituto Médio


Politécnico Privado Poli Disciplinar - Catumbela a linguagem de programação
escolhida é o Python e o Django como framework.

33
Porquê o Python?

Python é uma linguagem dinâmica, interpretada, robusta, multiplataforma, é


uma linguagem de programação orientada a objectos de alto nível, e com grau
de abstracção relativamente elevado, longe do código de máquina e mais
próximo à linguagem humana. Esta linguagem foi criada por Guido Van
Rossum em 1991. Hoje o desenvolvimento é comunitário e aberto com a ong
Python Software Fundation como gestor do projecto. O nome Python foi
inspirado na cobra Python, grupo humorístico britânico criador do programa
Monty Python’s Flying Circus. Apesar de ser associado facilmente ao réptil de
mesmo nome, sua tradução para o português difere muito: Pitão ou piton
(Jaiswal, 2014)

Python é uma linguagem de programação que não é necessário compilar seu


código para que a máquina entenda o Python conta com um interpretador que
converte o script python em code máquina.

 Roda em ambientes Linux, Windows, MacOS, smartphones,


celulares, e outra infinidade de sistemas.

 Por padrão ela é uma linguagem totalmente orientada a objectos, ela


permite que o programador desenvolva de forma procedural ou
funcional.

 É Software Livre! Creio que dispensa maiores detalhes, mas posso


adiantar que é gratuita, e sempre será!

 Possui código aberto, então você não precisa se preocupar quanto a


isso, ou sobre a “estabilidade” da linguagem no mercado, já que
possui uma imensa comunidade ao redor do globo.

 O Python é uma linguagem multiuso, pois permite criar desde


aplicativos desktop a websites.

34
Vantagens
Python é uma linguagem dinâmica, tem uma sintaxe simples, transparente e
muito elegante. Seus blocos de código são definidos através de indentação
Python. Também possui um código limpo o que torna a leitura mais fácil;

 Foi feito para ser usado na internet;

 Possui uma dinâmica por não precisar declarar variáveis, economiza


tempo porque o interpretador faz essa tarefa;

 Um exemplo muito positivo é a possibilidade de somar uma string


com um inteiro, gerando assim uma excepção, que é possível
também ser tratada. Isso porque a linguagem não mistura os vários
tipos de variáveis;

 Comunicação Padronizada: XML.

 O Python, por ser uma linguagem de alto nível, facilita a utilização.


Instalação
Python já vem instalado em programas como OpenOffice.org e o executável
python.exe é encontrado no mesmo directório que os outros aplicativos.
A versão mais actual 3.4.2 está disponível em www.python.org/downloads/
para download gratuito para usuários Windows.
A instalação é muito simples, basta seguir as instruções que aparecem na tela
e clicar em avançar sempre.
O usuário para Linux, Python já vem instalado na maioria das distribuições.
Caso a sua versão não venha com Python você pode abrir o terminal e digitar
sudo apt-get install para instalação.

35
Framework
O framework é um conjunto de códigos abstractos ou genéricos, desenvolvidos
em alguma linguagem de programação, que se relacionam entre si para
entregar funcionalidades específicas ao desenvolvedor (Bendoraitis, 2014)

Django é um framework gratuito e de código aberto para a criação de


aplicações web, escrito em Python. É um framework web, ou seja, é um
conjunto de componentes que ajuda a desenvolver de app com robustos e
proporciona um ambiente cômodo para criar aplicações mais dinâmicas.
Django é uma da mais popular web framework mais usado hoje em dia. Isto
pode construir poderosos e grandes aplicativos, tais como Pinterest, Instagram,
Disqus, e NASA. Como uma pequena linha de código, pode-se rapidamente
construir uma funcionalidade e segurança de websites ou aplicativos que pode
escalar para milhões de usuários. Esta Framework usa o padrão MVT, que nos
capacita a ter uma arquitetura coerente (Bendoraitis, 2014)

Hoje, grandes organizações bem como o Instragram, website móvel,


Mozilla.org, e Openstack org estão usando Django.
A Framework MVC
Antes de Framework MVC existir, a programação web misturava código da
base de dados com o código principal da página. Isto retornava uma página
HTML para o usuário. Mesmo se nós estamos armazenando ficheiro CSS e
Javascript em ficheiro externos. Os códigos de linguagem do lado de servidor
são armazenados em um arquivo que são partilhados entre três linguagens:
Python, SQL, HTML.
O padrão MVC foi criado para separar lógica da representação e tem uma
arquitectura interna que é mais tangível e real. O Modelo Visão Controlo (MVC)
representa a três leis de aplicação que o paradigma recomenda:

36
 Modelo - este representa a organização dos dados na base de dados.
Em poucas palavras, nós podemos dizer que cada modelo define uma tabela
na base de dados e a relação entre outros modelos. Isto é bom para eles
porque todos dados estão armazenados na base de dados.
 Visão – este contém todas as informações que serão enviadas para o
cliente. Eles fazem a visão que o documento HTML final será gerado. Nós
podemos associar o código html com a visão.
 Controlo: este contém todas as acções executadas por servidor e não
visível para o cliente. O controlo verifica se o usuário está autenticado ou isto
pode gerar o código HTML vindo das Templates.

Em seguida é apresentado o esquema do padrão MVC.

Figura 2- Esquema da Framework MVC.


Os passos seguidos em uma aplicação com o padrão MVC são as seguintes:
1. O cliente envia um pedido para o servidor pedindo para apresentar uma
página.
2. O controlador usa a base de dados através do modelo. Isto permite criar, ler,
actualizar ou apagar qualquer coisa guardado ou aplicar quaisquer restrições
nos dados.
3. O modelo envia dados para a base de dados; por exemplo, ele envia uma
lista de informações de um determinado departamento.
4. O controlo injecta dados dentro da visão (views) para gerir.
5. A visão (views) por sua vez retorna este conteúdo dependendo dos dados
enviados pelo controlador.

37
6. O controlador retorna o conteúdo em HTML para o cliente.
O padrão MVC permite-nos ter coerência por cada trabalho no projecto. Na
agência há um designer e desenvolvedor, o designer web se responsabiliza
nas visões (views). Fornecendo a visão apenas em código HTML, ele não se
preocupa com os códigos do desenvolvedor. Já o desenvolvedor edita seus
modelos (models) e controlador (controllers).
Django, em particular, usa um padrão MVT. Neste padrão, a visão (views) são
substituídas pelas Templates e os controladores pelas visão. Neste trabalho
usou-se este padrão. Portanto nossos códigos HTML estarão nas Templates. E
os códigos na linguagem python estarão nas views e models.

Figura 3 – Esquema da Framework Django padrão MVT.

38
1.3.7 Tecnologias front-End
O front-end é responsável por colectar a entrada do usuário em várias formas e
processa-las e adequa-las a uma especificação em que o back-end possa
utilizar, neste projecto utilizou-se as seguintes tecnologias: HTML, CSS,
Javascript.
HTML
HTML é a sigla de HyperText Markup Language, expressão inglesa que
significa "Linguagem de Marcação de Hipertexto". Consiste em uma linguagem
de marcação utilizada para produção de páginas na Web, que permite a
criação de documentos que podem ser lidos praticamente em qualquer tipo de
computador e transmitidos pela internet. Para escrever documentos HTML não
é necessário mais do que um editor de texto simples e conhecimento dos
códigos que compõem a linguagem. Os códigos (conhecidos como tags)
servem para indicar a função de cada elemento da página Web. Os tags
funcionam como comandos de formatação de textos, formulários, hiperligações
(ligações), imagens, tabelas, entre outros (Pereira & Poupa, 2013).

O HTML é baseado na filosofia do desenvolvimento em referenciamento. Para


adicionar um elemento externo (imagem, vídeo, fotos etc.), este não é
incorporado directamente ao código da página mais é feita uma referência à
localização do item usando os blocos de texto. Assim, o site contém apenas
texto, enquanto se reserva ao navegador a tarefa de unir todos os elementos e
exibir a página final. Sendo um padrão, o HTML pretende ser uma linguagem
que permite que qualquer página Web escrita uma versão especial.

CSS- O CSS formata a informação entregue pelo HTML. Essa informação


pode ser qualquer coisa: imagem, texto, vídeo, áudio ou qualquer outro
elemento criado. Grave isso: CSS formata a informação. Essa formatação na
maioria das vezes é visual, mas não necessariamente. No CSS Aural, nós
manipulamos o áudio entregue ao visitante pelo sistema de leitura de tela. Nós
controlamos volume, profundidade, tipo da voz ou em qual das caixas de som a
voz sairá. De certa forma você está formatando a informação que está em
formato de áudio e que o visitante está consumindo ao entrar no site utilizando
um dispositivo ou um sistema de leitura de tela. O CSS prepara essa
informação para que ela seja consumida da melhor maneira possível.
39
O CSS foi uma revolução para o desenvolvimento web. Seus benefícios mais
concretos são:
 Controlo de interface em diferentes documentos em um único arquivo;
 Controlo de diferentes interfaces para diferentes dispositivos (responsive
design);
 Precisão para manter a mesma interface para diferentes navegadores;
 Melhorias na acessibilidade com a possibilidade de “esconder”
elementos da tela para usuários sem problemas de visão, mas manter
os mesmos elementos acessíveis para leitores de tela;
 Formulários com look and feel diferente do padrão do sistema
operacional;
 Menor consumo de banda para usuário e servidor;
 Inúmeras técnicas dinâmicas que não poderiam ser utilizadas em
tabelas (Pereira & Poupa, 2013).
JS – conhecido como javascript é uma linguagem de programação client-side.
Ela é utilizada para controlar o HTML e o CSS para manipular comportamentos
na página. Foi criada em 1995 por Brendan Eich enquanto trabalhava na
Netscape Communications Corporation. Originalmente projectada para rodar
no Netscape Navigator, ela tinha o propósito de oferecer aos desenvolvedores
formas de tornar determinados processos de páginas web mais dinâmicos,
tornando seu uso mais agradável. Um ano depois de seu lançamento, a
Microsoft portou a linguagem para seu navegador, o que ajudou a consolidar a
linguagem e torná-la uma das tecnologias mais importantes e utilizadas na
internet (Freeman, 2008)
Além das tecnologias acima citada também temos o bootstrap que é um
poderoso, elegante e intuitivo Framework Front-end, desenvolvido pela Twitter,
que possibilita um desenvolvimento web de modo ágil, fácil e cómodo. É o mais
popular Framework HTML, CSS E JAVASCRIPT para desenvolvimento de sites
e aplicações Web responsivo, isto é, adequa-se automaticamente ao formato
do ecrã que é exibido, e focado para dispositivos móveis na Web. Torna os
desenvolvedores com qualquer nível de conhecimento (Freeman, 2008).

40
1.3.8 Ambiente de Desenvolvimento Integrado
Na sequência são explicados os ambientes de desenvolvimento utilizados para
a criação do sistema proposto, assim como ferramenta de desenho da mesma,
que são materiais indispensáveis durante a criação do nosso sistema
1.3.8.1 Sublime Text IDE
O Eclipse (Sublime Text) é um IDE multiplataforma para desenvolvimento de
aplicativos suporta várias linguagens de programação, só para nomear
algumas: C, C++, PHP, ColdFusion, Python, Scala e a plataforma Android. Foi
feito em Java e segue o modelo código aberto de desenvolvimento.
Actualmente Faz parte do kit de desenvolvimento do software recomendado
para desenvolvedores (Freeman, 2008)

41
A apresentação de Entidade
Este trabalho foi realizado pelo estudante do Instituto Superior Politécnico da
Universidade Katiavala Bwila considerado como trabalho final de curso,
orientado pelos Professores Me. Yuniel Peña González e Me. Luís Sérgio
Timóteo Elias, o objectivo é de melhorar o funcionamento dos departamentos
Pedagógico e de Finanças do Instituto Médio Politécnico Privado Poli
Disciplinar da Catumbela trazendo um ambiente mais moderno e transparente
na gestão e organização da instituição.
O Instituto Médio Politécnico Privado Poli Disciplinar – Catumbela é uma
instituição do ensino Secundário do II ciclo, localizada na Província de
Benguela município da Catumbela, no bairro da Santa Cruz na zona da Vila
Real. A Sul da Instituição encontra-se o Complexo Escolar Multi-Forma isto é a
40 metros, a Norte encontramos várias instituições como o Complexo Escolar
Evangélico da Galileia, estádio do Buraco, a Oeste a Empresa Enertel, Trirumo
e a 100 metros a Estrada nº 100 que liga Lobito à Catumbela, já a Este a
Estrada tradicional que liga o Mercado Informal da Calumba (Lobito) à
Catumbela.
O sistema tem pelo menos duas entidades: O administrador e os funcionários,
o administrador tem todos os privilégios ou seja sendo o administrador pode
fazer tudo no sistema sem limitação, e já os funcionários mediante os
privilégios dado pelo administrador eles usam o sistema de acordo o sector que
eles pertencem.
Este trabalho veio beneficiar a instituição em bibliográfica citado de maneira
que os processos de gerência tradicional sejam automatizados,
consequentemente se obterá melhores informações no tocante as analises dos
dados realizados em um determinado período de tempo, e dando assim aos
funcionários uma nova forma de trabalhar.

42
1.3.9 Conclusão do capítulo
Este capítulo focou-se basicamente na descrição do objecto de estudo e
metodologias utilizadas, e tratou em ter uma abordagem de técnicas e
ferramentas bem como seus benefícios que foram utilizadas no
desenvolvimento desta aplicação web, por último apresentou-se a entidade.

43
CAPÍTULO 2 – DESCRIÇÃO DA SOLUÇÃO PROPOSTA

Neste capitulo faz-se a apresentação e uma abordagem geral do


funcionamento da Gestschool, a partir dos dados obtidos a quando da recolha
dos mesmos, com objectivo de compreender a estrutura interna e dinâmica da
organização. Nela definiu-se os processos de negócio, os actores e
trabalhadores do negócio, os diagramas de casos de uso com objectivo de
definir os requisitos funcionais e não funcionais que permitem realizar a
modelação do sistema proposto. Para além disso, se descreve as
características do sistema proposto de desenvolver, faz-se a análise e desenho
do sistema para a construção da aplicação web de gestão para o Instituto
Médio Politécnico Privado Poli Disciplinar - Catumbela. Tal processo é
submetido a várias etapas de desenvolvimento, mas antes fez-se a
especificação de software para saber quem realiza uma determinada
actividade.

2.1 Modelagem do Negócio

Segundo (Rodrigues, 2012) definiu Modelagem do negócio como conceito que


une gestão de negócio e tecnologia da informação com foco na optimização
dos resultados das organizações através da melhoria dos processos de
negócio. Neste fluxo de trabalho, faz-se a descrição do negócio e dos
artefactos que se geram durante o processo todo. Descreve os processos de
negócios, identificando quem participam e as actividades que requerem
automatização.

2.1.1 Descrição do Negócio


A Gestschool é uma aplicação de gestão escolar que será implementado no
Instituto Médio Politécnico Privado Poli Disciplinar - Catumbela que se ocupa
na área de gestão pedagógica e financeira, para que esta gestão seja efectiva
teremos no sistema três (3) usuários: O Administrador, Funcionário da área
pedagógica e de Finanças.

O administrador é um usuário fundamental no sistema, faz o CRUD (Criar


actualizar e eliminar) de Funcionários, turmas, departamentos, propinas e
eventos. Já o funcionário da área pedagógica cria turmas, estudantes,

44
publicações de pautas, registo de confirmação de matrículas e faz o CRUD de
eventos. O funcionário da área de Finanças faz o registo de propinas e o
pagamento de confirmação de matrículas. Assim cada funcionário será inserido
num departamento de acordo as necessidades da instituição.

2.1.2 Processo do Negócio


O processo do negócio são todas as funções e actividades que se realizam no
decorrer do negócio (IBM, 2006).
Se o processo for solicitação de pagamento de propina, o cliente deve dirigir-se
junto ao funcionário do departamento correspondente da instituição e
apresentar os valores monetários ou recibo de pagamento pelo Banco
respectivamente ou submeter o recibo de pagamento a aplicação para a sua
devida actualização em qualquer lugar que estiver.
Eis alguns dos processos de negócio identificados:
Publicar informações;
Realizar actualizações das informações;
Cadastrar o pagamento de propinas;
Cadastrar o pagamento de confirmação de matrículas
Publicar candidaturas de uma das vagas.

2.1.3 Actores do Negócio


Actores do Negócio: um Actor do negócio é qualquer indivíduo, grupo,
organização ou máquina que interage com o negócio e não faz parte dele
(Videira & Silva, 2001). Portanto estes podem ser: estudante ou candidatos
como futuros estudantes ou funcionários.
Estudante: É o indivíduo que pertence a instituição frequentando um curso que
tem alguns privilégios oferecido pelo negócio, como o de possuir senha uma
vez cadastrado para visualizar pautas, fazer pagamentos de confirmação de
matrículas e propinas.
O candidato: O futuro estudante ou o futuro funcionário tem acesso a página
cliente da instituição através da internet que por sua vez será disponível o
cadastro de uma possível candidatura seja para estudar ou para trabalhar de
acordo as vagas disponíveis, e este dois actores vamos chama - los de usuário
normal.

45
Figura 4 – Actores de Negócio.

Tabela 1 - Actores do Negócio.

Actor Justificativa
Estudante Actua directamente com o negócio,
interagem directamente com
processo, confirmando a matrícula e
pagamento de propinas.
Candidato Actua directamente com o negócio,
interagem directamente com processo
aplicando a uma vaga de curso ou de
emprego disponível.

2.1.4 Trabalhadores do Negócio


Um trabalhador representa uma pessoa, ou sistema dentro do negócio que são
as que realizam as actividades que estão compreendidas dentro de um caso de
uso. Neste trabalho foram identificados 3 trabalhadores que estão espelhados
na tabela em seguida.

46
Tabela 2 - Trabalhadores do Negócio.

Trabalhadores Justificativa
Administrador da Instituição Coordena todas as actividades em
todas as Áreas. É ele que atribui o
nível de permissão aos funcionários
no sistema.
Funcionário da área de Finanças Actua directamente com o negócio.
Pois interage directamente com os
estudantes no acto do pagamento das
propinas e confirmação de matrículas
Funcionário da área Pedagógica Realiza suas actividades de controlo,
criar turmas, confirmar matrículas e
submeter pautas no formato .xlsx na
supervisão do administrador.

2.1.5 Entidade do Negócio


As entidades de negócios representam objectos a que os trabalhadores de
negócio têm acesso, inspeccionam, manipulam, produzem, algo físico que se
utilize no processo do negócio e que sirva para obter informação ou para
actualizar informação (Sommerville, 2007). Na tabela abaixo são espelhadas
algumas entidades de negócio.
Tabela 3 - Entidade do Negócio.

Entidade Justificativa
Lista de turmas disponíveis da Documento fornecido pelo sistema no
instituição com os respectivos final do cadastramento de estudantes.
estudantes
Eventos Funcionalidade disponível pelo sistema
para criar, actualizar e apagar eventos
Gerenciar propinas Funcionalidade disponível pelo sistema
para fazer o cadastro de propinas de
cada estudante.
Painel de control Página inicial do painel de controlo,
onde o funcionário pode fazer análise
de dados.
Submeter pautas Funcionalidade disponível pelo sistema
para submeter o ficheiro pauta no
formato. xlsx
Confirmar matrícula Funcionalidade disponível pelo sistema
que permite o funcionário confirmar as
matrículas submetidas pelos
estudantes.

47
2.1.6 Caso de uso do negócio.
O caso de uso representa um processo dentro do negócio que se estuda. Por
isso corresponde a uma sequência de acções numa ordem lógica e que produz
um resultado observável para certos negócios (Videira & Silva, 2001) A seguir
temos uma lista de casos de uso do negócio.
1- Publicar candidaturas
2- Cadastrar o pagamento de propinas
3- Publicar Eventos
4- Confirmar matricula
5- Gerir e publicar informação.
Assim na sequência são apresentados três tabelas (tabelas 4, 5 e 6 ), na tabela
número 4 a apresentação e justificativa dos casos de uso escolhidos e outras
tabelas a descrição dos mesmos casos de uso e os seus respectivos
diagramas de actividade (representados nas figuras 5 e 6).
Tabela 4- Casos de uso do negócio

Caso de uso Justificativa


Cadastrar o pagamento de propinas Esta é uma funcionalidade dado ao sistema
que permite ao funcionário cadastrar o
pagamento de propinas corrente ou
propinas em atraso submetida pelos
estudantes, que pode ser feito de modo
presencial ou via internet a quando das
informações correspondente para fazê-lo.

Publicar candidaturas. Esta é uma funcionalidade do sistema que


permite ao funcionário publicar candidaturas
à um curso ou emprego e o usuário aplica a
uma vaga que pode ser feito de modo
presencial ou via internet a quando das
informações correspondente para fazê-lo.

48
2.1.7 Descrição do caso de uso do negócio
Tabela 5 - Descrição do caso de uso: Cadastrar o pagamento de propinas.

Caso de uso do negócio Cadastrar o pagamento de propinas


Actor: Estudante
Propósito : Permite ao estudante fazer o
pagamento de propinas, se o
estudante tiver dívida pode fazer o
pagamento das dívidas.
Resumo : O caso de uso começa quando o
estudante fornece os seus dados
pessoais ao funcionário e faz o
pagamento ou pode fazê-lo através
da internet com o acesso de uma
página privada no sistema, termina
quando o processo de cadastro da
propina é concluído.
Açcão do Actor : Resposta do negócio
1. Começa quando o estudante se apresenta 1.1 o sistema verifica se o estudante
na instituição com a intenção de pagar a tem propinas em atraso.
propina. 2.1 Se o estudante tiver propinas
2. Propinas em atraso em atraso paga a propina anterior e
3. Realizar o pagamento a corrente.
4. O estudante faz o login no sistema. 3.1 Se o estudante estiver sem
5. O estudante fornece os dados. dívida paga o mês corrente.
6. O estudante submete o recibo da propina. 4.1 O sistema verifica o credencial
do estudante.
5.1 O sistema verifica os dados.
6.1 Se não tiver dívidas paga a
propina corrente.
6.2 O sistema notifica o usuário.
Prioridade: Os dados do estudante estejam
registados no sistema
Melhoria: Os dados devem ser fornecidos de
forma correcta.
Curso Alternado CA1 CA1. Se tentar passar propinas
sabendo que tem um Mês em
atraso o sistema informa o
funcionário sobre isso.
Só o funcionário do departamento
Pré-Condição: de finanças junto o administrador
tem acesso a esta parte do sistema.
Pós-condição: O funcionário não pode actualizar
os dados das propinas mais o
administrador sim.

49
Figura 5- Diagrama de actividade do caso de uso do negócio: Cadastrar o
pagamento de propinas.

50
Tabela 6 - Descrição do caso de uso: Publicar candidaturas

Caso de uso do negócio Publicar candidaturas


Actor: Candidato
Propósito : Permitir ao candidato fazer a sua
candidatura seja para um curso ou
emprego.
Resumo: O caso de uso começa quando o
funcionário tem acesso ao sistema
através de um credencial login e
subsequentemente publica as
candidaturas disponíveis na instituição.
Açcão do Actor Resposta do negócio
1. Acede a página para visualizar 1.1 Mostrar a lista de candidaturas
candidaturas publicadas.
2.1 Verifica se os dados fornecidos
2. Fornece os dados. pelos candidatos são adequados. CA1.
2.2 O funcionário regista e envia o
3. Imprimir o comprovativo da acção comprovativo.

Prioridade: O usuário normal escolhe a área que


quer candidatar-se de acordo com as
vagas disponíveis.
Melhoria: O candidato tem de enviar os dados
pessoais correcto caso contrário verá
anulada a sua candidatura.

51
Figura 6-Diagrama de actividade do caso de uso do negócio: Publicar
Candidaturas.

2.2 Objecto de automatização

Deseja-se criar um aplicativo de apoio a gestão da instituição. Este sistema


poderá facilitar no controlo de gerenciamento de informações, turmas
estudantes, listas, confirmações de matrículas, as candidaturas e o controlo de
pagamento das propinas. O sistema deverá incrementar funcionalidades como
Inserir, Actualizar, Eliminar estudantes, funcionários, cursos, departamentos,
eventos e propinas. O Administrador é o usuário principal que tem todos os
privilégios.

52
2.3 Requisitos do sistema

Os requisitos do sistema constituem as funcionalidades, capacidades e


qualidades que devem possuir.
Os requisitos funcionais especificam as funções que o sistema deve ser capaz
de realizar. Os requisitos não funcionais definem as propriedades ou
qualidades que o sistema deve ter referencias como o sistema exercita essas
funções, estas funcionalidades reflectem as necessidades dos clientes de um
sistema que ajuda a resolver algum problema, como candidatar-se, enviar ou
encontrar informações (Sommerville, 2007).

2.3.1 Requisitos Funcionais


De acordo com as funcionalidades que o aplicativo será capaz de realizar,
optou-se por descrever os requisitos funcionais extremamente fundamentais:
1. Fazer o CRUD (Inserir, actualizar e apagar)
 Funcionário
 Turmas
 Cursos
 Estudantes
 Propinas
 Eventos
 Publicar pautas
 Confirmar matrícula
 Visualizar pautas
2. Configuração do sistema
 Criar conta do utilizador
 Atribuir permissão de acesso do sistema
 Atribuir senha
3. Relatórios e mapas.
 Ver lista dos alunos com propinas a pagar
 Ver lista dos alunos sem dívidas
 Ver lista das turmas
 Ver lista dos Estudantes

53
2.3.2 Requisitos não funcionais
1. Aparência externa do sistema Legível. Todos os componentes dos
formulários (menus, botões, caixas de textos) serão legendados para facilitar
as operações no aplicativo.
Simples de usar. Para realizar qualquer operação o usuário deverá seleccionar
sempre a hiperligação no menu principal direito da janela principal do
aplicativo.
Interactividade. As janelas são desenhadas com Javascript e Css e tendo uma
aparência amigável e atraente.
2. Utilidades dos Usuários com pouca experiência de informática poderão
facilmente usar o sistema, rapidez na obtenção dos dados (consultas).
3. Suporte e fácil conexão. Só se precisa ser cadastrado no sistema e poder ter
acesso as operações.
De fácil manutenção. As regras de negócio estarão na camada de interface e
não será necessário que o usuário efectue operações directamente no gestor
de dados.
4. Segurança a Framework Django ajuda na segurança das informações, só
poderá realizar operações, os utilizadores cadastrados no sistema.
Proporcionando confiabilidade e integridade nos dados.
5. Confiabilidade de acesso ao sistema estará dividido em dois Níveis e grupo:
funcionário e administrador. O acesso será feito através de um nome de
utilizador e uma senha de acesso.
De acordo com nível de acesso que for definido cada utilizador terá apenas
acesso aos seus dados de acordo a permissão concedida pelo administrador.
6. O aplicativo funcionará em todos os dispositivos com navegador Web.
7. Restrições. Utilizará UML na documentação do sistema. Desenvolvido em
linguagem de programação Python, Framework Django, com o ambiente de
desenvolvimento Atom.

54
2.4 Análise e desenho do sistema

O modelo de análise constitui um refinamento e alterações de estruturação dos


requisitos para uma compreensão mais precisa. O modelo de análise e
desenho tem como objectivo modelação do sistema, atendendo os requisitos
levantados na fase de análise e prepara-los para implementação (Videira &
Silva, 2001)

Descrição do sistema
A descrição ou âmbito do sistema serve para assegurar a compreensão do
projecto a desenvolver por todas as partes envolvidas. Esta definição deve ser
curta e concisa, evitando detalhes sobre os requisitos do sistema (Videira &
Silva, 2001)

2.4.1 Actores do sistema


Um Actor representa uma entidade externa que interage com o sistema. São
ele que utilizam o sistema. Inicializam o sistema, fornecem os dados e usam as
informações disponíveis no sistema.
A tabela a seguir esta descrito os actores do sistema e suas justificativa do
papel que cada um desempenha no sistema.

Tabela 7- Actores do sistema.

Actores Justificativa
Administrador O administrador terá o privilégio de
executar todas as operações, desde os
requisitos funcionais, e atribuir as
permissões aos utilizadores do sistema.
Funcionário do departamento Este tem a responsabilidade de criar,
pedagógico inserir os estudantes nas turmas e
adicionar o director da turma criar
eventos, aceitar as candidaturas e
submeter pautas.
Funcionário do departamento de Este funcionário regista o pagamento de
finanças propinas e confirmação de matrículas.

55
2.4.2 Descrição do Sistema.

Os casos de usos seleccionados, apresentam a interacção dos actores e


trabalhadores do negócio como serão demonstrados nos diagramas em
estudo. A descrição do sistema serve para assegurar a compreensão do
projecto a desenvolver por todas as partes envolvidas. Esta definição deve ser
curta e concisa, evitando detalhes sobre os requisitos do sistema (Videira &
Silva, 2001)

2.4.3 - Casos de uso do sistema.


Os casos de uso de um sistema indicam sequência de acções que o mesmo
apresenta durante a sua execução (Sommerville, 2007). Portanto definiu-se
alguns casos de usos do sistema:
 Cadastrar funcionário
 Actualizar dados do funcionário
 Eliminar funcionário
 Cadastrar estudante
 Actualizar os dados do estudante
 Eliminar estudante
 Fazer login no sistema
 Registar pagamento de propinas
 Actualizar o pagamento de propinas
 Registar candidaturas
 Criar turma
 Actualizar turma
 Eliminar turma
 Adicionar estudante na turma
 Eliminar estudante na turma
 Confirmar matrículas
 Publicar pautas
 Visualizar pautas
 Terminar sessão.

56
Figura 7 - Diagrama de caso de uso do sistema.

Os casos de usos acima descritos escolheu-se três (Fazer login no sistema,


cadastrar estudante e cadastrar funcionário) e mostrar-se-á em tabelas de
casos de uso e diagramas de Actividade, Sequência e Colaboração.

57
Tabela 8 – Descrição do Caso de uso fazer login no sistema.

Caso de uso do Sistema: Fazer login no sistema.


Actor: Funcionário dos departamentos
Resumo: Descrição: cada funcionário
dependendo do departamento que
pertence, tem acesso ao sistema
via login e pode fazer o crud (Criar,
actualizar, eliminar) no
departamento.

Acção do Actor Resposta do sistema


1. O funcionário digita o seu nome e a 1.2 Se o cadastro do funcionário
senha estiver registado na base de dados
(BD) O sistema é aberto.

Caso Alternado CA1 CA1- Se houver alguma


irregularidade ao fazer o login ou
digitar a senha errada o sistema
emite a mensagem de erro.
O funcionário deve possuir uma
Pré-Condição: senha e o nome para registar-se no
sistema.
Pós-Condição: O funcionário fecha o sistema.

Figura 8 – Diagrama de actividade do caso de uso do sistema: Fazer login no


sistema.

58
Figura 9 - Diagrama de sequência do caso de uso do sistema: Fazer login
no sistema.

Figura 10 - Diagrama de colaboração do caso de uso do sistema: Fazer login no


sistema.

59
Tabela 9 – Descrição do Caso de uso cadastrar estudante.

Caso de uso do sistema Cadastrar estudante


Actor: Funcionário do departamento
pedagógico.
Propósito : Cadastrar os dados pessoais do
estudante através de um formulário do
sistema e atribuir um curso e uma turma.
Resumo: O caso de uso começa quando o
funcionário do departamento pedagógico
através de um navegador tem acesso ao
painel de controlo na página de
gerenciamento de estudantes invoca o
formulário para cadastrar o estudante
preenche o formulário com os dados
actualizados e submete o formulário
preenchido.
Açcão do Actor Resposta do sistema
1. Preencher o formulário de cadastro 1.1 Validar os dados preenchidos

2. Atribuir um curso e uma turma ao 2.1 Verificar se o curso e a turma


estudante existem.

3. Aguarda o sistema terminar o 3.1 Se os dados fornecidos cumprir com


processo do cadastro os requisitos e o curso assim como a
turma existir o sistema salva os dados
no banco de dados e notifica o
administrador.
Prioridade: Cadastrar os estudantes no curso com
vagas disponíveis.
Melhoria: Os candidatos podem aplicar mais tarde
a uma vaga disponível.

60
Figura 11 - Diagrama de actividade do caso de uso do sistema: Cadastrar
Estudante.

Figura 12 – Diagrama de Colaboração do caso de uso do sistema:


Cadastrar estudante.

61
Figura 13 - Diagrama de sequência de caso de uso do sistema: Cadastrar
Estudante.

62
Tabela 10 – Descrição do Caso de uso Cadastrar funcionário

Caso de uso do sistema Cadastrar funcionário


Actor: Administrador
Propósito : Cadastrar os dados pessoais do
funcionário através de um formulário do
sistema.
Resumo: O caso de uso começa quando o
administrador através de um
navegador tem acesso ao painel de
controlo na página de gerenciamento
de funcionário invoca o formulário para
cadastrar o funcionário preenche o
formulário com os dados correctos e
submete o formulário preenchido.
Açcão do Actor Resposta do sistema
1. Preencher o formulário do cadastro 1.1 Validar os dados preenchidos

2. Criar um perfil para o funcionário e 2.1 Verificar se os dados inseridos são


atribuir um departamento compatíveis com o perfil do funcionário

3. Aguarda o sistema terminar o 3.1 Se os dados fornecidos cumprir


processo do cadastro com os requisitos o sistema salva os
dados no banco de dados e notifica o
administrador.
Prioridade: A prioridade é de cadastrar
funcionários do departamento de
pedagogia e o departamento de
finanças.
Melhoria: O funcionário cadastrado poder fazer
alterações dos seus credenciais.

63
Figura 14 - Diagrama de actividade de caso de uso do sistema: Cadastrar
funcionário.

Figura 15 - Diagrama de sequência de caso de uso do sistema: Cadastrar


funcionário.

64
Figura 16 - Diagrama de colaboração de caso de uso do sistema: Cadastrar
funcionário.

65
2.5 Descrição do Software.

De acordo com o problema identificado na instituição, e suas metas para o


futuro, este sistema poderá resolver as suas expectativas, esta aplicação está
subdividida em três camadas.
Camada de apresentação (views), conhecida como view, será responsável
pela visão do aplicativo aos usuários finais. As tecnologias utilizadas para estes
fins são HTML (bootstrap) e CSS.
Camada de dados (models), conhecida como modelo, que será responsável
pelo armazenamento dos dados no sistema de base de dados no modelo
cliente – servidor.
Camada de negócio (control), conhecida como controller, esta camada se
responsabiliza pela lógica do aplicativo, e é subdividida em duas subcamadas
lado cliente e lado do servidor onde será hospedado o aplicativo.
O Aplicativo será desenvolvido no Ambiente de desenvolvimento integrado
(IDE) Atom, na linguagem de programação python na framework django, a
estilização em css interacção js e utilizará como gestor de base de dados
MySQL server. Tendo a possibilidade de actuar em servidores local e remoto e
podem a cessar em qualquer lugar onde seja possível a conexão com a
internet.
A aplicação web poderá ajudar grandemente a instituição para automatizar as
suas actividades.
Para a execução das tarefas disponíveis por utilizadores, os mesmos poderão
partir do menu principal que o aplicativo oferecerá.

66
2.6 Desenho do sistema de base de dados.

O desenho do sistema da base de dados e a criação de modelos de dados


constitui uma das partes muito importante do ciclo de vida do desenvolvimento
do sistema.
Normalização: é um processo a partir do qual se aplicam regras a todas as
tabelas da base de dados com o objectivo de evitar falhas no projecto, como
redundância de dados e mistura de diferentes assuntos numa mesma tabela
(Orozco & Adrían, 2013).
A normalização completa dos dados é feita, seguindo as restrições das três
formas normais:
As nossas entidade ou tabela que constituem a base de dados do sistema,
estão normalizadas até a terceira forma normal (3FN) porque eliminaram-se a
dependência transitiva entre atributos não chave de acordo a demonstração
que será ilustrada em forma de diagrama. (ver Figura 17).
No diagrama a seguir se demonstra o modelo físico de base de dados e seus
respectivos atributos, enquanto na outra tabela se demonstra o diagrama de
classe utilizadas no sistema que possibilita a sua iteração entre as classes (ver
Figura 18).

67
Figura 17 – Modelo físico da base de dados.

68
Figura 18 - Diagrama de Classe.

69
2.6.1 Diagrama de componentes

Por intermédio do diagrama de componentes, apresenta-se de forma explícita a


implementação física do sistema, demonstrando as relações entre seus
componentes e a organização de seus módulos no decorrer da sua
implementação ou execução. O diagrama em questão também descreve os
componentes de software e suas iterações e dependência entre si,
representando a estrutura ou o escopo do código gerado. Os componentes são
a implementação na arquitectura física dos conceitos e dos funcionamentos
definidos na arquitectura lógica. Portanto é mostrado em seguida um diagrama
de componentes com seus arquivos que são Utilizados para compor o código
fonte de uma interface com estrutura dinâmica, gerada dinamicamente a partir
de uma base de dados (Gustafson, 2002).

Figura 19 – Diagrama de Componentes.

70
2.6.2 A Segurança dos dados no sistema (Gestschool)
Durante o desenvolvimento do sistema teve-se em conta a segurança dos
dados, com o fim de se evitar a fuga de informação. Trataram-se os seguintes
aspectos de segurança: A confidencialidade, integridade e disponibilidade.
Protegeu-se o sistema contra o acesso não autorizado ou o manejo da
informação apresentada.
Protecção contra a previsão de serviços a usuários não autorizados, incluindo
as medidas necessárias para detectar e contrariar tais ameaças ou seja a
informação é alterada somente pelas pessoas autorizadas.
Disponibilidade na garantia de que as pessoas autorizadas obtenham acesso à
informação e aos activos correspondentes sempre que necessário.
A possibilidade de recuperar a senha para os usuários cadastrados, caso
esquecer a senha.

2.7 Implantação.
A implantação consiste na organização do conjunto de elementos de um
sistema para a sua execução, onde há muita interdependência entre pedaços
de hardware e software (Gustafson, 2002). Na figura 20 é demonstrado
graficamente os equipamentos necessários para a implantação do sistema e
suas respectivas ligações, sobretudo a comunicação entre os hardwares, que
em conjunto geram o processo de funcionamento do sistema.

71
Figura 20 – Diagrama de Implantação.

72
2.8 Modelo de teste

O caso de teste consiste em especificar a saída e os resultados esperado após


o processamento. “No desenvolvimento de caso de teste, se espera encontrar
o subconjunto dos casos de teste possíveis com a maior probabilidade de
encontrar a maioria dos erros” (Gustafson, 2002). Caso de teste, descreve uma
condição particular a ser testada e é composto por valores de entrada,
restrições para a sua execução e um resultado ou comportamento esperado.

Existe dois tipos de modelo de teste, técnica estrutural ou de caixa-branca e


modelo de teste funcional ou caixa preta.

Técnica estrutural (caixa branca) – Esta técnica funciona directamente sobre


o código fonte do componente de software para avaliar aspectos tais como:
teste de condição, teste de fluxo de dados, teste de ciclos e teste de caminhos
lógicos (Gustafson, 2002)

Teste funcional (caixa preta) – Dados de entrada são fornecidos, o teste é


executado e o resultado obtido é comparado a um resultado esperado
previamente conhecido. Haverá sucesso no teste se o resultado obtido for igual
ao resultado esperado. O componente de software a ser testado pode ser um
método, uma função interna, um programa, um componente, um conjunto de
programas ou mesmo uma funcionalidade (Gustafson, 2002) A técnica de teste
funcional (caixa preta) foi utilizada neste trabalho e aplicada os dois casos de
uso de teste (ver Tabela 11 e 12), focalizada nas acções visíveis aos
utilizadores.

73
Tabela 11 – Descrição do Caso de uso de teste activar e desactivar utilizador.

Caso de uso de teste Activar e desactivar utilizador


Actor: Administrador
Desígnio: Desactivar acesso de um determinado
utilizador do sistema.
Resumo: O caso começa quando o Actor selecciona
o menu Activar/Desactivar, é apresentado
uma lista de utilizadores do sistema, clica
no botão desactivar do referido utilizador,
termina quando o sistema emite a
mensagem de processo feito com sucesso.
Pré-condição: O Actor deve ter a sessão iniciada e confirmada pelo sistema
Acção do actor Resposta do sistema
1. Clicar no menu Administrar 1. 1. Mostra a janela com a lista de
utilizador e selecciona o submenu utilizadores.
activar / desactivar.

2. Clicar em desactivar.
2. 1. Emite uma mensagem de sucesso.
Pós-condição: o caso termina quando o estado do utilizador estiver
desactivado.

Tabela 12 – Descrição do caso de uso de teste iniciar sessão.

Caso de uso de teste Iniciar sessão


Actor: Administrador e funcionários.
Desígnio: Verificar as restrições ou permissões
imposta ao utilizador de aceder o sistema.
Resumo: O caso começa quando o Actor insere os
dados de utilizador, termina quando o
sistema emite uma mensagem de erro.
Pré-condição: utilizador tem que estar cadastrado e possuir a senha de
acesso
Acção do actor Resposta do sistema
1. Digita os dados de utilizador na 1. 1. Verifica campos e dados enviados,
tela de autenticação e início de pesquisa na bases de dados se esta activo
sessão. ou desactivado.

1. 2. Emite uma mensagem de sucesso, ou


de erro (utilizador desactivado do sistema)
Pós-condição: o caso termina quando o estado do utilizador estiver
desactivado

74
2. 9 Conclusão do Capítulo

Este capítulo tratou de apresentar as etapas de desenvolvimento da aplicação


Web, baseado principalmente pela modelagem do negócio que nos permitiu
descrever as características da Gestschool. Definiu-se o modelo de casos de
uso de negócio, que oferece uma visão externa do negócio, e o modelo de
objectos do negócio, que oferece uma visão interna do mesmo negócio.

Estes elementos foram importantes para definir os requisitos do sistema


proposto. E desenhou-se a modelagem da nossa base de dados e seus
respectivos diagramas. Apresentou-se as características gerais do sistema
desenvolvido, cumprindo cada um dos fluxos de trabalho estabelecidos pelo
processo Rational Unifid Process (RUP), pois esta foi a metodologia de
desenvolvimento escolhida para este trabalho, e por fim é apresentado de
forma explícita a especificação do software.

75
CONCLUSÕES

O presente trabalho dedicou-se no desenvolvimento de uma aplicação Web em


que a finalidade é de ajudar no gerenciamento administrativo do Instituto Médio
Politécnico Privado Poli Disciplinar da Catumbela.
 Para a sustentabilidade do trabalho de fim de curso, apoiou-se aos
manuais, monografias (relativo a metodologia), internet como grande
suporte, entrevista e revisões bibliográficas na obtenção de informação
de várias fontes.
 Para desenvolver este sistema foram utilizados vários métodos e
técnicas de investigação assim como os métodos de desenvolvimento
de software. Nesta perspectiva, foi criada a aplicação web com a
linguagem de programação python na versão 3 e framework django na
versão 1.11.2. O editor de código foi o Atom, como gestor de base de
dados utilizou-se o Mysql editado na ferramenta MySQL workbench.
 Utilizou-se o RUP como guia para desenvolver a aplicação web e o
StarUml como ferramenta de desenho das classes de suporte a todo
este processo.
 Entretanto, com a aplicação web desenvolvida, uma vez utilizada na
prática na referida instituição, julga-se que ira impulsionar o progresso
da mesma e minimizar assim os custos relativamente ao processo de
controlo das informações e gerenciamento eficaz no seu todo.
 Terminado a fase de desenvolvimento passou-se na simulação de teste
onde usou-se dois computadores com aplicação e um outro com o
servidor Web e o aplicativo de Gestão na parte de administração
conectando-as numa rede sem fio, manipulando as funcionalidades com
informações de possíveis casos de uso.

76
RECOMENDAÇÕES

Para utilizar este sistema e obter um bom desempenho do aplicativo no


Instituto Médio Politécnico Privado Poli Disciplinar – Catumbela e melhorar a
qualidade dos serviços, recomenda-se:
 Manter um servidor local e hospedar no aplicativo num servidor da
internet. Que permitirá o acesso de sistema.
 Hoje nem todos os navegadores interpretam a codificação HTML 5, no
caso específico do internet Explorer e as versões menores de Mozila firefox,
safira entre outros. Portanto aconselha-se o google chrome, Opera ou as
versões superiores dos acima citados.

TRABALHO FUTURO
Uma vez implementado o sistema, no futuro é de continuar a melhorá-la de
maneira que venha suportar mais funcionalidades. Espera-se também obter
melhorias na qualidade de processamento das informações. Pretende-se no
futuro:
 Melhorar o sistema, dando-lhe a possibilidade de partilha de documentos
ou relatórios.
 Converter os relatórios de finanças no formato Excel e baixar para um
uso posterior.

77
REFERÊNCIAS BIBLIOGRÁFICAS
Amaral, L., & Zorrinho, C. (2002). Sistemas de informação organizacionais.
Lisboa: Edições Sílabo.
Andrade, M. M. (2003). Introdução a metodologia do Trabalho científico, 2ª
Edição. São Paulo: Editora Atlas S. A.
Balagtas, T. F. (2013). Java Education & Development Initiative. Obtido em 24
de Março de 2018:
https://Ofinadanet.com.br/apostilas/detalhe/760/apostila_completa_de_java_pro
gramação_orientada_a_objecto.
Bendoraitis, A. (2014). Framework Django. Packt Publishing Ltd.
Cabello, M. (2007). Sistemas de información y gestión de la empresa. Digital
learning: Digital learning.
Costa, A. (2003). o mundo verde. luanda: Cyber rodrigues.
Damas, L. (2005). SQL – Structured Query Language. Lisboa: FCA - Editora de
Informática.
Fischer, A. E. (1993). The anatomy of programming Language. New Jesey:
Prentice Hall.
Freeman, E. (2008). Framework html, css e javascript. Digital learning.
Gustafson, D. A. (2002). Engenharia de software. Porto: Artmed editora.
IBM, C. (2006). Caso de uso do negócio. Obtido em 04 de Agosto de 2018:
http://walderson.com/IBM/RUP7/LargeProjects/extend.bus_model/workproducts
/rup_business_use_case_14F1BAF2.html.
Jacobson, I. (1998). Objectory is the Unified Process.
Jaiswal, S. (2014). Learning Django web Development. Packt Publishing.
Lakatos, E. M. (2003). Fundamentos de metodologias científicas. São Paulo:
Atlas S. A.
Marconi, M. d., & Lakatos, E. M. (2003). Fundamentos de metodologias
científica. São Paulo: Atlas.
Martins, V. (2006). Integração de sistemas de informação - perspectivas,
normas e abordagens. Lisboa: Edições Sílabo.

78
Microsoft_Corporation. (2018). Servidor web (IIS). Obtido em 08 de Fevereiro
de 2018: https://technet.microsoft.com/enus/library/cc753433(v=ws.10).aspx.
Nunes, M., & O`neil, H. (2004). Fundamental de UML. 4ª edicão. Lisboa: FCA
Editora de Informática.
Oliveira, J. F., & Hatakeyama. (2007). Sistema de Gestão da manunteção para
pequena e média empresa. S. Paulo.
Orozco, M., & Adrían. (2013). Tipos de gestores de Bases de Dados. Madrid:
Digital learning.
Pereira, A., & Poupa, C. (2013). Linguangens Web (5ª edição). Lisboa: Sílabo
Lda.
Rascão, J. (2004). Sistemas de Informação para as organizações- A
informação chave para a tomada de decisão. 2ªEd. Lisboa: Edições Sílado.
Rodrigues, R. (2012). A impotância da linguagem de modelagem unificada para
o desenvolvimento, Evolução e Desing. Cesuc editora.
Sommerville, I. (2007). Engenharia de Software (8ª ed.). São Paulo: Pearson.
Souza, A. T. (2005). Sistemas Distribuidos. Rio De Janeiro: Porto Alegre
Editora.
The_Apache_Software_Foundation. (2017). The Apache HTTP Server Project.
Obtido em 17 Dezembro de 2017: https://www.apache.org/.
The_PostgreeSQL_Devolopment_Group. (2018). O banco de dados de código
aberto mais avançado do mundo. Obtido em 08 de Fevereiro de 2018,
PostgreeSQL: https://www.postgreesql.org/.
Videira, C. A., & Silva, A. M. (2001). UML, Metodologias e ferramentas CASE,
colecção tecnologias. Porto - Lisboa: Centro Atlântico, Lda.

79
APÊNDICE
APÊNDICE A – Boletim de entrevista.
Boletim de entrevista efectuado aos funcionários da área
administrativa do Instituto Médio Politécnico Privado Poli
Disciplinar da Catumbela
OBJECTIVO: o propósito deste instrumento é de recolher informação
relacionada a situação das actividades na instituição.
Parte A
Idade ____ sexo___F__M__

Nível académico: Médio_____ técnico superior___


Formação-profissional:
:_______________________________________________________

Parte B
1. Tem formação na área de gestão?
Sim______Não_______

2. Tem domínio das tecnologias de informação e comunicação?


Sim______ Não_______

3. Os instrumentos que mais utiliza para dinamizar o trabalho administrativo


estão relacionados com:
 Computador
SIM Não Mais ou menos

 Impressora

SIM Não Mais ou menos

 Fotocopiadora
SIM Não Mais ou menos

4. Quais os sistemas operativos utilizados?

Windows________
Linux____________
Mac ox___________

5. Os programas Informático que mais utiliza estão relacionado com:

 word
Sim Não

 Exel
Sim Não

 Agendas Electronicas
Sim Não

 Sistema de gestão
Sim Não

 Base de dados
Sim Não

6. Como é feito o cadastro das turmas?

R:_____________________________________________________________
_______________________________________________________________
_______________________________________________________________
______________________________________________________
7. Como é feito o cadastro dos estudantes?
R:_____________________________________________________________
_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
_________________,

8. Como é feito o cadastro do corpo docente?


R:_____________________________________________________________
_______________________________________________________________
_______________________________________________________________
______________________________________________________

9. Como é realizado o pagamento de propinas?

R:_____________________________________________________________
_______________________________________________________________
_______________________________________________________________
______________________________________________________

10. Os relatórios de entregas ao administrador são feitos numa frequência:

 Semanalmente
Sim Não

 Mensalmente
Sim Não
 Bimensalmente
Sim Não

 Trimestralmente
Sim Não

 Semestralmente
Sim Não
 Anualmente
Sim Não

Muito obrigado pela sua colaboração!


APÊNDICE B – Tela de login do sistema.

Apresentação da tela de login onde encontramos o formulário com dois campos


de entrada de dados como o nome e a senha do utilizador. Estes dados
permitem aos utilizadores cadastrados na Base de Dados e que tenham
inserido correctamente os seus dados para ter acesso a área de administração.
APÊNDICE C – Formulário de Criar eventos.
APÊNDICE D – Eventos publicados
APÊNDICE E – Painel de controlo.
APÊNDICE F - Estimativa de custo do software

A gestão de projecto de software é uma série de actividade conhecidas


respectivamente como planeamento do projecto. Normalmente ao fazer um
projecto é necessário a estimativa do trabalho, como os recursos necessários e
o tempo de conclusão.

Para estimar o custo do software, utilizamos o COCOMO II, um modelo que


permite estimar o custo, esforço e cronograma ao planejar uma nova actividade
de desenvolvimento de software. O COCOMO II é a última grande extensão do
modelo (COCOMO 81) original publicado pelo Dr. Barry Boehm em 1981.

A tabela a seguir mostra a quantidade de tipos de funções de acordo com sua


complexidade funcional.

Tipos de Complexidade Peso de Qtd Subtotal de


função funcional complexidade pontos
Arquivos Simples 4x 2 8
lógico Média 6x 0 0
interno Complexa 9x 0 0
Arquivo de Simples 4x 2 8
interface Média 5x 0 0
externa Complexa 6x 0 0
Entrada Simples 3x 4 12
externa Média 4x 0 0
Complexa 5x 0 0
Saída Simples 3x 6 18
externa Média 4x 0 0
Complexa 7x 0 0
Consultas Simples 3x 6 18
externas Média 4x 0 0
Complexa 5x 0 0
Total de pontos por função 64
Na sequência temos a tabela abaixo que mostra as características gerais do
projecto e o nível de influência de cada um, que serão utilizados para o cálculo
do factor de reajuste:

Características gerais do sistema Nível de influência (0-5)


1 Confiabilidade e complexidade 3
2 Reusabilidade 2
3 Dificuldade da plataforma 2
4 Capacidade do pessoal 4
5 Experiência do pessoal 3
6 Facilidade 3
Total do nível de influência 17

Para calcular o custo do projecto foi utilizado o software para cálculo da


estimativa do custo do software, USC-COCOMO II.2000.4. Após aplicados os
dados das tabelas, com um salário mensal de 57000.00 kwanzas, obtemos os
seguintes resultados:

 Estimativa de esforço =22.9 pessoas - mês


 Estimativa de tempo =9.9 meses
 Estimativa da produtividade =345.8 SLOC/PN.
 Estimativa do custo = 1.307.807.83 Kwanzas.

Você também pode gostar