IFCD0210 Product Backlog

ifcd0210
backlog

Backlog course

Backlog course

Product Backlog by Month

December 2025

Backlog course December 2024 table
Sprint Day Date Topics Details Topics
01 01 01/12/25 - Course Presentation
- Course Methodology
- Architecture:
(1) DataBase: SQL, noSQL, cloud, Redis
(2) Server: Spring Boot
(3) APIs: REST, webSocket, graphQl, etc..
(4) FrontEnd: React
(5) DevOps: Git, GitHub, Software LifeCycle Development, etc
(6) Agile: SCRUM
(7) Mindset
(8) Architecture
(9) AI: Spring Deep4J Price predictor
(10) Linux: bash

- SetUp tools: software, accounts, hardware, OS and apps
- albertprofe.dev
- Software LifeCycle Development
02 02/12/25 - Mutable (Java) vs. Immutable (React/Git)
- Apartment Predictor: data (.csv), create project, Apartment class

- What is a class, an object and how to create it (Java)
- 3 major operators: . invoke, = assign and new create object
- Java classes: have/do - be/have

- Spring Boot: Maven/pom.xml (dependencies) & Project-structure (root, entry-point, main)

- DevOps: doc, sandbox, git
- ApartmentPredictor: 1206a3b0

- Create Project
- Create Project TH-H2
- Java Class
- Sprint Init

- Housing Prices Dataset

- Gist: createrepo
03 03/12/25 - Agile: cone uncertainty

- ApartmentPredictor:
(1) Test Apartment and Post
(2)++ Refactor Post to Review
(3) Create Owner
(4) UML: inherence & composition

- We have 3 Root: project management, Spring Boot, /scr

- Git: commit, push, sync, clone, branch, commit , push, pull request

++ How will we code? Mooc, Analysis, Pseudo, PRA, Screen
- ApartmentPredictor: a068e5ac
- ApartmentPredictor: c23a462b

- Cone of uncertainty
- User story


04 04/12/25 - ApartmentPredictor:
(0) Project structure: pom.xml & Maven dependencies
(1) Test JUnit Apartment and Review
(2) Service: CRUD operations
(3) Create Reviewer

(4) UML: inherence & composition

- Git:
(1) Intro: time, space and role/user
(2) master/branch, local/remote, HEAD/head
(3) gh: gh auth login

++ Mermaid Diagrams
++ What is planning? Matching mental energies
++ MVC: intro
++ What is service, what is repository, what is test, what is db, what is controller
- Git
- Project JavaSE: Commit & push
- Gist: cheatsheet
- Login and logout to GitHub.com from CLI gh on linux
- gh repo create
- gh auth login


05 05/12/25 - ApartmentPredictor:
(1) Test Apartment and Review
(2) Service: CRUD operations
(3) Create Reviewer
(4) UML: inherence & composition
(5) Spring Boot JPA and H2
(6) Application.properties

(7) Update docs

- MC: Just Model and Controller
- Retrospective

++ Keywords categories to learn: Agile (15), devOps (15), Architecture (15), UML (15), Code (15)
++ List of fundamental vocabulary (200 words)
++ Spring Boot as a Restaurant for 5yo
++ MVC: scheme
++ Coding cycle: Agile > devOps > Architecture > UML > code
- ApartmentPredictor: 6cdff1297c

- Model
- View
- Controller

- Spring Boot for 5yo as Restaurant example
- Spring Boot OnProduction Fundamental Concepts

02 06 09/12/25 - Planning Sprint#02
++ Why is so important to plan? Retrospective

- ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Create Reviewer first, why?
(4) UML: Composition
(5) Spring Boot JPA and H2
(6) Application.properties

- JUnit:
(1) asserts


- DDD, Domain-driven design
(1) coupling
(2) Project structure

++ Homework:
(1) Monotith vs Microservices
(2) Defining metrics for learning
- ApartmentPredictor: 6cdff1297c
- ApartmentPredictor: 04ff349
- ApartmentPredictor: 082af759

- DDD & coupling
- H2: install and using
- Model
- View
- Controller


- Inherence
- JUnit


