List of software development philosophies
Software development process |
---|
Core activities |
Methodologies |
Supporting disciplines |
Tools |
|
This is a list of approaches, styles, and philosophies in software development not included in the category tree of software development philosophies. It contains also software development processes, software development methodologies and single practices, principles and laws.
Software development philosophies
Software development philosophies
Programming principles
Programming rules of thumb
Agile Manifesto
Miscellany
- Abstraction principle (programming)
- Alignment of authority and responsibility
- Big Design Up Front (BDUF)
- Black box engineering
- Brooks's law
- Cathedral and the Bazaar (see also Release early, release often (RERO))
- Chief programmer team
- CMMI
- Code and fix
- Cone of Uncertainty
- Continuous integration
- Control tables
- Convention over configuration
- Conway's Law
- Cowboy coding
- Dependency injection
- Design by Contract (DbC)
- Design for Test (DFT)
- 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)
- Easier to Ask Forgiveness than Permission (EAFP)
- Encapsulation (computer science)
- Evolutionary prototyping
- Free software license
- General Responsibility Assignment Software Patterns (GRASP)
- Hofstadter's law
- Hollywood Principle
- Information Hiding
- Interface (computer science)
- Interface (object-oriented programming)
- Inversion of control
- Joint application design, aka JAD or "Joint Application Development"
- Kaizen
- Literate Programming
- Microsoft Solutions Framework (MSF)
- Model-driven architecture (MDA)
- MoSCoW Method
- Naked Objects
- Open source
- Principle of least astonishment (POLA/PLA)
- Principle of good enough (POGE)
- Project triangle
- Program optimization
- Protocol (object-oriented programming)
- Quick-and-dirty
- Rapid prototyping
- Refactoring
- Release early, release often (RERO) - see also The Cathedral and the Bazaar
- Responsibility-driven design (RDD)
- the Right thing, or the MIT approach, as contrasted with the New Jersey style, Worse is better.
- Secure by design
- Separation of concerns (SoC)
- Service-oriented modeling
- Software craftsmanship
- Software System Safety
- Spiral model
- Stepwise Refinement
- Team Software Process (TSP)
- Type-Generic-Profile (TGP) definition at Wards Wiki
- Ubuntu philosophy
- Unix philosophy
- V-Model
- Wheel and spoke model
- The Zen of Python
Programming paradigm
- Agent-oriented programming
- Aspect-oriented Programming (AOP)
- Modular programming
- Object-Oriented Programming (OOP)
- Functional Programming (FP)
Software development methodology
- Agile Unified Process (AUP)
- Dynamic Systems Development Method (DSDM)
- Constructionist design methodology (CDM)
- Crystal Clear
- Extreme Programming (XP)
- Iterative and incremental development
- Kanban
- Lean software development
- Open Unified Process
- Pair programming
- Rapid application development (RAD)
- Rational Unified Process (RUP)
- Scrum
- Structured Systems Analysis and Design Method (SSADM)
- Unified Process (UP)
Software development processes
- Behavior-driven development (BDD)
- Design-driven development (D3)
- Domain-Driven Design (DDD)
- Feature Driven Development (FDD)
- Test-driven development (TDD)
- User-centered design (UCD)
Software metrics
References
- Don't Make Me Think (book by Steve Krug about human computer interaction and web usability)
See also
- Anti-pattern
- Design pattern
- Programming paradigm
- Software development methodology
- Software development process
|