Você está na página 1de 48

INSTITUTO FEDERAL DE RONDÔNIA – CAMPUS CACOAL

CURSO TÉCNICO DE INFORMÁTICA

BRENO DA SILVA DE SÁ
GENIQUELLY DE OLIVEIRA MACENA
ISABELLA ALVES DA SILVA
LETÍZIA MANUELLA S. EUGÊNIO
ROGÉRIO REGO NERY ANDRADE

CINEWORLD

Cacoal - RO

2021
Sumário
1. INTRODUÇÃO AO DOCUMENTO 3
1.1 – TEMA 3
1.2 - OBJETIVO DO PROJETO 3
1.3 - JUSTIFICATIVA DA ESCOLHA DO TEMA 4
1.4 - MÉTODO DE TRABALHO 4
1.5 - ORGANIZAÇÃO DO TRABALHO 4
1.6 – GLOSSÁRIO 5

2. DESCRIÇÃO GERAL DO SISTEMA 5


2.1- DESCRIÇÃO DO PROBLEMA 5
2.2 - PRINCIPAIS ENVOLVIDOS E SUAS CARACTERÍSTICAS 6

3. REQUISITOS DO SISTEMA 6
3.1 - REQUISITOS FUNCIONAIS 6
3.2 - REQUISITOS NÃO FUNCIONAIS (NF) 8
3.3 – PROTÓTIPO 10
3.4 - MÉTRICAS E CRONOGRAMA 24

4 - ANÁLISE E DESIGN 25
4.5.2 - Criação Física do Modelo de Dados 31
4.5.3 - Dicionário de Dados 33
4.6 - AMBIENTE DE DESENVOLVIMENTO 36

5 – IMPLEMENTAÇÃO 37

6 - TESTES 37

7 - MANUAL DO USUÁRIO 38

8 - CONCLUSÕES E CONSIDERAÇÕES 46

9 - BIBLIOGRAFIA 47
PREFÁCIO
O objetivo deste documento é fornecer um roteiro para o desenvolvimento de
sistemas de software utilizando os princípios da engenharia de software orientada a
objetos com notação UML (Unified Modeling Language), apoiando as disciplinas de
Projeto de Desenvolvimento de Sistemas(PDS) e Programação Web(PW),
ministradas, respectivamente, por Pedro Dias e Thiago Kaiser.

O projeto CineWorld foi criado por cinco alunos do IFRO - Câmpus Cacoal, do
terceiro A informática, com auxílio de dois professores, via EAD. O projeto é
baseado na linguagem Python, de alto nível, foi a linguagem apresentada desde o
começo do ano de 2021 para os alunos.

O projeto de desenvolvimento de sistemas visa identificar problemas no


mundo real que podem ser implementados computacionalmente, e este é o intuito
do CineWorld, trazer eficiência, facilidade, organização e principalmente tecnologia,
inovação, maturidade corporativa e facilidade de acesso.

MODELO DA DOCUMENTAÇÃO
Neste documento o CineWorld que é usado para auxiliar empresas que
trabalham com apresentações de filme, será trago a abordagem de tópicos, onde
serão trabalhados separadamente com suas particularidades e explicações
detalhadas, são elas, introdução ao documento, descrição geral do sistema,
requisitos (funcionais e não funcionais), análise e design, implementação, testes,
implantação e manual do usuário, com seus respectivos subtítulos apresentando
cada tópico de forma sucinta e abrangente sobre o conteúdo e o projeto.
Além de todas as abordagens dos tópicos ditas acima, também será
apresentado imagens do projeto para melhor entendimento da estrutura e do
desenvolvimento, desde protótipos e diagramas até a filmes em exibição e time de
desenvolvedores.

1. INTRODUÇÃO AO DOCUMENTO
1.1 – TEMA
O tema do presente projeto é a abordagem do processo de desenvolvimento
do sistema de software “CINEWORLD” e a apresentação de suas funcionalidades.

1.2 - OBJETIVO DO PROJETO


O projeto visa auxiliar empresas que trabalham com a apresentação de
filmes, a partir do uso de ferramentas que possibilitem o controle dos filmes, dos
funcionários e da parte financeira da empresa. Bem como busca possibilitar uma
maior facilidade aos clientes, os quais poderão ter acesso a recursos como os filmes
em cartaz e seus respectivos trailers e sinopses.

