SlideShare a Scribd company logo
Managing Agile CMS Projects
           Sally Kleinfeldt
         Gilbane Conference
          November 2012
Your Website Project

• You’ve chosen a CMS

• Lined up the budget and developers

• Selected a design firm

• Extracted requirements from
  stakeholders
• How are you going to manage it?
Your Website Project

• Medium to large website

• Custom functionality

• Custom theme

• Fixed budget

• Vague or changing requirements

• ==> Agile!
Your Website Project
• Distributed Environment

  • Everyone (client, developers, PM) in
    separate locations
• No full time staff

  • Developers typically work 10 to 20
    hours/week on a project
• ==> Not Agile!
Challenge



How to adopt agile techniques to manage
fixed price, flexible scope projects with a
distributed, part time team?
Solution
•   Adapt and refine agile techniques
• Focus on:

    • Communication

    • Collaboration

    • Stories

    • Estimates
Roles
Roles


• Project owner

• Developer

• Designer

• PM
Project Owner


• Single point of contact

• Domain expert

• Decision maker

• Available for meetings
Developer


• Technical expert

• Open minded

• Honest
Designer



• Part of development team

• Needs feedback on design implications
Project Manager
• Facilitate communication

• Record decisions

• Understand both client and developer
  worlds
• Translate client requests into developer
  language
• Knowledge of CMS key!
Initial Scheduling
You’re Starting the
            Project

• Fixed budget, fixed number of hours

•   First step: create a high level schedule
•   Provides a framework for what you need
    to do when
High Level Schedule


• Divide budget among 3 phases

 • Planning - varies with uncertainty

 • Development - timeboxed iterations

 • Deployment - varies with complexity
Development Iterations


• How many depends on:

 • Available hours

 • Size of team

 • Go-live date
Development Iterations

 • One or two week iterations ideal

 • For a team of 2 developers

  • 5-10 hours PM time

  • 15-40 hours developer time

 • Timeboxed! Must hold to those
   hours
Evaluation Periods


•   Schedule an evaluation week
    between each development iteration
•   Clients need the time to test, reflect,
    meet, adjust priorities
Deployments


•   Several smaller deployments are
    preferable to one mega-deployment
•   Easy to run out of time for fixing bugs if
    postpone deployment to end of project
Planning Phase
Planning


• Discovery

• Story development

• Technical architecture
Discovery

• Clarify problem, solution, expected
    benefits
•   Uncover issues
•   Agree to priorities
•   Build working relationships
Discovery Tools


• Research, interviews, analysis

• Brainstorming session

• Prioritization exercise

• Card sorting exercise
Discovery Outcomes
•   Prioritized requirements
•   Technology recommendations
•   High level data model
•   Information architecture
•   Roadmap of iterations
•   Budget estimates
User Stories

•   Describe a system feature in user terms -
    content editors, site users, site admins...
•   As a [role], I need to [do task] so that
    [business value]
•   Self contained, testable, one to three
    days of work
User Story Development


• PM and project owner write stories

•   An index card worth of information, will
    get fleshed out during development
• PM guides stories to fit CMS functionality
    - work with the CMS not against it
Story Estimation

•   How big is each story? How long will it
    take?
•   Critical information for client - informs
    prioritization
•   Developers learn about the project
    through understanding and estimating
    stories
Planning Poker

• Developers, project owner and PM

•   PM reads story, developers ask
    questions, project owner answers
•   Developers simultaneously “play a card”
    with relative story points (not hours)
•   Define and estimate stories as you need
    them, not all at once
Planning Poker
•   Time consuming, but planning poker
    •   Makes developers understand
        requirements
    •   Makes clients understand development
        trade offs
•   Informed clients can get what they really
    need while minimizing costs
Distributed
          Planning Poker
•   How to play planning poker with a
    remote team?
•   Plugins available for Pivotal Tracker,
    Scrumdo, Jira
•   Free online planning poker from
    Mountain Goat Software:
    http://www.planningpoker.com/
Distributed
         Planning Poker

•   Android and iPhone apps available
    (Google for "free online planning poker")
•   Use a Google Spreadsheet: http://
    fourkitchens.com/blog/2012/07/16/
    scrum-playing-planning-poker-scattered-
    team
Story Prioritization


•   Stories are the “backlog”
•   Have project owner arrange stories in
    backlog in priority order
Technical Architecture


• Define high level technical architecture
  after planning poker
• How to do theming, what add-ons are
  necessary, approach to custom
  development, etc.
Development Iterations
Anatomy of an Iteration
• Client chooses stories based on points
  and priority
• Iteration planning meeting

 • Task breakdown and estimation

 • Story/task assignments

• Daily standup meetings

 • Yesterday, today, blockers
Designers

•   How to integrate UX/UI design into
    development process?
•   A CMS is not a blank slate, some
    designs are easy to implement and some
    not
•   Clients can bring designers to a project
    that don’t know the CMS
