Originally posted on: http://geekswithblogs.net/TimothyK/archive/2014/01/01/software-development-processes-links.aspx
A while ago I did a talk that was a very general overview of many of the popular software development processes being used in the industry. Obviously this is way too much information to cover in a single talk. The point of the talk was certainly not to make everyone in the audience an expert on all the subject matter. It was just to quickly list as many buzz words that I could think of, briefly define each, and describe the problems each process can help solve.
Following the talk I released a large list of additional resources. The real goal of the talk was to point people in the right direction so that they could go forth learn more about any software development process they felt might be beneficial to them or their team. Here is that list.
Buzz Word Summary
Software Engineering, Agile, Lean, DevOps
Waterfall, Extreme Programming (XP), Scrum, Kanban
System Metaphor, User Story, “As a”, System Metaphor, Epic, Cynefin
Backlog Management, Grooming, Story Map
Sprint, Planning Meeting, Planning Game/Poker, Estimate verse Commitment
Velocity, Sustainable Pace
Burn Down Chart, Kanban Board, Cumulative Flow Diagram
Stand Up, 3 Questions, Definition Of Done, Review Meeting
Retrospectives
Coding Standards, Code and Design Reviews, Pair Programming
Technical Debt, Refactoring, Unit Testing (TDD, BDD, ATDD)
Iterative Development, Incremental Development
Version Control, DVCS, Integration
Continuous Delivery, Continuous Release, Feature Toggle
Philosophies
Software Engineering
http://en.wikipedia.org/wiki/Software_engineering_professionalism
http://en.wikipedia.org/wiki/Software_engineering
http://en.wikipedia.org/wiki/Software_crisis
Editorial: Tom DeMarco, Software Engineering: An Idea Whose Time Has Come and Gone?
Agile
http://agilemanifesto.org/
http://agilemanifesto.org/principles.html
http://guide.agilealliance.org/subway.html
Lean
http://en.wikipedia.org/wiki/Lean_software_development
http://en.wikipedia.org/wiki/W._Edwards_Deming
Video (59 min): Barry Hawkings, Agile, Lean, and the Space Between
Systems
Waterfall
http://en.wikipedia.org/wiki/Waterfall_model
[parody] http://www.waterfall2006.com/
Extreme Programming
http://www.extremeprogramming.org/
http://www.extremeprogramming.org/rules.html
http://www.extremeprogramming.org/values.html
Scrum
http://en.wikipedia.org/wiki/Scrum_(development)
Blog Post: Ron Jefferies, What is Scrum?
http://scrumfoundation.com/
http://www.scrum.org/
Video (57 min): Mike Cohn, Getting Agile with Scrum
Kanban
http://en.wikipedia.org/wiki/Kanban_(development)
Video (59 min): Rachel Davies, Moving from Scrum to Kanban
Video (50 min): Karl Scotland, Transform Your Agile Process with Kanban Thinking
Video (51 min): Dave White, Intro to Kanban
DevOps
http://en.wikipedia.org/wiki/DevOps
Blog Post: Matt Watson, What is the Ops in DevOps?
Processes
Adaptive Leadership
Blog Post: Liz Keogh, Cynefin for Devs
Blog: Roy Osherove, Elastic Leadership (or as a podcast (37 min))
User Stories
System Metaphor, http://www.extremeprogramming.org/rules/metaphor.html
Video (59 min): Eric Evans, DDD: putting the model to work
Book: Eric Evans, Domain-Driven Design
Book: Mike Cohn, User Stories Applied
Blog Post: Scott Ambler, Introduction to User Stories
Blog Post: Roman Pichler, User Stories are Not Enough to Create a Great User Experience
Blog Post: Steve Rogalsky, Story Mapping
Blog Posts: Timothy Klenke (shameless plug): The User Story Is The Thing & Reason Based User Stories
Velocity
Blog Post: Martin Fowler, It’s Not Just Standing Up: Patterns for Daily Standup Meetings
http://en.wikipedia.org/wiki/Burn_down_chart
http://en.wikipedia.org/wiki/Kanban_board
Blog Post: Bernd Schiffer, 7 Steps to Build a Kanban Board for a Scrum Team’s Impediments
Article: Creating and Interpreting Cumulative Flow Diagrams
Sustainable Pace, http://www.extremeprogramming.org/rules/overtime.html
Deployment Cycles
Cartoon: Work and How We Do It
Video (30 min): Jez Humble, Continuous Delivery
Book: Jez Humble and David Farley, Continuous Delivery
Retrospectives
Book: Ester Derby and Diana Larsen, Agile Retrospectives
Blog Post: Brad Swanson, Eight tips for better retrospectives
Code Quality
Code and Design Reviews
Blog Post: Jason Cohen, 11 proven practices for more effective, efficient peer code review
Blog Post: Kevin Burke, Why code review beats testing: evidence from decades of programming research
Pair Programing
Book: Laurie Williams and Robert Kessler, Pair Programming Illuminated
Video (10 min): Laurie Williams, Introduction to Pair Programming
Blog Post: Paul Hinze, Pairing vs. Code Review: Comparing Developer Cultures
Blog Post: Jeff Atwood, Pair Programming vs. Code Reviews
Video (38 min): Angela Harms, Does Pair Programming have to suck?
Video (48 min): Woody Zuill, Mob Programming, A Whole Team Approach
Community: Pair With Me
Community: Code Retreat
[parody] Video (2 min): Spooning
Refactoring and Technical Debt
Video (5 min): Ward Cunningham, Debt Metaphor
Q&A: Ron Jeffries, on Technical Debt
Book: Robert “Uncle Bob” Martin, Clean Code (or as a video series)
Book: Martin Fowler, Refactoring
Blog Post: Alistair Cockburn, Incremental versus iterative development
Automated Testing: TDD, BDD, ATDD
Video (50 min): Michael Feathers, The Deep Synergy Between Testability and Good Design
Book: Roy Osherove, The Art Of Unit Testing
Blog Post: Martin Fowler, Mocks Aren’t Stubs
Blog Post: Dan North, Introducing BDD
Version Control
Video (63 min): Source Control Strategies Panel
Blog Post: Paul Hammant, What is Your Branching Model?
Video (61 min): Martin Woodward, Version Control On Your Terms
Book: Scott Chacon, Pro Git
Please add to the comments any links you think should be added to the list.