1.3 - JUSTIFICATIVA DA ESCOLHA DO TEMA


Com o desenvolvimento das ferramentas de controle de caixa e de
funcionários, iremos buscar auxiliar o fluxo contábil de contas e melhorar a
organização da gestão da empresa, de modo a utilizar recursos tecnológicos para
que o trabalho, de maneira geral, se torne mais eficiente, garantindo uma melhora
significativa de tempo no processo de execução e de controle das vendas.

1.4 - MÉTODO DE TRABALHO


A explicação do trabalho se dará, inicialmente, por intermédio de uma breve
introdução, que abordará as principais características e o objetivo do sistema
desenvolvido. Logo depois, será feita a descrição do sistema, a qual trata-se de uma
síntese das funcionalidades do programa e a apresentação dos requisitos e do
protótipo - seguido do cronograma de desenvolvimento. Na sequência, há a análise
e o design do sistema, em que será explicado os diagramas, os quais serviram de
base para a construção do sistema e para uma melhor visualização de suas
interações. Posteriormente, será descrito o ambiente utilizado para desenvolver o
“CINEWORLD”, bem como a forma em que ocorreu a implementação e os testes
deste sistema. Por fim, será apresentado um manual do usuário - que contará com
as descrições do sistema e o modo de utilização das ferramentas, e, por último,
haverá a conclusão do trabalho, com as considerações e as referências
bibliográficas usadas em todo o processo de realização dele. Vale ressaltar, que toda
a explicação do trabalho será dividida em tópicos, para que haja uma melhor
organização e, portanto, facilidade para compreendê-lo.

1.5 - ORGANIZAÇÃO DO TRABALHO


O sistema utilizado para desenvolver o sistema foi o PyCharm - que é uma
IDE - ou seja, é um programa que possui ferramentas essenciais para o
desenvolvimento de softwares. O Banco de Dados é integrado ao PyCharm, logo,
todos os dados foram cadastrados dentro dessa IDE, por meio das pastas dos
“models”. A linguagem de programação aplicada no nosso projeto foi a Python, a
qual é de alto nível, interpretada de script, imperativa, orientada a objetos, funcional,
de tipagem dinâmica e forte. Já em relação à estilização das páginas web foi
utilizado o framework “bootstrap”, o qual serviu de base para o design do nosso
sistema, o qual também contou com imagens editadas no site “Canva”.
1.6 – GLOSSÁRIO
IDE: Ambiente de Desenvolvimento Integrado (do inglês Integrated Development
Environment), se refere a um programa de computador que reúne características
que auxiliam o processo de desenvolvimento do software.
UML: Linguagem de Modelagem Unificada (do inglês Unified Modeling Language),
utilizada para documentar e modelar as fases de desenvolvimento do sistema
orientados a objetos.
PDS: Projeto de Desenvolvimento de Sistemas, disciplina ministrada pelo professor
Pedro Vinícius para os alunos do curso técnico em informática do Instituto Federal
de Rondônia - campus Cacoal.
PW: Programação Web, disciplina ministrada pelo professor Thiago Kaiser para os
alunos do curso técnico em informática do Instituto Federal de Rondônia - campus
Cacoal.
RF: Requisitos Funcionais, os quais descrevem uma funcionalidade essencial do
sistema, sob a qual o sistema não funcionaria caso esta condição não existisse.
RNF: Requisitos Não Funcionais, os quais complementam a atuação do sistema,
melhorando seu desempenho, segurança, etc. Todavia, o sistema não depende
deles para ser funcional.
POO: Programação Orientada a Objetos, em que são criadas coleções de objetos
com estrutura e comportamentos próprios, facilitando a programação.
URL: Localizador Uniforme de Recursos (do inglês Uniform Resource Locator), o
qual se refere ao endereço virtual de determinada página ou website.
HTML: HyperText Markup Language, que em português significa: Linguagem de
Marcação de Hipertexto, a qual se refere a linguagem de marcação utilizada para a
construção de páginas na internet.
CSS: Folhas de Estilo em Cascata (Cascading Style Sheets), utilizada para
incrementar estilo a determinado documento.
CPF: Cadastros de Pessoas Físicas, o qual é o registro de contribuintes mantido por
intermédio da Receita Federal.
CRUD: Create, Read, Update, Delete, o qual remete as quatro operações básicas
de armazenamento persistente.

