Prévia do material em texto
UNIVERSIDADE PAULISTA – UNIP EaD Projeto Integrado Multidisciplinar Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas MANOEL DE JESUS DA SILVA JUNIOR – 2298627 Projeto de Sistema de Reserva de Equipamentos Audiovisuais BOA VISTA 2023 MANOEL DE JESUS DA SILVA JUNIOR – 2298627 Projeto de Sistema de Reserva de Equipamentos Audiovisuais 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. Orientador (a): Me. Rene M. Ignácio. BOA VISTA 2023 Resumo Este projeto consiste em apresentar o desenvolvimento de um sistema de reserva de equipamentos audiovisuais voltado para otimizar e controlar o processo de empréstimo de recursos para o Colégio Vencer Sempre do ensino fundamental e médio. O projeto visa contribuir para a melhoria da gestão de recursos na instituição, proporcionando maior agilidade, controle e eficiência no que se refere na hora de conceder instrumentos para o aprendizado. E terá a fundamentação nos conhecimentos adquiridos nas disciplinas de Economia e Mercado, Engenharia de Software II, Projeto de Interface com o Usuário e Programação Orientada a Objetos I. Palavras chave: Projeto, Sistema, Controle, Agilidade. Abstract This project consists of presenting the development of an audiovisual equipment reservation system aimed at optimizing and controlling the resource loan process for Colégio Vencer Semper for primary and secondary education. The project aims to contribute to improving resource management at the institution, providing greater agility, control and efficiency when it comes to granting learning tools. And it will be based on the knowledge acquired in the disciplines of Economy and Market, Software Engineering II, User Interface Design and Object-Oriented Programming I. . Keywords: Project, System, Control, Agility. Sumário Resumo 3 Abstract 4 1 Introdução 5 2 Sustentabilidade Ambiental e a importância do abatimento de poluentes 6 3 Linguagem C 7 4 DEV C++ 7 5 Lógica de programação e seus conceitos 8 6 Elaboração do sistema 10 10 Conclusão 12 11 Referências 13 1 Introdução Nos últimos anos, temos presenciado uma mudança profunda nos métodos de ensino, impulsionada pelo avanço tecnológico e pela crescente integração da tecnologia na educação. Desde os tempos em que o giz e a lousa eram os principais recursos dos professores, até os dias atuais, em que a tecnologia digital permeia todas as áreas do aprendizado, transformando o cenário educacional. Com a explosão de informações e o surgimento de novas demandas educacionais, os métodos tradicionais de ensino mostraram-se insuficientes para atender às necessidades de uma sociedade cada vez mais globalizada e conectada digitalmente. A nova geração de alunos, que cresceu imersa na tecnologia, espera métodos de ensino mais interativos e dinâmicos. Nesse contexto, a escola Vencer Sempre assim como outras instituições têm adotado cada vez mais ferramentas audiovisuais, como data shows, TVs, projetores e notebooks, para enriquecer as aulas e torná-las mais envolventes para os alunos. Contudo, a gestão eficiente desses recursos apresentam desafios logísticos significativos. A necessidade de agilizar e controlar o empréstimo desses equipamentos para os professores e demais colaboradores tornou-se uma prioridade. Dessa forma, surge a necessidade da criação de um sistema para controle e organização do empréstimo dessas ferramentas, que simplifique e organize esse processo, garantindo que os recursos estejam disponíveis quando necessários, sem sobrecarregar a gestão administrativa da instituição. Assim, o desenvolvimento desse sistema surge para atender às demandas práticas do ambiente educacional contemporâneo, mas também promove uma integração mais eficaz entre a tecnologia e a pedagogia, proporcionando um ambiente de aprendizado mais dinâmico e adaptado. 2 Economia e Mercado Para produção do sistema é importante entender porque ao explorar os conceitos fundamentais da matéria de economia e mercado, que no qual mostra a introdução a uma série de princípios que explicam como as decisões individuais e coletivas afetam a alocação de recursos e a formação de preços, adquirindo uma visão crítica das relações econômicas, desenvolvendo habilidades analíticas para avaliar diferentes políticas e estratégias. Sendo assim essencial para um entendimento sólido desses conceitos que permite aos desenvolvedores tomar decisões informadas sobre o desenvolvimento e comercialização do produto. 2.1 Agentes Econômicos Como aprendido na disciplina sabemos que são entidades individuais ou coletivas que participam de atividades econômicas, influenciando a alocação de recursos. Eles interagem no mercado através de decisões de consumo, produção, investimento e poupança, buscando maximizar seus interesses pessoais ou organizacionais. E relacionando ao sistema podemos observar que os agentes inseridos no projeto são : 1. Cliente (Escola Vencer Sempre): A escola é o nosso principal cliente, pois será o usuário final do sistema de reserva. Ela que demanda a solução eficiente para otimizar o processo de empréstimo de equipamentos para seus professores e coordenadores. 2. Fornecedor: Empresa que fornece o software e outros recursos tecnológicos necessários para o desenvolvimento e manutenção do sistema. Isso inclui servidores de hospedagem, equipamentos audiovisuais e licenças de software. 2.2 Investimento e Prazo Por ser um projeto de pequeno porte e com uma abordagem simplificada em sua programação e desenvolvimento, o custo não deve ser elevado, contudo, é essencial aderir às normas de qualidade para garantir um projeto com um excelente custo-benefício, tanto para a empresa responsável pelo desenvolvimento do sistema quanto para o cliente final (Colégio Vencer Sempre). Para que todas as etapas de contratos e propostas possam ser realizadas é importante que o projeto siga todos os cronogramas e prazos definidos pela demanda do sistema, que a comunicação entre o solicitante e a empresa executora seja perfeitamente alinhada, assim como cada membro responsável pelo projeto. O cumprimento do cronograma seguirá em ordem e estima-se que em 122 dias o projeto poderá ser concluído, evitando qualquer atraso que poderá implicar na insatisfação do cliente e a elevação dos custos internos do projeto. Terá o investimento calculado em R$18.456,00 contando com a mão de obra necessária de um analista de sistemas , no qual é responsável por levantar os requisitos, a documentação e fazer o planejamento, e também um desenvolvedor de sistemas que implementará a parte da codificação do sistema e a prototipação. Juntos, ao final, deverão fazer a validação dos requisitos antes da entrega do produto. Ao final do projeto a empresa deve lucrar cerca de 28% em cima dos gastos. 3 Engenharia de Software A matéria de Engenharia de Software é uma disciplina que se dedica ao desenvolvimento do software de forma sistemática, aplicando princípios de engenharia para garantir a qualidade, eficiência e confiabilidade dos sistemas computacionais. No contexto do projeto, ela desempenha um papel crucial na concepção, desenvolvimento e na análise dos requisitos desde a implementação aos testes do software. Para isso é necessário definir os requisitos funcionais, não funcionais do sistema, e bem como elaborar as especificações de interfaces, regras de negócio e mensagens a serem exibidas. Mas o que são requisitos ?. Os requisitos em um projeto de software são as especificações detalhadas que definem as funcionalidades e características que o sistema deve possuir para atender às necessidades dos usuários e das partes interessadas. Eles podem ser divididos em dois tipos principais: requisitos funcionais e requisitos não funcionais. Onde os requisitos funcionais delineiam as operações do sistema, enquanto requisitosnão funcionais definem sua qualidade e desempenho. Funcionais especificam o que o sistema deve fazer, como processar informações, enquanto não funcionais abordam aspectos como segurança, usabilidade e desempenho, complementando os requisitos funcionais. Além desses dois fundamentais existe também o Requisito de Negócios, no qual mostra as necessidades e objetivos globais da organização que impulsionam o desenvolvimento do sistema. Eles são voltados para o sucesso do negócio, abrangendo aspectos como aumento da eficiência, redução de custos, melhoria da qualidade dos serviços e aumento da satisfação do cliente. Para o projeto proposto os requisitos foram inseridos como : 3.1 Requisitos Funcionais F01. Cadastro de usuários: Permite que os próprios usuários do sistema se cadastrem com o nome, email e senha . F02. Cadastro de equipamentos: Permitir que os administradores do sistema cadastrem os equipamentos disponíveis para reserva, incluindo nome, descrição, quantidade disponível e categorias. F03. Reserva de equipamentos: Permitir que os usuários façam reservas de equipamentos para datas específicas, com validação de disponibilidade. F04. Gerenciamento de reservas: Permitir que os administradores visualizem e gerenciam as reservas realizadas, podendo aprovar, rejeitar ou modificar solicitações. F05. Notificações por e-mail: Enviar notificações automáticas para usuários e administradores sobre confirmação de reserva, alterações ou cancelamentos. F06. Relatórios: Gerar relatórios sobre o uso dos equipamentos, reservas pendentes, equipamentos mais requisitados, entre outros. 3.2 Requisitos Não Funcionais: NF01. Segurança: Garantir a segurança dos dados do sistema, com medidas como criptografia e controle de acesso. NF02. Desempenho: Assegurar que o sistema seja responsivo e tenha um tempo de resposta rápido, mesmo com um grande volume de usuários e reservas. NF03. Usabilidade: O sistema deve ser intuitivo e de fácil utilização, com uma interface amigável para usuários de diferentes níveis de experiência. NF04. Escalabilidade: O sistema deve ser projetado para suportar o crescimento futuro, tanto em termos de número de usuários quanto de funcionalidades adicionais. 3.3 Requisitos de Negócio: RN01. Atendimento às necessidades dos clientes: Garantir que o sistema atenda às necessidades específicas da escola Vencer Sempre, agilizando o processo de reserva de equipamentos. RN02. Redução de custos operacionais: Permitir que a escola reduza os custos operacionais ao otimizar o uso de recursos audiovisuais disponíveis. RN03. Melhoria da eficiência: Aumentar a eficiência do processo de reserva de equipamentos, minimizando erros e retrabalho. 3.4 Modelo para o sistema A seleção da metodologia mais apropriada para uma empresa de software é também outra etapa essencial e é influenciada por diversos elementos, tais como o tamanho da equipe, a complexidade do projeto, os recursos disponíveis e as particularidades da organização. Nesse sentido, as Normas Internacionais ISO, CMMI e MPS.br emergem como referências notáveis, cada uma oferecendo abordagens distintas e critérios específicos. As Normas Internacionais ISO estabelecem diretrizes globalmente reconhecidas para assegurar qualidade e segurança em diversos setores, incluindo o desenvolvimento de software. Já o Capability Maturity Model Integration (CMMI) é um modelo de referência que visa melhorar a maturidade dos processos organizacionais, oferecendo diretrizes e melhores práticas para o desenvolvimento de software de forma estruturada e sistemática. 3.4.1MPS.br Para o sistema de reserva em um ambiente educacional de Ensino, a adoção do MPS.br (Melhoria de Processo do Software Brasileiro) foi a escolha mais adequada. Isso se deve ao fato de que o MPS.br foi desenvolvido para se adequar às necessidades e a realidades impostas pelo projeto, incluindo o fato da empresa ser pioneira e de pequeno porte, e abrange ainda os aspectos relevantes para a melhoria do processo para o desenvolvimento do software. Além disso, o MPS.br fornece um modelo de referência adaptável que tem como base técnica a NBR ISO/IEC 12.207, que permite que a organização escolha os níveis de maturidade que melhor se adequam às suas circunstâncias e objetivos. Isso é importante, considerando que o sistema de reserva de equipamentos pode variar em complexidade de acordo com o tamanho não só da instituição educacional Vencer Sempre como outras. Portanto, a adoção do MPS.br pode proporcionar uma abordagem estruturada e adaptável para melhorar os processos de desenvolvimento de software, alinhando-se com as necessidades específicas do contexto educacional brasileiro. imagem 1 - Que no qual mostra os 7 níveis de maturidade 4 Interface com o Usuário Para o melhor entendimento entre sistema e usuário decidimos criar interfaces que tornem a interação mais simples e eficaz , pois uma interface bem projetada facilita o processo de reserva para os professores, independentemente de sua experiência em tecnologia. Uma interface intuitiva aumenta a produtividade, reduz erros e melhora a satisfação do usuário, o que é essencial para o sucesso e a aceitação do sistema. Nesse contexto, o HTML foi escolhido como linguagem para desenvolver a interface, permitindo a criação de uma experiência de usuário fluida e amigável. Ao desenvolvermos os protótipos de interfaces, é importante considerar os requisitos funcionais e o fluxo de interação do usuário que foram atribuídos ao longo do projeto. Vamos descrever o funcionamento de cada tipo de entrada de dados, processamento e saída de informação para os principais requisitos funcionais: 1. Cadastro de usuário: • Entrada de Dados: Caso o usuário não tenha login já cadastrado aparecerá a opção para se cadastrar. • Processamento: Os dados são validados para garantir que todos os campos obrigatórios sejam preenchidos corretamente. Em seguida, o usuário é cadastrado no sistema. • Saída de Informação: Uma mensagem de sucesso é exibida para o usuário, confirmando o cadastro tendo assim então o acesso a tela de reserva. Imagem - 2 tela de login fonte própria Imagem - 3 formulário de cadastro fonte própria 2. Cadastro de equipamentos: • Entrada de Dados: O usuário administrador insere os dados do equipamento, como nome, descrição, categoria e quantidade disponível. • Processamento: Os dados são validados para garantir que todos os campos obrigatórios sejam preenchidos corretamente. Em seguida, o equipamento é cadastrado no sistema. • Saída de Informação: Uma mensagem de sucesso é exibida para o usuário, confirmando o cadastro do equipamento. Os detalhes do equipamento recém-cadastrado também são exibidos na interface. 3. Reserva de Equipamentos: • Entrada de Dados: O usuário seleciona o equipamento desejado, especifica a data e horário da reserva e fornece suas informações de contato. • Processamento: O sistema verifica a disponibilidade do equipamento para a data e horário especificados. Se o equipamento estiver disponível, a reserva é confirmada e registrada no sistema. • Saída de Informação: Uma mensagem de confirmação é exibida para o usuário, informando os detalhes da reserva, como o equipamento reservado, data, horário e informações de contato. 4. Gerenciamento de Reservas: • Entrada de Dados: O usuário administrador visualiza a lista de reservas pendentes e seleciona uma reserva específica para aprovar, rejeitar ou modificar. • Processamento: O sistema processa a ação solicitada pelo administrador, atualizando o status da reserva conforme necessário. • Saída de Informação: Uma mensagem de confirmação é exibida para o administrador, informando o resultado da ação realizada (aprovação, rejeição ou modificação da reserva). 5. Relatórios: • Entrada de Dados: O usuário seleciona os parâmetros desejados para gerar um relatório, como o período de tempo, tipo de equipamento, etc. • Processamento: O sistema processa as solicitações do usuário e gera um relatório com base nos parâmetros selecionados. • Saída de Informação: O relatório é exibido na interfacedo usuário, apresentando as informações solicitadas de forma clara e organizada. 5 Programação Orientada a Objetos Na disciplina de Programação Orientada a Objetos, aprendemos sobre os fundamentos e princípios dessa abordagem de desenvolvimento de software. A importância da POO para simplificar o trabalho dos desenvolvedores, focando na satisfação do cliente. Isso está alinhado com o que aprendemos sobre a necessidade de compreender e atender às demandas dos usuários finais ao projetar e desenvolver sistemas de software. Além disso, a capacidade da POO de transformar ideias em objetos, o que reflete o conceito de modelagem de problemas do mundo real para o domínio da programação. Isso relaciona-se diretamente com o que aprendemos sobre a criação de classes e objetos para representar entidades e seus comportamentos. Os pilares da POO são as classes e os objetos, sobre os quais construímos todo o resto. E a utilização de desses conceitos passaremos a abordar a importância dele para o sistema: 5.1 Objetos Em POO, um objeto é uma instância concreta de uma classe. Ele representa uma entidade do mundo real que possui estado (atributos) e comportamento (métodos). No sistema de gerenciamento de reservas um objeto pode ser uma reserva específica, com atributos como data, horário, equipamento reservado e informações de contato. Os objetos do projeto podem incluir instâncias de classes como `Reserva`, `Equipamento`, `Relatorio` , `Usuário`. 5.2 Classes Classes: Uma classe é um modelo ou planta para criar objetos. Ela define os atributos e métodos que os objetos de uma determinada categoria terão. Por exemplo, na mesma aplicação de gerenciamento de reservas de equipamentos, podemos ter uma classe `Reserva` que define os atributos e métodos comuns a todas as reservas de equipamentos como "Projetor", "TV", etc. 5.3 Herança A herança é um conceito que permite que uma classe (chamada de subclasse ou classe filha) herda atributos e métodos de outra classe (chamada de superclasse ou classe pai). Isso promove a reutilização de código e permite a criação de hierarquias de classes. Por exemplo, podemos ter uma classe "Projetor" que herda de "EquipamentoAudiovisual", incorporando características específicas de um projetor. 5.4 Polimorfismo O polimorfismo permite que objetos de classes diferentes respondam ao mesmo método de maneiras diferentes. Isso é alcançado através da implementação de métodos com o mesmo nome em classes diferentes, mas com comportamentos específicos para cada classe. Por exemplo, podemos ter um método "reservar()" que pode ser implementado de forma diferente para um objeto da classe "Projetor" e para um objeto da classe "Notebook", dependendo das particularidades de cada equipamento. No sistema de reserva de equipamentos audiovisuais, podemos identificar esses elementos da seguinte maneira: • Objetos: Cada equipamento audiovisual disponível para reserva no sistema, como projetores, TVs, notebooks, etc., seria representado como um objeto com seus próprios atributos e métodos. • Classes: Teríamos uma hierarquia de classes que define diferentes tipos de equipamentos audiovisuais, como a classe base "EquipamentoAudiovisual" e subclasses como "Projetor", "TV", etc. • Herança: A herança seria utilizada para compartilhar características comuns entre os diferentes tipos de equipamentos audiovisuais, garantindo a consistência e a reutilização de código. • Polimorfismo: Poderíamos ter métodos comuns, como "reservar()" e "liberar()", que seriam implementados de forma específica para cada tipo de equipamento audiovisual, permitindo que diferentes objetos respondam a esses métodos de maneiras distintas. Por exemplo, o método "reservar()" para um projetor pode incluir a configuração específica do projetor antes da reserva, enquanto para um notebook pode envolver a verificação da bateria e do espaço de armazenamento disponível. 6 Conclusão Ao longo do desenvolvimento do sistema de reserva foi mostrado como a integração de diferentes disciplinas pode resultar em soluções tecnológicas eficazes para atender às demandas específicas de determinado setor, como o educacional. Nesse projeto, aprendemos a importância de compreender profundamente as necessidades dos usuários finais, garantido que o sistema desenvolvido seja verdadeiramente útil e impactante. Além disso, exploramos como a aplicação de conceitos de economia e mercado nos permitiu entender melhor o contexto em que o sistema será utilizado, identificando os principais agentes econômicos envolvidos e avaliando a viabilidade econômica do projeto. Isso demonstra como o conhecimento interdisciplinar pode agregar valor ao processo de desenvolvimento de software, fornecendo uma visão mais abrangente e holística. Por meio da Engenharia de Software, aprendemos a importância de definir requisitos claros e precisos, bem como a necessidade de escolher metodologias adequadas de desenvolvimento, considerando as limitações financeiras e os objetivos do projeto. A Programação Orientada a Objetos nos permitiu criar uma estrutura de software flexível e modular, facilitando a manutenção e a evolução do sistema ao longo do tempo. Por fim, ao projetar a interface com o usuário, aprendemos que a usabilidade e a experiência do usuário são aspectos cruciais para o sucesso de qualquer aplicativo ou sistema. Através da elaboração de protótipos de interfaces com alta fidelidade, exploramos como os princípios de design podem ser aplicados para criar interfaces intuitivas e agradáveis, garantindo que os usuários possam interagir de forma eficiente e eficaz com o sistema. Em resumo, o desenvolvimento deste sistema não apenas nos proporcionou uma oportunidade de aplicar conhecimentos teóricos em um contexto prático, mas também nos ensinou valiosas lições sobre colaboração, inovação e resolução de problemas em equipe. Ao final do projeto, estamos mais preparados para enfrentar os desafios do mundo real e contribuir de forma significativa para o avanço da tecnologia e da educação. 7 Referências https://investidorsardinha.r7.com/aprender/agentes-economicos/ https://promovesolucoes.com/quais-sao-os-niveis-de-maturidade-do-mps-br/ image6.png image5.png image3.png image4.png image1.png image2.png image7.png