- JPA Core concepts
07 10/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Create Reviewer first, then Review and then, Apartment
(4) UML: Composition
(5) Spring Boot JPA and H2
(6) Application.properties
(7) Unidirectional / Bidirectional

- Populate DB: ImportCSVtoH2
- JUnit:
(1) asserts
(2) annotations: @Test

++ Approaches to test data: syndetic data, faker java, import .csv, data.sql, using native sql, json, Ai, etc…
++ Kind of problems: simple, complicated, complex, chaos
++ What are the impediment to have nice class notes? Know-how, habit, dispersion
- ApartmentPredictor: 84aa558

- JPA
- JPA Relationships

- Populate: ImportCSVtoH2

H2 data types
- Navigating organizational disruption and complexity
08 11/12/25 - ApartmentPredictor:
(1) Test Owner and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Create Reviewer / Òwner
(4) UML: Inherence
(5) Spring Boot JPA and H2
(6) Application.properties
(7) Person & Owner, Reviewer
(8) Unidirectional / Bidirectional
(9) @OneToMany / @ManyToOne

- Git/gh: undoing changes

++ Top-ten web app: vocabulary
++ Mindmap: how to create knowledge nodes
++ DataBase or data-store: how ids have evolved
- ApartmentPredictor: 06c83ded
- JPA_Relationships_Guide
- Annotations
- Web App Java 1994-2024

- Git: undoing changes
- Choosing the Right DynamoDB Partition Key
09 12/12/25 - ApartmentPredictor:
(1) Test Owner and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Create Reviewer / Òwner
(4) UML: Inherence
(5) Spring Boot JPA and H2
(6) Application.properties
(7) Interface: why is so relevant?

++ Java SE scope vs Spring Boot DI & @Autowired
++ Printing Apartments utility, different approaches: static context, @Autowired, genertic ? wildcard

- Retrospective
- ApartmentPredictor: 4338deb

- Interface
- JPA Inherence

- JPA DI
- JPA: mappings
- JPA relationshps
- JPA vendors

- Java SE scope
- Spring Boot: DI
03 07 15/12/25 - Planning Sprint#03
- Matching energies: high energy

- ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) Inherence
(7) House and Duplex

- Java SE: Mindmap
- JUnit:
(1) asserts
(2) annotations: @Test

- Homework:
(1) Monolith vs Microservices
(2) Defining metrics for learning
(3) Top-ten web app: vocabulary
(4) Spring Ecosystem as a Restaurant business
- ApartmentPredictor: 31ff8f1

- DDD & coupling
- Inherence
- JUnit


- JPA Core concepts
- SpringAsRestaurantBusiness-5yo
08 16/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) Inherence
(7) House and Duplex

- Lab#01: Java SE Inheritance

- Inherence keywords: super, extends, casting, override, abstract, Polymorphism
- ApartmentPredictor: 3d1e160

- Lab#01: Java SE Inheritance

- Interface
- JPA Inherence

09 17/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) fork and clone

- Git/gh: undoing changes & clone/fork
- Git 4D: time, space, direction, HEAD/head
- git:$ git log --branches --graph
- Authomate Sync to Local
- Create local and remote repo from everywhere
- Git commands
- Git: undoing changes
- Git
10 18/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2


++ Git flows:
(1) One gh account: branches policy (dev, hotfix, release, feature, etc..)
(2) Several gh accounts: Production, Development
(3) Clone-&-push
(4) Fork-&-sync
- ApartmentPredictor: cffb5f5aeb
- Git & gh flows



11 19/12/25 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) interface:
(7) abstract Person > Owner, Reviewer
(8) interface Notifiable, Registrable > Owner, Reviewer

++ Git: painters lab:
(1) Miro, Veermer, Picasso, Pollock
(2) pull request (4 options): from master, from feature, both, edit
- ApartmentPredictor: e87bf6141



-Painters.txt

- Person interfaces

January 2026

Backlog course January 2025 table
Sprint Day Date Topics Details Topics
04 12 07/01/26 - Planning Sprint#04:
(1) How to plan a project? FullStack, Full-Arcitecture, DataModel (JSON/UML), MockUp, feature, BusinessLosgic, pipeline devops
(2) Vaadin, Nextjs, Full Architecture

- ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) API rest & Postman
(7) Rest endpoint http://localhost:8080/api/apartment/getAll
(8) @RestController: ApartmentRestController
(9) PathVariable vs Requestparam

- Homework:
(1) Monolith vs Microservices
(2) Defining metrics for learning
(3) Top-ten web app: vocabulary
(4) Spring Ecosystem as a Restaurant business

- Ideas for projects: starterstory
- ApartmentPredictor: ee6a868
- API Rest
- RestController example
- starterstory

13 08/01/26 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) API rest
(7) Rest Postman & Swagger
(8) All CRUD operations implemented

- Containers:
(1) Optional
(2) ResponseEntity

- Request/Response Cycle: from Client request to Controller and JPA and ResponseEntity
- ApartmentPredictor: 8f9e22e1
- ApartmentPredictor API Rest docs
- Request/Response Cycle

14 09/01/26 - ApartmentPredictor:
(1) Test Apartment, Review and Reviewer
(2) Service: CRUD operations & CrudRepository
(3) Application.properties
(4) UML: Composition & Inherence
(5) Spring Boot JPA and H2
(6) API rest
(7) Rest Security
(8) Nested objects: Apartment 1:n Review
(9) JsonIgnore (stackOverflow & infinite recursion)
(10) POST, PUT, PATCH to update

- MF01: proves
- ApartmentPredictor: 6646d1c
- ApartmentPredictor: dc32409d
- ApartmentPredictor API Rest docs
- POST, PUT, PATCH to update
05 15 12/01/2026 - Sprint#05: plan 3-week React

- Java: circular reference
- @JsonIgnore
- @JsonManagedReference and @JsonBackReference.
- @JsonProperty

- Create jar

- React: intro
- React MOOC: React Lean
- Describing the UI: .jsx and what is a component

- Project: apartmentPredictor-react:
(1) Create project React: playground / vite
(2) Define UI: mockup
(3) Data: axios
(4) Build project: Npm, App.tsx, Vite
(5) React Components
(6) Hooks: useState and useEffect
- ApartmentPredictor-React: 133d71d4

- React Principles
- Create React App
- Create project vite
- Describing the UI

- CodeSandbox: Gregorio
16 13/01/2026 - React: intro
- React.dev: React Lean, Describing the UI
- React.dev: PROPS
- Material CSS

- Render cycle and immutability

- React Mindmap:
(1).jsx
(2) immutability
(3) render
(4) hooks
(5) ES6
(6) web
(6) react.dev

- Java vs React: comparing paradigms
- ApartmentPredictor-React: 0548b4eb

- Describing the UI
- Passing Props
- React, immutable?

- CodeSandbox: Gregorio
- Gregorio render
- Gregorio Repo GH

- React Principles
- React is JSX
- What is props




- React vs Java — key paradigm differences (high level)
17 15/01/2026 - Project: apartmentPredictor-react:
(1) Create project React: playground / vite
(2) Define UI: mockup
(3) Data: axios
(4) Build project: Npm, App.tsx, Vite
(5) React Components
(6) Hooks: useState and useEffect


- React.dev:
(1) Data List: map
(2) Conditional render
(3) React UI is a components tree: props

- CSS Frameworks
- React Roadmap

- React paradigm vs. Java paradigm
- Gregorio Repo GH
- Describing the UI
- Passing Props
- Conditional render
- Rendering lists

- Semantic / Material / Tailwind / Shadcn-ui
- Open Stack Course
- React Roadmap web
- React Roadmap pdf
- Vite / nvm





- Java vs React
- Gallery Scientist: codesandbox

18 16/01/2026 - Project: apartmentPredictor-react:
(1) Create project React: playground / vite
(2) Define UI: mockup
(3) Data: axios
(4) Build project: Npm, App.tsx, Vite
(5) React Components
(6) Hooks: useState and useEffect


- React.dev:
(1) Data List: map
(2) Conditional render
(3) React UI is a components tree: props

- Literal Object in JS is NOT a JSON
- Parsing
- Describing the UI
- Passing Props
- Conditional render
- Rendering lists

- Literal Object

- Gallery Scientist: codesandbox
- Gallery Scientist 2: codesandbox
- Gallery Scientist 3: codesandbox

