Files
ldpv2/doc
2026-02-07 17:51:17 +01:00
..
2026-02-07 17:51:17 +01:00
2026-02-07 17:51:17 +01:00
2026-02-07 17:51:17 +01:00
2026-02-07 17:51:17 +01:00
2026-02-07 17:51:17 +01:00
2026-02-07 17:51:17 +01:00
2026-02-07 17:51:17 +01:00

LDPv2 MVP - Development Package

Welcome to the LDPv2 (Lifecycle Data Platform v2) MVP development package!

This package contains complete documentation and specifications for building the LDPv2 application using an iterative, story-based approach.


📦 Package Contents

ldpv2-mvp/
├── README.md (this file)
├── 00-MVP-OVERVIEW.md
├── 01-TECHNICAL-SETUP.md
├── stories/
│   ├── STORY-0-Foundation.md
│   ├── STORY-1-Business-Units.md
│   ├── STORY-2-Applications.md
│   ├── STORY-3-Contacts.md
│   ├── STORY-4-Environments.md
│   ├── STORY-5-Versions.md
│   ├── STORY-6-Deployments.md
│   └── STORY-7-Current-State-History.md
├── data-model/
│   └── complete-data-model.ts
└── api-specs/
    └── endpoint-summary.md

🚀 Quick Start

Step 1: Read the Overview

Start with 00-MVP-OVERVIEW.md to understand:

  • MVP scope and objectives
  • Development approach (Walking Skeleton + Vertical Slices)
  • Story dependencies
  • Timeline estimates

Step 2: Setup Your Environment

Follow 01-TECHNICAL-SETUP.md to:

  • Install prerequisites (Java 17+, Node.js 18+, PostgreSQL 16, Docker)
  • Setup Spring Boot backend project
  • Setup Angular 18 frontend project
  • Configure Docker Compose for local development
  • Understand project structure and conventions

Step 3: Start Development

Begin with Story 0 (Foundation) and follow the story sequence:

Story 0: Foundation (Walking Skeleton)
    ↓
Story 1: Business Units
    ↓
Story 2: Applications
    ↓
Story 3: Contacts (can be parallel with Story 4)
    ↓
Story 4: Environments (enhancement)
    ↓
Story 5: Versions
    ↓
Story 6: Deployments
    ↓
Story 7: Current State & History

📋 Story Structure

Each story follows a consistent structure:

  • Story Overview: Business value and objectives
  • Scope: What's in and out of scope
  • Technical Implementation: Detailed backend and frontend tasks
  • Acceptance Criteria: Testable requirements
  • Testing Scenarios: Step-by-step test cases
  • Definition of Done: Checklist before considering story complete

🎯 MVP Scope Summary

What's Included in MVP

Core Domain

  • Application management with lifecycle tracking
  • Business unit organization
  • Environment management (flexible, production-ready)
  • Version tracking
  • Deployment recording and history
  • Current deployment state queries

User Management

  • Local authentication (JWT-based)
  • Basic role-based access control (ADMIN, USER)
  • User registration and login

Contact Management

  • Contact roles (Product Owner, Developer, etc.)
  • Person management
  • Contact-Person associations

Reporting & Analytics

  • Deployment dashboard
  • Deployment history and timeline
  • Statistics and charts
  • Export to CSV/Excel

What's NOT in MVP (Phase 2)

External dependencies tracking
Data usage agreements
SLA management
Technical documentation links
OAuth integration
Advanced notifications
Deployment approval workflows
CI/CD integration


🏗️ Technology Stack

Backend

  • Framework: Spring Boot 3.2.x
  • Language: Java 17/21
  • Security: Spring Security + JWT
  • Database: PostgreSQL 16
  • ORM: Hibernate (JPA)
  • Migrations: Liquibase
  • Testing: JUnit 5, Mockito, Testcontainers

Frontend

  • Framework: Angular 18
  • Language: TypeScript 5.x
  • Auth: JWT interceptors
  • UI Library: Angular Material or PrimeNG
  • Testing: Jasmine/Karma, Cypress

DevOps

  • Containerization: Docker
  • Orchestration: Docker Compose
  • CI/CD: Jenkins/GitLab CI/GitHub Actions

⏱️ Timeline Estimate

