---
title: "Plataforma Colaborativa de Gerenciamento de Projetos"
description: "Aplicacao web full-stack para gerenciamento de projetos em equipe com autenticacao JWT, controle de acesso por funcoes, dashboards em tempo real e pipeline CI/CD completo - 30.555 linhas de codigo, 12 user stories, 7 tabelas no banco."
locale: "pt"
canonical: "https://portfolio.josedacosta.info/pt/realizacoes/plateforme-gestion-projets-collaboratif"
source: "https://portfolio.josedacosta.info/pt/realizacoes/plateforme-gestion-projets-collaboratif.md"
html_source: "https://portfolio.josedacosta.info/pt/realizacoes/plateforme-gestion-projets-collaboratif"
author: "José DA COSTA"
date: "2025"
type: "achievement"
slug: "plateforme-gestion-projets-collaboratif"
tags: ["Java 17", "Spring Boot 3.4", "Angular 20", "TypeScript 5.9", "PostgreSQL 15", "Docker", "GitHub Actions", "JWT", "Spring Security", "Swagger/OpenAPI"]
generated_at: "2026-04-23T15:47:48.365Z"
---

# Plataforma Colaborativa de Gerenciamento de Projetos

Aplicacao web full-stack para gerenciamento de projetos em equipe com autenticacao JWT, controle de acesso por funcoes, dashboards em tempo real e pipeline CI/CD completo - 30.555 linhas de codigo, 12 user stories, 7 tabelas no banco.

**Date:** Setembro 2025  
**Duration:** ~2 semanas  
**Role:** Lider de Projeto & Diretor Tecnico  
**Technologies:** Java 17, Spring Boot 3.4, Angular 20, TypeScript 5.9, PostgreSQL 15, Docker, GitHub Actions, JWT, Spring Security, Swagger/OpenAPI

### Key Metrics

- Linhas de Codigo: **-** - Java, TypeScript, HTML, SCSS, SQL
- User Stories: **-** - Todas implementadas
- Endpoints API: **-** - Endpoints REST (CRUD)
- Tabelas no Banco: **-** - PostgreSQL com triggers e indices

## Apresentacao

_Definicao e escopo do projeto_

### Domain

Gerenciamento de projetos, colaboracao em equipe - comparavel a ferramentas como Jira, Trello ou Asana, adaptado a um contexto profissional e educacional.

### Target Users

Equipes de desenvolvimento (B2B), gerentes de projeto e Product Owners para acompanhamento, observadores (clientes, stakeholders) em modo somente leitura.

**Content:** A **Plataforma Colaborativa de Gerenciamento de Projetos** e uma aplicacao web full-stack projetada para planejamento, acompanhamento e colaboracao de equipes em projetos. A plataforma permite criar projetos, convidar membros com funcoes diferenciadas, gerenciar tarefas com prioridades e status, e monitorar o progresso por meio de dashboards.

Desenvolvida como **estudo de caso para o Bloco 3** do titulo RNCP Nivel 7 "Expert em Engenharia de Software" do **Grupo ESIEA INTECH**, o projeto cobre tres competencias principais: Desenvolvimento (C.10), Automacao (C.12) e Industrializacao (C.13).

A aplicacao implementa um **sistema de autenticacao completo** com tokens JWT, um **modelo de permissoes por funcao** (Administrador, Membro, Observador), **notificacoes por email** via MailHog, e um **audit trail completo** rastreando cada modificacao nas tarefas por meio de triggers no banco de dados.

**Domain:** Dominio

**Target Users:** Usuarios Alvo

**Functional Scope:** Escopo Funcional

**Scope Auth:** Autenticacao JWT (registro, login)

**Scope Projects:** Gerenciamento de Projetos (CRUD, status)

**Scope Members:** Convite de Membros por Email (tokens)

**Scope Roles:** Permissoes por Funcao (Admin, Membro, Observador)

**Scope Tasks:** Gerenciamento de Tarefas (prioridade, status, atribuicao)

**Scope Dashboard:** Dashboard com Visoes por Status

**Scope Notifications:** Notificacoes por Email na Atribuicao

**Scope Audit:** Audit Trail Completo (historico de tarefas)

**Scope Search:** Busca Global Multi-Entidade

## Objetivos, Contexto, Desafios e Riscos

_Visao estrategica e restricoes_

### Context

O projeto foi desenvolvido no ambito da certificacao RNCP Nivel 7, com **tecnologias impostas**: Angular (frontend), Spring Boot + Java (backend), PostgreSQL ou MySQL (banco), Docker, Git e CI/CD.

