Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 UNIVERSIDADE PAULISTA EAD Projeto Integrado Multidisciplinar V Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Aline Barbosa da Silva - 2329561 Bruno da Silva Alencar - 2326504 Eduarda Cavalcante Nunes - 2317724 Gabriel Alves Pinheiro de Souza - 2359645 Matheus Aurélio Fernandes de Souza – 2326465 Rafael Willian da Silva Ribeiro – 2318706 UNIP – 2024 2 Aline Barbosa da Silva – 2329561 Bruno da Silva Alencar – 2326504 Eduarda Cavalcante Nunes – 2317724 Gabriel Alves Pinheiro de Souza - 2359645 Matheus Aurélio Fernandes de Souza – 2326465 Rafael Willian da Silva Ribeiro – 2318706 Sistema de Reserva de Equipamentos Audiovisuais Projeto Integrado Multidisciplinar V Análise e Desenvolvimento de Sistemas Projeto Integrado Multidisciplinar V para obtenção do título de tecnólogo em Análise e Desenvolvimento de Sistemas, apresentado à Universidade Paulista – UNIP EaD. Orientador (a): Gislaine Stachissini Barros UNIP – 2024 3 RESUMO O Projeto Integrado Multidisciplinar V é parte do Programa Pedagógico dos Cursos Superiores de Tecnologia a distância da Universidade Paulista (UNIP), tem por objetivo principal desenvolver um sistema de reserva de equipamentos audiovisuais, com o intuito de otimizar e monitorar o empréstimo desses recursos aos professores do Ensino Fundamental e Médio. A iniciativa buscou integrar os conceitos teóricos das disciplinas de Economia e Mercado, Engenharia de Software II, Projeto de Interface com o Usuário e Programação Orientada a Objetos, promovendo uma abordagem prática e multidisciplinar. Com base nas disciplinas mencionadas, no decorrer deste trabalho, foram elaborados os processos para o desenvolvimento do sistema de agendamento, incluindo prototipação, definição de requisitos funcionais e não funcionais, estabelecimento de regras de negócio, realização de testes e identificação dos agentes econômicos envolvidos, baseado em pesquisas onde os resultados alcançados refletem o crescimento acadêmico dos alunos, evidenciando a eficácia desta proposta de trabalho na integração entre teoria e prática. Palavras chave: Desenvolvimento, integração. 4 ABSTRACT The Integrated Multidisciplinary Project V is part of the Pedagogical Program of Higher Education Distance Learning Courses at Universidade Paulista (UNIP), its main objective is to develop a reservation system for audiovisual equipment, with the aim of optimizing and monitoring the loan of these resources to teachers of Elemen- tary and Secondary Education. The initiative sought to integrate theoretical concepts from the disciplines of Economy and Market, Software Engineering II, User Interface Design and Object-Oriented Programming, promoting a practical and multidiscipli- nary approach. Based on the aforementioned disciplines, in the course of this work, the processes for developing the scheduling system were developed, including prototyping, defining functional and non-functional requirements, establishing business rules, carrying out tests and identifying the economic agents involved, based on research where the results achieved reflect the academic growth of students, highlighting the effective- ness of this work proposal in the integration between theory and practice. Keywords: Development, integration. 5 SUMÁRIO INTRODUÇÃO ................................…………………………………….………...... 1. Engenharia de Software II 2.Projeto de Interface com o Usuário 3.Programação Orientada a Objetos I. ……… 4.Economia e Mercado …….…………………………………...19 CONCLUSÃO REFERÊNCIAS BIBLIOGRÁFICAS 6 INTRODUÇÃO Antigamente, para ministrar suas aulas, o professor utilizava apenas giz, lousa, livros e seu conhecimento para apresentar o conteúdo de sua disciplina aos seus alunos. Considerando o aumento de informações a serem apresentadas em cada disciplina, o comportamento da nova geração dos alunos que são totalmente ligados à tecnologia e às ferramentas de interação humano-computador, a área educacional está aderindo gradativamente na utilização de ferramentas audiovisuais para apoiar a dinâmica das aulas dos colégios de Ensino Fundamental e Médio. O Colégio Vencer Sempre disponibiliza equipamentos de informática e vídeo (tais como datashow, TV com VCR, TV com DVD, projetor de slides, sistemas de áudio/microfone, caixa amplificada, notebooks, kits multimídia etc.), como ferramentas de apoio para aulas e palestras, aos professores e coordenadores da instituição, alocando-os em salas de aula e auditórios, a pedido antecipado dos colaboradores. No contexto dinâmico das instituições de ensino, a otimização de processos é es- sencial para promover um ambiente acadêmico eficiente e produtivo. Em busca desse objetivo, a implantação de um sistema de reserva de equipamentos surge como uma solução estratégica para atender às necessidades dos docentes e aprimorar sua ex- periência no ambiente educacional. Este sistema visa simplificar e agilizar o processo de reserva de equipamentos, oferecendo aos professores uma ferramenta acessível e efi- caz para gerenciar recursos indispensáveis ao desenvolvimento de suas atividades ped- agógicas. Ao substituir métodos obsoletos por uma plataforma moderna e intuitiva, a institui- ção de ensino não apenas acompanha as demandas tecnológicas atuais, mas também demonstra seu compromisso com a excelência acadêmica e o apoio ao corpo docente. Nesta introdução, exploraremos os benefícios e as implicações da implementação de um sistema de reserva de equipamentos, destacando sua importância na simplificação das tarefas administrativas e na maximização do tempo dedicado ao ensino e à pesquisa pelos usuários. 7 Engenharia de Software II A engenharia de software desempenha um papel crucial no desenvolvimento e manutenção de sistemas eficientes e seguros. Para inicialização deste projeto utilizamos a metodologia ágil de desenvolvimento de software SCRUM que visa maximizar a eficiência, a flexibilidade e a qualidade do produto final. Baseia-se em princípios de transparência, inspeção e adaptação contínuas, proporcionando uma abordagem iterativa e incremental para a gestão de projetos. Aqui está uma descrição geral da metodologia Scrum: • Equipe Scrum: Uma equipe auto-organizada e multifuncional, composta por indivíduos capacitados para todas as áreas necessárias ao desenvolvimento do software, como programação, design, testes, etc. • Product Owner (PO): Representante do cliente ou stakeholders, responsável por definir as funcionalidades do produto, priorizando o backlog do produto e garantindo que a equipe Scrum compreenda os requisitos do cliente. • Scrum Master: Responsável por garantir que a equipe Scrum siga os princípios e práticas do Scrum, removendo obstáculos que possam impedir o progresso do projeto e facilitando reuniões e interações entre os membros da equipe. • Backlog do Produto: Uma lista priorizada de todas as funcionalidades desejadas para o produto, mantida e atualizada pelo Product Owner. • Sprint: Um período de tempo fixo, geralmente de duas a quatro semanas, durante o qual a equipe trabalha para entregar um incremento potencialmente entregável do produto. • Planejamento da Sprint: Reunião no início de cada Sprint, onde o Product Owner prioriza os itens do backlog do produto e a equipe seleciona as tarefas a serem realizadas durante a Sprint. • Sprint Backlog: Lista de tarefas selecionadas pela equipe Scrum para seremconcluídas durante a Sprint. • Daily Scrum: Reunião diária de curta duração, onde os membros da equipe compartilham o progresso, identificam obstáculos e planejam as atividades para o dia seguinte. • Revisão da Sprint: Reunião ao final de cada Sprint, onde a equipe demonstra o trabalho concluído ao Product Owner e aos stakeholders, recebe feedback e ajusta o backlog do produto conforme necessário. • Retrospectiva da Sprint: Reunião ao final de cada Sprint, onde a equipe reflete sobre o processo de desenvolvimento, identifica melhorias e define ações para implementar essas melhorias na próxima Sprint. 8 O processo começa com a identificação das necessidades dos clientes e usuários finais para o sistema de reserva de equipamentos audiovisual. Os requisitos são coletados e documentados em colaboração com os stakeholders, utilizando técnicas como entrevistas, workshops e prototipagem. São priorizados e refinados ao longo do tempo, com base no feedback contínuo dos stakeholders e na evolução das necessidades do negócio. O planejamento de software envolve a definição de marcos, estimativas de tempo e recursos, alocação de tarefas e definição de cronogramas de entrega. O desenvolvimento de software é realizado em ciclos iterativos e incrementais, com base nos requisitos definidos. As práticas de desenvolvimento ágil, como desenvolvimento orientado a testes (TDD) e integração contínua, são seguidas para garantir a qualidade do código e facilitar a manutenção. As equipes utilizam ferramentas de controle de versão, como Git, para colaborar no desenvolvimento de código e rastrear alterações ao longo do tempo. Ciclo de vida O ciclo de vida do software é o processo pelo qual um produto de software é concebido, desenvolvido, testado, implantado e mantido ao longo do tempo. Para este projeto utilizamos o Modelo Cascata, que é uma abordagem sequencial e linear para o desenvolvimento de software, onde o processo de desenvolvimento é dividido em fases distintas e cada fase deve ser concluída antes que a próxima seja iniciada . (fonte: https://dicionariotec.com/posts/modelo-cascata) 9 Para o desenvolvimento deste projeto foram utilizadas algumas ferramentas como o Visual Studio, que é um ambiente de desenvolvimento integrado (IDE) da Microsoft, que oferece recursos abrangentes para desenvolvimento de software, incluindo edição de código, depuração, compilação e implantação de aplicativos. O HTML (Hypertext Markup Language) que é uma Linguagem padrão para criação e estruturação de páginas da web. O CSS (Cascading Style Sheets) que é uma Linguagem de estilo usada para controlar a apresentação visual de páginas da web. Normas Internacionais As normas ISO, CMMI e MPS.br são abordagens diferentes, mas complementares, para melhorar a qualidade e a eficácia dos processos de desenvolvimento de software. Elas fornecem estruturas, diretrizes e práticas recomendadas que as organizações podem seguir para alcançar padrões mais elevados de desempenho e excelência em suas ope- rações de desenvolvimento de software. Falaremos resumidamente sobre cada norma a seguir: • ISO (International Organization for Standardization): A ISO é uma organização internacional que desenvolve e publica normas que definem diretrizes e práticas recomendadas para diversos setores e áreas, incluindo a gestão da qualidade e do processo de desenvolvimento de software. As normas ISO relacionadas ao desenvolvimento de software incluem a ISO/IEC 12207 (Ciclo de Vida do Software) e a ISO/IEC 15504 (Avaliação de Processo de Software, também conhecida como SPICE). A ISO 9001 é uma norma de gestão da qualidade am- plamente adotada, que pode ser aplicada ao desenvolvimento de software para garantir a conformidade com padrões de qualidade e processos eficazes. • CMMI (Capability Maturity Model Integration): O CMMI é um modelo de melhoria de processos que fornece diretrizes para avaliar e melhorar a maturidade dos processos de uma organização. Ele é composto por cinco níveis de maturidade (Inicial, Gerenciado, Definido, Quantitati- vamente Gerenciado e Otimizado), que representam diferentes estágios de capacidade e eficácia dos processos. O CMMI abrange várias áreas de processo, como gerenciamento de projetos, engenha- ria de requisitos, desenvolvimento e manutenção de produtos, e suporte ao processo. 10 • MPS.br (Melhoria de Processo do Software Brasileiro): O MPS.br é um modelo brasileiro de melhoria de processos de software, desenvolvido para atender às necessidades das empresas brasileiras de desenvolvimento de softwa- re. Ele é baseado no modelo internacional ISO/IEC 15504 (SPICE) e adaptado para a reali- dade brasileira, considerando as características e desafios específicos do setor de tecno- logia no país. O MPS.br também é organizado em níveis de maturidade, que representam diferentes estágios de melhoria dos processos, e oferece um conjunto de práticas e diretrizes para alcançar esses níveis. Portanto, o MPS.br é uma opção viável para nossa empresa , que conta com pouco re- curso financeiro, pois oferece uma abordagem flexível, adaptável e incremental para a melhoria de processos do software, permitindo que outras organizações priorizem e im- plementem práticas eficazes de acordo com os recursos disponíveis. Implantação: O software será instalado em um ambiente de hospedagem exclusivo da instituição, utili- zando os serviços de uma empresa já empregada para hospedar o site institucional. O Departamento de TI será encarregado de administrar e realizar quaisquer atualizações necessárias, como a inclusão de novos usuários e novos equipamentos no banco de dados. 11 Requisitos funcionais: O requisito funcional é uma demanda específica de funcionalidade que um programa precisa cumprir e que é definida desde o início do processo de desenvolvimento de sof- tware. Essas demandas são determinadas com base nas necessidades do cliente. Para este projeto em particular, foram identificados cinco requisitos funcionais: • Cadastro de Novos Usuários: Essencial para que os usuários possam utilizar o sistema. (isso apenas para o ADMIN responsável pelo departamento de TI). • Login: Permite a autenticação dos usuários cadastrados e o acesso às funcional- idades restritas do sistema. • Reservas: Permite que os usuários realizem reservas, escolhendo data e horário. • Consulta e devolução de Reservas: O sistema deve exibir uma lista das reser- vas realizadas, permitindo aos usuários consultá-las e fazer a devolução. • Cadastro e Controle de Equipamentos: Permite que o administrador inclua no- vos equipamentos e gerencie o sistema. Requisitos não funcionais: • Um usuário não pode acessar as reservas de outros usuários; • O Banco de Dado utilizado pelo Departamento de TI da instituição, visando facili- tar futuras manutenções. • interface simples e intuitiva; • Facilidade para atualizações, manutenção e implementação de novas funcionali- dades. Requisitos de negócio: As regras de negócio definem como o sistema atenderá às necessidades do usuário. Elas especificam como os requisitos funcionais serão cumpridos. No caso do sistema do Colégio Vencer Sempre, a regra para empréstimo e devolução de equipamentos serão mediante a identificação do usuário como sistema, através do Email e senha. Alguns desses requisitos serão apresentados nos tópicos abaixo, como campos de preenchi- mentos obrigatórios e Pop-up de informações. 12 Projeto de Interface com o Usuário É essencial que o sistema apresente um design de alta qualidade, caracterizado pela simplicidade, elegância e beleza. Neste projeto, a navegação será simplificada para garantir uma experiência de usuário intuitiva e de fácil acesso, as interfaces serão projetadas de forma fluida, permitindo uma adaptação suave aos diferentes tamanhos de monitores encontrados no mercado. Afim de facilitar a usabilidade, contamos com botões grandes, imagens alinhadas e de tamanhos que se adequam a qualquer tipo de ambiente utilizado pelo usuário, como veremos abaixo o layout e suas funcionalidades Tela de LOGIN: Contamos com a simplicidade e facilidade de um layout de uso exclusivo para uma instituição escolar. Onde o usuário já cadastrado pelo ADMIN, coloca seu Email e Senha 13 Contando com campos obrigatórios que só deixam clicar no botão ENTRAR se os campos EMAIL e SENHA estiverem preenchidos corretamente: Ao realizar o login corretamente será direcionado para a tela HOME (telas de autoria própria) 14 Selecionando “ NOVA RESERVA” será direcionado para a tela de reserva de equipamentos audiovisuais Onde será possível escolher o equipamento : (telas de autoria própria) 15 A quantidade desejada: A Data da reserva e horário desejado: Ao preencher todas essas informações e clicar em Reservar aparecera um Pop-up com a informação “Reserva efetuada com sucesso” 16 Ao selecionar “DEVOLVER” será direcionado para a tela de Devolução, onde conta com o campo obrigatório “código de reserva”, que ao ser preenchido e selecionado o botão “buscar” mostrará um histórico referente a essa reserva, com data, hora e equipamento reservado, assim que confirmar os dados do histórico e o usuário clicar em “Devolver” aparecerá um Pop-up com a informação “Equipamento devolvido com sucesso” (telas de autoria própria) Rotina de testes O papel do analista de teste é fundamental no desenvolvimento de software. Eles desempenham um papel crucial na garantia da qualidade do produto final. O analista de teste é responsável por identificar e relatar falhas no software, garantindo que ele atenda aos requisitos e expectativas do cliente. Além disso, ajudam a otimizar o tempo e reduzir custos, identificando problemas precocemente no ciclo de desenvolvimento. Sua experiência e habilidades contribuem para a entrega de um software confiável, funcional e livre de defeitos. E para averiguarmos a qualidade do nosso software apresentaremos uma tabela de casos de uso para testes durante todo o desenvolvimento: 17 Tabela 1: LOGIN Nome: Realizar login Ator: Usuário Pré-condição: Acesso ao sistema Fluxo Principal: 1- Abrir a tela principal 2- Inserir email e senha 3- Clicar em entrar 4- Usuário logado Fluxo Secundário: Dados incorretos usuário inapto para realizar login Pós condição: Dados corretos usuário logado com sucesso Tabela 2: Nova Reserva Nome: Reserva de equipamentos Ator: Usuário Pré-condição: Acesso a tela de reservas Fluxo Principal: 1- Abrir a tela de reservas 2- Escolher o equipamento desejado 3- Fornecer data e hora 4- Clicar em reservar 5- O sistema fornece uma imagem com o id de rastreio da reserva e retorna a página inicial Fluxo Secundário: O não preenchimento dos campos obrigatórios não permite realizar uma reserva Pós condição: Preenchimento ok reserva realizada com sucesso 18 Tabela 3: Devolução Nome: Devolver Ator: Usuário Pré-condição: Acesso a tela de equipamentos em seu nome prontos para devolução. Fluxo Principal: 1- Abrir a tela de devolução 2- Selecionar o equipamento que deseja devolver 3- Conferir informações correspondentes a data e hora 4- Informações corretas clicar em devolver 5- Sistema retornará para a tela principal Fluxo Secundário: Caso o equipamento não esteja dentro do prazo de devolução o usuário não consegue concluir. Pós condição: Dados corretos, devolução realizada com sucesso (fonte: autoria própria) Programação Orientada a Objetos I Programação Orientada a Objetos (POO), é amplamente utilizada na maioria dos sistemas atuais e suportada por diversas linguagens de programação. A POO é aplicada desde as fases iniciais de análise, levantamento de requisitos até o projeto do sistema. Isso significa que trabalhar com Orientação a Objetos envolve conceitos que vão além do código, abrangendo a modelagem de: Objetos: Na POO, um objeto é uma instância concreta de uma classe. Ele combina da- dos (conhecidos como atributos) e comportamentos (métodos) relacionados a uma enti- dade específica. Por exemplo, um objeto "Carro" pode ter atributos como cor, modelo e velocidade, juntamente com métodos como acelerar e frear. Classes: Uma classe é um modelo ou blueprint para criar objetos. Ela define os atributos e métodos que os objetos criados a partir dela terão. Classes são a estrutura fundamen- tal da POO, permitindo a reutilização de código e a organização lógica de funcionalida- des relacionadas. No exemplo anterior, "Carro" seria uma classe que define como os objetos do tipo carro devem ser criados e operados. 19 Herança: Herança é um conceito que permite que uma classe (subclasse) herde atribu- tos e métodos de outra classe (superclasse). Isso promove a reutilização de código e a criação de uma hierarquia de classes. A subclasse pode adicionar novos atributos ou métodos e também pode substituir ou estender os métodos da superclasse. Por exem- plo, uma classe "SUV" pode herdar da classe "Carro" e adicionar atributos específicos, como tração nas quatro rodas. Polimorfismo: Polimorfismo é a capacidade de objetos de classes diferentes responde- rem ao mesmo método de maneiras diferentes. Isso permite que um único método tenha comportamentos diferentes com base no tipo do objeto que o invoca. Por exemplo, um método "deslocar" pode ser implementado de forma diferente para diferentes tipos de veículos, como carros, bicicletas e aviões. Todos esses conceitos de modelagem são para representar o sistema de forma eficaz, e nesse projeto não foi diferente como ve- remos abaixo uma demonstração da funcionalidade do Usuário/ Administrador e Usuário: 20 (telas de autoria própria) 21 Viabilidade Econômica e Custo do Projeto Os responsáveis por este projeto foram contratados para conduzi-lo no âmbito do Colégio Vencer Sempre. Considerando a posição inicial da empresa como uma organização em ascensão, mas com recursos financeiros limitados, a obtenção de certificações de qualidade e maturidade representa um desafio devido aos altos custos envolvidos. No entanto, tais certificações são essenciais para estabelecer a confiança da empresa tanto a nível nacional quanto internacional. Adotar metodologias de qualidade reconhecidas internacionalmente, como ISO, CMMI e MPS.BR, tem se mostrado uma estratégia eficaz para empresas iniciantes alavancarem seus negócios. Assim, a empresa optou por implementar o programa MPS.BR, que visa aprimorar a capacidade de desenvolvimento de software, juntamente com práticas de gerenciamento, permitindo uma melhoria da qualidade a um custo acessível e com um prazo médio de implementação de 16 meses. Este projeto de softwarevisa desenvolver uma aplicação que atenda às necessidades do Colégio Vencer Sempre, garantindo qualidade e eficiência. Com um custo financeiro viável de R$19.000,00 por mês ao longo de dois anos, e uma equipe composta por um Scrum Master, cinco programadores (sendo três juniores, um pleno e um sênior), um analista de qualidade e um coordenador de projetos , o objetivo é entregar o software em 80 dias úteis. Os principais atores econômicos envolvidos são os investidores, que financiam o projeto para obter retorno financeiro, e a empresa contratante, que busca melhorar seus serviços por meio da tecnologia. Além disso, a equipe de desenvolvimento representa um papel fundamental, pois é responsável pela criação do produto e pela geração de valor para a empresa e para a economia como um todo. Ao concluir o projeto dentro do prazo e do orçamento planejado, esperamos que a empresa possa ampliar suas operações e contribuir para o crescimento pessoal e profissional de seus colaboradores. . 22 CONCLUSÃO Concluindo, o desenvolvimento do software para o Colégio Vencer Sempre representa uma oportunidade significativa de aprimoramento e modernização dos processos educacionais. Ao investir em tecnologia, a instituição demonstra seu compromisso com a qualidade do ensino e com a experiência dos alunos e professores. O software planejado, com um custo financeiro acessível e uma equipe equipada, tem o potencial de revolucionar a gestão escolar, facilitando tarefas administrativas, melhorando a comunicação entre os membros da comunidade escolar e oferecendo recursos educacionais inovadores. Com o sucesso deste projeto, o Colégio Vencer Sempre poderá se posicionar como uma referência em educação digitalmente integrada, preparando seus alunos para os desafios do mundo contemporâneo e contribuindo para o avanço da educação como um todo. 23 REFERÊNCIAS BIBLIOGRÁFICAS http://www.desenvolvimentoagil.com.br/scrum/ https://medium.com/@vemlavaralouca/metodologia-%C3%A1gil-e-suas-agilidades- 9d8d525947f1 https://blog.cronapp.io/ciclo-de-vida-do-software/ https://www.devmedia.com.br/melhoria-do-processo-de-software-brasileiro/29915 https://www.treinaweb.com.br/blog/ciclo-de-vida-software-por-que-e-importante-saber
Compartilhar