Keeping Your PHP Lean

3,178 views

Published on

Keeping Your PHP Lean

Published in: Technology, Business
  • Be the first to comment

Keeping Your PHP Lean

  1. Keeping Your PHP Lean Chris Cornutt ccornutt@phpdeveloper.org ZendCon ’09 - Unconference Wednesday, October 21, 2009
  2. What is Lean? The goal of lean thinking is to improve the development of applications by reducing waste both in the development process and in the processes surrounding it. This builds quality into the application and allows you to deliver a more complete, more robust end product. Wednesday, October 21, 2009
  3. Being Lean • Customer value • Mapped value stream • Continuous flow • Customer-focused pull • Strive for perfection Wednesday, October 21, 2009
  4. History Lesson • based on Toyota Production System • “just in time” • Autonomation • DOTWIMP Wednesday, October 21, 2009
  5. Types of Waste • Defects • Overproduction • Transportation • Waiting • Inventory • Motion • Processing • (Undervaluation) Wednesday, October 21, 2009
  6. Lean Principles • Eliminate waste • Build quality in • Create knowledge • Defer commitment • Deliver fast • Respect people • Optimize the whole Wednesday, October 21, 2009
  7. Agile vs Lean • Goals are different • Scope is different • Lean refines the process, not just the development • Play well together Wednesday, October 21, 2009
  8. Lean thinks BIGGER and smaller... Agile Dev Customer Use Business Needs Wednesday, October 21, 2009
  9. Lean Planning • Prioritize requirements • Consider code reuse • “Last responsible moment” • Streamline the flow Wednesday, October 21, 2009
  10. Practice Zero • Required for effective development • Source control control • Scripted builds • Simpler testing, integration Wednesday, October 21, 2009
  11. Importance of Testing • Good tests help with good code • Tests as documentation • Forces the developer to become a user • “Red, Green, Refactor” Wednesday, October 21, 2009
  12. Less Code • Same amount of work • Just work smarter! • Fewer lines of code • Optimized, tested, effective Wednesday, October 21, 2009
  13. Lean Code • “Just in time” • Trim the fat • Implement best practices • Justify the future • Remember the 80/20 rule! Wednesday, October 21, 2009
  14. Lean Terms Wednesday, October 21, 2009
  15. Kaizen • Standardize • Calculate the performance difference • Implement it • Change standard to include new process • Lather, rinse, repeat Wednesday, October 21, 2009
  16. Value Stream Map • Easily find The Problems • Remove waste • Focuses on time, not cost • Assumes that the rest will follow Wednesday, October 21, 2009
  17. VSM: Waterfall Wednesday, October 21, 2009
  18. The Five Whys • Ask “why” • At least five times, more can be good too • Root cause discovery • Discovery along the way Wednesday, October 21, 2009
  19. Kanban • Signal for replenishment • Similar to the Agile boards (post-its) • “Work unit” measurements • Limit each step’s units allowed • Make it visible! Wednesday, October 21, 2009
  20. Kanban : Board Wednesday, October 21, 2009
  21. Kanban : Board Wednesday, October 21, 2009
  22. Contact Chris Cornutt ccornutt@phpdeveloper.org @enygma @phpdeveloper http://joind.in/talk/view/973 Wednesday, October 21, 2009

×