# Tasks (https://yapl.app/en/docs/user-guides/tasks)

# Task Management

Tasks are the atomic units of work in YAPL plans. They form the Work Breakdown Structure (WBS) that defines what needs to be done, when, and by whom.

## Understanding Tasks

Tasks in YAPL provide:

- **Work Definition** - What needs to be accomplished
- **Scheduling** - When work happens (dates, duration)
- **Assignment** - Who is responsible
- **Dependencies** - Relationships between tasks
- **Progress Tracking** - Completion and effort monitoring
- **Hierarchy** - Parent-child organization (WBS)

## Task Architecture

```
Task
├── Basic Information
│   ├── Name, Description
│   ├── WBS Code
│   └── Status
├── Scheduling
│   ├── Start Date, End Date
│   ├── Duration
│   └── Constraints
├── Effort Tracking
│   ├── Planned Hours
│   ├── Actual Hours
│   ├── Remaining Hours
│   └── Progress %
├── Relationships
│   ├── Parent Task
│   ├── Subtasks
│   └── Dependencies
├── Assignments
│   ├── Assignees
│   └── Resources
└── Checklists
    └── Checklist Items
```

## In This Section

### Getting Started
- **[Creating Tasks](/docs/user-guides/tasks/creating-tasks)** - Add tasks to your plans

### Configuration
- **[Task Properties](/docs/user-guides/tasks/task-properties)** - Configure task details
- **[Task Statuses](/docs/user-guides/tasks/task-statuses)** - Manage workflow states

### Organization
- **[Task Groups](/docs/user-guides/tasks/task-groups)** - Organize with hierarchy (WBS)
- **[Task Dependencies](/docs/user-guides/tasks/task-dependencies)** - Define relationships

## Quick Reference

| Task | Location |
|------|----------|
| Create task | Plans > [Plan] > Tasks > Add Task |
| Edit task | Click on task in list or Gantt |
| Add subtask | Task > Add Subtask |
| Add dependency | Task > Dependencies |
| Change status | Task > Status dropdown |
| Track progress | Task > Progress |

## Task Limits

| Feature | Basic | Professional |
|---------|-------|--------------|
| Tasks per plan | 200 max | 500 max |
| Subtask depth | Unlimited | Unlimited |
| Dependencies | Yes | Yes |
| Checklists | Yes | Yes |
| Effort tracking | Basic | Full |

## Task Views

Tasks appear in multiple views:

| View | Best For |
|------|----------|
| **Tasks List** | Detailed editing, WBS management |
| **Kanban Board** | Status-based workflow |
| **Gantt Timeline** | Schedule visualization |

## Progress Calculation Modes

| Mode | How Progress Calculates | Restrictions |
|------|------------------------|--------------|
| **Manual** | User sets percentage directly | Available for leaf tasks only |
| **Effort-based** | Actual hours / (Actual + Remaining) × 100 | Available for leaf tasks only |
| **Checklist-based** | Completed items / Total items × 100 | Requires at least one checklist item |
| **Weighted children** | Weighted average of subtask progress | **Required** for parent tasks, not available for leaf tasks |

<Callout type="warn">
**Important Mode Restrictions:**
- **Parent tasks** (tasks with subtasks) **must** use weighted-children mode - their progress is automatically calculated from subtasks
- **Leaf tasks** (tasks without subtasks) **cannot** use weighted-children mode
- **Checklist-based** mode requires adding at least one checklist item first
</Callout>

## Best Practices

### Task Naming

- Use action verbs ("Install", "Review", "Complete")
- Be specific but concise
- Include context if needed

### Task Sizing

- Keep tasks to 1-40 hours of effort
- Break large tasks into subtasks
- Each task should be completable by one person

### Dependencies

- Only add necessary dependencies
- Avoid circular dependencies
- Review critical path regularly

### Progress Tracking

- Update status daily/weekly
- Log actual hours accurately
- Re-estimate remaining work regularly

## Related Topics

- [Plans](/docs/user-guides/plans) - Plan management
- [Gantt Charts](/docs/user-guides/gantt) - Timeline visualization
- [Kanban Board](/docs/user-guides/kanban) - Board-based management
- [Resources](/docs/user-guides/resources) - Resource assignment