Try free
13 min read Guide 89 of 877

Managing Multiple Projects Simultaneously

Managing multiple projects simultaneously creates coordination overhead: resources split attention, dependencies cross project boundaries, and context switching destroys productivity. GitScrum's portfolio management features—cross-project views, shared resources, and centralized reporting—help teams maintain focus while balancing competing priorities. The key is establishing clear boundaries, reducing context switches, and making project health visible at a glance.

Multi-Project Challenges

Common Problems

MULTI-PROJECT DYSFUNCTION:
┌─────────────────────────────────────────────────────────────┐
│ WHAT GOES WRONG                                             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ RESOURCE FRAGMENTATION:                                     │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Developer Alex:                                         ││
│ │ Monday:    Project A standup, work on A tasks           ││
│ │ Tuesday:   Project B urgent fix, A blocked              ││
│ │ Wednesday: Project C review, back to A                  ││
│ │ Thursday:  B escalation, C testing                      ││
│ │ Friday:    "Where was I on Project A again?"            ││
│ │                                                         ││
│ │ Result: 5 context switches = 60% productivity loss      ││
│ │         Nothing gets done well                          ││
│ │         Burnout in 2-3 months                           ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ PRIORITY CONFUSION:                                         │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Project A PM: "This is our highest priority"            ││
│ │ Project B PM: "This is our highest priority"            ││
│ │ Project C PM: "This is our highest priority"            ││
│ │                                                         ││
│ │ Developer: "...so which one do I work on?"              ││
│ │                                                         ││
│ │ Result: Developer picks easiest, not most important     ││
│ │         Critical deadlines missed                       ││
│ │         No one owns the trade-off decision              ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ HIDDEN DEPENDENCIES:                                        │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Project A needs API from Project B                      ││
│ │ Project B didn't know this                              ││
│ │ Project A blocks for 2 sprints waiting                  ││
│ │                                                         ││
│ │ Result: Cascading delays across projects                ││
│ │         Last-minute scope cuts                          ││
│ │         Unhappy stakeholders everywhere                 ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
└─────────────────────────────────────────────────────────────┘

Context Switching Cost

MEASURING PRODUCTIVITY LOSS:
┌─────────────────────────────────────────────────────────────┐
│ CONTEXT SWITCHING IMPACT                                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ RESEARCH ON TASK SWITCHING:                                 │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Projects │ Context Switches │ Time Lost │ Effective     ││
│ │ ─────────┼──────────────────┼───────────┼───────────    ││
│ │ 1        │ 0                │ 0%        │ 100%          ││
│ │ 2        │ 1/day            │ 20%       │ 80%           ││
│ │ 3        │ 3/day            │ 40%       │ 60%           ││
│ │ 4        │ 6/day            │ 55%       │ 45%           ││
│ │ 5+       │ Many             │ 75%       │ 25%           ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ WHY IT'S SO EXPENSIVE:                                      │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ 1. Mental state reload: ~15-25 minutes                  ││
│ │    "What was I doing? Where's the code? What's blocked?"││
│ │                                                         ││
│ │ 2. Attention residue: Previous task stays in mind       ││
│ │    "I wonder if that PR got merged..."                  ││
│ │                                                         ││
│ │ 3. Cognitive overhead: Keeping multiple contexts        ││
│ │    Memory full, errors increase                         ││
│ │                                                         ││
│ │ 4. Shallow work trap: Never reach deep focus            ││
│ │    Complex problems don't get solved                    ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
└─────────────────────────────────────────────────────────────┘

Resource Allocation Strategies

Dedicated vs Shared Resources

