1. Introduction

This document contains the specifications of the LIFT-TRACK project generated automatically.

Last update: 2026-01-28.

Data source: requirements_app_PEGS.xlsx

2. Goals

Project vision: provide a simple and stable mobile-first application for tracking weight training, allowing users to visualize their progress and, in the future (V2), interact with sports coaches.

G.1.1: Global Goal

PEGS Ref: G.1

Description

Allow a practitioner to track their bodybuilding/fitness workouts simply, reliably, and quickly.

Priority: Very High

Rationale:
Product Alignment: an app useful in daily life.

Acceptance Criteria:
A user can log a full session in less than 3 minutes of cumulative input time (excluding effort).


G.2.2: Current Situation

PEGS Ref: G.2

Description

The practitioner currently uses paper notes/generic apps, resulting in data loss and lack of structure.

Priority: Very High

Rationale:
Justifies value: structure + history + progression.

Acceptance Criteria:
The PEGS document describes at least 2 current solutions and their limits.


G.3.3: Expected Benefits

PEGS Ref: G.3

Description

The app must help to: (1) save time on input, (2) visualize progression, (3) encourage consistency.

Priority: Very High

Rationale:
Immediate user value.

Acceptance Criteria:
Dedicated screens exist for: fast input + progression + frequency.


G.5.4: Usage Scenarios (Mobile-first)

PEGS Ref: G.5

Description

The app must be usable with one hand in the gym: large buttons, short flows, minimal interactions.

Priority: High

Rationale:
Real usage during training, context constraints.

Acceptance Criteria:
A flow 'Start Session → Log Set → Finish' requires ≤ 5 main actions.


G.6.5: V1 Exclusions

PEGS Ref: G.6

Description

V1 excludes: coach marketplace, payments, real-time messaging, advanced AI analysis, watch/health integrations.

Priority: High

Rationale:
Avoids time traps; keeps focus on the core.

Acceptance Criteria:
The list of exclusions is visible and validated.


G.7.6: Stakeholders

PEGS Ref: G.7

Description

Minimum stakeholders are: practitioner (main user), developer (solo), evaluator (professor).

Priority: Very High

Rationale:
Clarifies expectations and arbitration.

Acceptance Criteria:
A 'Stakeholders' section lists needs and success criteria.


3. Environment

Usage context: mainly used on smartphones in gyms, taking into account potentially unstable network connectivity (offline mode) and the physical environment of training.

E.1.7: Glossary

PEGS Ref: E.1

Description

A glossary must define key terms: session, exercise, set, repetition, load, PR, template, program.

Priority: Medium

Rationale:
Reduces misunderstandings in requirements and UI.

Acceptance Criteria:
Glossary contains at least 10 terms and is used in descriptions.


E.3.10: Privacy Constraints (GDPR)

PEGS Ref: E.3

Description

The app must minimize personal data (minimization principle) and allow user data deletion/export.

Priority: Very High

Rationale:
Standard requirement expected for a fitness app.

Acceptance Criteria:
User can export and delete their data from settings.


E.3.8: Gym Usage Constraints

PEGS Ref: E.3

Description

The app must work with unstable networks and allow input without depending on a continuous connection.

Priority: Very High

Rationale:
In gym: 4G/Wi-Fi is often irregular.

Acceptance Criteria:
Offline mode: create a session and log sets without error even without network.


E.3.9: Time Constraints

PEGS Ref: E.3

Description

Logging a set must be doable in < 5 seconds via optimized UI (recent values, +/- buttons, auto-focus).

Priority: Very High

Rationale:
Fast input = adoption.

Acceptance Criteria:
Manual test: logging a set in < 5s on a mid-range mobile.


E.4.11: Hardware Hypothesis

PEGS Ref: E.4

Description

The user has a recent Android/iOS smartphone (≤ 5 years) and a modern browser.

Priority: High

Rationale:
Realistic scoping without targeting obsolete devices.

Acceptance Criteria:
List of tested environments (at least 1 Android + 1 desktop browser).


E.6.12: Integrity Invariant

PEGS Ref: E.6

Description

A validated set must never disappear without explicit user action (delete/cancel).

Priority: Very High

Rationale:
Data loss kills trust.

Acceptance Criteria:
After restarting the app, logged sets are still present.


4. System

Functional scope: covers the Core features of V1 (session tracking, history), the Coaching extension of V2, and the advanced features of V3 (nutrition, wearables).

S.1.13: Components - Mobile/Web

PEGS Ref: S.1

Description

The system must include at minimum: a mobile interface (PWA or app), a desktop web interface, and reliable data persistence (local + server).

Priority: Very High

Rationale:
Global App' vision (not just API).

Acceptance Criteria:
A component diagram is provided.


S.1.14: Components - Content Admin

PEGS Ref: S.1

Description

The system must provide an admin area to manage the exercise library (CRUD, tags, muscle groups).

Priority: High

Rationale:
Avoids database editing / facilitates content evolution.

Acceptance Criteria:
An admin can add/edit an exercise and see it on the user side.


S.2.15: User Account

PEGS Ref: S.2

Description

The app must allow account creation, login, logout, and password recovery.

