IFCD0021 Product Backlog

ifcd0021
backlog

Backlog course

Backlog course

Product Backlog by Month

September 2024

Backlog course September 2024 table
Sprint Day Date Topics Details Topics
#01 1 09/09/2024 - Mindset
- Presentation: web, why i do not like full stack definition (netflix definition), what is a dev (2022-25), scrum/agile? AI?, what is this course and what is not (personal tutor, university, an oportunity to learn and code and not getting a title, java), learning is (your responsibility: ask, debate, speak, be active, balance in class: positive emotions and active dynamics), how to learn
- POO & Java (SE & EE: Spring Boot)
- Systems: gitHub, Linux (VirtualBox SSD ext), VCode, IntellIJIdea, MOOC Helsinki, Markdown, NextCloud, FlameShot, Jitsi
- Lateralization

- Homework: what is Pareto Principle?
- albertprofe.dev
- Unveiling the Technological Marvels behind Netflix’s Seamless Experience
- Jit Si Meet fullstack2024
2 10/09/2024 - Lateralization, how to learn, pareto
- SCRUM fundamentals
- Java Dependencies Management: Maven
- POO: methods
- GitHub: create repo, commit, push,..
- UML

Homework: Pareto examples, Kind of problems? Simple, Complicated, Complex, Kaotic, SCRUM Guide
- git basics
- gh auth login
- UML
- Maven Create Project
- Push to git
- UML Mermaid
3 12/09/2024 - POO: methods & static modifier
- UML:
(1) Keep it simple, Do not run, Foucs and get things done
(2) Class Diagram, Core Classes, DDD
++ Comunication relevance: job interview, team, good prompts, defining bugs
UML: multiplicity, 1:1, 1:n, n:m
- Projects UML
- Git
- Git tutorial
4 13/09/2024 - POO: class, object, model, MVC, methods, new
- UML
- Lab#SE04-1
- MOOC: Objects and references
- Restaurant Java
#02 5 16/09/2024 - Metrics: plan-execute-review-reflexionate
- Lab#Restaurant:
(1) DDD
(2) Model
(3) Hashmap data structure
(4) core concepts: micro & macro and then architecture
(5) Data & Operation flux
- Git
- POO: objects
- Lab#SE04-1
- MOOC: Objects and references
- Restaurant Java: calculateTotalPayment() methods, static and scope and hash
6 17/09/2024 - Lab#Restaurant:
(1) JUnit
(2) Model
(3) Fake data: database with HashMap
- Git: fork,clone, branch, commit, push and pull request
- POO: scope
- Lab#SE04-1
- MOOC: Objects and references
- Restaurant Java: calculateTotalPayment() implemented
- Git Checkout
- gh repo fork
7 18/09/2024 - Lab#Restaurant:
(1) Business Logic & Controller
(2) Entity Manager
(3) utils domain: create and use Entities
- Git: pull request management from IDE
- SCRUM
Project management: project-DDD-UML-code
- POO: static
- Lab#SE04-1
- Restaurant Java: DDD, utils & repo
- Restaurant Java: testOrder() and printStatusTable() in Utilities
8 19/09/2024 - Lab#Restaurant:
(1) Business Logic & Controller
(2) Entity Manager
- Git

HW: 3 keywords for Restaurant domains
- POO: TDD
- Lab#SE04-1
- Restaurant Java: controller domain implemented with testOrder() and printStatusTable()
- Restaurant Java: managers domain created and testOrder() to manager
9 20/09/2024 - Lab#Restaurant:
(1) UML diagrams flux data
(2) skeleton MenuManager and TableManager
(3) createOrder() pseudo-code
- SCRUM:
(1) plan-execute-review-reflexionate
(2) Albertu’s dylema
- POO: Coupling
- Restaurant Java: skeleton TableManager and MenuManager
- createOrder
- how to iterate hashMap
#03 10 23/09/2024 - Lab#Restaurant:
(1) Business Logic & Controller: createOrder
(2) Entity Manager (Table, Menu)
(3) createOrder: decopule, foreach, return, printOrder, order saved, error try/catch, table to busy, key id

HW: plan this week
- POO: Coupling
- createOrder
- createOrder v3.0
- How to iterate hashMap
- Lab#SE02-2: HashMaps
- HashMaps Example
- HashMpas Tutorial
11 25/09/2024 - Lab#Restaurant:
(1) Business Logic & Controller: createOrder
(2) Entity Manager (Table, Menu)
(3) createOrder: decopule, foreach, return, printOrder, order saved, error try/catch, table to busy, key id
- Git: Udea

