Practicing PDD - Panic Driven Development

maurofrezza

Mauro Frezza

Posted on July 7, 2019

Practicing PDD - Panic Driven Development

After the initial wave of success of agile development techniques, one particular technique has survived and emerged throughout the years: PDD Panic Driven Development.
This technique shares the core concepts of agile development methodologies but removes all the ceremonies and process burden that reduces velocity in teams.
Let's see more in detail what are the principles of this methodology.

Recent issues have priority

Whenever a new issue comes up in the middle of the sprint, it takes priority over any planned work. New is always better and has higher priority. As a matter of fact it should be one of the principles of the agile development as well.
The focus on delivering value to customer requires the team to take care of new items and postpone previously defined work.

Write enough code to fix the issue

Developers write code for a living. Bugs can be fixed only by code. Design and UX discussion can only slow down the development. Code a solution first, verify your assumptions with the fix.
If the fix works, you solved the issue.

Tests should be a follow-up task

Once the fix is implemented, tests can be planned as a task to be done in the future. Tests are useful but not a priority. You can take care of them later. File a ticket and put it in the backlog.
Manual testing should enough to prove your fix.

Trust your instinct

Programming is art. Art has an intrinsic instinctive component. Trust your gut. Code your solution. Deploy it. Only the bold succeeds.

Process is flexible

Any process put in place to develop, test and release software is just a set of conventions and rules that are not written in stone. Critical fixes require different approaches. It is expected that you bend the process in order to act faster.

It’s a manager driven process

As part of one team, managers are entitled to give their opinions on development matters.
Refactoring or good practices can and should be overruled by business needs. Engineers can express their opinions but they should eventually commit to any need that comes from above.

Conclusion

PDD is a technique that can give great performance improvements in a short period time for every project.
It is practiced by several companies around the world. It represents the core of agile and extreme programming.

💖 💪 🙅 🚩
maurofrezza
Mauro Frezza

Posted on July 7, 2019

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related