SlideShare a Scribd company logo
1 of 38
Download to read offline
Agile Development
    with Plone
         Sally Kleinfeldt
   Plone Symposium East 2011
The Accidental PM
• I am not an expert!
• No PM or Agile training
• The developer with domain knowledge
• But small business == many hats
• So now I manage projects
• Use this session to share
Our Plone Projects
• Medium to large websites
• Custom functionality
• Custom theme
• Fixed budget
• Vague or changing requirements
• ==> Agile!
Our Environment
• Distributed
 • Everyone (client, each developers, me) in
    separate locations
• Not full time
 • Developers typically 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?
Our Solution
• Focus on:
 • Communication
 • Collaboration
 • Stories
 • Estimates
• Work in progress!
Roles

• Project owner
• Developer
• Designer
• PM
Roles:
     Project Owner

• Single point of contact
• Domain expert
• Decision maker
• Available for meetings
Roles:
         Developer

• Technical expert
• Open minded
• Honest
Roles:
            Designer

• Part of development team
• Needs feedback on design implications
Roles:
      Project Manager
• Facilitate communication
• Record decisions
• Understand both client and developer
  worlds
• Translate client requests into developer
  language
• Knowledge of Plone key!
Scheduling the Project

• Fixed budget, fixed number of hours
• Divide between
 • Planning - varies with uncertainty
 • Deployment - varies with complexity
 • Development iterations
Scheduling:
Development Iterations
 • How many depends on:
  • Total development hours
  • Size of team
  • Go-live date
Scheduling:
Development Iterations
  • One or two week iterations ideal
   • 5-10 hours PM
   • 15-30 hours devlopers
  • Important to hold to those hours
  • Schedule evaluation weeks between
    iterations!
Planning

• Discovery
• Story development
• Technical architecture
Planning:
            Discovery
• Varies depending on size of project and
  what client has done
• Minimum: 5-10 hours gathering materials
  and discussions with project owner
• Could be many hours of meetings, analysis,
  and a formal report
Planning:
  Story Development

• PM and project owner write stories
• PM guides stories to fit Plone functionality
• There will be content editor stories and
  site user stories
Planning:
       Planning Poker
• Developers, project owner and PM
• We use modified Fibbonacci - 0, .5, 1, 2, 3,
  5, 8, 13, 20, 40, 100
• Trust developers to be independent
• Time consuming, but planning poker
  discussions make developers understand
  requirements and clients understand
  development trade offs
Planning:
Technical Architecture
• A few hours of high level technical planning
  after planning poker
• Developers and PM
• How to do theming, what add-ons are
  necessary, approach to custom
  development, etc.
Development Iterations
• Client chooses stories, guided by PM
• Iteration planning meeting
 • Task breakdown and estimation
 • Story/task assignments
• Daily standup meetings
 • Yesterday, today, blockers
Tools

• “Real” agile relies on co-located teams,
  index cards, white boards
• We need tools that substitute for these
  things
Tools:
     Communication
• Skype
• IRC
• Chat
• Google Calendar
Tools:
   Agile Development

• Many contenders
 • Jira, Rally,VersionOne, ...
• We’ve tried a few
Tools:
   Agile Development
• Trac and plugins
• Pivotal Tracker
• Scrumdo
• Google Docs
Trac
• We use ClueMapper, with its easy Trac/
  Subversion integration
 • Project staff access management
 • Project documentation, including ReST
    formatted Readme files in svn
 • Support tickets after development
Trac

• There are numerous Agile plugins - Agilo,
  Itteco, ScrumBurndown, etc.
• Mostly clunky, too many pieces
• We do not use Trac for development
  iterations - stories and tasks
Pivotal Tracker

• Commercial hosted SaaS solution
• User friendly, nice feature set
• BUT built for full time agile teams with
  back to back, same size iterations
• Does not match our process
ScrumDo
• Commercial hosted SaaS solution
• User friendly, nice feature set
• More flexible iteration scheduling and story
  assignments
• Better task breakdown and assignment
• Written in Python!
Dilemma
• Clients need a tool like ScrumDo that
  provides overview of stories and easy drag
  and drop prioritization and iteration
  planning
• But for developers it doesn’t have the
  flexibility and see-everything-at-once feeling
  of a whiteboard
Google Docs
        To The Rescue
• We use a Google Doc for each iteration
• Easily record stories, tasks, estimates,
  assignments, and actuals
• Everyone can see it and see each other
  editing it during meetings
• It’s the closest thing to a white board and
  index cards
Design

• Perennial question: how to integrate UX/UI
  design into this process
• Plone is not a blank slate, some designs are
  easy to implement and some not
• Clients often bring designers to a project,
  and they don’t know Plone
Design

• 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
Design
• Have developers mock up functionality first
  using available add-ons and use that as basis
  for wireframe
• Create a sample Plone Page using all
  WYSIWYG editor features and make sure
  designer styles them all
• Make sure designer will be available for
  theming questions for entire project!
Questions, Discussion?

More Related Content