- createOrder v4.0
- createOrder v5.0
- createOrder v3.4
- How to iterate hashMap
- Lab#SE04-1
- Lab#SE02-2: HashMaps
- HashMaps Example
- HashMpas Tutorial
- Idea: manage commits
- Idea Git
12 26/09/2024 - Lab#Restaurant:
(1) Business Logic & Controller
(2) Entity Manager (Table, Menu)
(3) createOrder: test JUnit and Mockito
- Git
- SCRUM: Why planning is so important

- POO: TDD
- dependency Mockito
- createOrder test
- JUnit 5
- Mockito
- SCRUM: concepts
- SCRUM: guide
- Git
13 27/09/2024 - Lab#Restaurant:
(1) Business Logic & Controller
(2) Entity Manager (Table, Menu)
(3) createOrder: test JUnit and Mockito and use-case no-table available
(4) Booking table class & status management (present and future)
(5) Take Away: inherence, type object or two classes?
- Git
- SCRUM: plan-execute-review-reflexionate

- SCRUM: concepts
- SCRUM: guide
- createOrder tests: calculateTotalPayment
- Git

October 2024

Backlog course October 2024 table
Sprint Day Date Topics Details Topics
#04 14 30/09/2024 - Time management: habits, metrics and time-boxing
- Sprring:
(1) What is Spring
(2) Spring Boot
(3) Create a Spring Boot Project
- Spring
- Spring Boot
- Spring Init
- Spring Boot: create project
- Lab#SB08-1
15 01/10/2024 - Time management: bad habits and mindset, growth, fixed, survival
- Spring Boot:
(1) @Controler and @RestController
(2) Project structure & Spring Architecture
(3) application.properties
(4) Model
++ DevOps strategies MV: timeshift, clone, virtualBox snapshot, docs at cloud
++ Pavoland
- Pavoland


- SCRUM: mindset
- Spring Boot
- Spring Boot: create project
- Spring Boot: create full project
- Lab#SB08-1
16 02/10/2024 - Lab#SB08-1 Spring Boot RestaurantVaadin:
(1) @RestController and @Service
(2) Project structure & Architecture
(3) JPA and H2
(4) view: Vaadin
(4) Model: @Entity

- RestaurantVaadin
- Lab#SB08-1
- Spring Boot: Data
- Spring Boot: JPA
- Spring Boot: Model
- Vaadin tutorial
- Vaadin start app
- Vaadin demo
- API rest
17 03/10/2024 - Lab#SB08-1 Spring Boot RestaurantManager:
(1) Model @Entity Customer
(2) Template: TH
(3) @RestController & @Controller
(4) application.properties
(5) JPA and H2 -
Git

- Lab#SB08-1
- Spring Boot: Rest
- RestaurantManager code
- Thymeleaf
- H2 DB
- Spring TH
- Spring Boot Data
18 04/10/2024 - Lab#SB08-1 Spring Boot RestaurantManager:
(1) Model Restaurant @Entity
(2) CRUD @RestController
(3) Interface @Service and @ServiceImpl
++ Query creation from method names
++ Swagger
- Git
++ Markdown: document
- Lab#SB08-1
- Spring Boot: Rest
- Defining Query Methods
- Query creation from method names
- Swagger
- Redis
- Spirng Boot create H2 TH
- Markdown
#05 19 07/10/2024 - Lab#SB08-3 Spring Boot RestaurantManager:
(1) Model @Entity Customer (& Order)
(2) API Rest: @RestController with Swagger
(3) @CustomerService and @CustomerServiceImpl
(4) application.properties
(5) JPA and H2
++ Spring MVC, Boot, JEE and Jakarta
++ ResponseEntity

- Lab#SB08-3
- Transition from Java EE to Jakarta EE
- Spring MVC
20 08/10/2024 - Lab#SB08-3 Spring Boot RestaurantManager:
(1) Model @Entity Customer & Order
(2) API Rest: @RestController with Swagger
(3) @OrderService and @OrderServiceImpl
(4) application.properties with local H2 DB
(5) JPA and H2