2. DESCRIÇÃO GERAL DO SISTEMA


2.1- DESCRIÇÃO DO PROBLEMA
Nosso software busca solucionar os problemas internos relativos à gestão de
empresas de cinemas, de modo que obstáculos como, morosidade no cadastro de
funcionários, no controle do caixa e na organização dos afazeres dos trabalhadores
sejam solucionados a partir do uso das ferramentas do sistema. Assim, haverá uma
maior eficiência, melhor controle interno e, consequentemente, uma maior
produtividade dos funcionários, decorrente da organização promovida pelo software.
Além disso, a implementação desse sistema pode gerar acréscimos nas vendas de
ingressos, já que tal processo será mais rápido, organizado e eficaz, ocasionando,
assim, um aumento da satisfação do cliente.

2.2 - PRINCIPAIS ENVOLVIDOS E SUAS CARACTERÍSTICAS


Os usuários do sistema serão todos aqueles que realizam qualquer trabalho
dentro da empresa de cinema, de modo que as funcionalidades do sistema que eles
utilizarão são: a lista de afazeres - em que será possível que cada funcionário
organize seus serviços do dia, o controle de cadeira e ingressos - que se dá no
momento em que o cliente compra o ingresso, assim, seu local será marcado e
haverá um controle do caixa, bem como será controlado a venda de produtos, como
pipoca, refrigerante e água, em que toda entrada e saída, tanto de produtos, quanto
de dinheiro, será controlada e atualizada pelo software. Há também uma ferramenta
que exibe notificações, como o incentivo ao cumprimento das metas do mês ou
algum aviso da parte administrativa, por exemplo. Os funcionários devem utilizar a
ferramenta de cadastro para incluir outro trabalhador, bem como também podem
excluí-lo do sistema. Já em relação aos clientes, eles só terão acesso aos filmes que
estão exibidos - que estarão na página inicial - juntamente com o trailer e a sinopse
do filme e a única ferramenta que eles poderão utilizar é a de contato, em que eles
poderão entrar em contato com a empresa para retirar eventuais dúvidas.

3. REQUISITOS DO SISTEMA
3.1 - REQUISITOS FUNCIONAIS
[RF01] Visualizar a Landing Page

Descrição Tanto o cliente, quanto o usuário acessaram a Landing


Page.
Prioridades Alta, uso cotidiano.
Caso de uso relacionado [UC01]

[RF02] O sistema deve permitir o cadastro de novos usuários.

Descrição O cadastro só será efetuado para funcionários, sendo que


antes de fazerem essa ação, ele deve possuir em mãos o
email do trabalho (nomeexemplo@cineworld.com) e o
número de identificação que consta no contrato. Além
disso, o cadastro contará com o nome completo, senha e
confirmação de senha.
Prioridades Alta, uso cotidiano.
Caso de uso relacionado [UC02]

[RF03] O sistema deve permitir o login dos usuários

Descrição Os funcionários com cadastros poderão realizar o login a


partir do e-mail (profissional) e da sua senha.
Prioridades Alta, uso cotidiano.
Caso de uso relacionado [UC03]

[RF04] O sistema deve permitir que o usuário recupere sua senha

Descrição Apenas os funcionários podem recuperar a senha, sendo


isso vistoriado pelo banco de dados de email, em que caso
tenha uma conta com o email digitado, conseguirá
recuperar a senha, caso não, o email será invalido.
Prioridades Alta, uso cotidiano.
Caso de uso relacionado [UC04]

[RF05] O sistema deve ter uma área em que o usuário possa


pesquisar coisas na plataforma
Descrição Haverá uma barra de pesquisa para o funcionário
pesquisar, por meio de palavras chaves, coisas que
constam na plataforma.
Prioridades Baixa, uso excepcional.
Caso de uso relacionado [UC05]

[RF06] O sistema possibilitará o usuário editar suas informações


de cadastros
Descrição O funcionário, depois de cadastrado, poderá alterar seu
email (caso possua um novo email de trabalho), seu nome,
sua senha e sua foto de perfil.
Prioridades Normal, uso cotidiano.
Caso de uso relacionado [UC06]
[RF07] O sistema deixará o usuário de inserir, editar e excluir os
clientes da cadeira dos filmes
Descrição Como parte do serviço facilitado pela plataforma, o
funcionário poderá realizar a inserção de pessoas para
assistir os filmes, sendo sua edição necessária quando a
pessoa entrou na sala e a exclusão em caso de
cancelamento de compra.
Prioridades Normal, uso cotidiano.
Caso de uso relacionado [UC07]