Tips for Working With
          Designers
•   Try to include designers in the dev team
•   Have developers review preliminary
    wireframes and graphic designs before
    client sees them
•   Have designers work on wireframes for a
    story at the same time as developers
Designers

•   Have developers mock up functionality
    first using available add-ons and use that
    as basis for wireframe
•   Have designer style all tags and classes
    the CMS will output
•   Make sure designers will be available for
    theming questions for entire project!
Tools
Tools


• “Real” agile relies on co-located teams,
  index cards, white boards
• We need tools that substitute for these
  things
Communication


• Skype

• IRC

• Chat

• Calendar
Agile Development

• Many contenders

 • Jira, Rally, VersionOne, ...

• Hosted SaaS solutions worth checking
  out
 • Pivotal Tracker, Scrumdo
Questions, Discussion?

More Related Content

More from Jazkarta, Inc.

Academic Websites in Plone
Academic Websites in PloneAcademic Websites in Plone
Academic Websites in Plone
Jazkarta, Inc.
 

More from Jazkarta, Inc. (20)

Spend a Week Hacking in Sorrento!
Spend a Week Hacking in Sorrento!Spend a Week Hacking in Sorrento!
Spend a Week Hacking in Sorrento!
 
Plone 5 Upgrades In Real Life
Plone 5 Upgrades In Real LifePlone 5 Upgrades In Real Life
Plone 5 Upgrades In Real Life
 
Accessibility in Plone: The Good, the Bad, and the Ugly
Accessibility in Plone: The Good, the Bad, and the UglyAccessibility in Plone: The Good, the Bad, and the Ugly
Accessibility in Plone: The Good, the Bad, and the Ugly
 
Getting Paid Without GetPaid
Getting Paid Without GetPaidGetting Paid Without GetPaid
Getting Paid Without GetPaid
 
An Open Source Platform for Social Science Research
An Open Source Platform for Social Science ResearchAn Open Source Platform for Social Science Research
An Open Source Platform for Social Science Research
 
For the Love of Volunteers! How Do You Choose the Right Technology to Manage ...
For the Love of Volunteers! How Do You Choose the Right Technology to Manage ...For the Love of Volunteers! How Do You Choose the Right Technology to Manage ...
For the Love of Volunteers! How Do You Choose the Right Technology to Manage ...
 
Anatomy of a Large Website Project
Anatomy of a Large Website ProjectAnatomy of a Large Website Project
Anatomy of a Large Website Project
 
Anatomy of a Large Website Project - With Presenter Notes
Anatomy of a Large Website Project - With Presenter NotesAnatomy of a Large Website Project - With Presenter Notes
Anatomy of a Large Website Project - With Presenter Notes
 
The Mountaineers: Scaling the Heights with Plone
The Mountaineers: Scaling the Heights with PloneThe Mountaineers: Scaling the Heights with Plone
The Mountaineers: Scaling the Heights with Plone
 
Plone Hosting: A Panel Discussion
Plone Hosting: A Panel DiscussionPlone Hosting: A Panel Discussion
Plone Hosting: A Panel Discussion
 
Plone+Salesforce
Plone+SalesforcePlone+Salesforce
Plone+Salesforce
 
Academic Websites in Plone
Academic Websites in PloneAcademic Websites in Plone
Academic Websites in Plone
 
Plone
PlonePlone
Plone
 
Online Exhibits in Plone
Online Exhibits in PloneOnline Exhibits in Plone
Online Exhibits in Plone
 
Online exhibits in Plone
Online exhibits in PloneOnline exhibits in Plone
Online exhibits in Plone
 
ZODB Tips and Tricks
ZODB Tips and TricksZODB Tips and Tricks
ZODB Tips and Tricks
 
Pyramid Deployment and Maintenance
Pyramid Deployment and MaintenancePyramid Deployment and Maintenance
Pyramid Deployment and Maintenance
 
Plone is great... Python is too!
Plone is great... Python is too!Plone is great... Python is too!
Plone is great... Python is too!
 
The Future of Search in Plone
The Future of Search in PloneThe Future of Search in Plone
The Future of Search in Plone
 
Agile Development with Plone
Agile Development with PloneAgile Development with Plone
Agile Development with Plone
 

Recently uploaded

Recently uploaded (20)

Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
Buy Epson EcoTank L3210 Colour Printer Online.pdf
Buy Epson EcoTank L3210 Colour Printer Online.pdfBuy Epson EcoTank L3210 Colour Printer Online.pdf
Buy Epson EcoTank L3210 Colour Printer Online.pdf
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 