HW: @Table, @Menu RestController, Interface Service and ServiceImpl, Repository with UUID
- Lab#SB08-3
21 09/10/2024 - Lab#SB08-3 Spring Boot RestaurantManager:
(1) Model @Entity Customer & Order
(2) API Rest: @RestController with Swagger
(3) @OrderService and @OrderServiceImpl
(4) application.properties with local H2 DB
(5) JPA and H2: JUnit to test DB
(6) Query methods JPA
- ResponseEntity
- Lab#SB08-3
- Defining Query Methods
- Query by Example
- JPA Query Methods
- Spring Boot: JPA & DI
22 10/10/2024 - Lab#SB08-3 Spring Boot RestaurantManager:
(1) Model @Entitiy Table and Menu
(2) Inherence: Order
(3) application.properties profiling: memory/local

- Git: gitTutorial project
- Lab#SB08-3
- gitTutorial
- Git
23 11/10/2024 - Lab#SB08-3 Spring Boot RestaurantManager:
(1) Model @Entitiy Table and Menu
(2) Inherence: Order
(3) .env

- Git: gitTutorial project
++ JPA Entities Lifecycle
- Lab#SB08-3
-Git Checkout
- JPA Entity Lifecycle Statuses: A Comprehensive Guide
#06 24 14/10/2024 - Planning Spring#6
- Lab#SB08-3 Spring Boot RestaurantManager:
(1) JPQL Queries & JUnit Tests
- Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Order
(2) Inherence: Order
(3) @ManyToOne relationship
(4) ORM
(5) Annotations

- ResponseEntity
- UML Inherence: Order
- Lab#SB08-4
- Library2: API Rest Author Book @OneToMany CRUD with Swagger
- Spring Boot: Data & DB
- Spring Boot: JPA & DI
-Spring Boot: JPA Mappings
- AOP
Entity Inheritance

Entity @oneToMany
25 15/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Order & Customer
(2) Inherence: Order > OrderRestaurant
(3) @ManyToOne relationship
(4) ORM: mappings
(5) Annotations
++ (6) Unidirectional and Bidirectional

++ Serializable
- Spring Boot: Data & DB
- Spring Boot: JPA & DI
- Spring Boot: JPA Mappings
- Lab#SB08-4
26 16/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Order, Bookings and Table
(2) @ManyToMany relationship
(3) @ManyToOne relationship
(4) ORM
(5) Annotations
(6) Bidirectional relationship 1:n
(7) Casting

- Spring Boot: Data & DB
- Spring Boot: JPA & DI
- Spring Boot: JPA Mappings
- Lab#SB08-4

27 17/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Order
(2) Inherence: Order implementation
(3) Refactor and update TestCreateOrder()
(4) API Rest url, controller and faker to populate whole project

- Git: gitTutorial project
- Lab#SB04-1: JPA Inherence
-Spring Boot Projects JPA Inherence strategies

- Lab#SB08-4
- commit 85a23ab

RestaurantManager UML
- Lab#SB08-4
28 18/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Order & Booking n:m join table
(2) Inherence: Order implementation
++ (3) All classes Model to @Entity

- Git: gitTutorial project:
(1) reset, revert, remove
++ (2) Script: Automate GhSync Fork to Local
- Lab#SB04-1: JPA Inherence
- Spring Boot Projects JPA Inherence strategies

- Git Changes
- Lab#SB08-4

- Who’s Using Amazon Web Services? [2023]
- Your app’s front door
- Choosing the Right DynamoDB Partition Key
- Automate GhSync Fork to Local
- JSON editor / WebHookCool
#07 29 21/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Order & Menu
(2) Model @Entity Menu & MenuItems
(3) @ManyToMany relationship: Order & Menu
(4) Test JUnit: assign
(5) Annotations: @JoinTable

++ Agile:
(0) Decision Making: why we do not choose the simple steps?
(1) KEEP IT SIMPLE vs THINK BIG
(2) How to create an effective anti-gas policy?
- Spring Boot: Data & DB
- Spring Boot: JPA & DI
- Spring Boot: JPA Mappings
- Lab#SB08-4

- The soviet union delusion
- Pattern UML Customer-Product
30 22/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Order & Menu
(2) Model @Entity Menu & MenuItems
(3) @ManyToMany relationship: Order & Menu
(4) Test JUnit: assign many-to-many
(5) Annotations

