Design Principles at a glance. I will be adding more in coming days.

KISS
  • keep it simple and stupid
  • Keep it simple, stupid!
  • Keep it short and simple
  • The KISS principle states that simplicity should be a key goal in design, and that unnecessary complexity should be avoided
    YAGNI You ain’t gonna need it It is the principle in extreme programming that programmers should not add functionality until it is necessary
    DRY
  • Don’t Repeat Yourself
  • Duplication is Evil
  • Aimed at reducing repetition of information of all kinds. Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
    SOC Separation of Concerns It is the process of separating a computer program into distinct features that overlap in functionality as little as possible
    SRP Single Responsibility Principle Every object should have a single responsibility, and that responsibility should be entirely encapsulated by the class. All its services should be narrowly aligned with that responsibility.
    TDD Test Driven Development Is a software development technique that relies on the repetition of a very short development cycle: First the developer writes a failing automated test case that defines a desired improvement or new function, then produces code to pass that test and finally refractors the new code to acceptable standards.
    CI Continuous Integration continuous integration  implements continuous processes of applying quality control - small pieces of effort, applied frequently.
    BDD Behavior Driven Development Is an Agile software development technique that encourages collaboration between developers, QA and non-technical or business participants in a software project.
    DDD Domain Driven Design Is an approach to developing software for complex needs by deeply connecting the implementation to an evolving model of the core business concepts.
    POEAA Patterns of Enterprise Application Architecture A book by Martin Flower
    VN:F [1.1.6_502]
    Rating: 0.0/5 (0 votes cast)
    Share:
    • Digg
    • del.icio.us
    • Facebook
    • Google
    • DotNetKicks
    • LinkedIn
    • Live
    • MySpace
    • StumbleUpon
    • Technorati

    Related posts:

    1. Agile Software Development
    2. Sample applications for your Architecture case study
    3. Application Architecture for .NET: Designing Applications and Services
    4. patterns & practices Application Architecture Guide - v2.0 beta
    5. Visual Studio 2010 – my read bits