Priority: Very High

Rationale:
Basis for multi-device usage + backup.

Acceptance Criteria:
Creation/Login/Logout tested successfully.


S.2.16: Profile & Preferences

PEGS Ref: S.2

Description

The user must be able to define preferences: units (kg/lb), language (if supported), theme (light/dark), default rest time.

Priority: High

Rationale:
Minimal useful customization in the gym.

Acceptance Criteria:
Preferences impact display (e.g., kg/lb) immediately.


S.2.17: Exercise Library

PEGS Ref: S.2

Description

The user must be able to browse and search exercises, filter by muscle group, and view a card (instructions, targeted muscles).

Priority: Very High

Rationale:
Speeds up input and reduces errors.

Acceptance Criteria:
Search + filters functional; exercise card displayed.


S.2.18: Session Creation

PEGS Ref: S.2

Description

The user must be able to create a session with a name, date, and list of exercises.

Priority: Very High

Rationale:
Functional core.

Acceptance Criteria:
Create a session with ≥ 3 exercises and find it in history.


S.2.19: Session Execution (Tracking)

PEGS Ref: S.2

Description

The user must be able to start a session and log sets for each exercise (reps, load, optional RPE).

Priority: Very High

Rationale:
Real tracking in the gym.

Acceptance Criteria:
Log ≥ 10 sets in a session and finish the session.


S.2.20: Rest Timer

PEGS Ref: S.2

Description

The app must offer a rest timer configurable per exercise or globally, triggerable in one gesture after validating a set.

Priority: High

Rationale:
Supports the workout flow.

Acceptance Criteria:
After validating a set, timer starts in ≤ 1 action.


S.2.21: Quick Input (Previous Values)

PEGS Ref: S.2

Description

During a set, the app must pre-fill fields with the last set performed on this exercise (or previous session).

Priority: High

Rationale:
Huge time saver.

Acceptance Criteria:
Pre-filling visible and editable; tested on 2 successive sessions.


S.2.22: Session History

PEGS Ref: S.2

Description

The user must be able to view session history (list + detail) and filter by period.

Priority: Very High

Rationale:
Access to recorded data.

Acceptance Criteria:
Display sessions from the last 30 days + detail of one session.


S.2.23: Records (PR)

PEGS Ref: S.2

Description

The app must detect and display personal records (max load, max reps at given load, volume) per exercise.

Priority: Medium

Rationale:
Motivation and progression reading.

Acceptance Criteria:
A PR is updated automatically after a new performance.


S.2.24: Simple Statistics

PEGS Ref: S.2

Description

The app must display simple stats: weekly volume, frequency, top exercises, average session time.

Priority: Medium

Rationale:
Expected benefit G.3.

Acceptance Criteria:
A stats screen exists and reflects logged sessions.


S.2.25: Templates / Routine Workouts

PEGS Ref: S.2

Description

The user must be able to save a session as a template and restart a workout from a template.

Priority: High

Rationale:
Speeds up recurrent usage.

Acceptance Criteria:
Create a template and start a session from that template.


S.2.26: Modification/Cancellation

PEGS Ref: S.2

Description

The user must be able to edit a set (correct load/reps) and quickly cancel the last action.

Priority: High

Rationale:
Avoids frustration during mobile input.

Acceptance Criteria:
Edit an existing set and verify stats recalculation.


S.2.27: Save & Sync

PEGS Ref: S.2

Description

Data must be saved locally immediately, then synchronized to the server as soon as possible.

Priority: Very High

Rationale:
Reliability + Offline.

Acceptance Criteria:
Cut network: input ok; restore network: sync occurs without loss.


S.2.28: Simple Conflict Management

PEGS Ref: S.2

Description

In case of concurrent modification (2 devices), the system must apply a simple strategy: last save wins, with a warning.

Priority: Medium

Rationale:
Avoids over-complexity while remaining coherent.

Acceptance Criteria:
Simulate 2 edits: user sees a conflict message and the final result.


S.2.29: Data Export

PEGS Ref: S.2

Description

The user must be able to export their data (CSV/JSON) from settings.

Priority: Medium

Rationale:
Portability + Assignment + GDPR.

Acceptance Criteria:
Export download; file contains sessions + sets.


S.2.30: Body Measurements

PEGS Ref: S.2

Description

The app may allow logging body weight and measurements (optional).

Priority: Low

Rationale:
Value but not core V1.

Acceptance Criteria:
Add a measurement and display it on a simple curve.


S.2.31: Share Session

PEGS Ref: S.2

Description

The app may allow sharing a session summary (image or link).

Priority: Low

Rationale:
Nice-to-have; risk of scope creep.

Acceptance Criteria:
Share a readable summary via phone apps.


S.3.32: Responsive UI

PEGS Ref: S.3

Description

The mobile interface, intended for sports users, must be responsive and optimized for mobile usage. The desktop interface, used by coaches via browser, must also be fully responsive.

Priority: Very High

Rationale:
Global App: mobile + web.

Acceptance Criteria:
Same flow possible on mobile and desktop without blocking.


S.3.33: Basic Accessibility

