PHP Experience 2016 - [Palestra] Software architecture cant fight the lean startup
Keeping Your PHP Lean
-
Upload
chris-cornutt -
Category
Technology
-
view
1.105 -
download
0
description
Transcript of Keeping Your PHP Lean
![Page 1: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/1.jpg)
Keeping Your PHP Lean
Chris Cornutt [email protected]
ZendCon ’09 - Unconference
Wednesday, October 21, 2009
![Page 2: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/2.jpg)
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
![Page 3: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/3.jpg)
Being Lean
•Customer value
•Mapped value stream
•Continuous flow
•Customer-focused pull
•Strive for perfection
Wednesday, October 21, 2009
![Page 4: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/4.jpg)
History Lesson
•based on Toyota Production System
• “just in time”
•Autonomation
•DOTWIMP
Wednesday, October 21, 2009
![Page 5: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/5.jpg)
Types of Waste•Defects
•Overproduction
•Transportation
•Waiting
• Inventory
•Motion
•Processing
•(Undervaluation)Wednesday, October 21, 2009
![Page 6: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/6.jpg)
Lean Principles•Eliminate waste
•Build quality in
•Create knowledge
•Defer commitment
•Deliver fast
•Respect people
•Optimize the whole
Wednesday, October 21, 2009
![Page 7: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/7.jpg)
Agile vs Lean
•Goals are different
•Scope is different
•Lean refines the process, not just the development
•Play well together
Wednesday, October 21, 2009
![Page 8: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/8.jpg)
AgileDev
BusinessNeeds
Lean thinks
BIGGER
and smaller...
CustomerUse
Wednesday, October 21, 2009
![Page 9: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/9.jpg)
Lean Planning
•Prioritize requirements
•Consider code reuse
• “Last responsible moment”
•Streamline the flow
Wednesday, October 21, 2009
![Page 10: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/10.jpg)
Practice Zero
•Required for effective development
•Source control control
•Scripted builds
•Simpler testing, integration
Wednesday, October 21, 2009
![Page 11: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/11.jpg)
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
![Page 12: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/12.jpg)
Less Code
•Same amount of work
• Just work smarter!
•Fewer lines of code
•Optimized, tested, effective
Wednesday, October 21, 2009
![Page 13: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/13.jpg)
Lean Code
• “Just in time”
•Trim the fat
• Implement best practices
• Justify the future
•Remember the 80/20 rule!
Wednesday, October 21, 2009
![Page 14: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/14.jpg)
Lean Terms
Wednesday, October 21, 2009
![Page 15: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/15.jpg)
Kaizen
•Standardize
•Calculate the performance difference
• Implement it
•Change standard to include new process
•Lather, rinse, repeat
Wednesday, October 21, 2009
![Page 16: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/16.jpg)
Value Stream Map
•Easily find The Problems
•Remove waste
•Focuses on time, not cost
•Assumes that the rest will follow
Wednesday, October 21, 2009
![Page 17: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/17.jpg)
VSM: Waterfall
Wednesday, October 21, 2009
![Page 18: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/18.jpg)
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
![Page 19: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/19.jpg)
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
![Page 20: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/20.jpg)
Kanban : Board
Wednesday, October 21, 2009
![Page 21: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/21.jpg)
Kanban : Board
Wednesday, October 21, 2009
![Page 22: Keeping Your PHP Lean](https://reader031.fdocuments.net/reader031/viewer/2022020306/5552f2d9b4c90587048b4c20/html5/thumbnails/22.jpg)
Chris Cornutt
@enygma
@phpdeveloper
http://joind.in/talk/view/973
Contact
Wednesday, October 21, 2009