Similar to Agile Development with Plone

Enabling Design Reviews with JIRA and Confluence - Atlassian Summit 2012
Enabling Design Reviews with JIRA and Confluence - Atlassian Summit 2012Enabling Design Reviews with JIRA and Confluence - Atlassian Summit 2012
Enabling Design Reviews with JIRA and Confluence - Atlassian Summit 2012
Atlassian
 
How to Integrate UX and Agile
How to Integrate UX and AgileHow to Integrate UX and Agile
How to Integrate UX and Agile
UserZoom
 
The Profession Of IT Architecture
The Profession Of IT ArchitectureThe Profession Of IT Architecture
The Profession Of IT Architecture
Christopher Grant
 

Similar to Agile Development with Plone (20)

Requirements the Last Bottleneck
Requirements the Last BottleneckRequirements the Last Bottleneck
Requirements the Last Bottleneck
 
UX and Agile can be better together
UX and Agile can be better togetherUX and Agile can be better together
UX and Agile can be better together
 
Remote PI Planning: ScrumMaster & RTE Edition
Remote PI Planning: ScrumMaster & RTE Edition   Remote PI Planning: ScrumMaster & RTE Edition
Remote PI Planning: ScrumMaster & RTE Edition
 
DITA Quick Start Webinar Series: Building a Project Plan
DITA Quick Start Webinar Series: Building a Project PlanDITA Quick Start Webinar Series: Building a Project Plan
DITA Quick Start Webinar Series: Building a Project Plan
 
Development Process for Micro Projects
Development Process for Micro ProjectsDevelopment Process for Micro Projects
Development Process for Micro Projects
 
Project management
Project managementProject management
Project management
 
Chapter-4.pptx
Chapter-4.pptxChapter-4.pptx
Chapter-4.pptx
 
Improve your library: Using the 5 Phases of Project Management
Improve your library: Using the 5 Phases of Project Management Improve your library: Using the 5 Phases of Project Management
Improve your library: Using the 5 Phases of Project Management
 
2012 bad camp-project management tools and organization-v4
2012 bad camp-project management tools and organization-v42012 bad camp-project management tools and organization-v4
2012 bad camp-project management tools and organization-v4
 
The Agile Mindset
The Agile MindsetThe Agile Mindset
The Agile Mindset
 
Project Management Basics
Project Management BasicsProject Management Basics
Project Management Basics
 
Enabling Design Reviews with JIRA and Confluence - Atlassian Summit 2012
Enabling Design Reviews with JIRA and Confluence - Atlassian Summit 2012Enabling Design Reviews with JIRA and Confluence - Atlassian Summit 2012
Enabling Design Reviews with JIRA and Confluence - Atlassian Summit 2012
 
Project Management
Project ManagementProject Management
Project Management
 
Agile and UX
Agile and UXAgile and UX
Agile and UX
 
How to Integrate UX and Agile
How to Integrate UX and AgileHow to Integrate UX and Agile
How to Integrate UX and Agile
 
Project management.docx communictionLecture notes Training for Trainers in Ge...
Project management.docx communictionLecture notes Training for Trainers in Ge...Project management.docx communictionLecture notes Training for Trainers in Ge...
Project management.docx communictionLecture notes Training for Trainers in Ge...
 
Microsoft Project Online for Project Managers
Microsoft Project Online for Project ManagersMicrosoft Project Online for Project Managers
Microsoft Project Online for Project Managers
 
The Profession Of IT Architecture
The Profession Of IT ArchitectureThe Profession Of IT Architecture
The Profession Of IT Architecture
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM Watson
 
Adamson "Blueprint for Managing Your Project"
Adamson "Blueprint for Managing Your Project"Adamson "Blueprint for Managing Your Project"
Adamson "Blueprint for Managing Your Project"
 

More from Sally Kleinfeldt

More from Sally Kleinfeldt (6)

The Future of Search in Plone
The Future of Search in PloneThe Future of Search in Plone
The Future of Search in Plone
 
Large Files without the Trials
Large Files without the TrialsLarge Files without the Trials
Large Files without the Trials
 
Scientific Collaboration with Plone: A Case Study
Scientific Collaboration with Plone: A Case StudyScientific Collaboration with Plone: A Case Study
Scientific Collaboration with Plone: A Case Study
 
Scientific Collaboration with Plone: Sharing Bibliographies, Papers, Discussions
Scientific Collaboration with Plone: Sharing Bibliographies, Papers, DiscussionsScientific Collaboration with Plone: Sharing Bibliographies, Papers, Discussions
Scientific Collaboration with Plone: Sharing Bibliographies, Papers, Discussions
 
Plone Web Services
Plone Web ServicesPlone Web Services
Plone Web Services
 
Running a Small Business with Plone
Running a Small Business with PloneRunning a Small Business with Plone
Running a Small Business with Plone
 

Recently uploaded

Recently uploaded (20)

