Buscar

PIM IV

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

UNIP EaD
Projeto Integrado Multidisciplinar
Cursos Superiores de Tecnologia
PROJETO DE IMPLEMENTAÇÃO DE SISTEMA EM LINGUAGEM C PARA 
BILHETERIA DE TEATRO
POLO PARAISO
2019
UNIP EaD
Projeto Integrado Multidisciplinar
Cursos Superiores de Tecnologia
PROJETO DE IMPLEMENTAÇÃO DE SISTEMA EM LINGUAGEM C PARA 
BILHETERIA DE TEATRO
NOME: Carlos Henrique Gruthner Junior
RA: 1911504
NOME: José Alexandre da Costa Galvão
RA: 1911891
NOME: Maicon Camilo
RA: 1909398 
NOME: Uellington de Jesus Pinto
RA: 1918744
NOME: Vinicius Pormann Barroso 
RA: 1937070
NOME: Willian Santos Silva 
RA: 1914001
CURSO: ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
SEMESTRE: 2º
POLO PARAISO
2019
RESUMO
A automação dos processos, por meio da implementação de programas 
computacionais, tem sido utilizada por diversas instituições públicas e privadas, a fim 
de se obter mais agilidade e segurança na entrega do seu produto final ao usuário. 
Diante deste cenário, abordou-se neste projeto de pesquisa a criação de um sistema 
de venda de ingressos de teatro em Linguagem C com base nos conteúdos das 
disciplinas de Linguagem e Técnica de Programação e Engenharia de Software I 
cursadas neste bimestre, no qual são apresentados os argumentos e discussões 
acerca do ciclo de vida utilizado no desenvolvimento do software (modelo 
incremental); o fluxograma de desenvolvimento do programa e respectivo código, 
especificando os diferentes cenários como: tipo e quantidade de ingressos (inteira, 
meia-entrada, isenta e gratuita), hora e data do espetáculo, fechamento do caixa, 
além de discriminar espetáculos com temas especiais voltados para crianças 
carentes com entrada franca todas às terças-feiras. 
Palavras-chaves: Linguagem C, fluxograma, modelo incremental.
ABSTRACT
Process automation, through the implementation of computer programs, has 
been used by several public and private institutions, in order to obtain more agility 
and security in the delivery of its final product to the user. Given this scenario, this 
research project addressed the creation of a C-language theater ticket sales system 
based on the contents of the Language and Technique of Programming and 
Software Engineering I courses in this quarter, in which they are presented, the 
arguments and discussions about the life cycle used in software development 
(incremental model); the program development flowchart and its code, specifying the 
different scenarios such as: type and quantity of tickets (full, half-ticket, free and 
free), show time and date, cashier closure, and discriminate shows with themes 
Specials for needy children with free admission every Tuesday.
Keywords: C language, flowchart, incremental model.
SUMÁRIO
1 INTRODUÇÃO 5
7
1 INTRODUÇÃO
Atualmente a automação dos processos nas organizações públicas e privadas 
tem se tornado cada vez necessária para que seus objetivos sejam alcançados de 
forma mais rápida, segura, com baixo custo e principalmente seu cliente final fique 
satisfeito com o produto recebido. Para isso, o uso da tecnologia da informação, por 
meio da implementação de programas de computadores, cada vez mais 
sofisticados, tem colaborado na otimização desses processos. 
Neste contexto, o presente projeto de pesquisa aborda o desenvolvimento de 
um sistema de venda de ingressos de teatro em linguagem C, utilizada na disciplina 
de Linguagem e Técnica de Programação, como parte prática do trabalho. Nele, são 
considerados a tabela de valores dos ingressos, com os seus diferentes tipos 
(inteira, meia-entrada e gratuita). Além de especificar na tela de um monitor, após a 
concretização da compra, um ticket com a data, a hora, o nome do espetáculo 
teatral e o número da poltrona, tomando-se o cuidado de nenhum espectador ter um 
ingresso com o mesmo número da poltrona de outro espectador da mesma peça 
teatral de um determinado horário e, com a indisponibilidade de lugares, o sistema 
não permite a venda de ingressos para a peça em questão. Por fim, o programa, 
termina com a gestão do caixa, informando seu fechamento com as movimentações 
do dia e o saldo final. 
A parte teórica envolve a apresentação dos argumentos e discussões em 
relação ao uso de processos de software (ciclo de vida), tendo como base a 
disciplina de Engenharia de Software I.
8
2. LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO
2.1 Linguagem
A linguagem C/C++ é bastante utilizada para o desenvolvimento de softwares 
que necessitem de uma certa integração com o hardware, por ser performática e 
permitir um melhor gerenciamento de recursos de máquina e alocação de memória. 
É bastante utilizado na construção de sistemas operacionais, softwares de ERP e 
gerenciamento, e sistemas embarcados, como na plataforma Arduino.
2.2 Fluxograma
Antes de darmos início ao desenvolvimento do sistema, foi elaborado o 
fluxograma para auxiliar nas tomadas de decisão de cada ação dentro do sistema. 
Onde poderíamos ver quais caminhos seguir e validar hipóteses antes de iniciar de 
fato o desenvolvimento. Seguindo um conjunto de símbolos-padrão.
Símbolo Função
Início e fim do algoritmo
Cálculo e atribuição de valores
Entrada de dados
Decisão com possibilidade de desvio
Saída de dados
Fluxo de dados. Conectar blocos.
9
10
2.3 Desenvolvimento do sistema
Para o desenvolvimento utilizamos a linguagem C++, por ser uma atualização 
da linguagem C e conter alguns métodos a mais, como os testes booleanos que 
precisamos para as funções de laço. O método de desenvolvimento foi o 
incremental, possibilitando que o cliente aprove cada parte do sistema antes que o 
mesmo fique concluído, diminuindo o risco de grandes implementações futuras.
O software foi dividido em dois módulos. O primeiro módulo é reservado para 
vendas, e o segundo para fechamento de caixa.
Figura 1 – Tela inicial:
Fonte: Autoria Própria.
Dentro do primeiro módulo, temos as opções de compra para o espetáculo.
Figura 2 – Tela de escolha do dia da semana:
Fonte: Autoria Própria.
Nesse momento, o atendente escolhe o dia da semana, após escolhido o dia, 
será exibido todos os espetáculos em cartaz.
11
Figura 3 – Tela com as informações sobre os espetáculos em exibição.
Fonte: Autoria Própria.
Após escolher o espetáculo de preferência, deverá ser apresentado as 
opções de quantidade de entradas para cada faixa etária. O programa calcula 
automaticamente os valores e descontos inclusos.
Figura 4 – Tela de cálculo de entradas e descontos.
Fonte: Autoria Própria.
Logo, é apresentado a tela de escolhas de poltronas numeradas e separadas 
para cada usuário.
12
Figura 5 – Escolha de Poltronas
Fonte: Autoria Própria.
Logo após, a escolha de todos os dados, é apresentado a tela com 
confirmação e valor total da compra. Ao confirmar é apresentado o comprovante da 
compra.
Figura 6 – Tela de confirmação da compra.
Fonte: Autoria Própria.
Figura 7 – Tela de comprovante da compra realizada.
13
 Fonte: Autoria Própria.