ALLOCATION MODELS:
┌─────────────────────────────────────────────────────────────┐
│ CHOOSING THE RIGHT MODEL                                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ MODEL 1: DEDICATED RESOURCES                                │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐         ││
│ │ │ Project A   │ │ Project B   │ │ Project C   │         ││
│ │ │             │ │             │ │             │         ││
│ │ │ 👤 Dev 1    │ │ 👤 Dev 3    │ │ 👤 Dev 5    │         ││
│ │ │ 👤 Dev 2    │ │ 👤 Dev 4    │ │ 👤 Dev 6    │         ││
│ │ └─────────────┘ └─────────────┘ └─────────────┘         ││
│ │                                                         ││
│ │ ✅ Maximum focus, no context switching                   ││
│ │ ✅ Clear ownership and accountability                    ││
│ │ ❌ Resource underutilization during slow periods         ││
│ │ ❌ Knowledge silos between projects                      ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ MODEL 2: TIME-BOXED ALLOCATION                              │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Week 1-2: Project A (full team)                         ││
│ │ Week 3: Project B (full team)                           ││
│ │ Week 4: Project C (full team)                           ││
│ │ Repeat...                                               ││
│ │                                                         ││
│ │ ✅ Deep focus for extended periods                       ││
│ │ ✅ Clear boundaries on when switching happens            ││
│ │ ❌ Projects wait weeks for attention                     ││
│ │ ❌ Urgent issues can't be addressed immediately          ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ MODEL 3: PRIMARY + SECONDARY ASSIGNMENT                     │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ 👤 Dev 1: Primary: A (80%), Secondary: B (20%)          ││
│ │ 👤 Dev 2: Primary: A (80%), Secondary: C (20%)          ││
│ │ 👤 Dev 3: Primary: B (80%), Secondary: A (20%)          ││
│ │                                                         ││
│ │ Rules:                                                  ││
│ │ • Work on primary 4 days, secondary 1 day               ││
│ │ • Secondary work is scheduled, not interrupt-driven     ││
│ │ • Cross-training ensures backup coverage                ││
│ │                                                         ││
│ │ ✅ Balance between focus and flexibility                 ││
│ │ ✅ Built-in knowledge sharing                            ││
│ │ ⚠️ Requires discipline to maintain boundaries           ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
└─────────────────────────────────────────────────────────────┘

Capacity Planning

REALISTIC CAPACITY:
┌─────────────────────────────────────────────────────────────┐
│ PLANNING ACROSS PROJECTS                                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ AVAILABLE CAPACITY CALCULATION:                             │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Total hours in sprint:           80 hrs (2 weeks)       ││
│ │                                                         ││
│ │ Subtract:                                               ││
│ │   Meetings & ceremonies:        -10 hrs                 ││
│ │   Email, Slack, admin:          -8 hrs                  ││
│ │   Context switch overhead:      -8 hrs (if multi-proj)  ││
│ │   Unexpected interrupts:        -4 hrs                  ││
│ │   ─────────────────────────────                         ││
│ │   Available for focused work:    50 hrs                 ││
│ │                                                         ││
│ │ That's 62% of "full time" actually productive           ││
│ │                                                         ││
│ │ If working on 2 projects:                               ││
│ │   Project A (60%): 30 hours                             ││
│ │   Project B (40%): 20 hours                             ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ IN GITSCRUM:                                                │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Track time per project using Time Tracking              ││
│ │ Compare planned vs actual allocation                    ││
│ │ Adjust future sprints based on real data                ││
│ │                                                         ││
│ │ Time Tracking → Charts → Filter by project              ││
│ │ See: Where did time actually go?                        ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
└─────────────────────────────────────────────────────────────┘

Portfolio Management

Cross-Project Visibility

UNIFIED VIEW IN GITSCRUM:
┌─────────────────────────────────────────────────────────────┐
│ PORTFOLIO DASHBOARD                                         │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ All Projects Overview:                                      │
│ ┌─────────────────────────────────────────────────────────┐│
│ │                                                         ││
│ │ PROJECT      │ SPRINT  │ HEALTH │ TASKS │ BLOCKERS     ││
│ │ ─────────────┼─────────┼────────┼───────┼────────────  ││
│ │ Mobile App   │ 14/20   │ 🟢      │ 23/32 │ 1            ││
│ │ Web Portal   │ 8/15    │ 🟡      │ 12/28 │ 3            ││
│ │ API Platform │ 12/15   │ 🟢      │ 45/52 │ 0            ││
│ │ Data Pipeline│ 3/10    │ 🔴      │ 5/18  │ 5            ││
│ │                                                         ││
│ │ Summary:                                                ││
│ │ • 4 active projects                                     ││
│ │ • 2 healthy, 1 at risk, 1 critical                     ││
│ │ • 9 total blockers requiring attention                 ││
│ │                                                         ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ Filter views:                                               │
│ • All projects                                             │
│ • My assignments only                                      │
│ • Critical/blocked only                                    │
│ • By client/team                                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Dependency Tracking

