BT

Vaughn Vernon: Challenges in Software Development of Today

| by Jan Stenberg Follow 34 Followers on May 21, 2016. Estimated reading time: 3 minutes |

Projects and development teams are struggling with poorly designed systems, with many developers dedicated to patching systems just to keep them alive. Largely the software development culture is broken, Vaughn Vernon claimed in his presentation at the Domain-Driven Design Europe conference earlier this year, talking about serious problems he has encountered but also about solutions to these problems.

One of the most insidious problems in Vernon’s experience is when an IT department is considered a cost centre and the business views software development as something negative, a drain on the organization that merely cost them money. Such a business doesn’t consider software a game changer, merely something they have to tolerate.

Letting business people spend days writing specifications into a collaboration tool is for Vernon a huge waste of time. Most of the developers don’t use these specifications because they don’t contain the information they need and just leads to poor collaboration. Instead business people and developers should have conversations and in much shorter time come up with a solid design backing the business needs.

A technique Vernon call Task board shuffle is where software design is entirely done by moving a sticky note from the To Do column over to the In Progress column. This lead to a random design each time a note a is moved, leading to a system lacking most of the thoughtful design needed. Too many people think that no design is a form of code or developer economy, but Vernon claims that this is bad economy just leading to bad design.

Vernon firmly believes that to overcome the problems he describes we have to raise the level of developer maturity in teams. To improve the business’ view of a software development department as someone interested in the business we have to help the business to achieve greatness by creating solutions that promote the business further. One way of doing this is to start collaborating with the business. Form teams and create ubiquitous languages for the contexts and models you are working with.

One tool to help in domain modelling is Event storming which Vernon describes as an extremely useful and important tool for finding the bounded contexts. Using a few hours, it’s possible to form a ubiquitous language and an understanding of the context boundaries in a domain. The artefacts coming out of an event storming sessions can also be used as estimation units in a metrics based estimation process that will come close to the real numbers.

Microservices is a hot topic of today that Vernon notes is similar to a Domain-driven design (DDD) bounded context. Deploying microservices at a single component level is for Vernon too small, instead he thinks that microservices created in the size of bounded contexts is a more powerful approach.

Vernon describes the Actor model as an essential tool that we should start to use, maybe even by the majority of developers. The number of cores and amount of memory in servers is increasing and the Actor model is great way of leverage these new resources. His recommendation is to use the Actor model to build microservices around single bounded contexts. He thinks the Actor model often significantly can simplify system and calls such a design a simplicity stack, in contrast to enterprise software of today which often resembles a complexity stack with so many mechanisms involved that it takes months even for a senior developer to fully understand.

Vernon concludes by stating that many teams are struggling with poorly designed systems but that an increased developer maturity together with the use of DDD can make a difference.

Next year’s Domain-Driven Design Europe conference is scheduled for end of January 2017.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT