SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
Story From the Trenches: How the PSCAD
Development Group Became Agile.
OCTOBER 18, 2011




J. Craig Muller, P. Eng.
Simulation Development Manager, Manitoba HVDC Research Centre

Mark Kulchycki, P. Eng.
Software Architecture Manager, Manitoba HVDC Research Centre
The PSCAD Group
1. Identify the problems

•   Realizing there was a problem
•   Current path was leading us to failure
•   Open up for change
•   Understand it is going to be a process; it wasn’t a
    switch
2. Rebuild the team and open up better
channels for communication

• Team forges their own identity
• Established weekly meetings
• Problems and developments are addressed as a
  team, not as an individual
• Established sense of ownership within the team
3. Change development methodologies

• “One and done” never happens
• It’s impossible to know every requirement ahead of
  time
• Adopted iterative development cycles
• Priorities and market demands change
4. Change project planning to support
changes in development cycles

• Break projects into smaller and smaller tasks
• Keep plans adaptive
• Introduce more milestones
5. Change the process of estimating

• Introduce planning poker
   • Estimate level of complexity rather than time/money
   • All stakeholders are involved
   • Hidden details (possible problems) are exposed
   • Development plans and estimates are agreed upon as a
     consensus
   • Reduces risks and spreads liability amongst everyone
     involved
6. Introduce automated testing

• Builds/Releases can be auto tested at regular
  intervals (weekly, semi-weekly, nightly, etc.)
• Issues/Problems can be caught and addressed
  sooner
• Quality assurance increases
• Productivity increases
7. Change deployment methodologies

• Introduce iterative deployment cycle
   • Reduce the gap between releases
   • Establish regular cycle customers can depend on
• Always have something deployable
• Introduced a Beta program
   • Users become directly involved in development
   • Provides valuable feedback
   • Provides feature usage and application metrics
8. Get involved with local organizations and
events

• Join the Winnipeg Agile User Group
• Attend SDEC
• Seek out addition groups and events
9. Introduce paired-programming

• Product maintenance (bugs, etc.) is addressed as a
  team
• Juniors receive direct mentoring by seniors
• Knowledge base (expertise) is distributed amongst
  the team, away from individuals
• Peer reviews occur automatically
• Quality of solutions and code increases
10. Introduce Kanban boards to track project
development and maintenance

• Provides a dynamic view on the current state of a
  project
• Issues (bottlenecks) are identified early
• Motivates the team involved
• Velocity can be established
11. Keep experimenting with new
methodologies

• Continue to try new things
• Make a point of experimenting with new techniques
  every 6 months or so
• Not everything will work
• Remember it’s a process, it’s organic, it needs to
  grow
Questions?

Contenu connexe

Tendances

Beyond Usability Testing: Assessing the Usefulness of Your Design
Beyond Usability Testing: Assessing the Usefulness of Your DesignBeyond Usability Testing: Assessing the Usefulness of Your Design
Beyond Usability Testing: Assessing the Usefulness of Your Design
Dan Berlin
 
Companion App Design with Qt
Companion App Design with QtCompanion App Design with Qt
Companion App Design with Qt
Qt
 

Tendances (20)

Lean UX for non-UX Professionals
Lean UX for non-UX ProfessionalsLean UX for non-UX Professionals
Lean UX for non-UX Professionals
 
Silicon Valley Agile Leadership Network: Agile for Product Organizations By M...
Silicon Valley Agile Leadership Network: Agile for Product Organizations By M...Silicon Valley Agile Leadership Network: Agile for Product Organizations By M...
Silicon Valley Agile Leadership Network: Agile for Product Organizations By M...
 
Applying Usability to Improve Value and Reduce Risk
Applying Usability to Improve Value and Reduce RiskApplying Usability to Improve Value and Reduce Risk
Applying Usability to Improve Value and Reduce Risk
 
Growing Developer Community One Pull Request At a Time
Growing Developer Community One Pull Request At a TimeGrowing Developer Community One Pull Request At a Time
Growing Developer Community One Pull Request At a Time
 
How User Experience Evolves in a Company - a New Look at UX Maturity Models
How User Experience Evolves in a Company - a New Look at UX Maturity ModelsHow User Experience Evolves in a Company - a New Look at UX Maturity Models
How User Experience Evolves in a Company - a New Look at UX Maturity Models
 
User Story Mapping for Minimum Lovable Products
User Story Mapping for Minimum Lovable ProductsUser Story Mapping for Minimum Lovable Products
User Story Mapping for Minimum Lovable Products
 
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile Challenges
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile ChallengesIs Lean UX Agile’s Brain? How Lean UX Fixes Common Agile Challenges
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile Challenges
 
Demystify DevOps
Demystify DevOpsDemystify DevOps
Demystify DevOps
 
Beyond Usability Testing: Assessing the Usefulness of Your Design
Beyond Usability Testing: Assessing the Usefulness of Your DesignBeyond Usability Testing: Assessing the Usefulness of Your Design
Beyond Usability Testing: Assessing the Usefulness of Your Design
 
