Hiking-Logbook

Strategy Roadmap

This document aligns our vision, process, and delivery for the Hiking Logbook. It covers methodology, user stories with acceptance tests, goals & alignment, development roadmap, and our project structure.

1. Project Structure

Our structure is designed to support clarity, scalability, collaboration, and maintainability. —

frontend/


backend/


docs/


Benefits of This Structure

  1. Clarity → Clear separation of concerns (frontend, backend, docs, tests).
  2. Scalability → Each part can grow independently .
  3. Collaboration → Different team members can work in parallel without conflicts.
  4. Maintainability → Easier debugging and refactoring since responsibilities are separated.
  5. CI/CD Friendly → Branch rules and pipelines can run targeted checks (lint, tests, coverage) for each part.
  6. This structure is flexible enough to support future growth.

This project structure follows modern full-stack best practices and aligns with the Agile workflow and CI/CD pipelines used by the team.

2. Project Management Methodology

Scrum (Agile-Based Approach)

We have chosen Scrum (Agile-based) as our project management methodology. Agile allows us to work iteratively, adapt to changing requirements, and deliver value to users continuously. This is particularly important for our Hiking Logbook project, where user feedback and evolving features will shape the product.

Why Agile (Scrum)?

How We Will Implement Scrum:


3. User Stories and Acceptance Tests

User Stories

  1. Plan Your Adventures
    • As a hiker, I want to schedule hikes, check weather conditions, and create itineraries so that I can prepare better for my trips.
  2. Connect with Friends
    • As a user, I want to invite friends and share hiking experiences so that hiking becomes more social and engaging.
  3. Track Achievements
    • As a hiker, I want to set goals, earn badges, and track milestones so that I can stay motivated.
  4. Capture Memories
    • As a user, I want to add photos, notes, and logs for my hikes so that I can document my journey.
  5. GPS Integration
    • As a hiker, I want to track my route, save waypoints, and navigate trails confidently using GPS data.
  6. Progress Analytics
    • As a user, I want to visualize statistics and improvements over time so that I can analyze my outdoor activities.
  7. User Profile
    • As a user, I want to create and manage my profile so that my hikes and achievements are personalized.
  8. Start Your Journey Button
    • As a user, I want a clear entry point to start a new hike so that I can begin quickly and easily.

User Acceptance Tests

  1. Plan Your Adventures
    • Given I am an authenticated user And I am on the Hike Planner page When I enter a route, date, start time, and difficulty And I request the weather for the selected date and location Then the system fetches and displays the forecast And the planned hike is saved with itinerary details.
    • Given I have an existing planned hike When I update the start time and notes Then the changes are saved and visible on my planner.
    • Given I have an existing planned hike When I delete the planned hike Then it no longer appears in my upcoming hikes list.
  2. Connect with Friends
    • Given I am an authenticated user And I have searched for a friend by email or username When I send a friend request Then the recipient sees a pending invitation.
    • Given I am an authenticated user And I have searched for a friend by email or username When the recipient accepts the invitation Then we both appear in each other’s friends list.
    • Given I have a completed hike When I set its visibility to “Friends” Then it appears in my friends’ activity feeds.
  3. Track Achievements
    • Given I am on my Achievements page When I create a goal of 50 miles for the current month Then the goal is saved and visible in my goals list.
    • Given badges are defined for distance milestones And my total distance reaches 100 miles When the system recalculates achievements Then I receive the “Century Hiker” badge.
  4. Capture Memories
    • Given I have a completed hike When I upload one or more photos and add a note Then the media and note are stored and displayed on the hike detail page.
    • Given I am viewing a hike detail page When I edit the notes field Then the notes update without a page refresh.
  5. GPS Integration

  6. Progress Analytics

  7. User Profile

  8. Start Your Journey Button

4. Goals


5. Project Alignment

The project aligns with:

Scope & Key Features

Plan Your Adventures – schedule hikes, view weather, set start times & itineraries.

Connect with Friends – invite friends, share hikes, activity feed.

Track Achievements – goals, badges, milestones, streaks.

Capture Memories – photos, notes, detailed logs.

GPS Integration – live route tracking, waypoints, map navigation.

Progress Analytics – charts for distance, elevation, duration, trends.

User Profile – history, badges, preferences, privacy.

Start Your Journey – central CTA to plan/log/track a hike.


6. Development Roadmap

Phase 1: Core Setup

Phase 2: Core Features

Phase 3: Social Features

Phase 4: Advanced Features

Phase 5: Testing & Deployment