Try   HackMD

Documentação do Sistema CRUD em Java com Interface Gráfica e Interação entre Telas

1. Introdução

1.1. Tema

Este documento descreve o sistema CRUD (Create, Read, Update, Delete) em Java com interface gráfica para entrada de dados do usuário e acesso ao banco de dados, mantendo o conceito de orientação a objetos, imagem de fundo e troca de tela.

1.2. Objetivo

O objetivo deste sistema é permitir aos usuários realizar operações CRUD em registros armazenados em um banco de dados MySQL usando uma interface gráfica intuitiva. Ele também destina-se a demonstrar boas práticas de desenvolvimento Java, como orientação a objetos e interface gráfica com Spring Boot.

1.3. Escopo

Este sistema incluirá as seguintes funcionalidades:

  • Criar, ler, atualizar e excluir registros em um banco de dados MySQL.
  • Interface gráfica com Spring Boot.
  • Troca de tela para navegação entre as operações.
  • Uso de imagens de fundo para melhorar a experiência do usuário.

2. Requisitos

2.1. Requisitos Funcionais

  • Permitir a criação de novos registros.
  • Permitir a leitura e exibição de registros existentes.
  • Permitir a atualização de registros existentes.
  • Permitir a exclusão de registros existentes.

2.2. Requisitos Não-Funcionais

  • Interface gráfica amigável e intuitiva.
  • Comunicação com um banco de dados MySQL.
  • Utilização do paradigma de orientação a objetos.
  • Imagens de fundo para aprimorar a estética.

3. Arquitetura do Sistema

3.1. Arquitetura Geral

O sistema seguirá uma arquitetura cliente-servidor, onde o cliente é a aplicação Java com interface gráfica e o servidor é o banco de dados MySQL.

3.2. Tecnologias Utilizadas

  • Java para o desenvolvimento da aplicação.
  • MySQL como banco de dados.
  • Spring Boot para a interface gráfica.

4. Modelagem

4.1. Modelo de Dados

O modelo de dados incluirá uma tabela no banco de dados chamada "Registros" com campos como ID, Nome, Sobrenome, Email, etc.

4.2. Diagramas de Classe

Será desenvolvido um diagrama de classe para representar a estrutura de classes do sistema, incluindo classes para a interface gráfica e acesso ao banco de dados.

5. Interface Gráfica

5.1. Telas do Sistema

O sistema terá as seguintes telas:

  • Tela de Listagem de Registros.
  • Tela de Cadastro/Edição de Registros.
  • Tela de Confirmação de Exclusão de Registros.

5.2. Eventos e Interações

Os eventos de botões, cliques e entradas do usuário serão tratados para realizar operações CRUD e navegar entre as telas.

6. Implementação

6.1. Estrutura de Pacotes

O projeto Java será organizado em pacotes para separar as diferentes partes do sistema, como interface e acesso ao banco de dados.

6.2. Código-fonte

Serão desenvolvidas classes Java para cada funcionalidade do sistema, seguindo os princípios da orientação a objetos.

7. Conexão com o Banco de Dados

7.1. Configuração do Banco de Dados

