1 of 42

Managing Complexity: �Best Practices for Software Development Project Managers

2 of 42

This is Alex,

It is the first day for her as a Project Manager

3 of 42

Alex is excited about the new role duties and

4 of 42

  • On Scope
  • On Time
  • On Budget
  • Risks Plan
  • Stakeholders Expectations
  • Change Management
  • Software Quality
  • Tech Complexity
  • Team Communication
  • Team Morale

Alex is excited about the new role duties and she feels overwhelmed

5 of 42

Let’s explore the different issues Alex will need to

face and tips to overcome them all!

6 of 42

Agility, innovation and leadership

Jorge Tutor

Co-Owner

More than 10 years dedicated to online projects, leading teams and helping organizations to develop successful products.

I speak from my own experience as an individual, as a team member, as a software engineer, as an entrepreneur... as a person.

I read, experiment, learn, test, make mistakes, analyze and start again!

jorgetutor.net

7 of 42

  1. Managing Project Scope

What is included in the project

8 of 42

Managing Project Scope

MAIN ISSUES

  • Lack of definition on requirements
  • Unclear/incomplete list of requirements (but fixed price!)
  • Time and Budget over Scope, then Scope!
  • Scope Creep

9 of 42

Managing Project Scope

TIPS

  • Set Clear and Comprehensive definition of: Objectives, Requirements, Deliverables, Assumptions, Constraints, and Exclusions!
  • Work Breakdown Structure (WBS): user stories, epics
  • Monitor and Control (scope creep!)
  • Project Management tools: shared board, Transparency

10 of 42

2. Ensuring Time Delivery

When is the project delivered

11 of 42

Ensuring Time Delivery

MAIN ISSUES

  • Unrealistic Deadlines
  • Unmanaged Scope Creep / Change request
  • Unmanaged Resources constraints and Dependencies
  • Unmanaged Risk Management
  • Unforeseen events (illness, disasters)
  • Technical challenges

12 of 42

Ensuring Time Delivery

TIPS

  • Constraints and dependencies management in advance (all teams)
  • Shared Calendar: Milestones, Sprints, Bank holidays/Vacations…
  • Sprints milestones oriented (all teams)
  • Iterative and Incremental development
  • Realistic deadlines (+ MARGIN!)
  • Identify risks

13 of 42

3. Managing Project Budget

The total projected costs to complete a project over a defined scope and a period of time

14 of 42

Managing Project Budget

MAIN ISSUES

  • Unrealistic budget (Scope, Complexity)
  • Scope creep
  • Resources constraints
  • Lack of visibility into spending
  • Changing requirements
  • Lack of previous experience
  • Uncertainties
  • Fixed-Price Contracts

15 of 42

Managing Project Budget

TIPS

  • Realistic Budgets (Scope, Complexity)
  • Manage change
  • Learn from experience (yours and others)
  • Track/Review spending regularly: communicate with Stakeholders (Transparency)
  • Agile contracts:
    • Time & Materials
    • Time & Materials with spending ceiling,
    • By Sprint (Story points)
    • Fixed Profit (cost/hour + profit)
    • “Money for nothing. Changes for free” (changes same size)

16 of 42

4. Managing Stakeholders Expectations

Those whose interests will be positively or negatively affected as a result of project execution

17 of 42

Managing Stakeholders Expectations

MAIN ISSUES

  • Unrealistic Expectations (start and along the project)
  • Lack of Stakeholders buy-in
  • Conflicts on Stakeholders priorities
  • Lack of transparency
  • Lack of trust
  • Personal misalignment

18 of 42

Managing Stakeholders Expectations

TIPS

  • Define a clear Backlog refinement process
  • Invest time clarifying requirements
  • Share previous experience and solutions
  • Regular communication
  • Be realistic
  • Bad news as soon as possible
  • Build trust: easy to lose!
  • Engage!
  • Shared Goals! WIN-WIN situations

19 of 42

5. Managing Change

Strategies, plans, actions and steps that focus on project change impact

20 of 42

Managing Change

MAIN ISSUES

  • Lack of risk management
  • Resistance to change
  • Poor communication
  • Lack of buy-in from the team
  • Unrealistic expectations
  • Impact on schedule and budget
  • Scope Creep

21 of 42

Managing Change

TIPS

  • Communicate effectively
  • Get buy-in from the team
  • Set realistic expectations
  • Manage scope creep effectively
  • Identify and mitigate technical risks
  • Update the project plan
  • Test thoroughly
  • Be flexible and adaptable

