0% acharam este documento útil (0 voto)
2 visualizações11 páginas

Roteiro de Extensão para Projetos Java

O documento apresenta um roteiro detalhado para o desenvolvimento de um projeto de extensão, incluindo etapas como definição do grupo de trabalho, diagnóstico, planejamento, desenvolvimento e encerramento do projeto. Ele aborda aspectos técnicos como arquitetura, qualidade do código, automação de testes e integração contínua, além de sugerir possíveis projetos e cronogramas de atuação. O objetivo final é a apresentação dos resultados obtidos em sala de aula.

Enviado por

Alison Garcia
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
2 visualizações11 páginas

Roteiro de Extensão para Projetos Java

O documento apresenta um roteiro detalhado para o desenvolvimento de um projeto de extensão, incluindo etapas como definição do grupo de trabalho, diagnóstico, planejamento, desenvolvimento e encerramento do projeto. Ele aborda aspectos técnicos como arquitetura, qualidade do código, automação de testes e integração contínua, além de sugerir possíveis projetos e cronogramas de atuação. O objetivo final é a apresentação dos resultados obtidos em sala de aula.

Enviado por

Alison Garcia
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd

Roteiro de Extensão

Etapas do desenvolvimento do projeto:

1. Definição do grupo de trabalho e parte interessada envolvida:........................................................1


2. Diagnóstico e teorização do projeto, conforme Seção 1 do modelo de Roteiro de Extensão...........2
Diagnóstico do Projeto Java...............................................................................................................2
Escopo do Projeto:.............................................................................................................................2
Arquitetura do Projeto:.....................................................................................................................2
Qualidade do Código - Débito Técnico/Dívida Técnica......................................................................3
Dependências e Bibliotecas...............................................................................................................3
Automação dos Testes.......................................................................................................................3
Cobertura dos testes.........................................................................................................................4
Segurança - Autenticação..................................................................................................................4
Teorização do Projeto Java................................................................................................................4
Padrões de Design.............................................................................................................................4
Modelagem de Dados........................................................................................................................4
Documentação das APIs....................................................................................................................5
Integração Contínua/Entrega Contínua (CI/CD).................................................................................5
Entrega Etapa 01...................................................................................................................................5
3. Planejamento e desenvolvimento do projeto...................................................................................6
Planejamento do Projeto Acadêmico em Java:.................................................................................6
Definição do Escopo:.........................................................................................................................6
Análise de Requisitos:........................................................................................................................6
Arquitetura do Projeto:.....................................................................................................................6
Tecnologias Utilizadas:......................................................................................................................6
Desenvolvimento Iterativo:...............................................................................................................6
Desenvolvimento do Projeto Acadêmico em Java:............................................................................7
Configuração do Ambiente de Desenvolvimento:.............................................................................7
Estrutura do Projeto:.........................................................................................................................7
Implementação dos Módulos:...........................................................................................................7
Conexão com o Banco de Dados:......................................................................................................7
Implementação da Interface Gráfica ou WEB (opcional):..................................................................7
Testes:...............................................................................................................................................7
Documentação:.................................................................................................................................7
Revisões e Ajustes:............................................................................................................................7
Empacotamento e Distribuição (se necessário):................................................................................8
Entrega Etapa 02...................................................................................................................................8
4. Detalhamento técnico do projeto.....................................................................................................8
5. Encerramento do Projeto..................................................................................................................8
Entrega Etapa 03...................................................................................................................................9
6. Apresentação dos Projetos................................................................................................................9
Entrega Etapa 04...................................................................................................................................9

1. Definição do grupo de trabalho e parte interessada


envolvida:
1.1. Em sala de aula, montar o grupo de trabalho.

Alunos que irão compor a equipe. De 2 a 3 alunos.

1.2. Identificar as partes interessadas: fazer contato com a comunidade e verificar o interesse na

participação do projeto. Nesse contato pode ser necessária uma ou mais visitas ao local pretendido

Seu projeto poderá ser escolhido em acordo com a expectativa do aluno.

Poderá aplicar os exercícios de sala de aula em ambientes de empresas que sejam parceiras.

1.3. Realizar o diagnóstico das demandas necessárias e definir o escopo e a priorização

Descrever apenas o problema que pretende resolver com seu software Java para o problema da
empresa escolhida.

Sugestões de Projetos:

Controle de Estoque

Gestão Bancária com o Laboratório 1-8

Controle Acadêmico

Jogo do Robocode

Jogos infantis – Forca, Pacman,

Gestão do ENADE

Votação 2024

Jogo do bingo
Loteria esportiva

Leilão

1.4. Definição de cronograma de atuação/ visitas às partes interessadas

