Buscar

PROJETO INTEGRADO MULTIDISCIPLINAR V

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 54 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 54 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 54 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

UNIVERSIDADE PAULISTA – UNIP EaD
Projeto Integrado Multidisciplinar
Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas
Sara Braga Nogueira – RA 2243249
Ian Vinicius Gonçalves de Marins – RA 2243243
PROJETO INTEGRADO MULTIDISCIPLINAR V
UNIP EaD Polo República - Metrô República
2023
Sara Braga Nogueira – RA 2243249
Ian Vinicius Gonçalves de Marins – RA 2243243
PROJETO INTEGRADO MULTIDISCIPLINAR V
Projeto Integrado Multidisciplinar em
Análise e Desenvolvimento de Projetos
Projeto Integrado Multidisciplinar para obtenção do título de tecnólogo em
Análise e Desenvolvimento de Sistemas, apresentado à Universidade Paulista –
UNIP EaD.
UNIP EaD Polo República - Metrô República
2023
RESUMO
O objetivo deste projeto é aplicar o conhecimento adquirido durante o primeiro
bimestre nas disciplinas de economia e mercado, engenharia de software,
programação orientada a objetos e projeto de interface com o usuário. O projeto visa
utilizar esse conhecimento para desenvolver um sistema de reserva de
equipamentos audiovisuais. Com base nos requisitos e pesquisas realizadas, o
projeto se esforça para atender da melhor forma possível às demandas
apresentadas, simulando o valor que deve ser atribuído a um projeto desse porte,
tanto em termos de riqueza de detalhes quanto na criação de um protótipo
totalmente funcional.
Palavras-chave: projeto, reserva, protótipo, audiovisuais.
ABSTRAC
The objective of this project is to apply the knowledge acquired during the first
bimester in the disciplines of economics and marketing, software engineering, object-
oriented programming, and user interface design. The project aims to use this
knowledge to develop a reservation system for audiovisual equipment. Based on the
requirements and research carried out, the project strives to meet the demands
presented in the best way possible, simulating the value that should be attributed to a
project of this size, both in terms of richness of detail and in the creation of a fully
functional prototype.
Keywords: project, booking, prototype, audiovisual.
Sumário
1. INTRODUÇÃO ...................................................................................................................................6
2. Mercado e Economia - Retrospetiva e previsão .......................................................................... 7
2.1 Tendências - viabilidade econômica ....................................................................................8
2.2 Desvantagem ...........................................................................................................................9
2.3 Objetivo do Software .............................................................................................................. 9
2.4 Recurso mais comuns ..........................................................................................................10
3. Engenharia de Software .................................................................................................................12
3.1 Especificação de equipamento ...........................................................................................12
3.2 Especificação de tarefas ......................................................................................................12
3.3 Regras de negócio - Acesso ao sistema ...........................................................................12
3.4 Cadastro de usuários ........................................................................................................... 12
3.5 Utilização do sistema ........................................................................................................... 13
4. Casos de uso e roteiro de testes ..................................................................................................14
4.1 Acesso ao sistema ................................................................................................................14
4.2 Tela Primaria - Administrador ............................................................................................. 15
4.3 Pesquisa e cadastro de usuários ....................................................................................... 16
4.4 Busca de usuário .................................................................................................................. 17
4.5 Cadastro de usuário ............................................................................................................. 18
4.6 Consulta de equipamentos ..................................................................................................20
4.7 Cadastro de equipamentos ................................................................................................. 21
4.8 Relatório dos equipamentos ............................................................................................... 23
4.9 Reserva de equipamento - usuário ....................................................................................24
4.10 Reservas realizadas ...........................................................................................................25
5 Protótipo .............................................................................................................................................26
5.1 Tela Login ...............................................................................................................................27
5.2 Tela Home - administrador ..................................................................................................28
5.3 Tela usuário - administrador ............................................................................................... 29
5.4 Tela resultado da busca - administrador ...........................................................................30
5.5 Tela cadastrar novo usuário - administrador ....................................................................31
5.6 Tela equipamento - administrador ..................................................................................... 33
5.7 Tela equipamento selecionado - administrador ...............................................................34
5.8 Tela cadastrar equipamento - administrador ....................................................................35
5.9 Tela relatório - administrador .............................................................................................. 37
5.10 Tela Home - usuário ...........................................................................................................38
5.11 Tela reserva de equipamento - usuário .......................................................................... 39
5.12 Tela pedidos de reserva - usuário ................................................................................... 42
5.13 Tela perfil de cliente – usuário ou administrador ...........................................................44
6. Programação Orientada a Objetos ...............................................................................................45
6.1 Contextualizando a programação orientada a objeto (POO) ........................................ 45
6.2 Classes ................................................................................................................................... 45
6.3 Objetos ................................................................................................................................... 46
6.4 Herança .................................................................................................................................. 47
6.5 Polimorfismo .......................................................................................................................... 48
6.7 Abstração ............................................................................................................................... 49
Conclusão .............................................................................................................................................51REFERÊNCIAS ................................................................................................................................... 52
6
2. INTRODUÇÃO
Como parte essencial de uma boa escola, ter materiais audiovisuais à
disposição dos professores e da didática é fundamental para o dia a dia. Com isso
em mente, o projeto busca resolver e aprimorar a forma como esses materiais são
reservados para uso durante as aulas, criando um ambiente no qual cada disciplina
possa preparar e reservar o equipamento ideal para suas aulas específicas, sem
interferência de outras disciplinas. Para alcançar esse objetivo, o projeto se baseia
nos conceitos e conhecimentos adquiridos ao longo das disciplinas do bimestre em
curso, mas também requer pesquisa e compreensão do melhor caminho a seguir
para entregar um produto que atenda a todos os requisitos necessários para essa
evolução.
As principais características que o projeto busca abordar são: cadastro de
usuários, cadastro de equipamentos e reserva dos mesmos. Espero que aprecie o
conteúdo e toda a didática envolvida, que, como esperado, exigiu tempo e
dedicação do grupo, mas também proporcionou aprendizado e desafio.
7
3. Mercado e Economia - Retrospetiva e previsão
A capacidade de inovação é essencial para as empresas que desejam
sobreviver e prosperar na economia. No campo do software, as inovações podem
surgir de várias fontes, como projetos, novos modelos, grandes empresas, pequenas
empresas e até mesmo de programadores entusiasmados em suas madrugadas de
inspiração. Cada nova onda de digitalização reconfigura e amplia as possibilidades
para a economia e o mercado de Tecnologia da Informação (TI), formando uma
união que impulsiona o crescimento econômico de um país.
Mesmo com o impacto da pandemia, o mercado de Tecnologia da Informação
e Comunicação (TIC) do Brasil está previsto para crescer 7% em 2021, de acordo
com estimativas do IDC Brasil. Enquanto o mercado de TI deve apresentar um
crescimento de 11%, o setor de telecomunicações espera um crescimento de 2%.
No âmbito corporativo, que engloba software, serviços e hardware, estima-se um
crescimento de 10%.
Em pesquisas realizadas no início de 2020, constatou-se que 60% das
empresas demonstraram interesse em ampliar seus investimentos em TI, o que foi
considerado o ápice da última década no país. No entanto, a chegada da pandemia
alterou todos os planos, resultando nas menores taxas de investimento nos meses
de maio e junho. Denis Arcieri, gerente geral da IDC Brasil, explica esse cenário.
Em 2021, com uma perspectiva mais otimista, 50% das empresas estão
retomando o aumento de investimentos no setor, com foco na produtividade e
segurança. Acompanhando as tendências do mercado de tecnologia, como
inteligência artificial, nuvem pública e modernização de sistemas de gestão de
software (ERP), as empresas buscam administrar seus negócios de forma mais
eficiente, reduzindo custos, equilibrando o ambiente digital e físico, introduzindo
novos produtos e serviços e aprimorando a experiência e a fidelidade dos clientes.
É importante destacar o avanço da subjetividade como um fator orientador
das inovações responsáveis pela expansão do ambiente digital, no qual a economia
prospera. Em 2022, os investimentos em cibersegurança devem ultrapassar os R$ 5
bilhões no Brasil, e a escassez de profissionais nessa área levará 76% das
empresas de médio e grande porte a buscar serviços especializados. Nesse
8
contexto, os agentes econômicos envolvidos no mercado de TI e Telecom são
impulsionados pelo comportamento do segmento de inovação, contribuindo para o
pleno funcionamento do sistema econômico e exercendo influência direta ou indireta
no circuito econômico nacional. Esses agentes desempenham diferentes papéis no
sistema, podendo contribuir com a demanda ou serem responsáveis pela oferta, por
exemplo.
2.1 Tendências - viabilidade econômica
Dez tendências estão previstas para o mercado brasileiro de TI e Telecom em
2022, de acordo com a IDC Brasil.
1. Massificação do 5G: A tecnologia 5G irá se popularizar, oferecendo baixa latência
e alta densidade de conexões, superando as barreiras de conectividade anteriores.
Aumento dos ataques cibernéticos, impulsionando a demanda por serviços de
detecção e resposta gerenciados (MDR).
2. Relevância estratégica da conectividade: A colaboração e o compartilhamento de
conteúdo ganham importância, refletindo em gastos significativos com serviços de
segurança, que atingiram quase US$ 1 bilhão (R$ 5,3 bilhões) em 2022, com
crescimento anual de 10% desde o início da pandemia.
3. Integração e gerenciamento automatizado de aplicações e dados na nuvem: A
nuvem se torna um elemento-chave na infraestrutura de TI, com destaque para o
crescimento das nuvens privadas como serviço (DCaaS) e soluções de segurança
na nuvem.
4. Avanço da inteligência artificial em outras tecnologias: Agentes automatizados e
assistentes digitais em aplicações corporativas impulsionam o crescimento, com
previsão de quase 30%.
5. Soluções de segurança impulsionadas pelo contexto de nuvem e colaboração: O
aumento do uso da nuvem e da colaboração entre equipes demanda soluções de
segurança eficientes para mapeamento e controle de informações.
6. Migração de plataformas de gestão para a nuvem: Setores como atendimento,
gestão de marketing, força de vendas e comércio digital buscam migrar suas
plataformas para a nuvem.
9
7. Reinvenção do mercado de impressão e ascensão dos Smart Home Devices: A
adaptação do mercado de impressão e o aumento dos dispositivos para automação
doméstica refletem a necessidade de um lar mais funcional e inteligente,
impulsionados pelo tempo passado em casa.
8. Retomada de notebooks e tablets: O mercado educacional, tanto público quanto
privado, demanda um grande volume desses dispositivos para auxiliar o processo de
educação a distância.
Essas tendências refletem a valorização dos recursos escassos, o aumento
da produtividade por meio do investimento em TI e a padronização e utilização de
sistemas de informação ou aplicativos em software para otimizar atividades em
diferentes setores, incluindo o educacional.
O software de gestão desempenha um papel crucial, fornecendo suporte
estratégico e otimizado, permitindo uma visão gerencial holística dos equipamentos
disponíveis na escola, automação de processos, diminuição de equívocos e gestão
mais estratégica baseada em relatórios e agendamentos.
2.2 Desvantagem
Embora os softwares de gerenciamento tragam diversas vantagens, é
importante considerar também os inconvenientes que podem surgir durante sua
implementação. A compra, implementação e manutenção do software podem
apresentar custos significativos. Além disso, em alguns casos, a interface do sistema
pode ser complexa e o suporte ao cliente pode ser inacessível. É essencial estar
ciente dessas possíveis desvantagens ao adotar um software de gerenciamento.
2.3 Objetivo do Software
Conforme mencionado no livro, o modelo de desenvolvimento do Sistema
criado para o controle do cadastro e monitoramento da pandemia do Covid-19 foi
baseado na abordagem incremental. Essa escolha foi motivada pela necessidade de
um tempo reduzido de estudo. Nesse contexto, aplicaram-se princípios da
Engenharia de Software, explorando o modelo cascata, no qual o sistema é dividido
em partes menores, sendo desenvolvidas de forma sequencial e paralela.
10
Essa abordagem incremental possibilita entregas mais frequentes, o que
facilita a identificação e correção de erros ao longo do processo. A cada interação,
um conjunto utilizável de elementos é disponibilizado, seguindo o prazo de entrega
estabelecido. Essa forma de desenvolvimento também simplifica a implementação e
manutenção do sistema, uma vez que diferentes equipes podem se dedicar ao
desenvolvimento de partes distintas.
2.4 Recurso mais comuns
O software de gestão proporciona suporte para que o administrador, os
líderes e a equipe possamconduzir os projetos e atividades de forma eficiente,
registrando todos os dados e informações relevantes. É como ter um reflexo da
realidade da escola e do estoque de equipamentos na ferramenta!
Os recursos comuns aos sistemas de gerenciamento envolvem diversos
profissionais que trabalham juntos para garantir a entrega final do software dentro do
prazo máximo de 90 dias (três meses). O gestor de projetos é responsável pelo
desenvolvimento do projeto, garantindo o cumprimento das metas e prazos
estabelecidos. Ele precisa entender o produto, conversar com os clientes para definir
prazos e metas, interagir com a equipe, propor e esclarecer metas, antecipar
adversidades e agir de forma proativa.
Um analista de sistemas é responsável por levantar os requisitos, fazer o
planejamento e a documentação. O programador codifica a ferramenta e um
testador realiza as validações para garantir a entrega do produto, sendo responsável
pela verificação das regras do negócio e eliminando estimativas de tempo e custo,
que são frequentes desafios em projetos de software.
cronograma de entrega será dividido em duas etapas. Serão dedicados 40
dias, sendo 15 dias para avaliar o cronograma de entrega e possíveis custos
adicionais caso haja descumprimento, o que pode gerar multas e insatisfação do
cliente, aumentando os custos do projeto. Os outros 25 dias serão destinados ao
entendimento dos requisitos, prototipação e validação junto ao usuário final do
sistema.
11
Em seguida, serão dedicados 50 dias, divididos em duas partes. Serão
destinados 20 dias para a codificação do sistema e 30 dias para a criação dos
requisitos de teste e execução dos testes de entrega do produto.
A implantação do software na escola não terá custos adicionais devido a
questões de marketing e conformidade com normas internas.
Considerando a estimativa de horas de trabalho de cada profissional, na
Tabela 1, são apresentados os tempos por profissional. Vale ressaltar que os
valores de custo são baseados no salário médio de cada categoria e têm caráter
acadêmico.
Tabela 1 - Tempo de desenvolvimento em dias, horas e custo
Fonte: autoria própria.
Profissional dias Tarefa 1 Tarefa 2 Tarefa 3 Tarefa 4 Custo
Gestor de projeto 15
120
horas
9.500
Analista 25
200
horas
5.000
Programador 20
160
horas
5.500
Testador 30 240 horas 3.000
Total custo 23.000
Total de tempo de
Desenvolvimento
90
720 horas
trabalhadas
Tempo
estimado
1080 horas
12
4. Engenharia de Software
A Engenharia de Software é responsável pela aplicação de abordagens
sistemáticas, disciplinadas e mensuráveis no desenvolvimento, operação, evolução
e manutenção de software. Seu objetivo principal é aplicar os princípios da
engenharia na construção de software.
3.1 Especificação de equipamento
A fim de permitir o acesso dos usuários ao sistema, é fundamental que o
dispositivo utilizado possua um sistema operacional compatível, no mínimo. Além
disso, é necessário contar com um teclado e um mouse para que o usuário possa
navegar no sistema de forma adequada.
3.2 Especificação de tarefas
O ReserveLog é um sistema projetado com o objetivo principal de auxiliar no
controle de estoque de empresas por meio de reservas e consultas de
equipamentos. Além disso, o sistema também visa facilitar o cadastro e consulta de
usuários, o gerenciamento de acesso dos usuários e a conferência de estoque e
reservas.
3.3 Regras de negócio - Acesso ao sistema
O acesso ao sistema é realizado por meio de um login. Os usuários do
sistema obtêm acesso ao login por meio de um cadastro prévio, que é realizado
pelos administradores do sistema. Caso um usuário esqueça a senha, o sistema
também disponibiliza a opção de reenvio de senha. Dessa forma, é possível garantir
a segurança e o controle de acesso ao sistema.
3.4 Cadastro de usuários
Para efetuar o cadastro de novos usuários, o administrador deve preencher
corretamente os campos definidos, seguindo a formatação especificada pelo sistema.
Os dados necessários para o cadastro de um novo usuário incluem:
 Nome
 E-mail
 Endereço
