The secret driven-development/design acronyms

We’ve all heard of BDD, DDD and TDD but that still leaves 23 letters unaccounted for.

I can now exclusively reveal more! You may recognize some from projects you’ve already worked on but didn’t know had a name much less a recognized methodology.

ADD, Agro Driven Development

Developers code features directly proportional to the amount of heat they are getting from users, sales or managers. Results in a jack-of-all-trades, master of none.

CDD, Clone Driven Design

Features and design are achieved by cloning somebody else’s product thereby removing the pesky overhead of having to come up with ideas of your own. Sure fire way to stay firmly behind the leader.

EDD, Ego Driven Design

Where the direction of the project is dictated purely on an individuals ego and their ability to shout long and hard until they get their own way. The individual involved is rarely the target audience for the product which is often the ego-bruising trigger in the first place.

GDD, Golf Driven Design

Where features and specifications are agreed on the golf course by people who neither use the software nor are responsible for implementing it but want to write off the whole trip as a business expense. With any luck they won’t check the final product.

LDD, Lunch Driven Development

Where features, goals and APIs are decided over lunch by the developers and users who care enough to meet up over their lunch-time. Lunch must not be provided or you stray into Golf Driven Design instead.

PDD, Psychic Driven Development

Where specifications are not so much decided through real communication but rather obtained via a psychic link with potential users with mixed results. Often seen in conjunction with Ego Driven Design.

QDD, Query Driven Development

Every page or screen starts with a question to the user what they want to see, writing that as a SQL/LINQ query statement and then dumping results out via a simple UI. Would likely be better off in Access or Excel but people involved want to claim they have intraweb experience.

XDD, Xenophobic Driven Development

Where the majority of development time is given over to making sure others can’t do anything BUT what the original developers wanted. Typically observed by large sets of exception messages, the absence of hooks and a sprinkling of the sealed keyword.

YDD, Yesterday Driven Development

Features added today are the ones the customers thought they were getting yesterday. Generally used in very-tight rapid methodologies.

ZDD, Zzzzz Driven Development

Every waking hour is given over to the development process at the expense of quality and design ideas that are only appreciated by the sleep-deprived. Normally observed on tight schedules such as those in the gaming industry.

[)amien

18 responses

  1. Avatar for Josh

    VDD, Vapor Driven Development

    Pre-announced projects often used together with CDD to take the wind out of competitors releases. More and more features are added with no real release date in sight. See Duke Nukem Forever for the canonical example.

    Josh 18 February 2009
  2. Avatar for spinodal

    PDD, Panic Driven Development

    All the developers are panicked because of the tight deadlines. And because of this panic and rush they create more bugs and become more panicked. Usually this follows the YDD...

    spinodal 19 February 2009
  3. Avatar for Elizabeth Keogh

    Simply brilliant. Thanks for making me laugh on a Friday afternoon.

    Elizabeth Keogh 20 February 2009
  4. Avatar for tivadj

    HDD, Hack Driven Development

    Code looks like spaghetti. Every change in a program is a hack and can be made only by original author.

    tivadj 20 February 2009
  5. Avatar for GeorgeN

    RDD, Randomly Driven Development Requirements are defined and re-defined randomly with no thought to end-user expectations, needs or simple common sense. Often closely related to EDD.

    GeorgeN 20 February 2009
  6. Avatar for Karl

    ExDD - Exception-driven development. 90% of the code is in catch statements.

    Karl 20 February 2009
  7. Avatar for Aaron Erickson

    You don't have an F entry, so here you go. This is from my upcoming book, "The Nomadic Developer", where I define some terms for the consulting industry:

    Faith Driven-Development

    A development practice also known as “code n’ pray” or “Waterfall”. It relies on an ever knowing business analyst write an Old Testament like book known called “The Requirements”; non-coding architect to write New Testament like book called “The Design”. Once those are done and cast in stone tablets, a developer (you) is called upon to code the system, with results in a situation that resembles the last chapter in the New Testament, called “Revelations”, in which the forces of good and evil fight on a giant battlefield, with massive bloodshed (a process known as “Testing or Quality Assurance”) after which there is a promise of a thousand years of utopia.

    Sadly, it seldom ends this well.

    Aaron Erickson 20 February 2009
  8. Avatar for Hates_

    My favourite (I can't remember who coined the term now) is

    CDD - Christmas Driven Design

    Where you coded how you wished the language worked, rather then how it really works.

    Hates_ 21 February 2009
  9. Avatar for Ryan Farley

    Funny. Quite an entertaining list.

    Ryan Farley 24 February 2009
  10. Avatar for Daniel Flippance

    TDD - Alternate Acronym

    Tea Driven Development: A Tea based approach to developing computer software; The belief that software is best developed in an environment where there is plenty of Tea;

    http://www.danielflippance.com/blog/09-02-24/TDD_-_Tea_Driven_Development.aspx

    Daniel Flippance 1 March 2009
  11. Avatar for Webnov8

    ADD should be Alcohol Driven Development. The best way to write pragmatic code is under the influence :D.

    Webnov8 2 March 2009
  12. Avatar for Ronald Widha

    HDD - Home Driven Development Do whatever it takes to get the job done and go home not in crazy ass hours, where all the real fun programming begins.

    Normally happens when project is not inline with the team's career goals.

    Having other team doing a more exciting project could increase the effectiveness of Home Driven Development to a point where team start to make excuses to go home early. One of the most popular excuse is "I don't need to be here. I can do it from home".

    Ronald Widha 15 March 2009
  13. Avatar for Bleuken

    I thought the acronyms were all for real but its a joke after all. :) You made me smile.

    Bleuken 30 March 2009
  14. Avatar for Bojan

    HDD - Hype Driven Development

    Nobody is sure of what the requirements are, or why the project started - but you're gonna code in the hot new language of the week, use the coolest framework of all time or have it running in no time on the hippest flavour of Linux, or all of the above.

    Bojan 21 May 2009
  15. Avatar for Anders

    CDD - Comment Driven Design. Comment out code untill it works!

    Anders 12 October 2009
  16. Avatar for Kevin Richards

    MDD - Mortgage Driven Development.\nDeliberately make the code unmaintainable, so even if by some miracle or moment of insanity somebody actual puts it in production, there is a job for life. Build all of the whimsical, ego driven features first, and then rebuild them again in a different technology stack, so that development never gets round to building something useful.

    Kevin Richards 15 October 2013