[RF08] O sistema disponibilizará uma área para a inserção,


edição e exclusão de vendas
Descrição Outro serviço facilitado, é o armazenamento de vendas de
produtos como pipoca e refrigerante, no qual o funcionário
poderá inserir suas vendas, editá-las e em casos de
cancelamentos cancelá-las.
Prioridades Normal, uso cotidiano.
Caso de uso relacionado [UC08]

3.2 - REQUISITOS NÃO FUNCIONAIS (NF)


[RNF01] O sistema será desenvolvido em Python.
Descrição A linguagem de programação que será utilizada no
desenvolvimento do sistema terá que ser Python.
Prioridades Normal, uso excepcional.
Caso de uso relacionado [UC09]

[RNF02] O sistema será acessível em todo tipo de navegador.


Descrição O sistema será acessível em qualquer tipo de navegador e
plataforma, visando a fácil acessibilidade do aplicativo.
Prioridade Normal, uso cotidiano.
Caso de uso relacionado [UC10]

[RNF03] Um usuário não poderá ter acesso aos dados de outro


usuário
Descrição Um usuário já conectado não poderá ter acesso aos dados
pessoais de outro usuário conectado.
Prioridade Alta, uso cotidiano.
Caso de uso relacionado [UC11]

[RNF04] O sistema deve possuir mecanismos de segurança,


para evitar que pessoas não autorizadas tenham
acesso ao sistema.
Descrição O sistema deverá possuir mecanismo de segurança de
alto nível, para dessa forma evitar que pessoas não
autorizadas tenham acesso ao sistema e a informações
pessoais dos usuários.
Prioridade Alta, uso cotidiano.
Caso de uso relacionado [UC12]

[RNF05] As senhas de acesso não devem estar diretamente


visíveis no banco de dados e sim de modo
criptografado.
Descrição As senhas usadas em cadastros não devem estar visíveis
no banco de dados do sistema, onde podem ser
acessadas com facilidade, e sim de uma maneira em que
fiquem criptografadas.
Prioridade Normal, uso cotidiano.
Caso de uso relacionado [UC13]

[RNF06] A cada inserção de informação o sistema deverá


atualizar.
Descrição A cada nova informação detectada no site, o sistema deverá
atualizar para o usuário ficar ciente das modificações e do
que está acontecendo.
Prioridade Alta, uso cotidiano.
Caso de uso relacionado [UC14]
3.3 – PROTÓTIPO

Legenda: Carrossel de Imagens.

Legenda: Demonstração dos Filmes em Exibição.


Legenda: Pop Up dos Filmes em Exibição.
Legenda: Integrantes do time de desenvolvimento.

Legenda: Entre em contato conosco e rodapé.


Legenda: Política de Privacidade.
Legenda: Termos de Uso.
Legenda: Página de Acesso.

Legenda: Página para recuperar senha.


Legenda:Email Encaminhado.

Legenda: Página de Criar Conta.


Legenda: Página Inicial.

Legenda: Notificações do Usuário.


Legenda: Conta CineWorld.

Legenda: Informações.
Legenda: Atividades de Login.

Legenda: Pop Up Sair.


Legenda: Adicionar To Do List.

Legenda: Editar To Do List.


Legenda: Página do controle de cadeira e ingressos dos filmes.

Legenda: Adicionar Pessoa a um Filme.


Legenda: Editar informações da pessoa no filme.

Legenda: Página de Controle de Vendas de Produtos.


Legenda: Adicionar Venda de Produtos.

Legenda: Editar Venda de Produtos..

3.4 - MÉTRICAS E CRONOGRAMA


N° Etapa Ações Dias
1 Aprendizado sobre a utilização do Bootstrap 1 dia

2 Criação do ambiente 1 dia

3 Formulação da Landing Page 3 dias

4 Elaboração das páginas iniciais (Entrar, criar conta e 1 dia


esqueceu senha)

5 Produção da pagina incial 1 dia

6 Criação das páginas dos filmes 1 dia

7 Criação da página de vendas 1 dia

8 Aplicando URLs 1 dia

