List of software development philosophies
This is a list of approaches, styles, and philosophies in software development. It also contains programming paradigms, software development methodologies, software development processes, and single practices, principles and laws.
Software development |
---|
Core activities |
Paradigms and models |
Methodologies and frameworks |
Supporting disciplines |
Practices |
Tools |
Standards and Bodies of Knowledge |
|
Glossaries |
Outlines |
Software development philosophies
Large-scale programming styles:
- Behavior-driven development
- Design-driven development
- Domain-driven design
- Secure by design
- Test-driven development
Specification-related paradigms:
Comprehensive systems:
- Agile software development
- Lightweight methodology
- Kanban (development)
- Cowboy coding (a non-system)
Rules of thumb:
- KISS principle
- Minimalism (computing)
- Open–closed principle
- Release early, release often
- Robustness principle
- Rule of least power
- There's more than one way to do it
- Unix philosophy
- Worse is better
- You aren't gonna need it (YAGNI)
- Don't repeat yourself (DRY)
- SOLID (object-oriented design)
- Single source of truth (SSOT)
- Single version of the truth (SVOT)
Other:
- The Cathedral and the Bazaar - book comparing top-down vs. bottom-up open-source software
Programming paradigms
Software development methodologies
- Agile Unified Process (AUP)
- Constructionist design methodology (CDM)
- Dynamic systems development method (DSDM)
- 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
- Active-Admin-driven development (AADD)
- Behavior-driven development (BDD)
- Bug-driven development (BgDD)
- Configuration-driven development (CDD)
- Design-driven development (D3)
- Domain-driven design (DDD)
- Feature-driven development (FDD)
- Test-driven development (TDD)
- User-centered design (UCD)
- Value-driven design (VDD)
gollark: Shape card manual, I think.
gollark: <@441604126514741258> did you look at the RFTools quarry thing?
gollark: Apparently zinc generates more in mesas and hills if it helps at all. It might just be very far. Quarrying should help.
gollark: But you'd have to run rails that far.
gollark: Me, with the power of "looking at the names of region files".
See also
- Anti-pattern
- Design pattern
- Programming paradigm
- Software development methodology
- Software development process
References
- Don't Make Me Think (book by Steve Krug about human computer interaction and web usability)
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.