++ Booking: designing many-to-many join table as @Entity
++ Order inherence: interface? abstract?
- Spring Boot: Data & DB
- Spring Boot: JPA & DI
- Spring Boot: JPA Mappings
- Lab#SB08-4

31 23/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Customer, Booking and Table
(2) Model @Entity Booking Join Table
(3) Many-To-Many relationship:Customer, Booking and Table
(4) Test JUnit: assign
(5) Annotations


++ Equals : identity by memory address or fields
- Spring Boot: Data & DB
- Spring Boot: JPA & DI
- Spring Boot: JPA Mappings
- Lab#SB08-4

- public void testAddingMenusToOrder() no-equals
- public void testAddingMenusToOrder() equals
- Heap and Stack
32 24/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Customer, Booking and Table
(2) Model @Entity Booking Join Table
(3) Many-To-Many relationship:Customer, Booking and Table
(4) Test JUnit: assign
(5) Annotations

- Spring Boot: Data & DB
- Spring Boot: JPA & DI
- Spring Boot: JPA Mappings
- Lab#SB08-4

- Cascade and OrphanRemoval
- Example OrphanRemoval
33 25/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Model @Entity Customer, Booking and Table

- Git: gitTutorial project:
(1) clean, reset, revert, remove
(2) merge, rebase
- Git Changes
- Lab#SB08-4


- Git Rebase
- Git CheatSheet
Merge vs. Rebase
- Conscious Competence Learning Model
#08 34 28/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Inherence: Order implementation
(2) Order: Interface? Abstract? Record? Sealed?
(3) Order n:m Menu refactor
(4) H2-DB to local
(5) Populate H2-DB data and relationships

- Git: gitTutorial project:
(1) undo
(2) Rebase vs. Merge


++ DevOps: bash, curl
- Lab#SB08-4

- Java meets TypeScript
- A Spring Developers Guide to Navigating the Frontend
- simplify-boot
- GitHub zip code to dropbox
- PRA04: Refactoring Many-to-Many Relationship in RestaurantManager
35 29/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Inherence: Order implementation
(2) Order: Interface? Abstract?
(3) Order n:m Menu refactor
++ (4) API Rest: data structure and nested objects

- Git: gitTutorial project:
(1) undo
(2) Rebase vs. Merge


++ API-First paradigm
- Lab#SB08-4

- Guide to API-first
- CrackJson
- API rest data structure
36 30/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Inherence: Order implementation
(2) Order: Interface? Abstract?
(3) @Service and @RestController of all @Entitty
(4) Profile Local H2
(5) DataLoader and DataPopulate

- Lab#SB08-4
- DataLoader

37 31/10/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Inherence: Order implementation
(2) Order: Interface? Abstract?
(3) @Service and @RestController
(4) Inherence: type strategies to save data

++ Implement Order as Abstract:
(1) branch: feature-order-abstract
- Lab#SB08-4
- JPA 1: Dependence Injection
- JPA 2: Mappings
- JPA 3: Relationships
- JPA 4: Queries
- JPA 5: Inherence

- JPA Inherence strategies
- OrderRestaurant refactor to abstract class and test createOrdersTest()
- @MappedSuperClass
- SINGLE_TABLE
- JOINED
- TABLE_PER_CLASS

November 2024

Backlog course November 2024 table
Sprint Day Date Topics Details Topics
#09 38 04/11/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Inherence: Order implementation
(2) Inherence: type strategies to save data
(3) Implement Order as Abstract
(4) branch: feature-order-abstract
(5) Test: @Transient & @Transactional

- JPA Annotations
- POJO, @Bean and @Entity

++ Java Pagination:
(1) Pageable
(2) Page
(2) PageRequest
- Lab#SB08-4
- JPA 1: Dependency Injection
- JPA 2: Mappings
- JPA 3: Relationships
- JPA 4: Queries
- JPA 5: Inherence
- JPA Annotations

- JPA Inherence strategies
- OrderRestaurant refactor > abstract
- @MappedSuperClass / - SINGLE_TABLE / - JOINED / - TABLE_PER_CLASS

- Library6 / - BooksPageable
39 05/11/2024 - Lab#SB08-4 Spring Boot RestaurantManager:
(1) Inherence: Order implementation
(2) Inherence: type strategies to save data
(3) Implement Order as Abstract
(4) branch: feature-order-abstract
(5) Test: @Transient