13
 Disciplina
 Telefone
Além disso, o administrador deve marcar a opção caso o novo usuário seja
um novo administrador. Essas informações são essenciais para garantir um cadastro
preciso e completo no sistema.
3.5 Utilização do sistema
Após efetuar o login, o usuário terá acesso às diversas funcionalidades do
sistema, as quais podem ser exploradas de forma intuitiva, de acordo com suas
necessidades. O sistema é projetado de forma a objetificar as ações,
proporcionando uma experiência fácil e intuitiva aos usuários.
Uma das principais funcionalidades é a visualização dos equipamentos
disponíveis para reserva. O usuário poderá verificar a disponibilidade desses
equipamentos em relação às datas desejadas. Além disso, caso necessário, o
usuário terá a opção de cadastrar novos equipamentos no sistema.
É importante ressaltar que todas essas funcionalidades são acessíveis para
os usuários com login no sistema. No entanto, algumas funcionalidades serão
exclusivas para usuários com perfil de administrador. Essa restrição visa garantir
uma maior segurança e controle de dados no sistema, protegendo informações
sensíveis e mantendo a integridade das operações.
3.6 Metodologia frente às normas de qualidade
Com o objetivo de desenvolver um sistema com menor custo, porém sem
comprometer a qualidade dos processos, foi adotada a metodologia MPS.BR
(Melhoria de Processo de Software Brasileiro). Essa metodologia, alinhada a
padrões internacionais como CMMI, ISO/IEC 12207, ISO/IEC 15504 e ISO/IEC
25000, foi desenvolvida pela Softex com o intuito de oferecer um modelo de
qualidade de software mais acessível aos brasileiros.
A escolha da MPS.BR foi motivada pela necessidade de uma solução que
fosse economicamente viável, considerando os custos envolvidos na conversão de
moedas e na validação de outros modelos. Diante do contexto econômico e dos
objetivos estratégicos do projeto, a MPS.BR se mostrou como o modelo mais
14
adequado, facilitando sua implementação e garantindo uma metodologia eficiente
para a qualidade de processos de software.
3.7 Requisitos Não-Funcionais
Requisitos técnicos do sistema:
 O sistema deve ser executado no sistema operacional Windows (Vista, 7, 8, 10).
 É necessário ter uma conexão estável com a internet.
 O sistema será desenvolvido em C#.
 O sistema deve contar com um banco de dados para armazenamento de