Gestão do tempo da equipe do projeto para atender as entregas aqui apresentadas.

Elaborar um cronograma entre os membros da equipe para realizar as entregas entre os


meses de Março e 20/Junho. Distribuir o trabalho ao longo do período para garantir as entregas
conforme definidas em verde.
2. Diagnóstico e teorização do projeto, conforme Seção
1 do modelo de Roteiro de Extensão.

Vejamos como fazer o item 02 deste roteiro:


Diagnóstico do Projeto Java
Escopo do Projeto:

Descreva o propósito e os objetivos do projeto. Pelo momento ainda em alto nível.

Identifique os requisitos funcionais e não funcionais. Pelo momento ainda em alto nível.

Utilizar a técnica SMART:

Esse conceito é um acrônimo que prescreve que as metas devem ser específicas (S),

mensuráveis (M), alcançáveis (A), relevantes (R) e temporizáveis (T):

Arquitetura do Projeto:

Avalie a arquitetura geral do projeto.

Verifique se há uma estrutura clara de camadas (por exemplo, apresentação, lógica de negócios,
persistência de dados).

Dar foco no Modelo Arquitetural MVC.

O MVC sugere uma maneira para você pensar na divisão de responsabilidades,


principalmente dentro de um software WEB. O princípio básico do MVC é a divisão da aplicação em
três camadas: a camada de interação do usuário (view), a camada de manipulação dos dados
(model) e a camada de controle (controller).

Como funciona a arquitetura MVC? Quando você acessa um site, a arquitetura MVC entra
em ação. O Controller se comunica com a View e com o Model para gerar a requisição. Mas o Model
nunca se comunica com a View, cabendo a função de renderização e entrega ao Controller.

MVC - [Link]

[Link]
Qualidade do Código - Débito Técnico/Dívida Técnica

Realize uma análise estática do código-fonte para identificar possíveis problemas.

Avalie a conformidade com boas práticas de codificação e padrões de codificação.

Descrever aqui as alterações aplicadas em seu projeto para que o débito técnico fique menor de
10%. Explorar a ferramenta Sonarqube como referência para avaliar a qualidade de seu software.

[Link]

Dependências e Bibliotecas

Liste e avalie as dependências externas do projeto.

As bibliotecas serão necessárias durante o projeto e devem ficar no arquivo [Link] quando
utilizarmos Java Springboot.

Automação dos Testes

Avalie as ferramentas para automatizar seus testes.

Configurando o Intellij para rodar os projetos de Automação de Testes com Java | by Robson Agapito
Correa | Medium

[Link]
%C3%A7%C3%A3o-de-testes-com-java-12816d61610d

Cobertura dos testes


Avalie a cobertura de teste para garantir que os testes automat5izados avalie todo os percursos de
seus programas. Identifique áreas do código que não estão cobertas por testes. Automação de
Testes com Java

Cobertura de Testes -

[Link]

Segurança - Autenticação
Autenticação Basic

Autenticação com JWT ...

Avalie as práticas de segurança implementadas no código.

Ferramentas utilizadas em ambiente corporativo


[Link]

API login and JWT token generation using Keycloak

[Link]
generation-using-keycloak

[Link]

Teorização do Projeto Java


Padrões de Design
Padrões de Projeto - Gangs of four - [Link]

Identifique e discuta os padrões de design utilizados no projeto.

Modelagem de Dados
MER - Modelo Entidade Relacionamento – Utilizar esta ferramenta para desenhar seu MER -
[Link]

Analise como os dados são modelados e persistidos.

Verifique se o modelo de dados está alinhado com os requisitos do negócio.

Documentação das APIs


Para APIs - [Link]

Integração Contínua/Entrega Contínua (CI/CD)


Jenkins - [Link]

Avalie se há integração contínua e entrega contínua implementadas.

Sugira melhorias na automação do processo de construção e implantação.

Realizar uma pesquisa sobre o assubnto9 e descrever nesta seção.

Entrega Etapa 01
Data da Entrega: 20/Março.
Subir apresentação no Ambiente Virtual e este documento Word.
Realizar a apresentação em sala de aula.
3. Planejamento e desenvolvimento do projeto

Vamos considerar que o projeto seja um sistema de gerenciamento de biblioteca simples.

Planejamento do Projeto Acadêmico em Java:


Definição do Escopo:

Objetivo: Desenvolver um sistema de gerenciamento de biblioteca que permita aos usuários realizar
operações como adicionar livros, emprestar livros, devolver livros, etc.

Requisitos Funcionais: Liste as principais funcionalidades que o sistema deve ter.

Requisitos Não Funcionais: Considere aspectos como desempenho, segurança e usabilidade.

Pelo momento buscar um nível de refinamento maior

