Sistema de Venda de Passagens
Por: eduardamaia17 • 21/5/2018 • 4.130 Palavras (17 Páginas) • 389 Visualizações
...
Ao longo deste texto, detalharei como foi o processo de desenvolvimento do sistema e as soluções adotadas para que fosse possível atender aos requisitos.
---------------------------------------------------------------
6
1 – Dos Requisitos
O sistema desenvolvido neste projeto deverá ser capaz de administrar vários aspectos da venda de passagens de ônibus.
O primeiro requisito é que o sistema leve em consideração uma tabela de tarifação com o valor das passagens. A partir daí, deverá permitir que estudantes compre passagens com 50% de desconto. Também deverá permitir que até duas passagens tenham gratuidade de 100% para idosos.
Após a finalização da venda, deverá ser emitido um ticket contendo a data e hora da partida do ônibus, o local de destino, o número do ônibus e o número da poltrona.
O sistema não poderá permitir que a mesma poltrona seja vendida à mais de um passageiro.
Não podem ser vendidos mais lugares do que os disponíveis no veículo.
Deverá fazer a gestão do caixa, armazenando todas as movimentações do dia e o saldo do fechamento.
2 – Do Modelo de Desenvolvimento
Considerando o pequeno tamanho do projeto, optei por seguir o conceito dos métodos ágeis, no sentido iniciar o projeto com um protótipo, de intercalar o planejamento com a escrita do código e de focar no funcionamento, mais do que na documentação. O desenvolvimento também se deu de forma incremental, pois após a inclusão de funcionalidades o processo retornava à fase análise das necessidades, passando por nova modelagem, codificação e testes.
Para construção do protótipo, primeiramente foram definidos os menus e opções necessários. Assim, foram desenvolvidas as principais telas a serem exibidas pelo aplicativo, porém sem as funcionalidades que seriam implementadas posteriormente.
Toda a modelagem foi realizada por meio de descrição narrativa. As tarefas necessárias foram definidas e depois foram gradativamente detalhadas e transformadas em tarefas menores. Assim que estivessem suficientemente detalhadas, as funções eram então codificadas.
---------------------------------------------------------------
7
Esta forma de desenvolvimento se mostrou bastante eficiente, para um projeto de pequeno como este. Porém, é necessário que a descrição narrativa seja capaz de atingir um nível de detalhamento adequado e que seja bastante clara.
2.1 – Do protótipo
A elaboração do protótipo envolveu a identificação das opções necessárias no menu principal do aplicativo.
Identifiquei que seria necessária uma opção para cada destino diferente e que a princípio o sistema trabalharia com 3 destinos: São Paulo, Curitiba e Belo Horizonte. Também seria necessária uma opção para que fosse exibido o fluxo de caixa. Por fim, seria necessária uma opção para sair do sistema.
Definidas as necessidades do menu principal, foi providenciada sua codificação. Tomei o cuidado de não inserir o código de exibição do menu diretamente na função main() a fim de evitar que ficasse poluída. Optei por delegar essa tarefa à uma função chamada exibirMenuInicial() que é chamada pela função main(). O protótipo do menu ficou da seguinte forma:
[pic 1][pic 2][pic 3]
Bem-vindo ao sistema de vendas de passagens
Menu Principal
1 - Vender passagem para São Paulo
2 - Vender passagem para Rio de Janeiro
3 - Vender passagem para Belo Horizonte
4 - Vender passagem para Espirito Santo
5 - Vender passagem para Bahia
6 - Gestão do Caixa
9 - Sair
Selecione uma opção:
[pic 4]
A próxima etapa foi elaborar a exibição do menu secundário, que seria exibido após a seleção de um destino pelo usuário.
8
Em minha concepção, o sistema deveria exibir na tela uma representação das poltronas do ônibus. Essa representação deveria exibir o número das poltronas e sua ocupação.
A ocupação seria indicada pelos caracteres '-', 'I', 'C' e 'E' que representam respectivamente, uma poltrona vazia, uma poltrona ocupada por idoso com gratuidade, uma poltrona ocupada por um pagante comum e uma poltrona ocupada por um estudante. Na tela são exibidas 4 poltronas por linha, representando as duas poltronas do lado esquerdo e as duas poltronas do lado direito.
Além de exibir as poltronas e suas ocupações, também é exibido o destino, os valores de todos os tipos de passagens.
Por fim, o usuário é solicitado a digitar o número da poltrona a ser vendida ou digitar -1 para retornar ao menu principal. Eis o protótipo do menu:[pic 5][pic 6]
[pic 7]
Exibindo Assentos Disponíveis para São Paulo
01| - | 02| - | 03| - | 04| - | 05| - | 06| - | 07| - | 08| - | 09| - | 10| - | 11| - | 12| - | 13| - | 14| - | 15| - | 16| - | 17| - | 18| - | 19| - | 20| - | 21| - | 22| - | 23| - | 24| - | 25| - | 26| - | 27| - | 28| - | 29| - | 30| - | 31| - | 32| - | 33| - | 34| - | 35| - | 36| - | 37| - | 38| - | 39| - | 40| - | 41| - | 42| - | 43| - | 44| - | 45| - | 46| - | 47| - | 48| - |
O valor da passagem comum é de R$45.00 Estudantes pagam R$22.50
Idosos pagam R$0.00 (máximo de 2 por veiculo)
Digite o numero do assento a ser vendido ou -1 para voltar:
[pic 8]
9
Os dois menus apresentados finalizaram a etapa
...