The approach of software development rhythms seeks to answer the key question of whether programmer productivity is impacted by the various agile practices, rather than by any single software development method.
says, "Programming sometimes seems challenging but it flows. Every step forward makes the next step forward easier. Success builds on success." Gorman
adds that "agile", "lean" and "evolutionary" are strategies that need to be properly understood and appropriately applied to any specific context. Thus, software teams need to harmonize practices, people, and software and this leads us to what is called Software Development Rhythms. In eXtreme programming explained, 2nd Edition
Beck observes that rhythms operate at all different scales.
Lui (PhD) and Chan (PhD) define that software development rhythms (SDR) respects and builds upon the inherent flexibility of agile practices
(e.g. pair programming
, test-driven development
, stand-up meeting
, plagiarism programming etc), focusing on understanding the "why and when" of the effective application of practice-move-practice or activity-move-activity.
Examples of Software Development Rhythm
- Lui, K.M. and Chan, K.C.C. (2008) Software Development Rhythms: Harmonizing Agile Practices for Synergy, John Wiley and Sons, ISBN 978-0-470-07386-5
- Beck, K. and Andres, C. (2005) Extreme Programming Explained: Embrace Change, Second Edition, Addison-Wesley, ISBN 0-321-27865-8
- Shewhart, Walter Andrew (1939). Statistical Method from the Viewpoint of Quality Control. New York: Dover. ISBN 0-486-65232-7.
- Beck, K., Leddy, J. and Wake, W.(2005) Cutting with the Grain: The Rhythms of Design, http://www.threeriversinstitute.org/Cutting%20with%20the%20Grain.pdf
- Software Development Rhythms