Phase Duration Stories
Phase 0: Foundation 2-3 weeks Story 0
Phase 1: Core (Batch 1) 3-4 weeks Stories 1-4
Phase 1: Core (Batch 2) 3-4 weeks Stories 5-7
Total MVP 8-11 weeks 8 stories

Based on 1 full-time developer or 2 part-time developers


📊 Story Dependencies Graph

Story 0 (Foundation)
├── Story 1 (Business Units) ────────┐
│   └── Story 2 (Applications) ──────┤
├── Story 3 (Contacts) ──────────────┤── Can be developed in parallel
├── Story 4 (Environments) ──────────┘
    └── Story 5 (Versions)
        └── Story 6 (Deployments)
            └── Story 7 (Current State & History)

Success Criteria

The MVP will be considered successful when:

  1. Functional Completeness

    • All 8 stories delivered and accepted
    • All acceptance criteria met
    • Zero critical bugs
  2. Technical Quality

    • Backend test coverage > 80%
    • Frontend test coverage > 70%
    • All APIs documented in Swagger
    • Code passes security review
  3. User Satisfaction

    • Users can perform core workflows without training
    • System performance < 500ms API response
    • Positive feedback from pilot users
  4. Business Value

    • All applications registered in system
    • Deployment history accurate and complete
    • Users prefer LDPv2 over previous tools

🧪 Testing Strategy

Backend Testing

  • Unit Tests: Service layer with Mockito (>80% coverage)
  • Integration Tests: Controllers with Testcontainers
  • API Tests: REST Assured or MockMvc

Frontend Testing

  • Unit Tests: Components and services (>70% coverage)
  • Integration Tests: Component interactions
  • E2E Tests: Critical user flows with Cypress

📚 Key Documents

For Project Managers

  • 00-MVP-OVERVIEW.md: Scope, timeline, success criteria
  • Stories/*.md: Detailed requirements and acceptance criteria

For Architects

  • 01-TECHNICAL-SETUP.md: Architecture and tech stack
  • data-model/complete-data-model.ts: Complete data model
  • api-specs/endpoint-summary.md: API design

For Developers

  • stories/STORY-*.md: Detailed implementation tasks
  • 01-TECHNICAL-SETUP.md: Setup instructions
  • api-specs/endpoint-summary.md: API reference

For QA/Testers

  • stories/STORY-*.md: Acceptance criteria and test scenarios
  • Each story contains detailed testing scenarios

🔄 Development Workflow

For Each Story

  1. Read the story documentation thoroughly
  2. Setup environment (if Story 0)
  3. Backend Development:
    • Create Liquibase migration
    • Implement JPA entities
    • Create repositories
    • Implement service layer
    • Create DTOs
    • Implement controllers
    • Write tests (unit + integration)
  4. Frontend Development:
    • Create TypeScript models
    • Implement Angular service
    • Create components (list, detail, form)
    • Add routing
    • Write tests (unit + E2E)
  5. Review: Code review, test review
  6. Demo: Demonstrate to stakeholders
  7. Merge: Merge to main branch
  8. Document: Update API docs, user docs

🐛 Known Limitations & Technical Debt

MVP Limitations

  • Simple role-based authorization (will need environment-specific roles later)
  • Local authentication only (OAuth planned for Phase 2)
  • No deployment approval workflows
  • No automated notifications
  • No CI/CD integration

Planned Improvements (Phase 2)

  • OAuth 2.0 integration (Azure AD, Okta)
  • Environment-specific user permissions
  • External dependencies tracking
  • SLA management
  • Automated deployment notifications
  • Integration with CI/CD pipelines
  • Advanced analytics and reporting

🤝 Contributing

Code Standards

  • Follow Spring Boot conventions for backend
  • Follow Angular style guide for frontend
  • Write meaningful commit messages
  • Maintain test coverage thresholds
  • Document all public APIs

Git Workflow

  1. Create feature branch: feature/story-N-description
  2. Commit frequently with clear messages
  3. Write/update tests
  4. Create pull request
  5. Address review comments
  6. Merge to main after approval

📞 Support & Questions

For questions about this package:

  • Review the relevant story documentation
  • Check the technical setup guide
  • Consult the API specification
  • Refer to the data model

📄 License

Proprietary - Internal use only


🎉 Let's Build!

You now have everything you need to build LDPv2 MVP successfully!

Start with Story 0 and follow the iterative approach. Good luck! 🚀


Package Version: 1.0
Last Updated: February 2026
Status: Ready for Development