informações de produtos.
 A interface gráfica do sistema deve incluir ícones representativos que auxiliem
no processo de integração do usuário, tornando-o mais intuitivo.
 O sistema deve ter capacidade de adaptação da interface em diferentes
dispositivos, como desktops, dispositivos móveis e notebooks, quando escalado
para tal.
5. Casos de uso e roteiro de testes
4.1 Acesso ao sistema
A Tabela 2 apresenta o acesso ao sistema, comum a todo tipo de usuário.
Tabela 2 – Acesso ao sistema
Tipo Descrição
Identificação O sistema permite a entrada de dois tipos de usuários.
Escopo O sistema é voltado para reservas.
Descrição do Propósito
O sistema Reservas permite a entrada de dois tipos
diferentes de usuários.
Ator primário Cliente
Interessados Administradores
15
Pré-condições
Ao acessar o sistema, o usuário é direcionado para uma
tela de navegação e relatórios para finalizar a venda.
Pós-condições
Após efetuar o login, o usuário é redirecionado para a
página inicial correspondente ao seu tipo de usuário.
Fluxo normal:
1. O usuário abre o software.
2. É exibida a tela de login e senha.
3. O usuário preenche os campos com as informações solicitadas.
4. O sistema redireciona o usuário de acordo com suas credenciais.
Fluxo alternativo:
1. Caso o usuário não tenha um login cadastrado, ele deve solicitar o cadastro ao
administrador.
2. Após a solicitação, o usuário recebe por e-mail o login e senha.
3. O usuário realiza o procedimento do fluxo normal após receber as informações
de logine senha.
Fonte: autoria própria.
4.2 Tela Primaria - Administrador
A Tabela 3 apresenta a tela primaria do sistema, disponível ao cliente
Administrador.
Tabela 3 - Home administrador
Tipo Descrição
Identificação Home
Escopo O sistema é voltado para reservas.
16
Descrição do Propósito
Os usuários têm a capacidade de acessar o sistema
para diferentes propósitos.
Ator primário Cliente
Interessados Administradores
Pré-condições
É necessário que o usuário tenha feito o login para ter
acesso ao sistema.
Pós-condições
O usuário é apresentado com três opções de
direcionamento dentro do sistema.
Fluxo normal:
1. O usuário tem disponíveis três opções no sistema.
2. Ele pode realizar consultas de usuários, consultar equipamentos e gerar
relatórios de equipamentos.
Fluxo alternativo:
1. Caso o usuário não consiga acessar a opção desejada,
2. Ele será redirecionado para a página inicial do sistema.
Fonte: autoria própria.
4.3 Pesquisa e cadastro de usuários
A Tabela 4 apresenta a descrição de caso de uso descrevendo o processo de
cadastro de usuário no sistema.
Tabela 4 - Pesquisa e cadastro de usuários
Tipo Descrição
Identificação Pesquisa e cadastro de usuários
Escopo Sistema Reservas.
17
Descrição do Propósito
Os usuários têm a capacidade de cadastrar
manualmente novos usuários e realizar buscas no
cadastro.
Ator primário Cliente
Interessados Administradores
Pré-condições
Para acessar a página de usuários, é necessário que o
usuário tenha realizado o login.
Pós-condições
Após o login, ocorre o redirecionamento para a página
de pesquisa e cadastro de usuários.
Fluxo normal:
1. O usuário acessa a página de usuários.
2. Nessa página, ele tem acesso à ferramenta de pesquisa para encontrar usuários
cadastrados, utilizando o id, nome ou e-mail.
3. Além da pesquisa, há também a opção de cadastrar novos usuários.
Fluxo alternativo:
1. Caso o usuário não consiga acessar a opção desejada,
2. Ele será redirecionado para a página inicial do sistema.
3. Se o usuário não digitar corretamente as informações para a consulta, ocorrerá
uma notificação de erro.
Fonte: autoria própria.
4.4 Busca de usuário
A Tabela 5 apresenta a descrição de caso de uso descrevendo o processo de
busca de usuário no sistema
.Tabela 5 - Busca de usuário
18
Tipo Descrição
Identificação Busca de usuário
Escopo Sistema Reservas.
Descrição do Propósito
O usuário tem acesso aos resultados da busca de
usuários.
Ator primário Cliente
Interessados Administradores
Pré-condições
Para ter acesso aos resultados da busca de usuários, o
usuário deve ter realizado o login, acessado a página de
usuários e preenchido o campo de pesquisa de
usuários.
Pós-condições
Uma tela contendo todas as informações do usuário
solicitado é apresentada.
Fluxo normal:
1. O usuário digita o ID, nome ou e-mail do usuário que deseja obter informações
cadastrais.
2. O sistema exibe uma tela com todos os dados de cadastro do usuário solicitado.
Fluxo alternativo:
Caso o usuário não consiga acessar as informações de cadastro de outros usuários,
1. Ocorre o redirecionamento para a página inicial do sistema.
Fonte: autoria própria.
4.5 Cadastro de usuário
A Tabela 6 apresenta a descrição de caso de uso descrevendo o processo de
busca de usuário no sistema.
19
Tabela 6 - Busca de usuários
Tipo Descrição
Identificação Cadastro de usuário
Escopo Sistema Reserva
Descrição do Propósito
Tela para a realização de cadastro de novos usuários a
partir do sistema do administrador.
Ator primário Cliente
Interessados Administradores e Sistema
Pré-condições
Para cadastrar um novo usuário, é necessário que o
administrador tenha realizado o login, acessado a
página de Usuário e selecionado a opção de cadastrar
novo usuário.
Pós-condições
O sistema proporciona acesso à página de cadastro de
novos usuários do sistema.
Fluxo normal:
1. Na página inicial, o usuário seleciona a opção "Usuário".
2. Na tela de Usuário, é selecionada a opção "Cadastrar novo usuário".
3. O sistema redireciona o usuário para a página de cadastro de usuário, onde são
fornecidas as informações exigidas pelo sistema.
4. O usuário deve selecionar se o usuário cadastrado será um administrador ou um
usuário comum.
5. O usuário realiza o cadastro, fornecendo todas as informações requeridas.
Fluxo alternativo:
1. Caso o usuário não consiga acessar a página de cadastro de novos usuários,
1.1 O sistema realiza o redirecionamento para a página inicial do sistema.
2. Caso o usuário não forneça todas as informações necessárias para realizar o
20
cadastro,
2.1 O sistema exibe uma mensagem de erro ao cadastrar novo usuário.
3. Caso os dados fornecidos não sejam suficientes ou não estejam no formato
exigido pelo sistema,
3.1 O sistema exibe uma mensagem de erro ao cadastrar novo usuário e identifica
em qual local os dados fornecidos não estão em conformidade.
Fonte: autoria própria.
4.6 Consulta de equipamentos
A Tabela 7 apresenta a descrição de caso de uso descrevendo o processo de
consulta de equipamento no sistema.
Tabela 7 - Consulta de equipamentos
Tipo Descrição
Identificação Consulta de equipamentos
Escopo Sistema Reserva
Descrição do Propósito Acesso às informações de estoque de equipamentos.
Ator primário Cliente
Interessados Usuários e Sistema de Estoque
Pré-condições
Para visualizar um equipamento, o usuário deve ter
realizado login, acessado a página de equipamentos e
selecionado o equipamento desejado.
Pós-condições
O sistema redireciona o usuário para a tela de
informações do equipamento selecionado.
Fluxo normal:
21
1. O usuário acessa a página de equipamentos.
2. O usuário seleciona o equipamento desejado.
3. O sistema exibe as informações do equipamento, como nome, estado e
descrição.
4. Apenas os administradores têm permissão para modificar as informações do
equipamento.
5. Apenas os administradores podem deletar o equipamento.
Fluxo alternativo:
1. Caso o usuário não consiga acessar a página de consulta de equipamentos,
1.1 Ocorre o redirecionamento para a página inicial do sistema.
2. Caso o usuário tenha selecionado corretamente o equipamento desejado, mas o
sistema não forneça a informação,
2.1 O sistema permite ao usuário retornar ao ponto inicial e realizar a consulta
novamente.
Fonte: autoria própria.
4.7 Cadastro de equipamentos
A Tabela 8 apresenta a descrição de caso de uso descrevendo o processo de
cadastro de equipamentos no sistema.
Tabela 8 - Cadastro de equipamentos
Tipo Descrição
Identificação Cadastro de equipamentos
Escopo Sistema Reserva
Descrição do Propósito Cadastro de novos equipamentos no sistema.
22
Ator primário Cliente
Interessados Usuários e Sistema de Estoque
Pré-condições
Para cadastrar um novo equipamento, o usuário deve ter
realizado login como administrador, acessado a página
de equipamentos e selecionado a opção de cadastrar
novo equipamento.
Pós-condições Acesso à tela de cadastro de equipamentos.
Fluxo normal:
1. O usuário acessa a página de equipamentos.
2. O usuário seleciona a opção de cadastrar novo equipamento.
3. O sistema redireciona o usuário para a tela de cadastro de equipamentos.
4. O usuário preenche corretamente os campos obrigatórios, como nome e
descrição do novo equipamento.
5. Caso necessário, o usuário adiciona uma foto do equipamento.
6. O usuário seleciona a opção "Cadastrar".
7. O sistema redireciona o usuário de volta para a página de equipamentos.
Fluxo alternativo:
1. Caso o usuário não consiga acessar a página de cadastro de equipamentos,
1.1 Ocorre o redirecionamento para a página inicial do sistema.
2. Caso o usuário não forneça as informações necessárias para o cadastro do
equipamento,
2.1 O sistema sinaliza os campos que devem ser preenchidos corretamente.
3. Caso ocorra um erro ao cadastrar um novo equipamento, o sistema exibe uma
mensagem de erro e identifica em qual campo os dados fornecidos não estão
em conformidade.
23
Fonte: autoria própria.
4.8 Relatóriodos equipamentos
A Tabela 9 apresenta a descrição de caso de uso descrevendo o processo de
relatório dos equipamentos no sistema.
Tabela 9 - Relatório dos equipamentos
Tipo Descrição
Identificação Relatório dos equipamentos
Escopo Sistema Reserva
Descrição do Propósito
Visualização de todos os equipamentos reservados com
data e hora de utilização.
Ator primário Cliente
Interessados Usuários e Sistema de Estoque
Pré-condições
Para acessar a página de relatório, o usuário deve ter
realizado login e selecionar a opção de relatório.
Pós-condições
Acesso à tela de relatório de equipamentos reservados e
utilizados.
Fluxo normal:
1. O usuário acessa a página de relatório.
2. É exibida uma tela com um calendário para navegação por data e um relatório
diário de equipamentos reservados.
3. O usuário pode selecionar a opção "Histórico" para consultar o relatório de um
período específico. Nessa opção, o usuário preenche o período desejado e o
sistema gera um arquivo PDF com as informações do relatório para o período
selecionado.
Fluxo alternativo:
24
1. Caso o usuário não consiga acessar a página de relatório,
1.1 Ocorre o redirecionamento para a página inicial do sistema.
2. Caso o arquivo PDF disponibilizado pelo sistema não seja gerado corretamente
ao selecionar o período do histórico,
2.1 O sistema exibe uma mensagem de erro informando a ocorrência do problema
na geração do arquivo PDF.
Fonte: autoria própria.
4.9 Reserva de equipamento - usuário
A reserva de equipamento feita pelo usuário está disponível na Tabela 10.
Tabela 10 - Reserva de equipamentos
Tipo Descrição
Identificação Reservas de equipamento
Escopo Sistema Reserva
Descrição do Propósito Reserva de equipamentos
Ator primário Cliente
Interessados Usuários e Sistema de Estoque
Pré-condições
O usuário deve fazer login e acessar a página de
Reserva.
Pós-condições Acessar a tela de reserva de equipamentos.
Fluxo normal:
1. O usuário acessa a página de Reserva.
2. Selecionar a opção "Reservar".
25
3. Ser redirecionado para a página de reserva.
4. Digitar o nome do equipamento desejado.
5. O sistema exibirá as informações do equipamento, incluindo foto e datas de
reserva.
6. Selecionar a opção de reservar o equipamento. O equipamento será reservado e
a data de reserva será registrada.
7. Ser redirecionado para a página de Reserva.
Fluxo alternativo:
1. O usuário não consegue acessar a página de reserva.
1.1. Ser redirecionado para a página inicial do sistema.
2. O nome do equipamento não é digitado corretamente.
2.1. A tela de informações do equipamento não será exibida.
3. A data escolhida para a reserva não está disponível.
3.1. A reserva do equipamento não será realizada.
Fonte: autoria própria.
4.10 Reservas realizadas
A Tabela 11 apresenta a descrição de caso de uso descrevendo reserva de
equipamento pelo usuário no sistema.
Tabela 11 - Reserva de equipamentos
Tipo Descrição
Identificação Reservas realizadas
Escopo Sistema Reserva
26
Descrição do Propósito Visualização da tela de pedidos de reserva.
Ator primário Cliente
Interessados Usuários e Sistema de Estoque
Pré-condições
Para acessar a página de pedidos, o usuário deve ter
realizado login e selecionar a opção de pedidos na
página de reserva.
Pós-condições A tela de pedidos é exibida.
Fluxo normal:
8. O usuário acessa a página de pedidos.
9. Verifica se a sua reserva de equipamentos está registrada no sistema.
10. O usuário tem a opção de cancelar a reserva realizada.
11. Ao selecionar o cancelamento, uma tela de confirmação é exibida, alertando o
usuário sobre a exclusão da reserva.
12. Se a reserva for cancelada, o usuário é redirecionado de volta para a página de
reserva.
Fluxo alternativo:
4. Caso o usuário não consiga acessar a página de pedidos,
5. Ocorre o redirecionamento para a página inicial do sistema.
Fonte: autoria própria.
5 Protótipo
O sistema ReserveLog possui uma interface construída com cores pastéis,
visando facilitar sua adaptação para uma versão mobile. Toda a sua interface foi
cuidadosamente projetada levando em consideração essa possibilidade de
expansão e adaptação da ferramenta. O sistema é dividido em dois tipos de clientes:
os administradores e os usuários comuns. Os administradores possuem maior
controle e capacidade de manipulação do sistema, podendo realizar tarefas como
27
cadastrar usuários e equipamentos. Já os usuários comuns têm permissões mais
limitadas, podendo apenas realizar reservas e cancelar reservas.
5.1 Tela Login
A tela de entrada do sistema é a mesma para ambos os tipos de usuários. Ela
possui dois campos de preenchimento, identificados como "Login" e "Senha", como
mostrado na Figura 1. Nessa tela, ocorre o primeiro contato do sistema com a classe
cliente, a qual será explorada com mais detalhes posteriormente.
Esses campos são responsáveis por validar o cliente, e após esse processo,
o sistema determina a interface disponível para esse cliente, levando em
consideração se ele possui as credenciais de administrador válidas ou inválidas.
Com base nessa validação, o usuário é redirecionado para a interface
correspondente às suas permissões.
Figura 1 - Tela login e senha
Fonte: autoria própria.
28
5.2 Tela Home - administrador
A primeira descrição é direcionada ao cliente que possui o atributo
"administrador" definido como verdadeiro. A Figura 2 ilustra o acesso concedido a
esse tipo de cliente. Na barra de botões centralizada à esquerda, encontramos as
seguintes funcionalidades:
1. Usuário: Ao clicar neste botão, o cliente é redirecionado para uma tela de busca e
cadastro de novos usuários.
2. Equipamento: Ao selecionar este botão, o cliente é direcionado para uma tela
semelhante à de um usuário, mas focada exclusivamente em equipamentos.
3. Relatório: O último botão é responsável pela exibição de um relatório contendo as
reservas realizadas pelos clientes comuns.
É importante ressaltar que o cliente responsável por administrar essas
funções não possui permissão para reservar equipamentos, sendo sua função
restrita ao cadastro e atualização do sistema.
Figura 2 - Home administrador
29
Fonte: autoria própria.
5.3 Tela usuário - administrador
A Figura 3 retrata a interface de busca de usuários cadastrados, permitindo a
pesquisa por meio do ID, nome ou e-mail do usuário. O resultado dessa busca será
exibido na tela mencionada como "Figura X". Além disso, nessa mesma tela, há um
botão para cadastrar um novo usuário.
Todas as telas de navegação apresentam um botão de retorno à página inicial,
localizado no mesmo lugar em todas elas. Essa consistência facilita a usabilidade e
cria uma memória para o usuário, permitindo que ele retome rapidamente o seu
processo caso acidentalmente acesse uma tela indesejada.
Figura 3 - Tela usuário
30
Fonte: autoria própria.
5.4 Tela resultado da busca - administrador
Na tela apresentada na Figura 4, que é retornada após a busca pelo usuário,
são exibidas todas as informações cadastradas sobre ele. Nessa tela, é possível
realizar a atualização dessas informações, o reenvio da senha e a exclusão do
usuário caso ele não faça mais parte da escola.
É importante mencionar que a responsabilidade pelo reenvio das senhas é
atribuída ao administrador, visando a segurança do sistema. Como o sistema é
concebido como uma solução local e exclusiva da escola, o administrador é
encarregado de enviar as senhas aos usuários. A senha é gerada pelo próprio
sistema, e o administrador não tem conhecimento dela. Ao entrar em seu perfil, o
usuário terá a possibilidade de alterar a senha que recebeu, o que será abordado na
última imagem.
Figura 4 – Resultado da busca
31
Fonte: autoria própria.
5.5 Tela cadastrar novo usuário - administrador
A Figura 5 segue o mesmo padrão de tela de busca, porém com a diferença
de que nessa tela é possível apenas cadastrar um novo usuário. Utilizando os
atributos disponíveis, podemos visualizar e classificar essa classe, assim como aclasse responsável por armazenar essas informações.
Figura 5 – Cadastrar novos usuários
32
Fonte: autoria própria.
Para realizar o cadastro, utilizamos a classe "Cliente", que é empregada tanto
para o usuário comum, que faz apenas solicitações de reserva, quanto para o
administrador. Essa classe possui atributos relacionados a cada campo presente na
tela, com exceção da senha, que não é exibida durante o cadastro. A atribuição da
senha é realizada pelo método <setSenha>, que, caso não receba um valor como
parâmetro, gera uma senha aleatória.
Na Tabela 12 e 13, podemos observar a estrutura das classes mencionadas
e sua construção.
Tabela 12 - Classe cliente
Classe cliente
Atributos Tipo
id String
33
nome String
senha String
email String
endereco String
diciplina String
telefone int
admin bool
Métodos Tipo
setSenha String
getSenha String
Fonte: autoria própria.
Tabela 13 - clienteCadastrados
Classe clienteCadastrados
Atributos Tipo
clientes Lista<Cliente>
Métodos Tipo
setClientes Cliente
getClientes Cliente
deleteCliente Cliente
deleteCliente void
Fonte: autoria própria.
5.6 Tela equipamento - administrador
34
O segundo botão da tela inicial (home) direciona o administrador para a tela
ilustrada na Figura 6. Nessa tela, é possível selecionar um equipamento já
cadastrado e realizar o cadastro de um novo equipamento.
Figura 6 - Tela equipamento
Fonte: autoria própria.
5.7 Tela equipamento selecionado - administrador
Após selecionar um dos equipamentos na tela anterior, o usuário é
direcionado para a tela representada na Figura 7. Nessa tela, é possível realizar a
alteração das informações do equipamento selecionado, seguida de uma
atualização dos dados. Além disso, há a opção de remover o equipamento da lista.
No atributo "estado", o administrador tem a capacidade de modificar o status
do equipamento sem a necessidade de excluí-lo permanentemente. Ele pode definir
o equipamento como "manutenção" ou optar por deixá-lo em seu estado atual.
Figura 7 - Tela equipamento
35
Fonte: autoria própria.
5.8 Tela cadastrar equipamento - administrador
Na Figura 8, é apresentada uma tela semelhante à seleção de equipamentos,
porém voltada para o cadastro completo de um novo equipamento. Nessa tela, o
atributo "estado" é automaticamente atribuído como "ativo" durante a criação do
equipamento.
Essa escolha é feita com base na lógica de que, ao adicionar um novo
equipamento, é natural supor que ele esteja em pleno funcionamento, não havendo
necessidade de escolher essa opção durante o cadastro inicial.
Figura 8 - cadastrar equipamento
36
Fonte: autoria própria.
Na Tabela 14 e 15, é possível observar a estrutura das classes
"Equipamento" e "EquipamentosCadastrados", visto que o usuário requer uma
classe específica para o equipamento.
Tabela 14 - Classe equipamento
Classe clienteCadastrados
Atributos Tipo
id String
nome String
estado String
descricao String
fotos Lista<String>
37
Métodos Tipo
addFoto Cliente
removeFoto Lista<String>
Fonte: autoria própria.
Tabela 15 - Classe equipamantosCadastrados
Classe clienteCadastrados
Atributos Tipo
equipamentosCadastrados Lista<Equipamento>
Métodos Tipo
setEquipamantosCadastrados Lista<Equipamento>
getEquipamentosCadastrados Lista<Equipamento>
armazenaBD void
Fonte: autoria própria.
5.9 Tela relatório - administrador
A Figura 9 ilustra a interface do relatório acessado por meio do terceiro botão
localizado na página inicial. A partir dessa tela, o administrador tem a capacidade de
visualizar todos os equipamentos reservados, juntamente com suas datas e horários
de utilização. Além disso, nessa mesma tela, existe a opção de acessar o histórico,
na qual o administrador pode selecionar um período específico para visualizar
reservas passadas dentro do dia vigente. Esse histórico é disponibilizado por meio
de um arquivo PDF contendo as informações do período selecionado.
Figura 9 - Tela relatório
38
Figura 9 - Tela relatório
5.10 Tela Home - usuário
A Figura 10 representa a página inicial voltada para o usuário, na qual estão
disponíveis apenas as opções de reserva e pedidos realizados, além de um
calendário exibindo o dia atual. Posteriormente, discutiremos a classe que será
utilizada para pesquisa e filtragem.
Figura 10 - Tela home usuário
39
Fonte: autoria própria.
5.11 Tela reserva de equipamento - usuário
A Figura 11 representa a tela principal do sistema, com sua função principal e
o propósito de sua construção: permitir que o usuário escolha um equipamento por
meio de uma seleção. Após a seleção, o sistema é atualizado para exibir a Figura 12,
na qual é apresentado o equipamento selecionado juntamente com os dias em que
ele está reservado. Nessa etapa, o usuário tem a possibilidade de selecionar um dia
e horário disponível, caso haja disponibilidade.
Figura 11 - Tela reserva de equipamento
40
Fonte: autoria própria.
Figura 12 - Tela reserva de equipamento - equipamento selecionado
41
Fonte: autoria própria
Nas Tabelas 16, 17 e 18 são apresentadas todas as classes relacionadas à
funcionalidade de reserva.
Tabela 16 - Classe reservaModelo
Classe clienteCadastrados
Atributos Tipo
id int
equipamentoEscolhido Equipamento
data Data
horario Lista<int>
Fonte: autoria própria.
Tabela 17 - Classe reservas
42
Classe clienteCadastrados
Atributos Tipo
reservados Lista<ReservaModelo>
Métodos Tipo
getReservas Lista<ReservaModelo>
setReservas Lista<ReservaModelo>
armazenaBD void
Fonte: autoria própria.
Tabela 18 - Classe data
Classe clienteCadastrados
Atributos Tipo
ano int
mes int
dia int
Fonte: autoria própria.
5.12 Tela pedidos de reserva - usuário
Após efetuar uma reserva, o usuário tem a opção de verificar os pedidos de
reserva de equipamentos, como mostrado na Figura 13, a fim de confirmar a sua
reserva. Na tela de pedidos de reserva, é possível ao usuário cancelar a sua reserva.
Quando o usuário decide cancelar a reserva, ele recebe uma mensagem solicitando
a confirmação da ação, conforme ilustrado na Figura 14. Essa mesma abordagem é
aplicada em todas as telas de confirmação, podendo ser exigida em casos como
cadastrar ou excluir um usuário na tela de resultados da busca de usuário.
Figura 13 - Tela pedidos de reserva
43
Fonte: autoria própria.
Figura 14 - Alerta de confirmação
44
Fonte: autoria própria.
5.13 Tela perfil de cliente – usuário ou administrador
A Figura 15 representa a tela do perfil do usuário, onde é possível ajustar o
nível de necessidade do projeto. Nessa tela, também há uma opção para alterar a
senha, a qual o sistema envia automaticamente para o e-mail do usuário após o
cadastro do administrador ou para reenviá-la caso o usuário tenha esquecido a
senha.
Figura 15 - Tela perfil do usuário
45
Fonte: autoria própria.
6. Programação Orientada a Objetos
6.1 Contextualizando a programação orientada a objeto (POO)
A programação abrange várias vertentes e neste projeto estamos explorando
a programação orientada a objetos, que tem como objetivo representar de maneira
fácil e compreensível a relação entre os elementos de uma classe e o mundo real.
Para contextualizar algumas partes do processo de construção do projeto, vou
esclarecer tecnicamente quatro características da programação orientada a objetos.
6.2 Classes
A classe é uma parte fundamental para compreender a programação
orientada a objetos (POO), pois permite definir a estrutura de um elemento, que
pode receber atributos (dados) e métodos (comportamentos) que o representam.
Com a definição da classe, podemos criar objetos, que tecnicamente são chamados
de instâncias.
46
A classe serve como um modelo ou blueprint para os objetos que serão
criados. Ela define as propriedades e comportamentos que os objetos terão. Os
atributos são as características ou dados que um objeto possui, enquanto os
métodos são as ações ou operações que um objeto pode realizar.
Ao instanciar um objeto, estamos criando uma cópiada classe, preenchendo
os atributos com valores específicos. Cada objeto criado a partir da mesma classe
pode ter valores diferentes para seus atributos, mantendo os comportamentos
definidos pelos métodos da classe.
Essa abordagem de definição de classes e criação de objetos permite a
reutilização de código, já que podemos criar múltiplas instâncias de uma mesma
classe, cada uma com suas próprias características. Além disso, os objetos
interagem entre si através de métodos, permitindo que um objeto invoque os
comportamentos de outro objeto.
Em resumo, a classe é o ponto de partida para definir elementos na POO,
combinando atributos e métodos que representam seus dados e comportamentos. A
criação de objetos a partir dessas classes permite a instância de elementos
específicos com características únicas.
6.3 Objetos
Um objeto é uma instância da classe, onde a classe pode ser comparada a
uma receita e o objeto ao bolo que é feito a partir dessa receita. Assim como a
receita pode ser utilizada para criar vários bolos, a classe pode ser usada para criar
diversos objetos, cada um com seus próprios atributos.
Na analogia do bolo, a classe representa a receita que contém as instruções e
ingredientes necessários para criar o bolo. Essa receita é a base para a criação de
múltiplos bolos, onde cada bolo é uma instância do objeto.
Da mesma forma, a classe na programação orientada a objetos contém a
estrutura, atributos e métodos que definem um objeto. Com base nessa classe,
podemos criar vários objetos, cada um com seus atributos específicos. Por exemplo,
se tivermos uma classe chamada "Carro", podemos criar diferentes objetos a partir
dela, como "carro1" e "carro2", onde cada objeto pode ter atributos diferentes, como
cor, modelo, ano, etc.
47
Essa capacidade de criar múltiplos objetos com atributos diferentes a partir da
mesma classe é uma das vantagens da programação orientada a objetos. Ela
permite a reutilização de código e a criação de objetos personalizados com base em
uma estrutura comum.
Em resumo, a classe serve como a receita e o objeto é o resultado da
aplicação dessa receita. Com uma única classe, podemos criar diversos objetos com
atributos diferentes, assim como com uma única receita podemos fazer vários bolos
com sabores e decorações distintas.
6.4 Herança
A herança é um dos princípios fundamentais da programação orientada a
objetos (POO). Ela permite definir uma classe filha que reutiliza, estende ou modifica
o comportamento de uma classe pai. A classe que é herdada por outras classes
recebe o nome de classe base ou superclasse, enquanto as classes que herdam
dessa classe base são chamadas de classes derivadas ou especializadas.
Ao utilizar a herança, uma classe derivada pode herdar os atributos e
métodos da classe pai, o que permite criar novas classes com comportamentos e
dados diferentes, sem precisar criar tudo do zero. A classe derivada pode adicionar
novos atributos e métodos, ou até mesmo modificar o comportamento herdado da
classe base.
Esse conceito de herança é útil quando há uma relação de hierarquia entre as
classes. Por exemplo, considerando uma classe base chamada "Animal", podemos
ter classes derivadas como "Cachorro", "Gato" e "Pássaro". Cada classe derivada
herda os atributos e métodos básicos da classe Animal, mas também pode adicionar
características específicas, como latir, miar ou voar.
A herança promove a reutilização de código, pois evita a duplicação de
atributos e métodos comuns entre as classes relacionadas. Além disso, a herança
permite organizar as classes em uma estrutura hierárquica, onde as classes mais
especializadas herdam características das classes mais gerais.
Em resumo, a herança na POO permite criar novas classes a partir de uma
classe base, herdando seus atributos e métodos. Essa abordagem proporciona
48
flexibilidade e eficiência na criação de classes especializadas, evitando a repetição
de código e promovendo a estruturação hierárquica das classes.
6.5 Polimorfismo
O polimorfismo na programação orientada a objetos se refere à capacidade
de um método se comportar de maneira diferente dependendo do objeto que é
passado como parâmetro. Em resumo, quando um método recebe um objeto que é
uma classe derivada, esse método recebe um objeto novo, e a classe base que foi
passada para essa nova classe não pode ser diretamente recebida nesse método.
Existem dois tipos comuns de polimorfismo: sobrecarga (overload) e sobrescrita
(override).
A sobrecarga ocorre quando um método possui várias versões com a mesma
nomeação, mas diferentes parâmetros. Isso permite que o método seja chamado
com argumentos de tipos diferentes, e o compilador determinará qual versão do
método deve ser executada com base nos argumentos fornecidos. A sobrecarga
oferece flexibilidade na utilização de um método com diferentes tipos de dados,
permitindo que diferentes versões do método sejam definidas para lidar com
diferentes casos.
A sobrescrita, por sua vez, ocorre quando uma classe derivada redefine um
método da classe base. Isso permite que a classe derivada altere ou estenda o
comportamento do método herdado da classe base. Ao chamar o método em um
objeto da classe derivada, a versão sobrescrita será executada em vez da versão
herdada da classe base. Dessa forma, a classe derivada pode fornecer uma
implementação personalizada do método que produz resultados diferentes do
esperado para o novo objeto.
O polimorfismo é uma característica poderosa da programação orientada a
objetos, pois permite tratar objetos de diferentes classes de maneira uniforme,
facilitando a flexibilidade e a extensibilidade do código. Através da sobrecarga e da
sobrescrita, é possível definir comportamentos específicos para diferentes situações
e garantir que os métodos se adaptem dinamicamente aos objetos com os quais
estão lidando.
6.6 Encapsulamento
49
O encapsulamento é um dos princípios fundamentais da programação
orientada a objetos. Ele se refere à técnica de agrupar dados (atributos) e
comportamentos (métodos) relacionados em uma única unidade chamada classe.
Essa abordagem visa ocultar os detalhes internos e a implementação dos objetos,
fornecendo interfaces apropriadas para interagir com eles.
O principal objetivo do encapsulamento é proteger os dados encapsulados,
controlando o acesso a eles e garantindo sua integridade. Isso é alcançado através
da definição de modificadores de acesso, como público, privado e protegido, que
determinam quais partes do código podem interagir com os atributos e métodos
encapsulados.
Existem três principais modificadores de acesso que podem ser aplicados aos
atributos e métodos de uma classe:
Público (public): Os membros públicos são acessíveis a partir de qualquer
parte do programa. Eles podem ser chamados e utilizados por outras classes ou
objetos sem restrições. São declarados explicitamente como públicos e representam
a interface pública da classe.
Privado (private): Os membros privados são acessíveis apenas dentro da
própria classe. Eles não podem ser acessados diretamente por outras classes ou
objetos. O acesso a esses membros é feito apenas através de métodos públicos da
classe, que fornecem uma interface controlada para manipular os dados
encapsulados.
Protegido (protected): Os membros protegidos são semelhantes aos membros
privados, mas também podem ser acessados por classes derivadas (herdeiras). Isso
permite que as classes derivadas herdem e utilizem os membros encapsulados da
classe base. O acesso a esses membros é controlado e restrito à hierarquia de
herança.
Em resumo, o encapsulamento é uma técnica poderosa que permite proteger
e controlar o acesso aos dados e comportamentos de uma classe. Ele promove a
segurança, a modularidade e a reutilização de código, contribuindo para a
construção de sistemas mais robustos e flexíveis.
6.7 Abstração
50
A abstração é um dos conceitos fundamentais da programação orientada a
objetos (POO) e serefere à capacidade de representar objetos do mundo real de
forma simplificada, enfatizando apenas os aspectos relevantes para o contexto em
questão.
Na POO, uma classe é uma representação abstrata de um objeto ou entidade,
e a abstração permite definir essa classe focando apenas nas características e
comportamentos essenciais, ignorando os detalhes desnecessários. Isso é feito
através da identificação das características principais e da definição dos métodos
que descrevem as ações e interações possíveis com o objeto.
A abstração permite criar modelos de objetos ou entidades complexas e lidar
com eles de forma mais simples e compreensível. Ao abstrair um objeto, removemos
detalhes específicos e nos concentramos apenas nos aspectos importantes para a
aplicação em questão. Por exemplo, ao criar uma classe "Carro", podemos abstrair
as propriedades essenciais, como cor, modelo e velocidade, e definir métodos como
"acelerar", "frear" e "ligar".
Dessa forma, a abstração permite que os programadores lidem com objetos
complexos de maneira mais intuitiva, reduzindo a complexidade e focando apenas
nos aspectos relevantes. Isso facilita o desenvolvimento, a manutenção e o
entendimento do código, além de promover a reutilização de código e a
modularidade.
A abstração é um conceito chave na POO, pois nos permite criar
representações simplificadas e mais compreensíveis dos objetos do mundo real,
tornando a programação mais eficiente e poderosa. Ela está intimamente ligada a
outros conceitos como encapsulamento, herança e polimorfismo, que juntos
constituem a base da programação orientada a objetos.
51
Conclusão
Projetar um sistema de reserva de equipamentos foi um desafio significativo,
abrangendo diversas fases, desde a construção dos casos de uso até a análise e
prototipagem. Essa experiência permitiu reforçar os conhecimentos adquiridos ao
longo do bimestre nas disciplinas relacionadas. A aplicação dos princípios de
engenharia de software foi fundamental, servindo como uma base sólida de
informações.
A prototipagem desempenhou um papel importante, proporcionando uma
oportunidade de explorar programas de edição e criar uma interface de alta
fidelidade. Essa abordagem tornou tangíveis os requisitos do sistema, facilitando a
compreensão e permitindo uma abordagem mais eficiente das matérias relacionadas.
Ao ter uma visão geral do projeto, é possível compreender os desafios
envolvidos na concepção de um sistema como esse e como lidar com problemas
específicos. O trabalho integrado e multidisciplinar possibilitou vislumbrar apenas
uma pequena parte do que envolve o desenvolvimento de um sistema de reservas.
No geral, esse projeto contribuiu para a geração de ideias e soluções para
problemas específicos, fornecendo uma visão mais ampla do desenvolvimento de
um sistema de reservas.
52
REFERÊNCIAS
ANDREBONA. Economia de mercado: você sabe o que significa isso?
Disponível em: https://andrebona.com.br/economia-de-mercado-voce-sabe-o-que-
significa-isso/#:~:text=Você%20sabe%20o%20que%20é,existente. Acesso em: 28
maio 2023
CONVERGENCIADIGITAL. Cibersegurança: investimentos vão superar R$ 5
bilhões no país em 2022. Disponível em:
https://www.convergenciadigital.com.br/Seguranca/Ciberseguranca%3A-
investimentos-vao-superar-R%24-5-bilhoes-no-pais-em-2022-59391.html? Acesso
em: 29 maio 2023.
DIGITALHOUSE. O que é programação orientada a objetos? Pilares e
vantagens da POO. Disponível em:
https://www.digitalhouse.com/br/blog/programacao-orientada-a-objetos-o-que-e/.
Acesso em: 29 maio 2023.
DOCS.MICROSOFT. Herança em C# e .NET. Disponível em:
https://learn.microsoft.com/pt-br/dotnet/csharp/fundamentals/tutorials/inheritance
Acesso em: 29 maio 2023.
G1. Investimento em tecnologia faz do Vale do Piracicaba um dos principais
polos de inovação do agronegócio. Disponível em:
https://g1.globo.com/economia/agronegocios/globo-
rural/noticia/2022/02/13/investimento-em-tecnologia-faz-do-vale-do-piracicaba-um-
dos-principais-polos-de-inovacao-do-agronegocio.ghtml Acesso em: 29 maio 2023.
IDC. Previsões da IDC Brasil para 2021 apontam que mercado de TIC crescerá
https://andrebona.com.br/economia-de-mercado-voce-sabe-o-que-significa-isso/#:~:text=Você%20sabe%20o%20que%20é,existente
https://andrebona.com.br/economia-de-mercado-voce-sabe-o-que-significa-isso/#:~:text=Você%20sabe%20o%20que%20é,existente
https://www.convergenciadigital.com.br/Seguranca/Ciberseguranca%3A-investimentos-vao-superar-R%24-5-bilhoes-no-pais-em-2022-59391.html?
https://www.convergenciadigital.com.br/Seguranca/Ciberseguranca%3A-investimentos-vao-superar-R%24-5-bilhoes-no-pais-em-2022-59391.html?
https://www.digitalhouse.com/br/blog/programacao-orientada-a-objetos-o-que-e/
https://learn.microsoft.com/pt-br/dotnet/csharp/fundamentals/tutorials/inheritance
https://g1.globo.com/economia/agronegocios/globo-rural/noticia/2022/02/13/investimento-em-tecnologia-faz-do-vale-do-piracicaba-um-dos-principais-polos-de-inovacao-do-agronegocio.ghtml
https://g1.globo.com/economia/agronegocios/globo-rural/noticia/2022/02/13/investimento-em-tecnologia-faz-do-vale-do-piracicaba-um-dos-principais-polos-de-inovacao-do-agronegocio.ghtml
https://g1.globo.com/economia/agronegocios/globo-rural/noticia/2022/02/13/investimento-em-tecnologia-faz-do-vale-do-piracicaba-um-dos-principais-polos-de-inovacao-do-agronegocio.ghtml
53
7%. Disponível em: https://www.idc.com/getdoc.jsp?containerId=prLA47452221.
Acesso em: 28 maio 2023.
WIKIPÉDIA. Software de gerenciamento de projetos. Disponível em:
https://pt.wikipedia.org/wiki/Software_de_gerenciamento_de_projetos. Acesso em:
29 maio 2023.
https://www.idc.com/getdoc.jsp?containerId=prLA47452221
https://pt.wikipedia.org/wiki/Software_de_gerenciamento_de_projetos
	1.
	2.INTRODUÇÃO
	3.Mercado e Economia - Retrospetiva e previsão
	2.1 Tendências - viabilidade econômica
	2.2 Desvantagem
	2.3 Objetivo do Software
	2.4 Recurso mais comuns
	4.Engenharia de Software 
	3.1 Especificação de equipamento
	3.2 Especificação de tarefas
	3.3 Regras de negócio - Acesso ao sistema
	3.4 Cadastro de usuários
	3.5 Utilização do sistema
	5.Casos de uso e roteiro de testes
	4.1 Acesso ao sistema
	4.2 Tela Primaria - Administrador
	4.3 Pesquisa e cadastro de usuários
	4.4 Busca de usuário
	4.5 Cadastro de usuário
	4.6 Consulta de equipamentos
	4.7 Cadastro de equipamentos
	4.8 Relatório dos equipamentos
	4.9 Reserva de equipamento - usuário
	4.10 Reservas realizadas
	5 Protótipo
	5.1 Tela Login
	5.2 Tela Home - administrador
	5.3 Tela usuário - administrador
	5.4 Tela resultado da busca - administrador
	5.5 Tela cadastrar novo usuário - administrador
	5.6 Tela equipamento - administrador
	5.7 Tela equipamento selecionado - administrador
	5.8 Tela cadastrar equipamento - administrador
	5.9 Tela relatório - administrador
	5.10 Tela Home - usuário
	5.11 Tela reserva de equipamento - usuário
	5.12 Tela pedidos de reserva - usuário
	5.13 Tela perfil de cliente – usuário ou administr
	6.Programação Orientada a Objetos
	6.1 Contextualizando a programação orientada a obj
	6.2 Classes
	6.3 Objetos
	6.4 Herança
	6.5 Polimorfismo
	6.7 Abstração
	Conclusão
	REFERÊNCIAS

Continue navegando