CROSS-PROJECT DEPENDENCIES:
┌─────────────────────────────────────────────────────────────┐
│ VISUALIZING DEPENDENCIES                                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ DEPENDENCY MAP:                                         ││
│ │                                                         ││
│ │ Mobile App ────depends on────▶ API Platform             ││
│ │    │                              │                     ││
│ │    │                              │                     ││
│ │    └───depends on───▶ Auth Service                      ││
│ │                              │                          ││
│ │                              ▼                          ││
│ │ Web Portal ────depends on────▶ Data Pipeline            ││
│ │                                                         ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ TRACKING IN GITSCRUM:                                       │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ For cross-project dependencies:                         ││
│ │                                                         ││
│ │ Option 1: Link tasks between projects                   ││
│ │   Task MOBILE-45 "User login flow"                      ││
│ │   → Blocked by: API-102 "Auth endpoint"                 ││
│ │                                                         ││
│ │ Option 2: Use Discussions for coordination              ││
│ │   Discussion: "API v2 migration impact"                 ││
│ │   @mobile-team @web-team "When do you need this?"       ││
│ │                                                         ││
│ │ Option 3: Create coordination tasks                     ││
│ │   Task: "[Coord] API v2 rollout sequence"               ││
│ │   Checklist:                                            ││
│ │   ☐ API team deploys v2                                ││
│ │   ☐ Mobile team updates client                         ││
│ │   ☐ Web team updates client                            ││
│ │   ☐ Monitor for issues                                 ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
└─────────────────────────────────────────────────────────────┘

Prioritization Frameworks

Stacking Rank Across Projects

UNIFIED PRIORITY LIST:
┌─────────────────────────────────────────────────────────────┐
│ SINGLE SOURCE OF PRIORITY                                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ PROBLEM: Each PM says their project is highest priority     │
│ SOLUTION: Executive-level stack ranking                     │
│                                                             │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PORTFOLIO PRIORITY (set by leadership):                 ││
│ │                                                         ││
│ │ Rank │ Project       │ Rationale                        ││
│ │ ─────┼───────────────┼───────────────────────────────── ││
│ │ 1    │ Mobile App    │ Q4 launch commitment to client   ││
│ │ 2    │ API Platform  │ Enables Mobile + Web             ││
│ │ 3    │ Web Portal    │ Internal, can slip 2 weeks       ││
│ │ 4    │ Data Pipeline │ Nice-to-have optimizations       ││
│ │                                                         ││
│ │ RULE: When conflicts arise, higher rank wins            ││
│ │       (unless explicitly overridden)                    ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ CONFLICT RESOLUTION:                                        │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Scenario: API team has 1 dev available                  ││
│ │          Mobile needs feature X                         ││
│ │          Web needs feature Y                            ││
│ │                                                         ││
│ │ Resolution: Mobile is higher priority → feature X       ││
│ │                                                         ││
│ │ No negotiation, no politics, just the ranking.          ││
│ │ If Web PM disagrees, escalate to change ranking.        ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
└─────────────────────────────────────────────────────────────┘

WSJF for Cross-Project Prioritization