A abordagem recomendada pelo curso foi **desenvolvimento por funcionalidade** (feature-driven), construindo cada feature de ponta a ponta (front + back). O projeto segue um cenario ficticio onde o desenvolvedor trabalha na **Code Solutions**, uma empresa de desenvolvimento de software. O CEO (John D.) atribui o projeto PMT, com user stories fornecidas por Nicolas (Product Owner) e diretrizes tecnicas por Mariana (Tech Lead).

### Stake Validation

Validacao das competencias C.10, C.12 e C.13 do bloco de certificacao

### Stake Full Stack

Demonstracao de dominio completo, do design do banco ao deploy no Docker Hub

### Stake Quality

Cobertura de testes, arquitetura em camadas, documentacao API (Swagger)

- Desenvolver uma aplicacao funcional implementando as 12 user stories definidas na especificacao
- Alcancar cobertura de testes >= 60% em instrucoes e branches, frontend e backend
- Dockerizar a aplicacao completa (frontend, backend, banco de dados)
- Configurar um pipeline CI/CD automatizando testes e deploy de imagens Docker no Docker Hub
- Documentar o processo de deploy em um README completo

**Objectives:** Objetivos

**Context:** Contexto

**Stakes:** Desafios

**Stake Validation:** Validacao de Competencias

**Stake Full Stack:** Dominio Full-Stack

**Stake Quality:** Qualidade de Software

**Risks:** Riscos Identificados

**Risk1 Title:** Integracao Angular + Spring Boot

**Risk1 Desc:** Probabilidade media, impacto alto. Mitigado por arquitetura em camadas, DTOs e configuracao CORS.

**Risk2 Title:** Cobertura de Testes Insuficiente

**Risk2 Desc:** Probabilidade media, impacto alto. Mitigado por JaCoCo (backend) e Karma/Jest (frontend) com limiares configurados.

**Risk3 Title:** Configuracao Docker Complexa

**Risk3 Desc:** Probabilidade baixa, impacto medio. Mitigado por Docker Compose com healthchecks e multi-stage builds.

## As Etapas - O que Fiz

_Fases cronologicas e contribuicoes pessoais_

- Fase 1 - Design
- Fase 2 - Desenvolvimento
- Fase 3 - Testes
- Fase 4 - Industrializacao

**Phase1 Period:** 12-21 set. 2025

**Phase2 Period:** 15-24 set. 2025

**Phase3 Period:** 20-24 set. 2025

**Phase4 Period:** 22-24 set. 2025

## Os Atores - As Interacoes

_Estrutura da equipe e dinamica de colaboracao_

### Role Jose

Lider de Projeto & Diretor Tecnico - Especificacoes, decisoes arquiteturais, design UI/UX, garantia de qualidade, testes manuais

### Role A I

Ferramenta de Desenvolvimento - Geracao de codigo, testes, configuracao DevOps, documentacao, correcoes de bugs

### Role P O

Product Owner - Fornece as 12 user stories (cenario do curso)

### Role T L

Tech Lead - Fornece as diretrizes tecnicas (cenario do curso)

**Content:** O projeto foi realizado por **José DA COSTA** como lider de projeto e diretor tecnico, com a assistencia do **Claude Code** (IA da Anthropic) como ferramenta de desenvolvimento.

O desenvolvimento seguiu uma abordagem iterativa de **prompt-driven development** com aproximadamente 220 ciclos de instrucao-geracao-validacao-correcao. José forneceu as especificacoes, decisoes arquiteturais, escolhas de UI/UX, e realizou a garantia de qualidade por meio de testes manuais no navegador. O Claude Code cuidou da geracao de codigo, escrita de testes, configuracao DevOps e documentacao.

O arquivo `PROMPTS.md` (3.516 linhas, ~220 instrucoes distintas) registra o historico completo desta colaboracao, cobrindo todas as fases do design ao deploy.

**Team:** Composicao da Equipe

**Role Jose:** José DA COSTA

**Role A I:** Claude Code (IA)

**Role P O:** Nicolas (ficticio)

**Role T L:** Mariana (ficticia)

## Os Resultados

_Resultados mensuraveis e valor entregue_

### For Me

Este projeto reforcou minhas habilidades de desenvolvimento full-stack na stack Java/Angular. Foi minha primeira experiencia combinando Spring Security com JWT em um ambiente proximo da producao, e a implementacao de triggers no banco para audit trail automatico e um pattern que agora aplico em outros projetos.

