Files
docs/src/content/docs/mentorship/05-technical-breakdown.md
T
naomi b718aa650b
Node.js CI / Lint and Test (push) Successful in 58s
Security Scan / Security Audit (push) Failing after 5m2s
feat: overhaul many things (#17)
### Explanation

_No response_

### Issue

_No response_

### Attestations

- [ ] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/)
- [ ] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/).
- [ ] My contribution complies with the [Contributor Covenant](https://docs.nhcarrigan.com/dev/covenant/).

### Dependencies

- [ ] I have pinned the dependencies to a specific patch version.

### Style

- [ ] I have run the linter and resolved any errors.
- [ ] My pull request uses an appropriate title, matching the conventional commit standards.
- [ ] My scope of feat/fix/chore/etc. correctly matches the nature of changes in my pull request.

### Tests

- [ ] My contribution adds new code, and I have added tests to cover it.
- [ ] My contribution modifies existing code, and I have updated the tests to reflect these changes.
- [ ] All new and existing tests pass locally with my changes.
- [ ] Code coverage remains at or above the configured threshold.

### Documentation

_No response_

### Versioning

_No response_

Reviewed-on: #17
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
2025-12-16 06:15:26 +01:00

8.9 KiB

title
title
05. Technical Breakdown

ESTABLISHING TECHNICAL BREAKDOWN PROCEDURES AND REQUIREMENTS FOR MENTORSHIP PROGRAMME PARTICIPANTS

1.1. Policy Overview

This Technical Breakdown Documentation (hereinafter referred to as "the Documentation") establishes mandatory procedures and requirements for technical breakdown activities within our Mentorship Programme. This Documentation operates within our comprehensive legal and policy framework, incorporating our Terms of Service, Privacy Policy, Community Code of Conduct, Mentorship Programme Terms and Conditions, and all applicable legal protections by reference.

1.2. Scope and Applicability

This Documentation applies to all participants in our Mentorship Programme following completion of user story development procedures. All participants should complete the technical breakdown process set forth in this Documentation to proceed with development work.

IMPORTANT: This is a self-guided process. You will fill out technical breakdown templates independently for each user story. No review or approval is required to proceed. For comprehensive information about the self-guided programme structure and how to get the most value from your mentorship experience, please refer to our Mentorship Programme Terms and Conditions.

2. TECHNICAL BREAKDOWN INITIATION

2.1. Timing and Prerequisites

Technical breakdown procedures should be initiated following completion of user story development as outlined in our User Stories Documentation.

2.2. Technical Breakdown Template

You will add the technical breakdown template (set forth in Section 3 of this Documentation) to each user story issue yourself. The template is provided below for your reference.

## 🎯 Acceptance Criteria
- [ ] Criteria 1 (clear, testable condition)
- [ ] Criteria 2
- [ ] Criteria 3

---

## ⚙️ Technical Details
- Proposed implementation approach:
  - [ ] e.g., API endpoint, UI component, database schema changes
- Data considerations:
  - [ ] Models, validation, storage needs
- Security/permissions:
  - [ ] Any auth or role checks?

---

## 🔗 Dependencies
- [ ] Related tickets or features
- [ ] External services or APIs
- [ ] Libraries or frameworks required

---

## 🧪 Testing Notes
- [ ] Unit tests to cover…
- [ ] Integration tests to cover…
- [ ] Manual QA steps…

---

## 📂 Additional Context
- Links to designs, diagrams, or docs
- Any constraints or assumptions
- Open questions / things to clarify

2.3. Template Purpose and Requirements

Template Purpose: This template is specifically designed to help you understand how to break down user stories into actionable technical components.

Completion Requirements:

  • Fill out the technical breakdown template for each user story
  • Template completion should be thorough and detailed
  • Address all sections of the template to the best of your ability
  • You can ask for guidance in Discord if you have questions, but this is optional

Planning Importance:

  • Comprehensive planning at this stage reduces the need for refactoring during development
  • Detailed technical breakdown facilitates more efficient and effective development work
  • Thorough planning helps identify potential challenges and dependencies early in the process

3. TECHNICAL BREAKDOWN TEMPLATE

3.1. Template Structure

The technical breakdown template includes the following sections:

3.1.1 Acceptance Criteria:

  • Clear, testable conditions that must be met for the user story to be considered complete
  • Criteria should be specific, measurable, and verifiable

3.1.2 Technical Details:

  • Proposed implementation approach (e.g., API endpoints, UI components, database schema changes)
  • Data considerations (models, validation, storage needs)
  • Security and permissions requirements (authentication, role checks, access controls)

3.1.3 Dependencies:

  • Related tickets or features that must be completed first
  • External services or APIs required for implementation
  • Libraries or frameworks necessary for development

3.1.4 Testing Notes:

  • Unit tests required to cover functionality
  • Integration tests needed for component interaction
  • Manual QA steps for validation

3.1.5 Additional Context:

  • Links to designs, diagrams, or documentation
  • Constraints or assumptions affecting implementation
  • Open questions or items requiring clarification

3.2. Template Format

The technical breakdown template format is as follows:

4. TECHNICAL BREAKDOWN EXAMPLE

4.1. Example User Story

The following example demonstrates proper technical breakdown completion. For a user story stating "As a user, I should be able to add a game to my library," the technical breakdown would be completed as follows:

Required Action: Edit the issue body to fill in the template with the following information:

🎯 Acceptance Criteria
- [ ] User can add game to library
- [ ] User can remove game from library

---

⚙️ Technical Details
- Proposed implementation approach:
  - [ ] POST /library
  - [ ] DELETE /library
- Data considerations:
  - [ ] User model must have library property
  - [ ] Library property must be array with game IDs
  - [ ] Each ID points to a Game model record
- Security/permissions:
  - [ ] Validate JWT to ensure authenticated user is correct
  - [ ] Authenticated user can only add games to their own library

---

🔗 Dependencies
- [ ] #2 - Authentication is required to edit my library
- [ ] #5 - Profile UI necessary to get to this view

---

🧪 Testing Notes
- [ ] POST and DELETE routes should be tested with mock data
- [ ] UI should be tested to ensure functionality

---

📂 Additional Context

- Relational data model means using Mongo might not be the best choice. Should we re-evaluate?
- Consider a GET route for displaying the library.

5. TECHNICAL BREAKDOWN COMPLETION

5.1. Completion Requirements

Complete the technical breakdown template for each user story. Completion includes:

  • Filling out all sections of the template to the best of your ability
  • Providing detailed, specific information in each section
  • Identifying dependencies, testing requirements, and technical considerations
  • Seeking clarification from programme leadership or community members if needed (optional)

5.2. Optional Review

No Review Required:

  • You do not need review or approval to proceed
  • Once you have completed technical breakdowns for your user stories, you are ready to proceed to priority and effort assignment
  • Your technical breakdowns are living documents that you can update as needed

Optional Review:

  • If you would like feedback on your technical breakdowns, you can:
    • Request review in the #mentee-chat channel in Discord
    • Ask community members or alumni for peer review
    • Review technical breakdown examples in the resource library for comparison

Next Steps:

  • Upon completing your technical breakdowns, you are ready to proceed to priority and effort assignment
  • Priority and effort assignment procedures are outlined in our Priority and Effort Documentation

6. LIMITATION OF LIABILITY AND DISCLAIMERS

6.1. Reference to Comprehensive Liability Framework

IMPORTANT: Comprehensive liability limitations, damage exclusions, and maximum liability caps are set forth in our Limitation of Liability and Indemnification Policy, which is incorporated herein by reference.

6.2. Technical Breakdown Disclaimer

This Documentation establishes technical breakdown procedures and requirements. However:

  • Programme leadership reserves the right to modify technical breakdown procedures at any time
  • Technical breakdowns are created by participants and serve as guidance, not guarantees
  • Programme leadership is not responsible for participants' ability to complete technical breakdowns as planned
  • Individual results may vary based on participant effort, technical knowledge, and other factors
  • Reviews and approvals are optional and available upon request

7. CONCLUSION

This Technical Breakdown Documentation establishes the procedures and requirements for technical breakdown activities within our Mentorship Programme. All participants must complete these procedures to progress to development stages.

Questions about technical breakdown procedures should be directed to programme leadership through designated communication channels. For comprehensive programme terms and conditions, please refer to our Mentorship Programme Terms and Conditions.


For questions about technical breakdown procedures or programme participation, please contact programme leadership through the designated channels outlined in our Community Code of Conduct.

:::tip[Helpful Links]