Análise de Requisitos:

Identificação de Atores: Quem são os usuários do sistema? (ex: bibliotecários, alunos)

Casos de Uso: Crie diagramas de casos de uso para representar as interações entre os atores e o
sistema.

Arquitetura do Projeto:

Escolha da Arquitetura: Decida sobre a arquitetura geral do sistema (ex: arquitetura em camadas,
MVC).

Modelagem de Dados: Projete o modelo de dados para representar informações sobre livros,
usuários, empréstimos, etc.

Tecnologias Utilizadas:

Linguagem de Programação: Java e Java SpringBoot

Banco de Dados: Escolha um banco de dados relacional (ex: MySQL, PostgreSQL) ou não relacional
(ex: MongoDB) para armazenar dados.

Framework (opcional): Se necessário, escolha um framework adequado para o desenvolvimento (ex:


Spring).

Desenvolvimento Iterativo:
Divisão do Projeto em Módulos: Identifique os principais módulos do sistema (ex: módulo de livros,
módulo de usuários).

Desenvolvimento Incremental: Implemente funcionalidades em incrementos, testando e validando


cada etapa.

Desenvolvimento do Projeto Acadêmico em Java:


Configuração do Ambiente de Desenvolvimento:

Instale o JDK (Java Development Kit) e a IDE (Integrated Development Environment) de sua escolha
(ex: Eclipse, IntelliJ).

Estrutura do Projeto:

Organize o projeto em uma estrutura clara de pacotes.

Separe as camadas do projeto (apresentação, lógica de negócios, persistência).

Implementação dos Módulos:

Comece implementando os módulos básicos, como a gestão de livros e usuários.

Implemente as operações CRUD (Create, Read, Update, Delete) para cada entidade.

Conexão com o Banco de Dados:

Configure a conexão com o banco de dados e implemente as operações de persistência.

Implementação da Interface Gráfica ou WEB (opcional):

Desenvolva a interface gráfica do usuário (GUI), se o projeto exigir uma aplicação desktop.

Testes:

Realize testes unitários para cada componente.

Execute testes de integração para garantir o funcionamento correto das diferentes partes do
sistema.

Documentação:

Documente o código, explicando a lógica por trás das implementações.

Crie manuais de usuário e desenvolvedor.

Revisões e Ajustes:

Realize revisões de código e ajustes conforme necessário.


Considere feedbacks de usuários ou colegas para melhorar o sistema.

Empacotamento e Distribuição (se necessário):

Empacote o sistema para distribuição, se for uma aplicação standalone.

Considere a possibilidade de implantar em um ambiente de produção.

Entrega Etapa 02
Data da Entrega: 03/Abril.
Subir apresentação no Ambiente Virtual e realizar a apresentação
em sala de aula.

4. Detalhamento técnico do projeto

4.1. Documentar um projeto de sistema de controle de clientes e produtos/serviços, que esteja


alinhado aos objetivos e objetivos sociocomunitários deste plano de ensino

4.1.1. Definir o escopo do Projeto

4.1.2. Escrever os Requisitos Funcionais do sistema

4.1.3. Modelar as classes do sistema

4.1.4. Contato com a parte interessada para o processo de validação da proposta

Pelo momento buscar o nível mais detalhado possível.

4.2. Desenvolver o sistema de controle de clientes e produtos/serviços

4.2.1. Desenvolver as classes descritas

4.2.2. Criar as interfaces do Sistema

4.3. Testar e implantar o sistema

4.3.1. Realizar testes de unidade nas classes do sistema

4.3.2. Realizar o teste de integração com todas as partes do sistema

4.3.3. Implantar o sistema na instituição

4.3.4. Treinar o usuário responsável


5. Encerramento do Projeto
Conforme Seção 3 do modelo de Roteiro de Extensão, incluindo Relato coletivo do grupo, avaliação
de reação da parte interessada e relato de experiência individual de cada aluno do grupo.

Entrega Etapa 03
Data da Entrega: Junho.
Subir apresentação no Ambiente Virtual e realizar a apresentação
em sala de aula.

6. Apresentação dos Projetos


Nesta etapa, cada grupo deve apresentar o projeto e os resultados

obtidos em cada trabalho. Para garantir a participação de todos os alunos no grupo, o docente pode

definir um plano de ação, combinado anteriormente com a turma. O docente deve avaliar a entrega

coletiva, a entrega individual e a avaliação de reação da parte interessada, presentes no Roteiro de

Extensão, quanto à eficiência e eficácia do atingimento dos objetivos do projeto.

Entrega Etapa 04
Data da Entrega: Junho.
Subir apresentação no Ambiente Virtual e realizar a apresentação
em sala de aula.

Você também pode gostar