- Parsing

- Web Application Java Basic Architectures
- Chat:React - WS - AWS Lambda DynamoDB


06 19 19/01/2026 - Sprint#06: plan maps, ES6 & hooks

- React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps

- Gallery Scientist: props, conditional render, map

++ ApartmentPredictor: sequential execution load component
- React Principles

- Gallery Scientist: codesandbox
- Gallery Scientist 2: codesandbox
- Gallery Scientist 3: codesandbox

- Describing the UI
- Passing Props
- Conditional render
- Rendering lists

20 20/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) ES6

- React project init:
(1) mockup LF, feature, API (Postman)
(2) Component tree: AMZ example
- React Principles
- Describing the UI

- Gallery Scientist: codesandbox
- Gallery Scientist 2: codesandbox
- Gallery Scientist 3: codesandbox

- Maps
- Spread
- Miro LF

21 22/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) Manage state & render cycle
(5) useState with literal objects
(6) component tree
(7) import/export default/named
- React Principles
- Describing the UI

- Semantic / Material / Tailwind / Shadcn-ui

- Gallery Scientist:4 codesandbox


- useState
- events
- Props
- Gallery Scientist:5 codesandbox
22 23/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) Manage state & render cycle
(5) useState with literal objects
(6) useEffect sync & axios

- How to use {children} with props
+ How to create good useStates hooks names and manage state
- How to update a literal object
- React Principles
- Describing the UI
- Adding Interactivity

- TrafficLights
07 22 26/01/2026 - Sprint#07: hooks & forms

- React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState, useRef and useEffect
(3) maps & ES6
(4) render Cycle

- Traffic Lights:
(1) setTimeout
(2) useState phases (how to detect main state) variables
(3) useRef
(4) understand the render0 and the next 3 renders

- Forms: manage state
- React Principles

- Describing the UI
- Passing Props
- Conditional render
- Rendering lists
- Adding Interactivity



- TrafficLights
- basicRegisterForm

23 27/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState, useRef and useEffect
(3) maps & ES6
(4) render Cycle

- Traffic Lights:
(1) setTimeout
(2) useState phases
(3) useRef
(4) forms

++ Mutable vs Immutable Literal Objects & Array :
(1) Mutable: person.name = e.target.value;
(2) Immutable: setPerson ({...person, name : e.target.value})
- React Principles
- Describing the UI
- Adding Interactivity

- TrafficLights
- basicRegisterForm

- Copying objects with the spread syntax

- Updating Arrays in State
24 29/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps & ES6
(4) Manage state & render cycle
(5) useEffect: with who is syncing
(6) dependencies & return clean-up
(7) understanding AparmentPredicor-React

++ Axios: library http request and promises

++ ApartmentPredictor React:
(1) decoupling
(2) custom hook: useApartments

++ MF01:
(1) Prova Pràctica, teorica, avaluació continua
(2) PRA01
- React Principles
- Describing the UI
- Adding Interactivity
- Axios: post
- Semantic / Material / Tailwind / Shadcn-ui

- useEffect

- Custom hook

ApartmentPredictor-React: 0548b4eb
- ApartmentPredictor-React: f3e623dd


PRA01
25 30/01/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) Manage state & render cycle
(5) useState with literal objects
(6) useEffect sync & axios

- ApartmentPredictor-React: decoupled version with custom hook

++ New future: reload/refresh button
- React Principles
- Describing the UI
- Adding Interactivity
- ApartmentPredictor-React: 13df0e4 - refresh-branch
- ApartmentPredictor-React: c40fe208


February 2026

Backlog course February 2025 table
Sprint Day Date Topics Details Topics
08 26 02/02/2026 - Sprint#08: ApartmentPredictor Full-Architecture

- ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <> Review <> Reviewer
(5) Data Loader
(6) Working on different environments

- Create JAR for React frontend

++ NoSQL introduction: dynamoDB AWS
++ GraphQL introduction: AppSync AWS
- ApartmentPredictor: fc1f60f88e
- API Rest

- working-on-different-environments
- data-loader: approaches
- SQL-ImportCSVtoH2
- data.sql

- Spring Data: NoSql