WEIGHTED SHORTEST JOB FIRST:
┌─────────────────────────────────────────────────────────────┐
│ OBJECTIVE PRIORITIZATION                                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ WSJF = (Business Value + Time Criticality + Risk Reduction) │
│        ────────────────────────────────────────────────────│
│                        Job Size                             │
│                                                             │
│ SCORING (1-10 scale):                                       │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ ITEM              │ Value│ Time │ Risk │ Size│ WSJF    ││
│ │ ──────────────────┼──────┼──────┼──────┼─────┼─────── ││
│ │ Mobile: User Auth │ 10   │ 10   │ 5    │ 3   │ 8.3     ││
│ │ Web: Dashboard    │ 7    │ 5    │ 3    │ 8   │ 1.9     ││
│ │ API: Rate Limiting│ 5    │ 8    │ 9    │ 2   │ 11.0 ★  ││
│ │ Data: ETL Refactor│ 4    │ 2    │ 2    │ 10  │ 0.8     ││
│ │                                                         ││
│ │ Priority order: API Rate Limiting → Mobile Auth →       ││
│ │                 Web Dashboard → Data ETL                ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ Use WSJF when:                                              │
│ • Multiple high-priority requests competing                │
│ • Need objective, defensible prioritization                │
│ • Stakeholders disagree on importance                      │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Team Practices

Reducing Context Switches

PRACTICAL STRATEGIES:
┌─────────────────────────────────────────────────────────────┐
│ MINIMIZING CONTEXT SWITCHING                                │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ STRATEGY 1: PROJECT DAYS                                    │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Mon-Wed: Project A work only                            ││
│ │ Thu-Fri: Project B work only                            ││
│ │                                                         ││
│ │ NO switching mid-day except emergencies                 ││
│ │ Define "emergency" criteria clearly                     ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ STRATEGY 2: BATCH COMMUNICATION                             │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Project A standup: 9:00 AM                              ││
│ │ Project A questions: 9:00-9:30 AM only                  ││
│ │                                                         ││
│ │ Project B standup: 9:30 AM                              ││
│ │ Project B questions: 9:30-10:00 AM only                 ││
│ │                                                         ││
│ │ Rest of day: Focus time, async only                     ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ STRATEGY 3: TASK COMPLETION BEFORE SWITCHING                │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Rule: Finish current task before switching projects     ││
│ │                                                         ││
│ │ ❌ Don't: Jump to Project B while A task half-done       ││
│ │ ✅ Do: Complete A task, then context switch once         ││
│ │                                                         ││
│ │ Smaller tasks = easier to complete before switching     ││
│ │ Break large tasks into <4 hour chunks                   ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ STRATEGY 4: PROTECTED FOCUS TIME                            │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Block 2-3 hour chunks for deep work                     ││
│ │ No meetings, no Slack, no email                         ││
│ │ Put in calendar so PMs respect it                       ││
│ │                                                         ││
│ │ "If it's not an outage, it can wait 3 hours"            ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
└─────────────────────────────────────────────────────────────┘

Reporting

Cross-Project Status Updates

UNIFIED REPORTING:
┌─────────────────────────────────────────────────────────────┐
│ PORTFOLIO STATUS REPORT                                     │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│ Weekly portfolio update (to leadership):                    │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PORTFOLIO HEALTH: 🟡 At Risk                             ││
│ │                                                         ││
│ │ PROJECT SUMMARIES:                                      ││
│ │                                                         ││
│ │ 🟢 Mobile App                                            ││
│ │    Sprint 14 complete, on track for Q4 launch           ││
│ │    No blockers                                          ││
│ │                                                         ││
│ │ 🟢 API Platform                                          ││
│ │    Rate limiting deployed, auth next                    ││
│ │    Dependency: Mobile needs auth by Sprint 16           ││
│ │                                                         ││
│ │ 🟡 Web Portal                                            ││
│ │    Behind 1 week, resource constraint                   ││
│ │    Need: 1 additional frontend dev                      ││
│ │                                                         ││
│ │ 🔴 Data Pipeline                                         ││
│ │    Blocked on infrastructure decision                   ││
│ │    Need: Executive decision on cloud provider           ││
│ │                                                         ││
│ │ CROSS-PROJECT RISKS:                                    ││
│ │ • Mobile launch depends on API auth (due Sprint 16)     ││
│ │ • Web waiting on Data pipeline for analytics            ││
│ │                                                         ││
│ │ DECISIONS NEEDED:                                       ││
│ │ 1. Cloud provider for Data Pipeline                     ││
│ │ 2. Approve Web Portal resource increase                 ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
└─────────────────────────────────────────────────────────────┘