22 of 42

6. Managing Team Communication

Encompass the exchange of information between all the individuals in the project

23 of 42

Managing Team Communication

MAIN ISSUES

  • Duplicated information on different channels
  • Large teams
  • Different communication styles
  • Language barriers, Cultural differences
  • Remote work (unmanaged)
  • Lack of Trust
  • Fear of Conflict
  • Information Overload
  • Lack of time (no communication)

24 of 42

Managing Team Communication

TIPS

  • Establish clear communication guidelines
  • Regularly
  • Single Source of Truth: ONE Right tool
  • Avoid Emails (please!)
  • Be proactive, clear and concise
  • Be respectful, open and honest
  • Context-less communication
  • Resolve conflicts quickly and effectively
  • Lead by example

25 of 42

7. Managing Team Morale

The enthusiasm, excitement, and optimism of a group of coworkers who have common goals

26 of 42

Managing Team Morale

MAIN ISSUES

  • Unrealistic expectations
  • Lack of communication
  • Lack of recognition
  • Unfair treatment
  • Overwork, Lack of work-life balance
  • Toxic work environment
  • Lack of opportunities for growth and development
  • Lack of fun

27 of 42

Managing Team Morale

TIPS

  • Creating a positive and supportive work environment, celebrating successes, and engaging in team-building activities.
  • Be empathetic and supportive
  • Set realistic expectations
  • Recognize and appreciate team members
  • Treat everyone fairly
  • Avoid overwork, Promote work-life balance
  • Provide opportunities for growth and development

28 of 42

8. Ensuring Software Quality

Capability of a software product to conform to requirements

29 of 42

Ensuring Software Quality

MAIN ISSUES

  • Not clear / Ununderstood requirements
  • Poor design
  • Coding errores
  • Integration problems
  • Testing challenges
  • Unrealistic expectations
  • Changing requirements

30 of 42

Ensuring Software Quality

TIPS

  • Define and document quality standards (Definition of Done)
  • Implement a quality assurance (QA) process
  • Use automated testing tools
  • Monitor software quality metrics: code coverage, static analysis
  • Empower a culture of quality
  • Manage change effectively
  • Release the software only when is ready.

31 of 42

9. Managing Technical Complexity

Those that whose interests will be positively or negatively affected as a result of project execution

32 of 42

Managing Technical Complexity

MAIN ISSUES

  • Poor understanding of the technical complexity of the project
  • Lack of communication between the project manager and the technical team
  • Lack of technical expertise on the project team
  • Unrealistic deadlines
  • Technical challenges
  • Poor testing
  • Lack of documentation

33 of 42

Managing Technical Complexity

TIPS

  • Get a good understanding of the technical complexity of the project
  • Communicate effectively with the technical team
  • Build a team with the necessary technical expertise
  • Set realistic deadlines
  • Identify and mitigate technical risks
  • Implement a comprehensive testing plan
  • Create and maintain good documentation
  • Be flexible and adaptable
  • Get help from experienced professionals

34 of 42

10. Managing Project Risks

Undesirable events that may or may not occur during a project

35 of 42

Managing Project Risks

MAIN ISSUES

  • No Plan
  • Unmanaged Dependencies, Agenda incompatibilities
  • Technical difficulties
  • Legal constraints
  • Resources contraints
  • Employee turnover
  • ….

36 of 42

Managing Project Risks

TIPS

  • Risk Management plan: Risk, Consequence, Likelihood, Action plan
  • Explore potential risks: similar projects, past experience (all teams!)
  • Implement Risk Mitigation Plans
  • Balance Risk Mitigation Cost and Benefits (Safety first!)
  • Monitor and Control: Risk Register Log

37 of 42

Find your OWN path!

  • Manage Scope
  • Ensure Time Delivery
  • Manage Budget
  • Manage Risks Plan
  • Manage Stakeholders Expectations
  • Manage Change
  • Ensure Software Quality
  • Manage Technical Complexity
  • Empower Team Communication
  • Empower Team Morale

38 of 42

Share your thoughts!

What questions do you have?

39 of 42

Thanks!

Continue learning…

40 of 42

Join Talks, networking, workshops

The biggest meeting point for the Spanish Drupal Community.

General Talks

22, 23 September

12:00h to 18:30h

41 of 42

Thanks to our Platinum Sponsors!!

42 of 42

Thanks to our Gold, Silver and Bronze Sponsors!!