Spreadsheet Employee
27 03/02/2026 - ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <> Review <> Reviewer </> (5) Data Loader
(6) Working on different environments
(7) ManyToMany relationship
(7) Bridge Table: managed by JPA or need to create an Entity
(8) ManyToMany patterns: table details or data attached

++ How to detect patterns on ManyToMany:
(1) Data Relevance
(2) Data mutable or immutable
(3) Need of operate with data to implement feature
- ApartmentPredictor: 982bf562
- Populate Apartments by REST API

- JPA Relationships

28 05/02/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps & ES6
(4) Manage state & render cycle
(5) useEffect: with who is syncing
(6) dependencies & return clean-up
(7) understanding AparmentPredictor-React
(8) Forms & SPA CRUD operations for Aparment
(9) decoupled version with custom hook
(10) reload/refresh button

- MF01:
(1) Prova Pràctica, teorica, avaluació continua
(2) PRA01
- React Principles
- Describing the UI
- Adding Interactivity

- ApartmentPredictor-React: f3e623dd


PRA01
29 06/02/2026 - React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps
(4) Manage state & render cycle
(5) useState with literal objects
(6) useEffect sync & axios


++ SQL vs NoSQL
++ Apartment NoSQLUNIQUE-TABLE strategy
++ Apartment: PK + SK, apartmentId, renovationId
++ ManyToMany JPA SQL: Apartment <> School
- React Principles
- Describing the UI
- Adding Interactivity
- ApartmentPredictor-React: c40fe208

- NoSql
- SpreadSheet NoSql Renovations
- Library3: API Rest Library Book @ManyToMany

- MF01 PP and AC Deliveries
- PRA01
09 30 09/02/2026 - Sprint#09: ApartmentPredictor Full-Architecture II

- ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract
(7) @ManyToMany

- AWS Amplify: build, deploy, hosting and publish
- AWS CD/CI: intro
- Spring Boot Deploy: Railway.com, Render.com by docker
- AWS: NoSQL: DynamoDB
- ApartmentPredictor: 46287da40
- API Rest

- Spring Data: NoSql
- NoSql
- Library3: API Rest Library Book @ManyToMany
- JPA Relationships

- SpreadSheet NoSql Renovations

- Amplify Docs

31 10/02/2026 - ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract
(7) @ManyToMany

- Spring Boot Deploy: Railway.com, Render.com by docker

++ What is planning?
Feature > DDD > UML > PseudoCode > Code
- ApartmentPredictor:
- API Rest
- Spring Data: NoSql
- NoSql

- Library3: API Rest Library Book @ManyToMany

- SpreadSheet NoSql Renovations
- JPA Relationships

schoolsAssignToApartment
32 12/02/2026 Class cancelled :-(

- React:
(1) intro: Describing the UI: .jsx and what is a component
(2) Hooks: useState and useEffect
(3) maps & ES6
(4) Manage state & render cycle
(5) useEffect: with who is syncing
(6) dependencies & return clean-up
(7) understanding AparmentPredictor-React
(8) Forms & SPA CRUD operations for Aparment
(9) decoupled version with custom hook
(10) reload/refresh button

- React Principles
- Describing the UI
- Adding Interactivity

- ApartmentPredictor-React: xxxx
33 13/02/2026 - ApartmentPredictor:
(1) Base Project Backend Spring Boot
(2) API Rest
(3) H2 DB Local & JPA
(4) Apartment <-> Review <-> Reviewer
(5) Apartment <-> School
(6) Apartment <-> Contract
(7) Person Inherence with Owner / Reviewer
(8) PseudoCode & Planning PRA#02
- PRA#02: Java UML + Implementation + H2 Data Population


- Spring Boot: JPA Inherence
- JPA Relationships Guide
- CACAJEC
- Postman: apartmentPredictorCRUD

March 2026

Backlog course March 2025 table
Sprint Day Date Topics Details Topics

April 2026

Backlog course April 2025 table
Sprint Day Date Topics Details Topics

May 2026

Backlog course May 2025 table
Sprint Day Date Topics Details Topics

June 2026

  • Starting Pràctiques: 28/05/2026
  • Finishing Pràctiques: 12/06/2026
Back to top