9 Testes 1 dia

4 - ANÁLISE E DESIGN
A partir de agora apresento todos os diagramas pertencentes a este projeto
para mostrar as interações dos objetos e as partes do sistema como ao todo.

4.1- ARQUITETURA DO SISTEMA

O sistema do CineWorld se baseou em na Linguagem Python, que é


conhecida por ser uma linguagem de alto nível dinâmica, interpretada, modular,
multiplataforma e que funciona por meio de uma Programação Orientada a Objetos
(POO), baseando-se, portanto, em um padrão de desenvolvimento em que são
elaborados diversos conjuntos de objetos com ordenação e condutas próprias.
Assim, esses objetos conseguem se entrosar e efetivam as atitudes requeridas.

Destarte, foi utilizado também o framework Django, tendo seu funcionamento


guiado a partir do model-template-view, o que possibilitou a inserção do banco de
dados no mesmo por meio do arquivo models. Além disso, foi também
implementado o framework bootstrap que utiliza HTML, CSS e JavaScript para a
formulação da página web.
4.2 - DIAGRAMA DE CASOS DE USO
4.3 - DIAGRAMA DE ENTIDADE-RELACIONAMENTO
4.4 - DIAGRAMA DE ATIVIDADES
4.5 - MODELOS DE DADOS

4.5.1- Modelo Lógico da Base de Dados

4.5.2 - Criação Física do Modelo de Dados

#Filme Malévola

class Malevola (models.Model):


nome = models.CharField(max_length=150)
cpf = models.IntegerField(null=True, blank=True)
situacao_pagamento = models.CharField(max_length=50)
cadeira = models.IntegerField(null=True, blank=True)
entrada = models.CharField(max_length=50)
data = models.DateField(null=True, blank=True)

#Filme Extraordinário
class Extraordinario (models.Model):
nome = models.CharField(max_length=150)
cpf = models.IntegerField(null=True, blank=True)
situacao_pagamento = models.CharField(max_length=50)
cadeira = models.IntegerField(null=True, blank=True)
entrada = models.CharField(max_length=50)
data = models.DateField(null=True, blank=True)

#Filme Cruela

class Cruela (models.Model):


nome = models.CharField(max_length=150)
cpf = models.IntegerField(null=True, blank=True)
situacao_pagamento = models.CharField(max_length=50)
cadeira = models.IntegerField(null=True, blank=True)
entrada = models.CharField(max_length=50)
data = models.DateField(null=True, blank=True)

#Filme Divergente

class Divergente (models.Model):


nome = models.CharField(max_length=150)
cpf = models.IntegerField(null=True, blank=True)
situacao_pagamento = models.CharField(max_length=50)
cadeira = models.IntegerField(null=True, blank=True)
entrada = models.CharField(max_length=50)
data = models.DateField(null=True, blank=True)

#Filme Anabelle

class Anabelle (models.Model):


nome = models.CharField(max_length=150)
cpf = models.IntegerField(null=True, blank=True)
situacao_pagamento = models.CharField(max_length=50)
cadeira = models.IntegerField(null=True, blank=True)
entrada = models.CharField(max_length=50)
data = models.DateField(null=True, blank=True)

#Filme After

class After (models.Model):


nome = models.CharField(max_length=150)
cpf = models.IntegerField(null=True, blank=True)
situacao_pagamento = models.CharField(max_length=50)
cadeira = models.IntegerField(null=True, blank=True)
entrada = models.CharField(max_length=50)
data = models.DateField(null=True, blank=True)

#Vendas

class Venda (models.Model):


nome = models.CharField(max_length=150)
cpf = models.IntegerField(null=True, blank=True)
nome_do_produto = models.CharField(max_length=150)
codigo_de_barras = models.IntegerField(null=True,
blank=True)
situacao_pagamento = models.CharField(max_length=150)
data = models.DateField(null=True, blank=True)

#To do List

class Index (models.Model):


descricao = models.CharField(max_length=150)
data = models.DateField(null=True, blank=True)
status = models.CharField(max_length=150)

4.5.3 - Dicionário de Dados


MALÉVOLA

ATRIBUTO TYPE DEFAULT KEY

nome CharField(150) - -

cpf IntegerField - -

situacao_pagamento CharField (50) - -

cadeira IntegerField - -

entrada CharField (50) - -

data DateField - -

