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.