The importance of identity and vision to UX designers on agile projects
The importance of  identity and vision to UX designers  on agile projectsThe importance of  identity and vision to UX designers  on agile projects
The importance of identity and vision to UX designers on agile projects
 
Ci in jenkins with openSUSE
Ci in jenkins with openSUSECi in jenkins with openSUSE
Ci in jenkins with openSUSE
 
Info dev flexibility in agile
Info dev flexibility in agileInfo dev flexibility in agile
Info dev flexibility in agile
 
Marty cagan built to learn - ux
Marty cagan built to learn - uxMarty cagan built to learn - ux
Marty cagan built to learn - ux
 
User research + agile = RITE+Krug
User research + agile = RITE+KrugUser research + agile = RITE+Krug
User research + agile = RITE+Krug
 
Integrating User Experience Design into the Product Lifecycle
Integrating User Experience Design into the Product LifecycleIntegrating User Experience Design into the Product Lifecycle
Integrating User Experience Design into the Product Lifecycle
 
Winning Hearts and Minds: Tips for Embedding User Experience in Your Organisa...
Winning Hearts and Minds: Tips for Embedding User Experience in Your Organisa...Winning Hearts and Minds: Tips for Embedding User Experience in Your Organisa...
Winning Hearts and Minds: Tips for Embedding User Experience in Your Organisa...
 
Companion App Design with Qt
Companion App Design with QtCompanion App Design with Qt
Companion App Design with Qt
 
Great Agile in a UX World
Great Agile in a UX WorldGreat Agile in a UX World
Great Agile in a UX World
 
The Pros & Cons of Adhering to a Single 'Best Practice' Framework: Stories fr...
The Pros & Cons of Adhering to a Single 'Best Practice' Framework: Stories fr...The Pros & Cons of Adhering to a Single 'Best Practice' Framework: Stories fr...
The Pros & Cons of Adhering to a Single 'Best Practice' Framework: Stories fr...
 
Research Ready to Build: Compelling Artefacts that Speak Your Agile Team's La...
Research Ready to Build: Compelling Artefacts that Speak Your Agile Team's La...Research Ready to Build: Compelling Artefacts that Speak Your Agile Team's La...
Research Ready to Build: Compelling Artefacts that Speak Your Agile Team's La...
 

Similaire à Pscad agile adoption

Agile Implementations - Tim FitzGerald - US Assure
Agile Implementations - Tim FitzGerald - US AssureAgile Implementations - Tim FitzGerald - US Assure
Agile Implementations - Tim FitzGerald - US Assure
JAX Chamber IT Council
 

Similaire à Pscad agile adoption (20)

Applying both of waterfall and iterative development
Applying both of waterfall and iterative developmentApplying both of waterfall and iterative development
Applying both of waterfall and iterative development
 
How to Pitch a Software Development Initiative and Ignite Culture Change
How to Pitch a Software Development Initiative and Ignite Culture ChangeHow to Pitch a Software Development Initiative and Ignite Culture Change
How to Pitch a Software Development Initiative and Ignite Culture Change
 
Visualisation&agile practices ai2014
Visualisation&agile practices ai2014Visualisation&agile practices ai2014
Visualisation&agile practices ai2014
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 
Agile
AgileAgile
Agile
 
Seminar on Crystal Clear
Seminar on Crystal ClearSeminar on Crystal Clear
Seminar on Crystal Clear
 
Req-usingDesignSprint.pdf
Req-usingDesignSprint.pdfReq-usingDesignSprint.pdf
Req-usingDesignSprint.pdf
 
What are the Tools & Techniques in Agile Project Management?
What are the Tools & Techniques in Agile Project Management?What are the Tools & Techniques in Agile Project Management?
What are the Tools & Techniques in Agile Project Management?
 
Agile Fundamentals for Project Managers.pdf
Agile Fundamentals for Project Managers.pdfAgile Fundamentals for Project Managers.pdf
Agile Fundamentals for Project Managers.pdf
 
SDLC Final (1)
SDLC Final (1)SDLC Final (1)
SDLC Final (1)
 
#Fundamental understanding of agile - By SN Panigrahi
#Fundamental understanding of agile - By SN Panigrahi#Fundamental understanding of agile - By SN Panigrahi
#Fundamental understanding of agile - By SN Panigrahi
 
Agile isd by_lisa_cooney
Agile isd by_lisa_cooneyAgile isd by_lisa_cooney
Agile isd by_lisa_cooney
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandran
 
NetCom Learning : How to Improve Business Processes using Agile
NetCom Learning : How to Improve Business Processes using AgileNetCom Learning : How to Improve Business Processes using Agile
NetCom Learning : How to Improve Business Processes using Agile
 
Scaling Agile - Multiple Team Dynamics
Scaling Agile - Multiple Team DynamicsScaling Agile - Multiple Team Dynamics
Scaling Agile - Multiple Team Dynamics
 
SOFTWARE ENGINEERING
SOFTWARE ENGINEERING  SOFTWARE ENGINEERING
SOFTWARE ENGINEERING
 
Agile Implementations - Tim FitzGerald - US Assure
Agile Implementations - Tim FitzGerald - US AssureAgile Implementations - Tim FitzGerald - US Assure
Agile Implementations - Tim FitzGerald - US Assure
 
Agile 101 for Resource Planners
Agile 101 for Resource PlannersAgile 101 for Resource Planners
Agile 101 for Resource Planners
 
CMMI and Agile
CMMI and AgileCMMI and Agile
CMMI and Agile
 
Agile Software Development and DevOps 21092019
Agile Software Development and DevOps 21092019Agile Software Development and DevOps 21092019
Agile Software Development and DevOps 21092019
 

Plus de sdeconf (18)

S rogalsky user-storymapping
S rogalsky user-storymappingS rogalsky user-storymapping
S rogalsky user-storymapping
 
Sdec 2011 ask_watchlisten_svt
Sdec 2011 ask_watchlisten_svtSdec 2011 ask_watchlisten_svt
Sdec 2011 ask_watchlisten_svt
 
Ro r trilogy-part-1
Ro r trilogy-part-1Ro r trilogy-part-1
Ro r trilogy-part-1
 
Rackforce the cloud
Rackforce the cloudRackforce the cloud
Rackforce the cloud
 
L phillips apm
L phillips apmL phillips apm
L phillips apm
 
J wagner security
J wagner securityJ wagner security
J wagner security
 
G meredith scala
G meredith scalaG meredith scala
G meredith scala
 
Friesens agile adoption
Friesens agile adoptionFriesens agile adoption
Friesens agile adoption
 
Dan perron lim
Dan perron limDan perron lim
Dan perron lim
 
D alpert ux102
D alpert ux102D alpert ux102
D alpert ux102
 
Sdec11.agile ina day
Sdec11.agile ina daySdec11.agile ina day
Sdec11.agile ina day
 
D alpert ux101
D alpert ux101D alpert ux101
D alpert ux101
 
C maksymchuk android
C maksymchuk androidC maksymchuk android
C maksymchuk android
 
C fowler intro-azure
C fowler intro-azureC fowler intro-azure
C fowler intro-azure
 
C fowler azure-dojo
C fowler azure-dojoC fowler azure-dojo
C fowler azure-dojo
 
Booked in agileadoption
Booked in agileadoptionBooked in agileadoption
Booked in agileadoption
 
A baryklo design-patterns
A baryklo design-patternsA baryklo design-patterns
A baryklo design-patterns
 
T bunio active-architecture
T bunio active-architectureT bunio active-architecture
T bunio active-architecture
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Dernier (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 

Pscad agile adoption

  • 1. Story From the Trenches: How the PSCAD Development Group Became Agile. OCTOBER 18, 2011 J. Craig Muller, P. Eng. Simulation Development Manager, Manitoba HVDC Research Centre Mark Kulchycki, P. Eng. Software Architecture Manager, Manitoba HVDC Research Centre
  • 3. 1. Identify the problems • Realizing there was a problem • Current path was leading us to failure • Open up for change • Understand it is going to be a process; it wasn’t a switch
  • 4. 2. Rebuild the team and open up better channels for communication • Team forges their own identity • Established weekly meetings • Problems and developments are addressed as a team, not as an individual • Established sense of ownership within the team
  • 5. 3. Change development methodologies • “One and done” never happens • It’s impossible to know every requirement ahead of time • Adopted iterative development cycles • Priorities and market demands change
  • 6. 4. Change project planning to support changes in development cycles • Break projects into smaller and smaller tasks • Keep plans adaptive • Introduce more milestones
  • 7. 5. Change the process of estimating • Introduce planning poker • Estimate level of complexity rather than time/money • All stakeholders are involved • Hidden details (possible problems) are exposed • Development plans and estimates are agreed upon as a consensus • Reduces risks and spreads liability amongst everyone involved
  • 8. 6. Introduce automated testing • Builds/Releases can be auto tested at regular intervals (weekly, semi-weekly, nightly, etc.) • Issues/Problems can be caught and addressed sooner • Quality assurance increases • Productivity increases
  • 9. 7. Change deployment methodologies • Introduce iterative deployment cycle • Reduce the gap between releases • Establish regular cycle customers can depend on • Always have something deployable • Introduced a Beta program • Users become directly involved in development • Provides valuable feedback • Provides feature usage and application metrics
  • 10. 8. Get involved with local organizations and events • Join the Winnipeg Agile User Group • Attend SDEC • Seek out addition groups and events
  • 11. 9. Introduce paired-programming • Product maintenance (bugs, etc.) is addressed as a team • Juniors receive direct mentoring by seniors • Knowledge base (expertise) is distributed amongst the team, away from individuals • Peer reviews occur automatically • Quality of solutions and code increases
  • 12. 10. Introduce Kanban boards to track project development and maintenance • Provides a dynamic view on the current state of a project • Issues (bottlenecks) are identified early • Motivates the team involved • Velocity can be established
  • 13. 11. Keep experimenting with new methodologies • Continue to try new things • Make a point of experimenting with new techniques every 6 months or so • Not everything will work • Remember it’s a process, it’s organic, it needs to grow