- PRA05: Spring Boot JPA Inheritance and Abstraction
- Lab#SB08-4
- Interface
- Inherence
40 06/11/2024 - Scaling Spring Boot:
(1) DTO: Data Transfer Object
(2) Auditing
(3) Pagination
(4) Spring Batch
(5) Caching
(6) Wrappers


++ API Rest Testing: from Bash to JUnit with H2 local server
- Lab#SB08-5
- Scaling
- Auditing
- Transactionality
- Paging, Iterating Large Results, Sorting & Limiting

- DTO Book example
41 07/11/2024 - Scaling Spring Boot:
(1) DTO: Data Transfer Object
(2) Auditing
(3) Pagination
(4) Spring Batch
(5) Caching
(6) Wrappers

++ Test JUnit Order <1:n> Qty: OrderRepositoryTest
- Lab#SB08-4: Test Order-Qty
- Lab#SB08-5

- Scaling
- Auditing
- Transactionality
- Paging, Iterating Large Results, Sorting & Limiting

- Uncle Bob: good architecture
- This is How I Scrape 99% of Sites
42 08/11/2024 - Git: gitTutorial project:
(1) undo
(2) Rebase vs. Merge

++ AWS Intro
- Undoing Commits & Changes
- Git Repository Management Scripts
- AWS Main Services

#10 43 11/11/2024 - Vaadin / Thymeleaf:
(1) Spring IO Conference UML
(2) Model, DB H2, Properties. JPA
(3) JUnit Tests
(4) Vaadin

++ Java Front Options:
(1) Spring Boot + Rest + React/Angular/Vue
(2) Thymeleaf & HTMX
(3) Flow: Vaadin
(4) Hilla: React
- Lab#SB09-1: SpringIO Conference
- BooksPageable
- Spring IO
- Scalling: Pagination

- Vaadin Start
- Primefaces
- JSF
- employeeCourse
44 12/11/2024 - Vaadin / Thymeleaf
(1) Spring IO Conference UML
(2) Model, DB H2, Properties. JPA
(3) JUnit Tests
(4) Vaadin: UI components
(5) data.sql

- JavaSE: static / final modifier

++ intellIJIdea live reload
++ @JsonTypeInfo & @JsonSubTypes
- Lab#SB09-1: SpringIO Conference
- RestaurantVaadin: 3333400
- BooksPageable
- Spring IO
- Scalling: Pagination
- static / final
- Vaadin Components
- Vaadin Tutorial




- @JsonTypeInfo
45 13/11/2024 - Vaadin / Thymeleaf
(1) Spring IO Conference UML
(2) Model, DB H2, Properties. JPA
(3) JUnit Tests
(4) Vaadin: Routing

++ Web tasks: css, mobile, connect to server, layout, routing, security, deploy, model, business logic, SSR and CSR, components
++ Vaadin Hilla: autocrud
- RestaurantVaadin: 33b1284

- Atmosphere
- Vaadin Chat GitHub
- How to deploy
- fly.io

- Autocrud
- Autocrud Sandbox
46 14/11/2024 - Vaadin
(1) Security: Login
(2) Binding: Client <-> Server

- Websockets
(1) HTTP
(2) Client: Instance methods
- RestaurantVaadin: Login
- Securing a Web Application
- Spring Security6.3.4

- Lab#RE05-1: Websockets
- Chat: wiki
- Network: Websocket
47 15/11/2024 - Websockets:
(1) Server: AWS / Spring Boot
(2) Client: React

++ How To Communicate: target, value, engagement, ratio noise/signal, keywords, core, pitfalls, metrics
++ DevOps: Linux, Scripting (Bash/Py), Networking, Software Cycle
- Lab#RE05-1: Websockets
- Chat: wiki
- Network: Websocket



- spring.io
- Spring Boot Courses
- Control your AWS costs
- napkin ai
48 18/11/2024 - FCOO03: Formació Complementària (Inserción laboral, sensibilización medioambiental y en la igualdad de género) - FCOO03

- OpenStack
- Vaadin Collaboration Kit
- Collaboration Engine Sampler
- Chat Project: AWS and WS
- WebSocketKing
- Spring Boot Stomp Library8
49 19/11/2024 - FCOO03: Formació Complementària (Inserción laboral, sensibilización medioambiental y en la igualdad de género) - FCOO03
Back to top