A abordagem de prompt-driven development com ~220 iteracoes me ensinou a formular especificacoes tecnicas precisas e validar sistematicamente codigo gerado por IA - um workflow que aumentou significativamente minha produtividade nos projetos seguintes.

### For Company

O projeto demonstra dominio completo do ciclo de vida do software, do design do banco ao deploy no Docker Hub. Os dados de seed realistas (20 usuarios, 28 projetos, 120+ tarefas cobrindo todos os status e prioridades) proporcionam uma demonstracao ao vivo convincente.

A documentacao completa (README, 12 relatorios de conformidade por user story, Swagger auto-gerado, Makefile com 25+ comandos) estabelece um padrao profissional para a qualidade dos entregaveis.

- Modo escuro com persistencia localStorage
- Busca global multi-entidade
- Painel de administracao (usuarios, configuracoes)
- Gerenciamento de perfil do usuario
- Relatorios e visoes analiticas
- Dialog de confirmacao reutilizavel
- Multiplos perfis Spring (dev, local, docker, prod)

**All Completed:** Todas as 12 user stories implementadas

**For Me:** Para Mim

**For Company:** Para a Organizacao

## O Dia Seguinte do Projeto

_Evolucao pos-entrega e status atual_

**Content:** **Logo apos a entrega**, o projeto foi submetido como estudo de caso para o Bloco 3 da certificacao RNCP Nivel 7. O entregavel completo inclui codigo-fonte, imagens Docker no Docker Hub, 12 relatorios de conformidade detalhados e documentacao abrangente.

**Status atual**: O projeto esta arquivado como estudo de caso concluido. O codigo-fonte permanece disponivel no GitHub, e as imagens Docker ainda podem ser baixadas do Docker Hub. O dominio de producao (`pmt.codesolutions.com`) nunca foi configurado pois fazia parte do cenario ficticio.

**Impacto duradouro**: Varios patterns arquiteturais deste projeto foram reutilizados em trabalhos posteriores - particularmente a abordagem por triggers para audit trail, o fluxo de autenticacao JWT e a estrategia de build Docker multi-stage. O pattern de Makefile com 25+ comandos organizados tornou-se um modelo para projetos subsequentes.

## Minha Reflexao Critica

_Retrospectiva honesta e licoes aprendidas_

- Completude funcional: todas as 12 user stories integralmente implementadas, mais 7 funcionalidades bonus
- Arquitetura solida: separacao clara de responsabilidades (Controller/Service/Repository), tratamento centralizado de excecoes, interceptors HTTP
- Banco de dados bem projetado: audit trail automatico via triggers, indices parciais para performance, constraints CHECK para integridade
- Industrializacao completa: Docker Compose dev e prod, multi-stage builds, Makefile completo, pipeline CI/CD
- Dados de seed realistas: 20 usuarios, 28 projetos com todos os status, 120+ tarefas - demonstracao convincente
- Historico Git minimalista: apenas 3 commits, todos no mesmo dia. Um historico mais granular com feature branches e commits atomicos demonstraria melhor o dominio de Git.
- Testes E2E nao implementados: o pipeline CI/CD preve testes Playwright, mas estao desativados com comandos echo de substituicao.
- Checks de cobertura desativados na CI: os limiares JaCoCo e Karma existem na configuracao mas sao ignorados no pipeline.
- Sem linting configurado: o script lint do frontend retorna um placeholder. Sem ESLint nem Prettier.
- Deploy em producao nao operacional: o job de deploy esta desativado. Nenhuma hospedagem real configurada.
- Adotar uma estrategia Git madura com feature branches, PRs e conventional commits para demonstrar melhor a competencia C.12
- Aplicar TDD para garantir naturalmente a cobertura e demonstrar uma abordagem mais rigorosa
- Fazer deploy em uma plataforma gratuita (Railway, Fly.io, Render) para tornar a competencia C.13 mais convincente
- Adicionar monitoring e observabilidade (Sentry ou similar) para reforcar o aspecto production-ready
- A industrializacao e um investimento inicial que compensa: o tempo gasto com Docker, Makefile e CI/CD e rapidamente recuperado em confiabilidade e reprodutibilidade.
- Triggers SQL para audit trail sao poderosos: a auditoria automatica via triggers PostgreSQL e uma abordagem elegante independente do codigo da aplicacao.
- Arquitetura em camadas facilita os testes: a separacao limpa Controller/Service/Repository permite testar cada camada independentemente.
- Dados de seed realistas sao essenciais: dados de demonstracao ricos e variados tornam a apresentacao de um projeto significativamente mais convincente.
