Proposta e Descrição Geral - LPI-AgendaContatos/Progressive GitHub Wiki

Proposta

A ideia inicial do projeto foi influenciada por aplicativos de Agenda de Contatos. Portanto o projeto deve seguir requisitos básicos para que funcione como uma 'versão beta' dessa mesma espécie de aplicações.

Descrição

Como em todos os serviços de agendas, há o objeto 'contato'. Um contato possui, pelo menos, as seguintes informações:

  • Nome
  • Endereço completo
  • E-mail
  • Data de nascimento
  • Lista de telefones (deve ser possível cadastrar um tipo/rótulo para o telefone. Ex: Celular, Comercial, Casa etc)
  • Lista de grupos (Ex: Família, Trabalho, CEFET etc)

Requisitos funcionais

O aplicativo deverá oferecer, pelo menos, as seguintes funcionalidades:

  • CRUD de Contatos
  • CRUD de Tipos de Contatos
  • CRUD de Grupos de Contatos
  • Pesquisa de Contatos (por qualquer característica, como: nome, telefone, email, endereço etc)

Requisitos não-funcionais:

Além dos requisitos citados acima, espera-se que sejam implementados:

  • Interface para PC/Desktop usando Java Swing.
  • Persistência em memória primária (arquivo ou MySQL)
  • Estilo arquitetural MVC (usando model-delegate) ... Para enriquecer o conhecimento.