malevola_pk Integer AUTO INCREMENT PK

EXTRAORDINÁRIO
ATRIBUTO TYPE DEFAULT KEY

nome CharField(150) - -

cpf IntegerField - -

situacao_pagamento CharField (50) - -

cadeira IntegerField - -

entrada CharField (50) - -

data DateField - -

extraordinario_pk Integer AUTO INCREMENT PK

CRUELA

ATRIBUTO TYPE DEFAULT KEY

nome CharField(150) - -

cpf IntegerField - -

situacao_pagamento CharField (50) - -

cadeira IntegerField - -

entrada CharField (50) - -

data DateField - -

cruela_pk Integer AUTO INCREMENT PK

DIVERGENTE

ATRIBUTO TYPE DEFAULT KEY

nome CharField(150) - -

cpf IntegerField - -

situacao_pagamento CharField (50) - -

cadeira IntegerField - -

entrada CharField (50) - -

data DateField - -
divergente_pk Integer AUTO INCREMENT PK

ANABELLE

ATRIBUTO TYPE DEFAULT KEY

nome CharField(150) - -

cpf IntegerField - -

situacao_pagamento CharField (50) - -

cadeira IntegerField - -

entrada CharField (50) - -

data DateField - -

anabelle_pk Integer AUTO INCREMENT PK

AFTER

ATRIBUTO TYPE DEFAULT KEY

nome CharField(150) - -

cpf IntegerField - -

situacao_pagamento CharField (50) - -

cadeira IntegerField - -

entrada CharField (50) - -

data DateField - -

after_pk Integer AUTO INCREMENT PK

VENDA

ATRIBUTO TYPE DEFAULT KEY

nome CharField(150) - -

cpf IntegerField - -

nome_do_produto CharField (150) - -


codigo_de_barras IntegerField - -

situacao_pagamento CharField (50) - -

data DateField - -

venda_pk Integer AUTO INCREMENT PK

INDEX

ATRIBUTO TYPE DEFAULT KEY

descricao CharField(150) - -

status CharField (150) - -

data DateField - -

index_pk Integer AUTO INCREMENT PK

4.6 - AMBIENTE DE DESENVOLVIMENTO


O ambiente de desenvolvimento integrado utilizado foi o PyCharm, IDE do
Python para desenvolvedores profissionais, desenvolvido pela empresa JetBrains.
Ele fornece extensas opções para depuração do código Python/Django e JavaScript.
Seu ambiente de desenvolvimento se caracteriza pela interface preta, da seguinte
forma:

Nele torna-se possível a criação de classes, atributos e todas as


necessidades usuais do programa. Além disso, ele é um aplicativo muito versátil,
que atende às necessidades do programador, como por exemplo: as janelas podem
ser alternadas para o modo dock, flutuante, janela ou dividido, tornando-se bem fácil
ir de um código para outro. Ademais, ele oferece assistência e análise de
codificação, auxiliando na aprendizagem uma vez que demonstra a conclusão do
código, sintaxe e destaque de determinado erro. Por conseguinte, em primeiro lugar
foi feita uma pasta com o nome do sistema salva no computador para o PyCharm e,
a partir dela foram criadas outras pastas, cada uma para uma funcionalidade do
sistema, como os arquivos: models.py, base.html, home.html, entre outros. Com eles
se tornou possível a inserção de imagens, a formação de diferentes páginas e a
utilização de botões, a criação do banco de dados, a modificação da cor de
determinada estrutura, entre outros, de forma prática em diferentes pastas dentro do
mesmo aplicativo. A junção de cada código possibilitou a origem do sistema
cineworld.