A configuração do banco de dados é uma parte crítica do projeto. Nesta seção, explicaremos como configurar o MySQL, por exemplo, e definir as credenciais de acesso no sistema:

  • Configuração do Banco de Dados: Recomendamos o uso do MySQL como sistema de gerenciamento de banco de dados (DBMS). Você pode fazer o download do MySQL a partir do site oficial (https://dev.mysql.com/downloads/installer/) e seguir as instruções de instalação.

  • Criação do Banco de Dados: Após a instalação, você deve criar um novo banco de dados. Isso pode ser feito usando um cliente MySQL ou executando scripts SQL para definir a estrutura das tabelas.

  • Credenciais de Acesso: É importante criar um usuário com as devidas permissões para acessar e manipular o banco de dados. Anote o nome de usuário e a senha, pois eles serão usados para a conexão com o banco de dados.

7.2. Acesso ao Banco de Dados

Esta seção detalha como o sistema se conecta ao banco de dados para realizar operações CRUD:

  • Conexão Estabelecida: O sistema usará a biblioteca JDBC (Java Database Connectivity) para estabelecer uma conexão com o banco de dados. Na classe ConexaoBancoDeDados, defina os parâmetros de conexão, como a URL do banco de dados, nome de usuário e senha.

  • Operações CRUD: O sistema executará operações CRUD (Create, Read, Update, Delete) no banco de dados. Por exemplo, para criar um novo registro, o sistema usará uma consulta SQL INSERT para adicionar dados à tabela relevante. Certifique-se de que as operações estejam encapsuladas em métodos de forma organizada.

8. Funcionalidades

8.1. Create (Criar)

A funcionalidade "Create" permite aos usuários adicionar novos registros. Isso envolve a coleta de dados inseridos pelo usuário na tela de cadastro e a execução de uma consulta SQL INSERT para armazenar o novo registro no banco de dados.

8.2. Read (Ler)

A funcionalidade "Read" permite aos usuários visualizar registros existentes na tela de listagem. O sistema deve recuperar os dados do banco de dados por meio de uma consulta SQL SELECT e exibi-los na interface gráfica.

8.3. Update (Atualizar)

A funcionalidade "Update" permite aos usuários editar registros existentes. Os dados do registro selecionado são recuperados do banco de dados, permitindo que o usuário faça alterações. Posteriormente, uma consulta SQL UPDATE é usada para atualizar os dados no banco de dados.

8.4. Delete (Excluir)

A funcionalidade "Delete" permite aos usuários excluir registros. O sistema deve solicitar a confirmação do usuário e, em seguida, usar uma consulta SQL DELETE para remover o registro do banco de dados.

9. Testes

Vou descrever um exemplo de como você pode criar e executar testes para um sistema CRUD com interface gráfica, usando Java como linguagem de programação. Suponhamos que você tenha um sistema CRUD para gerenciar informações de contatos, com as operações de criar (Create), ler (Read), atualizar (Update) e excluir (Delete) registros. Vamos criar um caso de teste para cada uma dessas operações:

9.1. Casos de Teste

Caso de Teste 1: Criar Novo Contato
  • Objetivo: Verificar se é possível criar um novo contato por meio da interface gráfica.
  • Passos:
    1. Abra o sistema.
    2. Vá para a tela de criação de contato.
    3. Insira informações válidas, como nome, email e telefone.
    4. Clique no botão "Salvar".
  • Resultado Esperado: O contato deve ser criado com sucesso e visível na lista de contatos.
Caso de Teste 2: Visualizar Contatos
  • Objetivo: Verificar se a lista de contatos é exibida corretamente na interface gráfica.
  • Passos:
    1. Abra o sistema.
    2. Vá para a tela de listagem de contatos.
  • Resultado Esperado: Todos os contatos existentes devem ser exibidos na lista, com informações completas.
Caso de Teste 3: Atualizar Contato
  • Objetivo: Verificar se é possível editar um contato existente por meio da interface gráfica.
  • Passos:
    1. Abra o sistema.
    2. Vá para a tela de listagem de contatos.
    3. Selecione um contato existente.
    4. Edite as informações do contato, como número de telefone.
    5. Clique no botão "Salvar".
  • Resultado Esperado: As informações do contato devem ser atualizadas com sucesso.
Caso de Teste 4: Excluir Contato
  • Objetivo: Verificar se é possível excluir um contato existente por meio da interface gráfica.
  • Passos:
    1. Abra o sistema.
    2. Vá para a tela de listagem de contatos.
    3. Selecione um contato existente.
    4. Clique no botão "Excluir".
  • Resultado Esperado: O contato selecionado deve ser excluído e removido da lista.
Caso de Teste 5: Validação de Entrada
  • Objetivo: Verificar se o sistema realiza a validação de entrada corretamente.
  • Passos:
    1. Abra o sistema.
    2. Vá para a tela de criação de contato.
    3. Tente criar um novo contato sem preencher campos obrigatórios.
    4. Tente criar um novo contato com dados inválidos, como um email inválido.
  • Resultado Esperado: O sistema deve exibir mensagens de erro apropriadas para campos obrigatórios e para dados inválidos.

9.2. Resultados dos Testes

Documente os resultados de cada caso de teste:

  • Caso de Teste 1: Bem-sucedido.
  • Caso de Teste 2: Bem-sucedido.
  • Caso de Teste 3: Bem-sucedido.
  • Caso de Teste 4: Bem-sucedido.
  • Caso de Teste 5: Validação de entrada funciona corretamente.

10. Implantação

A implantação é uma fase crítica no ciclo de vida de um sistema de gerenciamento de contatos. Nesta seção, descreveremos os passos necessários para implantar o sistema em um ambiente de produção, garantindo que ele esteja pronto para uso.

10.1. Manual de Implantação

Antes de começar a implantação, é importante garantir que você tenha acesso ao Manual de Implantação fornecido. Este manual fornecerá um guia detalhado de como configurar o ambiente e implantar o sistema. Certifique-se de seguir todas as instruções do manual para garantir uma implantação bem-sucedida.

10.2. Configuração do Ambiente

Antes de implantar o sistema, você deve configurar o ambiente de produção para atender aos requisitos do sistema. Aqui estão os principais passos para configurar o ambiente:

10.2.1. Requisitos de Hardware

Verifique se o hardware do servidor de produção atende aos requisitos mínimos, como capacidade de processamento, memória RAM e espaço em disco.

10.2.2. Requisitos de Software

  • Garanta que o sistema operacional do servidor seja compatível com o sistema.
  • Certifique-se de ter a versão correta do servidor de aplicação (por exemplo, Apache Tomcat) instalada e configurada.
  • Verifique se o banco de dados (por exemplo, MySQL) está instalado e funcionando corretamente.

10.2.3. Configuração do Banco de Dados

Importe o esquema do banco de dados fornecido no sistema CRUD para o servidor de banco de dados. Isso criará as tabelas necessárias para armazenar os dados de contato.

10.2.4. Implantação da Aplicação

Faça o deploy do arquivo WAR da aplicação (Web Application Archive) no servidor de aplicação.

Certifique-se de que a implantação foi bem-sucedida e que a aplicação está disponível.

10.2.5. Configuração da Conexão com o Banco de Dados

Atualize as configurações de conexão com o banco de dados na aplicação para refletir as informações de conexão corretas, como URL, nome de usuário e senha.

10.3. Testes de Implantação

Antes de disponibilizar o sistema para os usuários finais, é crucial realizar testes de implantação. Isso garante que a aplicação esteja funcionando corretamente no ambiente de produção. Realize os seguintes testes:

  • Verifique se a aplicação pode se conectar com sucesso ao banco de dados.
  • Teste todas as funcionalidades CRUD para garantir que não haja erros de implementação.
  • Avalie o desempenho da aplicação e ajuste as configurações conforme necessário.
  • Garanta que a segurança da aplicação esteja configurada corretamente, incluindo autenticação de usuários e controle de acesso.

10.4. Treinamento de Usuários

Antes de disponibilizar o sistema aos usuários finais, forneça treinamento adequado. Certifique-se de que os usuários saibam como usar as funcionalidades do sistema, como criar, editar e excluir contatos. Prepare recursos de treinamento, como documentos ou tutoriais em vídeo, se necessário.

10.5. Documentação Final

Após a implantação bem-sucedida, atualize a documentação do sistema para refletir as configurações de produção. Isso inclui o Manual do Usuário e o Manual de Implantação. Certifique-se de que todos os documentos estejam atualizados e disponíveis para os usuários.

11. Manual do Usuário

O Sistema de Gerenciamento de Contatos é uma ferramenta poderosa para organizar e manter informações de contatos pessoais ou profissionais. Este manual fornecerá instruções detalhadas sobre como usar as diferentes funcionalidades da interface.

Acesso à Interface

Para acessar a interface gráfica do sistema, siga estas etapas:

  1. Abra seu navegador da web.
  2. Digite o URL do sistema na barra de endereços e pressione Enter.
  3. Você será direcionado para a página de login.
  4. Insira seu nome de usuário e senha nas caixas apropriadas.
  5. Clique no botão "Entrar" para acessar a interface.

O sistema é dividido em várias telas principais:

  • Tela de Listagem de Contatos: Aqui você pode ver todos os contatos existentes e selecionar um contato para visualizar ou editar.

  • Tela de Criação de Contato: Use esta tela para criar um novo contato preenchendo os campos necessários e clicando em "Salvar".

  • Tela de Edição de Contato: Nesta tela, você pode editar as informações de um contato selecionado na tela de listagem.

  • Tela de Confirmação de Exclusão: Esta tela é usada para confirmar a exclusão de um contato. Após a confirmação, o contato será removido permanentemente.

Instruções Passo a Passo

Criar um Novo Contato

  1. Na tela de Listagem de Contatos, clique no botão "Novo Contato" ou equivalente.
  2. Preencha os campos obrigatórios, como nome, email e telefone.
  3. Clique em "Salvar" para criar o novo contato.

Visualizar um Contato

  1. Na tela de Listagem de Contatos, clique no contato que deseja visualizar.
  2. Você será redirecionado para a tela de Detalhes do Contato, onde poderá ver todas as informações do contato.

Atualizar um Contato

  1. Na tela de Listagem de Contatos, clique no contato que deseja atualizar.
  2. Na tela de Detalhes do Contato, clique no botão "Editar" ou equivalente.
  3. Faça as alterações necessárias e clique em "Salvar" para atualizar o contato.

Excluir um Contato

  1. Na tela de Listagem de Contatos, clique no contato que deseja excluir.
  2. Você será redirecionado para a tela de Confirmação de Exclusão.
  3. Clique em "Excluir" para remover o contato permanentemente.

12. Considerações Finais

Nesta seção, resumimos a jornada de desenvolvimento do Sistema de Gerenciamento de Contatos, destacamos pontos-chave e discutimos possíveis direções futuras.

12.1. Conclusões

O Sistema de Gerenciamento de Contatos foi desenvolvido com sucesso e está operacional, fornecendo uma solução eficaz para a organização e manutenção de informações de contatos.
Os recursos de CRUD (Create, Read, Update, Delete) foram implementados de forma eficiente, permitindo aos usuários realizar operações essenciais de gerenciamento de contatos.
A interface gráfica proporcionou uma experiência de usuário amigável, simplificando a interação com o sistema.

12.2. Lições Aprendidas

Ao longo do processo de desenvolvimento, várias lições foram aprendidas:

  • Planejamento sólido: O planejamento adequado antes do desenvolvimento é crucial para evitar atrasos e garantir um desenvolvimento mais suave.
  • Comunicação: A comunicação eficaz entre a dupla de desenvolvimento é essencial para atender às expectativas do usuário.
  • Testes contínuos: A realização de testes regulares ao longo do ciclo de desenvolvimento ajudou a identificar e corrigir problemas de forma oportuna.

12.3. Melhorias e Desenvolvimentos Futuros

Embora o Sistema de Gerenciamento de Contatos esteja funcional, sempre há espaço para melhorias e desenvolvimentos futuros:

  • A adição de recursos avançados, como pesquisa e filtragem avançadas, pode melhorar a experiência do usuário.
  • A implementação de notificações e lembretes pode adicionar funcionalidade útil para os usuários.
  • A melhoria da segurança, incluindo autenticação de dois fatores, pode aumentar a proteção dos dados do usuário.
  • A expansão para dispositivos móveis, como aplicativos para iOS e Android, pode aumentar a acessibilidade.

12.4. Agradecimentos

Gostaríamos de agradecer à nossa orientadora Ítala Freire que contribuiu para o processo de desenvolvimento. Seu apoio foi fundamental para o sucesso deste projeto.

Por: Julia Trindade e Jenifer Santos