Dentro do segundo módulo, é apresentado a tela de fechamento do caixa, 
que mostra o cálculo do total de todas as compras realizadas.
Figura 8 – Tela de fechamento do caixa de vendas.
Fonte: Autoria Própria.
Após ser usado todas as funções desejadas e não sendo mais preciso utilizar 
do programa, basta escolher o terceiro módulo, onde irá pedir confirmação de saída. 
Confirmando a saída é apresentado a dela de desenvolvimento, basta pressionar 
qualquer tecla para finalizar o programa.
Figura 9 – Tela de finalização.
Fonte: Autoria Própria.
Figura 10 – Tela de autoria.
Fonte: Autoria Própria.
14
Caso queira acessar o código-fonte do projeto acesse: https://github.com/dev-
williansilva/Sistema_Teatro.
3 CICLO DE VIDA
3.1 Incremental
Para o desenvolvimento do sistema de vendas de ingressos para teatro, foi 
adotado o modelo Incremental. Este modelo permite a divisão do projeto total em 
vários ciclos menores possibilitando que o cliente aprove um ciclo para que seja 
dada continuidade ao projeto para o próximo ciclo diminuindo assim o risco de 
grandesimplementações futuras, pois se o cliente quiser uma mudança neste ciclo 
do projeto, é mais fácil e rápido a sua correção. É possível também que mais de um 
ciclo do projeto seja feito ao mesmo tempo dividindo equipes para outros ciclos do 
projeto sendo desenvolvido em paralelo.
Dentro de um ciclo existem algumas etapas que devem ser executadas para 
se concluir um ciclo e seguir para o próximo.
3.2 Etapas de um ciclo incremental
Comunicação: onde é feito o levantamento de requisitos do sistema, a 
comunicação entre os desenvolvedores e o cliente é muito importante.
Planejamento: onde é definido um plano para o desenvolvimento do sistema, 
os recursos necessários, produto a ser produzido, descrição de possíveis riscos.
Modelagem: onde pode-se criar modelos como protótipos de telas do sistema 
para que tanto os desenvolvedores como o cliente possam entender melhor os 
requisitos para o sistema.
Construção: consiste em gerar códigos e fazer testes para eliminar erros.
Implantação: nesta etapa o cliente recebe o produto para fazer a avaliação e 
dar um retorno da mesma.
Cada conjunto dessas etapas formam um ciclo que nada mais é que um 
pedaço do sistema que vão sendo agrupados, temos assim o modelo incremental 
para que no final se tenha um sistema completo.
Devido a essa flexibilidade o modelo incremental foi adotado para o 
desenvolvimento deste projeto.
4 COMUNICAÇÃO
E para que a equipe tenha um bom desempenho no projeto, uma boa 
comunicação é sempre importante e para isso foi atribuído a técnica de reunião 
Walkthrough. Essa técnica visa melhoria tanto na qualidade do sistema quanto no 
conhecimento de seu conteúdo.
4.1 Técnicas de reunião walkthrough
Esse tipo de reunião pode ser aplicado em diversos momentos do 
desenvolvimento do projeto e em diversas etapas como levantamento de 
informações, revisões técnicas etc. É uma técnica considerada mais informal com 
objetivo de manter a qualidade do projeto e que todos os presentes tenham o 
conhecimento do conteúdo do projeto. Pode-se dizer que é um tipo de reunião com 
https://github.com/dev-williansilva/Sistema_Teatro
https://github.com/dev-williansilva/Sistema_Teatro
15
cara de revisão realizada em pares ou em grupo, é uma prática simples e bem 
aceita para a melhoria da qualidade do projeto.
5 PROJETO DE SISTEMA DE VENDAS DE INGRESSO PARA TEATRO
5.1 Levantamento de requisitos de sistema
Em reunião com o cliente foram levantados os requisitos para o sistema. O 
Sistema deverá levar em consideração uma tabela de valores dos ingressos que 
são:
Figura 11 – Valores para os ingressos
50% de desconto 100% de desconto Sem desconto
Meia-entrada Entrada-livre Inteira
professores da rede pública de 
ensino
Crianças carentes da rede pública 
somente às terças-feiras
Todos que não se enquadram nos 
descontos
Estudantes
Crianças de 02 à 12 anos
Adultos acima de 60 anos
Tabela de valores para ingressos
Fonte: autoria própria
Ao efetuar a compra do ingresso, o sistema deverá mostrar em tela um ticket 
com a data, a hora, a peça teatral e o número da poltrona.
Nenhum espectador pode ter o mesmo número de poltrona de outro 
espectador da mesma peça teatral no mesmo horário.
Informar quando não houver mais lugares disponíveis e não permitir mais a 
venda para a peça em questão.
O sistema deverá fazer a gestão do caixa informando no fechamento todas as 
movimentações do dia e o saldo do fechamento.
5.2 Incremento 1
- Comunicação: após reunião ficou acertado a entrega da tela de menu e o 
catálogo de espetáculos juntamente com a lógica de seleção dos ingressos.
- Planejamento: será utilizado 1 computador com a plataforma DevC++ 
instalada para o desenvolvimento dessa parte do projeto. Foi estabelecido uma tela 
inicial do sistema com o nome do teatro e um menu com as opções de Espetáculos, 
Fechamento de caixa e sair do sistema, e a tela com o catálogo de espetáculos.
- Modelagem: neste ponto foi criado um modelo de tela para que tanto os 
desenvolvedores como o cliente tivesse uma ideia melhor dos requisitos do sistema. 
Algumas correções foram feitas e tivemos um melhor resultado.
Figura 12 – Frame ilustrando o menu principal da aplicação
16
Fonte: autoria própria
- Construção: nesta etapa começa a geração de código feita na linguagem C 
usando a plataforma DevC++ e testes são feitos para correção de possíveis erros 
que podem ocorrer no código, efetuando os testes a tela inicial e o menu estando 
em funcionamento passamos para fase de implantação.
- Implantação: o sistema foi entregue ao cliente que avaliou, testou e 
aprovou tudo que foi entregue e ficou decidido que a interface com fundo preto seria 
padrão do sistema.
5.3 Incremento 2
- Comunicação: neste ponto ficou acertado a entrega da seleção do ingresso 
definido por seu tipo e a forma da escolha das poltronas.
- Planejamento: 2 computadores foram definidos nesta etapa do projeto, a 
equipe foi dividida em duas, a primeira vai desenvolver a escolha da peça teatral e o 
tipo de ingresso, foi definido ter a opção de se escolher o dia da semana e em 
seguida uma tabela com as peças teatrais em exibição constando o código, nome, 
sala, preço, horários e lugares vagos, e em seguida a opção para quantidade de 
ingressos para cada tipo disponível, e a outra equipe vai desenvolver a forma como 
será feita a escolha das poltronas e ficou definido que ao lado de cada número de 
poltrona terá a letra ‘o’ para ocupado, ‘v’ para lugar vago e ‘s’ para uma poltrona 
selecionada.
- Modelagem: já com a interface definida anteriormente no incremento 1, 
foram apresentadas ao cliente as modelagens de tela para a ideia da apresentação 
dos requisitos, com algumas melhorias da interface. 
- Construção: nesta etapa começa a geração de código feita na linguagem C 
usando a plataforma DevC++ e testes são feitos para correção de possíveis erros 
que podem ocorrer no código, efetuando os testes foram detectados erros e os 
mesmos corrigidos para apresentação ao cliente.
- Implantação: o sistema foi entregue ao cliente que avaliou, testou e 
aprovou tudo que foi entregue, sendo assim passamos para a próxima etapa.
5.4 Incremento 3
17
- Comunicação: aqui ficou acertado a lógica do cálculo do valor dos 
ingressos para cada tipo de ingresso juntamente com a impressão em tela dos 
tickets e a finalização da compra.
- Planejamento: a equipe foi dividida em duas, uma cuidando da parte dos 
cálculos para cada tipo de ingresso onde se tem 3 opções, entrada com 50% de 
desconto, entrada com 100% de desconto e entrada com preço cheio, conforme a 
opção escolhida o sistema realiza os cálculos e armazena seus valores que também 
serão utilizados no próximo incremento conforme os requisitos, e em seguida é 
solicitado a confirmação da compra, a outra equipe vai desenvolver a exibição em 
tela do ticket da compra efetuada dispondo de data, a hora, a peça teatral e o 
número da poltrona.
- Modelagem: nesta etapa foram criadas modelos de telas para que tanto os 
desenvolvedores como o cliente definissem melhor a ideia dos requisitos do sistema. 
Algumas correções foram feitas após o cliente, junto aos desenvolvedores chegarem 
a uma decisão, e tivemos um melhor resultado com as telas a seguir:
-Construção: os desenvolvedores nesta etapa começam a construção do 
código feito na linguagem C usando a plataforma DevC++, testes são feitos para 
correção de possíveis erros que podem ocorrer no código, efetuando os testes foram 
detectados erros, o código foi refatorado e submetido a novos testes até estar com 
as funcionalidades fluindo corretamente.
- Implantação: o incremento foi entregue ao cliente que avaliou, testou e 
aprovou tudo que foi entregue e sugeriu algumas pequenas mudanças no projeto 
que foram anotadas para serem discutidas em uma reunião, sendo assim passamos 
para a próxima etapa.
5.5 Incremento 4
- Comunicação: neste incremento ficou acertado a lógica para o fechamento 
de caixa, contabilizando os ingressos e o valor total arrecadado.
- Planejamento: nesta etapa finaldo projeto a equipe se dividiu em duas, 
uma equipe ficou aplicando vários testes no código de todos os incrementos 
anteriores para descoberta de possíveis erros e refatoração do código para 
melhorias e para implementações futuras, a outra equipe cuidou de desenvolver o 
fechamento do caixa exibindo em tela todos os tipos de ingressos vendidos e as 
suas quantidades bem como o valor total de cada tipo vendido e o valor total de 
vendas no dia.
- Modelagem: após a seleção no menu principal para fechamento de caixa é 
exibida a tela com as informações para cada tipo de ingresso e as quantidades 
vendidas e seus valores e o total do caixa.
- Construção: após a definição da tela o código é desenvolvido na linguagem 
C usando a plataforma DevC++, testes são realizados pequenos erros corrigidos e o 
incremento segue para ser apresentado ao cliente.
- Implantação: o cliente recebeu a parte final do sistema, testou, avaliou e 
solicitou algumas pequenas melhorias que não iria atrapalhar o funcionamento do 
sistema, os desenvolvedores se reuniram com o cliente e implementaram as 
pequenas melhorias solicitadas no mesmo dia, mantendo a qualidade do sistema e a 
satisfação do cliente. 
18
6 CONCLUSÃO
Neste Projeto integrado Multidisciplinar foi desenvolvido um Software para 
vendas de ingressos para teatro, abordando desde a linguagem e técnicas de 
programação utilizados, como os processos utilizados para o seu desenvolvimento.
O Projeto foi desenvolvido em linguagem C/C++ com a utilização de 
bibliotecas com a plataforma DevC++ para a codificação e compilação do mesmo. 
Em um fluxograma apresentado mostra-se uma ideia geral do funcionamento do 
software. O método incremental foi adotado para facilitar o desenvolvimento através 
de ciclos onde o software é dividido em partes (incrementos), onde em cada 
incremento desenvolvido passa por etapas pré-definidas de comunicação, 
planejamento, modelagem, construção e implantação. 
A comunicação da equipe de desenvolvedores e o cliente é uma parte muito 
importante, para isso juntamente com o modelo incremental foi utilizada a técnica de 
reunião Walkthrough, um tipo de reunião que pode ser realizada em qualquer etapa 
do projeto com um estilo mais informal, prática e simples bem aceita em projetos.
A conclusão é que o modelo incremental realmente ajuda muito no 
desenvolvimento, dando a possibilidade de corrigir erros por partes de cada ciclo 
concluído, e possibilitando a divisão da equipe de desenvolvedores em partes 
diferentes do projeto mantendo o prazo de entrega e a qualidade do software. 
Entendemos também a importância da comunicação entre desenvolvedores e cliente 
através das reuniões, mantendo sempre o cliente participativo, nos direcionando 
conforme os requisitos fossem agregados, finalizando a entrega de um software de 
qualidade de acordo com os requisitos do cliente.
19
REFERÊNCIAS BIBLIOGRÁFICAS
COSTA, Ivanir. Engenharia de software. São Paulo: Editora Sol, 2014.
IVO, Olavo. Linguagem e técnicas de programação. São Paulo, 2014.

Continue navegando