Point to Ponder

This is a list of approaches, styles, and philosophies in software development. It contains also software development processes, software development methodologies and single practices, principles and laws.
Agent-oriented programming
Agile software development
Agile Unified Process (AUP)
Aspect-oriented Programming
Behavior Driven Development (BDD)
Big Design Up Front (BDUF)
Blind Men And Elephant Approach (BMAEA)
Brooks's law
Cathedral and the Bazaar (see also Release early, release often)
Code and fix
Cone of Uncertainty
Constructionist design methodology (CDM)
Continuous integration
Control tables
Conway's Law
Cowboy coding
Crystal Clear
Dependency injection
Design-driven development (D3)
Design Driven Testing (DDT)
Domain-Driven Design (DDD)
Don't Make Me Think (book by Steve Krug about human computer interaction and web usability)
Don't repeat yourself (DRY) or Duplication is Evil (DIE) or Once and Only Once (OAOO), Single Point of Truth (SPoT), Single Source Of Truth (SSOT)
Dynamic Systems Development Method (DSDM)
Evolutionary prototyping
Extreme Programming (XP)
Feature Driven Development
Good Enough For Now (GEFN)
Hollywood Principle
Inversion of control
Iterative and incremental development
Joint application design, aka JAD or "Joint Application Development"
Kaizen
Kanban
KISS principle original (Keep It Simple and Stupid), derogatory (Keep It Simple, Stupid!)
Lean software development
Literate Programming
Microsoft Solutions Framework (MSF)
Model-driven architecture (MDA)
MoSCoW Method
Open source
Open Unified Process
Parkinson's Law
Quick-and-dirty
Rapid application development (RAD)
Rational Unified Process (RUP)
Release early, release often (see also The Cathedral and the Bazaar)
Responsibility-driven design (RDD)
Scrum
Separation of concerns (SoC)
Service-oriented modeling
Software Craftsmanship
Software System Safety
Solid (object-oriented design)
Spiral model
Structured Systems Analysis and Design Method (SSADM)
SUMMIT Ascendant (now IBM Rational SUMMIT Ascendant)
Team Software Process (TSP)
Test-driven development (TDD)
Two Tracks Unified Process (2TUP)
Unified Process (UP)
Unix philosophy
V-Model
Waterfall model
Wheel and spoke model
When it's ready [1]
Win-Win Model
Worse is better (New Jersey style, as contrasted with the MIT approach)
You Ain't Gonna Need It (YAGNI)

Source: Wikipedia

Wonder how testing happens in each of these?