THE BEST IPTV in GERMANY for 2024: IPTVreel
THE BEST IPTV in  GERMANY for 2024: IPTVreelTHE BEST IPTV in  GERMANY for 2024: IPTVreel
THE BEST IPTV in GERMANY for 2024: IPTVreel
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
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
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
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...
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at Comcast
 
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
 
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)
 
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...
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
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
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 

Agile Development with Plone

  • 1. Agile Development with Plone Sally Kleinfeldt Plone Symposium East 2011
  • 2. The Accidental PM • I am not an expert! • No PM or Agile training • The developer with domain knowledge • But small business == many hats • So now I manage projects • Use this session to share
  • 3. Our Plone Projects • Medium to large websites • Custom functionality • Custom theme • Fixed budget • Vague or changing requirements • ==> Agile!
  • 4. Our Environment • Distributed • Everyone (client, each developers, me) in separate locations • Not full time • Developers typically 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. Our Solution • Focus on: • Communication • Collaboration • Stories • Estimates • Work in progress!
  • 7. Roles • Project owner • Developer • Designer • PM
  • 8. Roles: Project Owner • Single point of contact • Domain expert • Decision maker • Available for meetings
  • 9. Roles: Developer • Technical expert • Open minded • Honest
  • 10. Roles: Designer • Part of development team • Needs feedback on design implications
  • 11. Roles: Project Manager • Facilitate communication • Record decisions • Understand both client and developer worlds • Translate client requests into developer language • Knowledge of Plone key!
  • 12. Scheduling the Project • Fixed budget, fixed number of hours • Divide between • Planning - varies with uncertainty • Deployment - varies with complexity • Development iterations
  • 13. Scheduling: Development Iterations • How many depends on: • Total development hours • Size of team • Go-live date
  • 14. Scheduling: Development Iterations • One or two week iterations ideal • 5-10 hours PM • 15-30 hours devlopers • Important to hold to those hours • Schedule evaluation weeks between iterations!
  • 15. Planning • Discovery • Story development • Technical architecture
  • 16. Planning: Discovery • Varies depending on size of project and what client has done • Minimum: 5-10 hours gathering materials and discussions with project owner • Could be many hours of meetings, analysis, and a formal report
  • 17. Planning: Story Development • PM and project owner write stories • PM guides stories to fit Plone functionality • There will be content editor stories and site user stories
  • 18.
  • 19. Planning: Planning Poker • Developers, project owner and PM • We use modified Fibbonacci - 0, .5, 1, 2, 3, 5, 8, 13, 20, 40, 100 • Trust developers to be independent • Time consuming, but planning poker discussions make developers understand requirements and clients understand development trade offs
  • 20. Planning: Technical Architecture • A few hours of high level technical planning after planning poker • Developers and PM • How to do theming, what add-ons are necessary, approach to custom development, etc.
  • 21. Development Iterations • Client chooses stories, guided by PM • Iteration planning meeting • Task breakdown and estimation • Story/task assignments • Daily standup meetings • Yesterday, today, blockers
  • 22. Tools • “Real” agile relies on co-located teams, index cards, white boards • We need tools that substitute for these things
  • 23. Tools: Communication • Skype • IRC • Chat • Google Calendar
  • 24. Tools: Agile Development • Many contenders • Jira, Rally,VersionOne, ... • We’ve tried a few
  • 25. Tools: Agile Development • Trac and plugins • Pivotal Tracker • Scrumdo • Google Docs
  • 26. Trac • We use ClueMapper, with its easy Trac/ Subversion integration • Project staff access management • Project documentation, including ReST formatted Readme files in svn • Support tickets after development
  • 27. Trac • There are numerous Agile plugins - Agilo, Itteco, ScrumBurndown, etc. • Mostly clunky, too many pieces • We do not use Trac for development iterations - stories and tasks
  • 28. Pivotal Tracker • Commercial hosted SaaS solution • User friendly, nice feature set • BUT built for full time agile teams with back to back, same size iterations • Does not match our process
  • 29.
  • 30. ScrumDo • Commercial hosted SaaS solution • User friendly, nice feature set • More flexible iteration scheduling and story assignments • Better task breakdown and assignment • Written in Python!
  • 31.
  • 32. Dilemma • Clients need a tool like ScrumDo that provides overview of stories and easy drag and drop prioritization and iteration planning • But for developers it doesn’t have the flexibility and see-everything-at-once feeling of a whiteboard
  • 33. Google Docs To The Rescue • We use a Google Doc for each iteration • Easily record stories, tasks, estimates, assignments, and actuals • Everyone can see it and see each other editing it during meetings • It’s the closest thing to a white board and index cards
  • 34.
  • 35. Design • Perennial question: how to integrate UX/UI design into this process • Plone is not a blank slate, some designs are easy to implement and some not • Clients often bring designers to a project, and they don’t know Plone
  • 36. Design • 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
  • 37. Design • Have developers mock up functionality first using available add-ons and use that as basis for wireframe • Create a sample Plone Page using all WYSIWYG editor features and make sure designer styles them all • Make sure designer will be available for theming questions for entire project!