PEGS Ref: S.3

Description

The app must respect minimal accessibility: readable font size, correct contrasts, keyboard navigation on web.

Priority: Medium

Rationale:
Quality and inclusivity without huge cost.

Acceptance Criteria:
Manual audit: 200% zoom ok; web tabbing ok.


S.3.34: Dark Mode

PEGS Ref: S.3

Description

The app must offer a dark mode (at least on mobile).

Priority: Medium

Rationale:
Comfort in gym/low light.

Acceptance Criteria:
Toggle dark mode; persistence of choice.


S.4.35: Scenario: Start Session

PEGS Ref: S.4

Description

Scenario: from home, the user starts a session (template or new), sees the exercise list, and can log the first set.

Priority: Very High

Rationale:
Validates main flow.

Acceptance Criteria:
Flow tested end-to-end without useless navigation.


S.4.36: Scenario: Offline in Gym

PEGS Ref: S.4

Description

Scenario: network cut, user executes full session; upon reconnection, session is synchronized.

Priority: Very High

Rationale:
Critical for trust.

Acceptance Criteria:
Test in airplane mode: full session saved then synced.


S.4.37: Scenario: Check Progression

PEGS Ref: S.4

Description

Scenario: user opens an exercise and sees evolution (last perfs + PR).

Priority: Medium

Rationale:
Progression benefit.

Acceptance Criteria:
Exercise History' view displays at least 5 last performances.


S.5.38: V1 Prioritization

PEGS Ref: S.5

Description

V1 must prioritize: session tracking, exercise library, history, save/sync. Everything else is deferrable.

Priority: Very High

Rationale:
Time-to-code: avoid over-engineering.

Acceptance Criteria:
Backlog shows these items as MUST; V2/V3 as SHOULD/COULD.


S.5.39: Perceived Performance

PEGS Ref: S.5

Description

Main screens must open in < 1 second on a mid-range smartphone (excluding 1st load).

Priority: High

Rationale:
Adoption: slowness kills usage.

Acceptance Criteria:
Manual measurement: navigation Home → Session < 1s.


S.6.40: Testable Acceptance Criteria

PEGS Ref: S.6

Description

Every V1 feature must be validated by a reproducible manual test scenario (Given/When/Then).

Priority: Very High

Rationale:
Helps assignment + quality without heavy testing.

Acceptance Criteria:
A manual test file covers 100% of V1 MUSTs.


S.6.41: Data Reliability

PEGS Ref: S.6

Description

After crash/restart, the app must recover a stable state (saved sessions and sets), without corruption.

Priority: Very High

Rationale:
E.6 Invariant applied.

Acceptance Criteria:
Test: force stop app then relaunch: data intact.


S.6.42: Minimal Security

PEGS Ref: S.6

Description

Data in transit must be protected (HTTPS) and passwords stored securely (robust hash).

Priority: High

Rationale:
Basic hygiene, without writing a security thesis.

Acceptance Criteria:
Scan: no plaintext password; connection via HTTPS.


5. Project

Project framework: academic work using the PEGS methodology. Requirements are centralized in a single source (Excel) and documentation is generated automatically via GitHub Actions.

P.1.43: Roles & Responsibilities

PEGS Ref: P.1

Description

The project must define the following minimum roles: Practitioner (User), Administrator (content management), and, if enabled, Coach (supervised access).

Priority: Very High

Rationale:
Avoids ambiguity and guides screen/permission design.

Acceptance Criteria:
A Roles → Rights matrix is available and covers all V1 features.


P.3.44: Versioning Split

PEGS Ref: P.3

Description

The project must maintain a V1/V2/V3 split with an explicit list of exclusions for V1.

Priority: High

Rationale:
Protects Time-to-Code and prevents loss of focus.

Acceptance Criteria:
A 'Scope V1' document exists, with a 'Not Included' section.


P.4.45: V1 Deliverables

PEGS Ref: P.4

Description

V1 must deliver an application usable in real conditions to log sessions (creation, execution, history) with reliable saving.

Priority: Very High

Rationale:
Rapid Dogfooding: validate usage before adding features.

Acceptance Criteria:
A user can log 10 complete sessions on mobile without blocking bugs.


P.5.46: Target Tech (App)

PEGS Ref: P.5

Description

The application must be usable on mobile for users (App & Browser).

Priority: High

Rationale:
Maximizes real usage without multiplying native apps initially.

Acceptance Criteria:
The same functional base is accessible on phone and desktop.


P.6.47: Risk Management

PEGS Ref: P.6

Description

The project must identify 5 major risks (data loss, offline, mobile perf, UX complexity, debt) and simple mitigations.

Priority: High

Rationale:
Reduces classic failure modes of a solo-dev personal app.

Acceptance Criteria:
A risk/impact/mitigation table exists.


P.7.48: Requirements Process

PEGS Ref: P.7

Description

Requirements must be traced (unique ID), PEGS classified, and associated with measurable acceptance criteria.

Priority: Very High

Rationale:
Facilitates academic evaluation and project steering.

Acceptance Criteria:
100% of requirements have ID + PEGS + MoSCoW + acceptance criteria.