O projeto final da disciplina tem como objetivo colocar em prática e amadurecer as tecnologias server side vistas na disciplina.
Desse modo, o desenvolvimento deve consistir com o uso da linguagem PHP (com ou sem o uso de frameworks), banco de dados e servidor local. Além disso, as tecnologias front side também podem ser usadas.
Para isso, você deverá desenvolver um sistema com interface web e que tenha acesso a banco de dados.
O sistema a ser desenvolvido está aberto, desde que atinja os seguintes requisitos:
- Conexão ao banco de dados: O sistema deve ser capaz de se conectar ao banco de dados e executar operações como inserção, exclusão, atualização e consulta de dados.
- Interface web: O sistema deve ter uma interface web amigável e intuitiva que permita ao usuário interagir facilmente com o sistema.
- Páginas dinâmicas: As páginas do sistema devem ser dinâmicas e capazes de exibir informações diferentes dependendo das entradas do usuário ou do conteúdo do banco de dados.
- Autenticação e autorização: O sistema deve incluir recursos de autenticação e autorização para garantir que apenas usuários autorizados tenham acesso às informações do sistema.
- Gerenciamento de usuário: O sistema deve permitir o gerenciamento do usuário principal, com a atualização de sua conta.
- Segurança: O sistema deve ser projetado para garantir a segurança dos dados do usuário, incluindo a proteção contra ataques maliciosos, como injeção de SQL.
- Formulários de entrada de dados: O sistema deve incluir formulários de entrada de dados que permitam ao usuário inserir informações no banco de dados.
Extras:
- Relatórios e visualizações de dados: O sistema deve ser capaz de gerar relatórios e visualizações de dados que permitam ao usuário analisar e entender os dados armazenados no banco de dados.
- Testes e depuração: Os alunos devem testar exaustivamente o sistema e implementar procedimentos de depuração para garantir que o sistema seja livre de erros e bugs.
- Documentação: Os alunos devem fornecer documentação clara e completa do sistema, incluindo manuais de usuário e de desenvolvedor, bem como documentação do código-fonte e do banco de dados.
Exemplos de sistemas que podem ser desenvolvidos:
- Sistem de gerenciamento de conteúdo do site do professor: Fazer com que o site do professor desenvolvido anteriormente tenha o seu material adicionado via um sistema server side com banco de dados.
- Sistema de Gerenciamento de Produtos: O sistema pode permitir que o usuário admin cadastre, atualize e remova produtos, além de gerenciar o estoque de produtos, vendas e relatórios.
- Sistema de Gerenciamento de Escolas: O sistema pode permitir que o usuário admin gerencie escolas, incluindo a matrícula de alunos, controle de notas, registro de frequência, geração de boletins e relatórios de desempenho.
- Sistema de Gerenciamento de Time de Futebol: O sistema pode permitir que o usuário gerencie times de futebol, incluindo o registro de jogadores, a definição de táticas e formações, a atualização dos resultados dos jogos e a geração de relatórios de desempenho.
- Sistema de Gerenciamento e geração de protocolos: O sistema permite que o usuário admin gere protocolos de documentos, onde cada protocolo está relacionado um documento. O sistema deve permitir inclusive a edição e remoção dos protocolos e documentos finculados a esse. Deve apresentar a listagem dos protocolos criados.
Outros sistemas podem ser desenvolvidos, porém, verifique com o professor a sua viabilidade.
Documentação a ser entregue:
- Código fonte.
- Documento de ajuda para o usuário, com telas e principais funcionalidades.
Extra (se for individual, se for em dupla é obrigatório):
- Modelagem do banco de dados com o DER, tabelas, normalização, etc.