Managing Agile CMS Projects

  • 1. Managing Agile CMS Projects Sally Kleinfeldt Gilbane Conference November 2012
  • 2. Your Website Project • You’ve chosen a CMS • Lined up the budget and developers • Selected a design firm • Extracted requirements from stakeholders • How are you going to manage it?
  • 3. Your Website Project • Medium to large website • Custom functionality • Custom theme • Fixed budget • Vague or changing requirements • ==> Agile!
  • 4. Your Website Project • Distributed Environment • Everyone (client, developers, PM) in separate locations • No full time staff • Developers typically work 10 to 20 hours/week on a project • ==> Not Agile!
  • 5. Challenge How to adopt agile techniques to manage fixed price, flexible scope projects with a distributed, part time team?
  • 6. Solution • Adapt and refine agile techniques • Focus on: • Communication • Collaboration • Stories • Estimates
  • 8. Roles • Project owner • Developer • Designer • PM
  • 9. Project Owner • Single point of contact • Domain expert • Decision maker • Available for meetings
  • 10. Developer • Technical expert • Open minded • Honest
  • 11. Designer • Part of development team • Needs feedback on design implications
  • 12. Project Manager • Facilitate communication • Record decisions • Understand both client and developer worlds • Translate client requests into developer language • Knowledge of CMS key!
  • 14. You’re Starting the Project • Fixed budget, fixed number of hours • First step: create a high level schedule • Provides a framework for what you need to do when
  • 15. High Level Schedule • Divide budget among 3 phases • Planning - varies with uncertainty • Development - timeboxed iterations • Deployment - varies with complexity
  • 16. Development Iterations • How many depends on: • Available hours • Size of team • Go-live date
  • 17. Development Iterations • One or two week iterations ideal • For a team of 2 developers • 5-10 hours PM time • 15-40 hours developer time • Timeboxed! Must hold to those hours
  • 18. Evaluation Periods • Schedule an evaluation week between each development iteration • Clients need the time to test, reflect, meet, adjust priorities
  • 19. Deployments • Several smaller deployments are preferable to one mega-deployment • Easy to run out of time for fixing bugs if postpone deployment to end of project
  • 21. Planning • Discovery • Story development • Technical architecture
  • 22. Discovery • Clarify problem, solution, expected benefits • Uncover issues • Agree to priorities • Build working relationships
  • 23. Discovery Tools • Research, interviews, analysis • Brainstorming session • Prioritization exercise • Card sorting exercise
  • 24. Discovery Outcomes • Prioritized requirements • Technology recommendations • High level data model • Information architecture • Roadmap of iterations • Budget estimates
  • 25. User Stories • Describe a system feature in user terms - content editors, site users, site admins... • As a [role], I need to [do task] so that [business value] • Self contained, testable, one to three days of work
  • 26. User Story Development • PM and project owner write stories • An index card worth of information, will get fleshed out during development • PM guides stories to fit CMS functionality - work with the CMS not against it
  • 27. Story Estimation • How big is each story? How long will it take? • Critical information for client - informs prioritization • Developers learn about the project through understanding and estimating stories
  • 28. Planning Poker • Developers, project owner and PM • PM reads story, developers ask questions, project owner answers • Developers simultaneously “play a card” with relative story points (not hours) • Define and estimate stories as you need them, not all at once
  • 29. Planning Poker • Time consuming, but planning poker • Makes developers understand requirements • Makes clients understand development trade offs • Informed clients can get what they really need while minimizing costs
  • 30. Distributed Planning Poker • How to play planning poker with a remote team? • Plugins available for Pivotal Tracker, Scrumdo, Jira • Free online planning poker from Mountain Goat Software: http://www.planningpoker.com/
  • 31. Distributed Planning Poker • Android and iPhone apps available (Google for "free online planning poker") • Use a Google Spreadsheet: http:// fourkitchens.com/blog/2012/07/16/ scrum-playing-planning-poker-scattered- team
  • 32. Story Prioritization • Stories are the “backlog” • Have project owner arrange stories in backlog in priority order
  • 33. Technical Architecture • Define high level technical architecture after planning poker • How to do theming, what add-ons are necessary, approach to custom development, etc.
  • 35. Anatomy of an Iteration • Client chooses stories based on points and priority • Iteration planning meeting • Task breakdown and estimation • Story/task assignments • Daily standup meetings • Yesterday, today, blockers
  • 36. Designers • How to integrate UX/UI design into development process? • A CMS is not a blank slate, some designs are easy to implement and some not • Clients can bring designers to a project that don’t know the CMS
  • 37. Tips for Working With Designers • Try to include designers in the dev team • Have developers review preliminary wireframes and graphic designs before client sees them • Have designers work on wireframes for a story at the same time as developers
  • 38. Designers • Have developers mock up functionality first using available add-ons and use that as basis for wireframe • Have designer style all tags and classes the CMS will output • Make sure designers will be available for theming questions for entire project!
  • 39. Tools
  • 40. Tools • “Real” agile relies on co-located teams, index cards, white boards • We need tools that substitute for these things
  • 42. Agile Development • Many contenders • Jira, Rally, VersionOne, ... • Hosted SaaS solutions worth checking out • Pivotal Tracker, Scrumdo