Jump to content

User:Hy.lo/Books/List of Software Development Philosophies

From Wikipedia, the free encyclopedia


List of Software Development Philosophies[edit]

List of software development philosophies
Acceptance test–driven development
After the Software Wars
Agile Manifesto
Agile software development
Pull-based agile coaching
Behavior-driven development
Best practice
Comment programming
Composition filters
Cowboy coding
Design-driven development
Domain-driven design
Extreme programming
Fibonacci scale (agile)
Formal methods
Homesteading the Noosphere
Integration competency center
Iterative and incremental development
Kanban (development)
KISS principle
Lean integration
Lean software development
Lightweight methodology
The Magic Cauldron (essay)
Mayo-Smith pyramid
Micro-innovation
Minimalism (computing)
Open/closed principle
Planning poker
PM Declaration of Interdependence
Release early, release often
Retrenchment (computing)
Rule of least power
Scaled Agile Framework
Secure by design
Specification by example
Test double
Continuous test-driven development
Test-driven development
There's more than one way to do it
Transformation Priority Premise
Waterfall model
Worse is better
You aren't gonna need it
Abstraction principle (computer programming)
Code reuse
Cohesion (computer science)
Command–query separation
Composition over inheritance
Coupling (computer programming)
Defensive programming
Dependency inversion principle
Deutsch limit
Discoverability
Fail-fast
GRASP (object-oriented design)
If it ain't broke, don't fix it
Information hiding
Interface segregation principle
Inversion of control
Law of Demeter
Liskov substitution principle
Loose coupling
Ninety-ninety rule
Offensive programming
Principle of least astonishment
Pristine Sources
Separation of concerns
Separation of mechanism and policy
Single responsibility principle
SOLID (object-oriented design)
Uniform access principle
Zen of Python
Zero one infinity rule
Big Design Up Front
Black box
Brooks's law
The Cathedral and the Bazaar
Chief programmer team
Capability Maturity Model Integration
Software development process
Cone of Uncertainty
Continuous integration
Control table
Convention over configuration
Conway's law
Dependency injection
Design by contract
Design for testing
Python syntax and semantics
Encapsulation (computer programming)
Software prototyping
Free software license
Hofstadter's law
Interface (computing)
Protocol (object-oriented programming)
Joint application design
Kaizen
Literate programming
Microsoft Solutions Framework
Model-driven architecture
MoSCoW method
Naked objects
Open-source model
Principle of good enough
Project management triangle
Program optimization
Rapid application development
Code refactoring
Responsibility-driven design
Service-oriented modeling
Software craftsmanship
Software system safety
Spiral model
Top-down and bottom-up design
Team software process
Unix philosophy
V-Model (software development)
Wheel and spoke model
Agent-oriented programming
Aspect-oriented programming
Modular programming
Component-based software engineering
Object-oriented programming
Functional programming
Agile Unified Process
Dynamic systems development method
Constructionist design methodology
OpenUP
Pair programming
Rational Unified Process
Scrum (software development)
Structured systems analysis and design method
Unified Process
Feature-driven development
User-centered design
Value-driven design
Bug-driven development
Anti-pattern
Software design pattern
Programming paradigm
Don't Make Me Think