5 – IMPLEMENTAÇÃO
O processo para criação do programa foi feito com a reunião dos
desenvolvedores (todos os integrantes do grupo), os quais chegaram ao consenso
na problemática de gestão nas empresas de cinema. Feito isso, começou-se o
desenvolvimento utilizando o aplicativo PyCharm na linguagem de programação
Python, dividindo cada funcionalidade do sistema em pastas. Primeiramente, foi feita
a Landing Page, tendo como implementação a modificação das imagens originais
para os filmes oferecidos no cinema e das escritas da página, dando uma descrição
do que é o sistema e quem são seus desenvolvedores. Posteriormente, colocamos
em funcionalidade os botões, criando uma página de acesso para dentro do sistema,
solicitando o e-mail e senha, da mesma forma, implementando para diferentes
casos, como por exemplo, para a criação de conta, caso o usuário não tenha uma,
outra para caso ele esqueça sua senha. Nesse sentido, foi criada a página em si que
administra o sistema, contendo uma conta para cada usuário que administra o
programa de cinema, com gráficos acerca do tempo de serviço, do salário, da
quantidade de tarefas, entre outros. Além disso, por intermédio dos CRUDs, foi
possível incrementar o horário de acesso de cada usuário, a data, dispositivo,
estado e cidade de cada pessoa. Por fim, foi feita a organização de vendas, as quais
guardam o nome da pessoa, a situação do pagamento, o cpf, o número da cadeira
(caso seja filme), o código de barras (caso seja um produto) e a data da compra.

6 - TESTES
Como explicitado nos tópicos 1.5 e 4.1, no desenvolvimento do sistema
CineWorld foi utilizado a IDE PyCharm 2021.1.2 e, uma das ferramentas que foi
utilizadas foi o terminal, o qual indicava os erros. Além disso, dando o start no
servidor, era possível verificar se o que os programadores tinham em mente foi
concretizado, utilizando o navegador Microsoft Edge e, desvios pontuais eram
resolvidos.
Ademais, os erros eram resolvidos a partir da discussão entre os
desenvolvedores e, em determinados erros era requerido o auxílio dos professores
Thiago Kayser, da disciplina de Programação Web e Pedro Vinícius, da disciplina de
Projetos e Desenvolvimentos de Sistemas.
7 - MANUAL DO USUÁRIO
8 - CONCLUSÕES E CONSIDERAÇÕES
Com este trabalho, conclui-se a importância do projeto de desenvolvimento
de sistemas que busca trazer resoluções através da tecnologia e da inovação,
proporcionando a nós um maior aprendizado. Através dessa matéria, abordamos
assuntos importantes e que foram essenciais para a conclusão desse projeto, como,
descrição do sistema, principais envolvidos e características, requisitos funcionais e
não funcionais, protótipo, análise e design, arquitetura do sistema, diagramas,
modelo de dados, implementação, testes e muitos outros assuntos. Esse trabalho
teve como ideia central apresentar um desenvolvimento de software criado com a
intenção de proporcionar uma oportunidade mais ágil e inovadora, buscamos
entregar de forma completa e fácil o objetivo central do site CineWorld, que é a
organização, a inovação e a praticidade. Apresentamos a maneira em que o projeto
foi trabalhado e executado, a sua linguagem, seus requisitos e sua estrutura num
geral, concluímos que é um site que beneficia os usuários e sua metodologia de
organização.
Os objetivos foram atingidos com sucesso e com exatidão, houveram
momentos difíceis, mas que foram necessários para maior aprendizagem, aqui fica a
satisfação pelo professor Pedro Dias que trabalhou em sanar nossas dúvidas e tirar
um momento do seu tempo para nos auxiliar e também ao professor Thiago Kaiser
que nos ajudou por um período, satisfação também pelo grupo que se empenhou
para que o trabalho fosse concluído com sucesso, todos tiraram grande proveito da
oportunidade que nos serviu para tirar conclusões e aprender um pouco mais sobre
o mundo da tecnologia e da informação.

9 - BIBLIOGRAFIA

BERNARDET, Jean-Claude. O que é cinema. Brasiliense, 2017.

BIANCHINI, Juliano et al. TestCen: Ferramenta de Suporte ao Planejamento de


Teste Funcional de Software a partir de Diagramas de Caso de Uso. 2004.

DE REQUISITOS, Técnicas de Levantamento. Técnicas de Levantamento de


Requisitos.

GUEDES, Marylene. Dicas para programadores iniciantes. TreinaWeb, 2020.


Disponível em:
<https://www.treinaweb.com.br/blog/dicas-para-programadores-iniciantes>. Acesso
em: 14 de outubro de 2021.

GARCIA, Rogério Eduardo. Engenharia de Software I. Tópicos, v. 19, p. 04, 2016.


TUTORIAL DJANGO PARTE 3: USANDO MODELS. Developer Mozilla. Disponível
em: <https://developer.mozilla.org/pt-BR/docs/Learn/Server-side/Django/Models>.
Acesso em: 18 de outubro de 2021.

Você também pode gostar