Creating an Architectural Kata

June 06, 2024#Software Architecture
Article
Author image.

Sarah Dutkiewicz, Senior Trainer

In our recent webinar, we talked about architectural katas. We explained what they are, how they can be used, and a few different approaches to how others use them. I referenced Ted Neward’s repo of architectural katas. One of the things he points out is that if you are going to lead a kata, suggest a new kata!

For the second part of the webinar, we talked through a new kata - one that hadn’t been added to the repo yet! Let’s talk about the Manufacturing for the Finish Line architectural kata and how I created it.

Finding Inspiration 🤔

As I looked through the architectural kata-log, I kept in mind the many themes that already existed. I wanted to create a kata in an area that wasn’t represented yet. I also wanted to make sure that it was reasonable and not a kata created for the sake of creativity.

A couple weeks prior to the webinar, I took a vacation with my family. While I was disconnected from work, my brain kept tabs on wanting to create a new kata for the webinar. We were at an attraction that talked about a popular vehicle manufacturer when I had that ah-ha moment!

As part of the attraction, there was a video on the history of the company as well as their current operations. At one point, the video mentioned that the vehicle manufacturer could charge a supplier a costly fine if the supplier’s parts were found to be the reason for a production line shutdown. That little tidbit is what triggered me to use it for the kata.

While the manufacturing experience I’ve dealt with was in a different environment, the overall concepts of manufacturing still applied. From sales and marketing to production, those departments and their various costing departments all applied. Research and development, shipping, planning, accounting, quality control, machining, cleaning, and even clean rooms for the clients that required those, there were a lot of different stations with different needs. When it comes to having to make architectural decisions for a manufacturing environment, there are a lot of different architecture characteristics to consider and prioritize, depending on the company’s situation.

The more I thought through my history of manufacturing and also the vehicle manufacturer video from vacation, the more I knew this would be a good kata!

Creating the Kata ✍🏻

These are the elements of a kata:

  • Title
  • Description

This seems too easy - what’s the catch? The description has all the details!

What goes into the description? These are some of the contents of the description. The 1-3 sentences to introduce the scenario seem fairly consistent. After that, there are a variety of other fields that might appear in the description.

  • 1-3 sentences to introduce the scenario
  • Users
  • Requirements
  • Later phase requirements - for those who want to introduce requirements in phases
  • Additional context
  • Restrictions
  • Bonus
  • Credit - for those not created by Ted Neward

Naming the Kata

While I looked through these katas, I knew the tough part would be naming the kata. I took inspiration from both the industry I was representing as well as the vehicle manufacturer, which happens to be in the racing realm. That’s where “the Finish Line” reference comes from!

Users

In my case, having spent time in manufacturing, I was able to provide details about the users. I could have gone into more details, but that’s for moderators/facilitators to flesh out in their own architectural kata sessions.

Requirements

These are the things that are absolutely needed in the system. There are some terms in the requirements that might get people asking for clarity - and that’s intentional. When running an architectural kata, the participants should be asking questions of their customer (played typically by the moderator/facilitator).

In our webinar, one of our participants noted that some of these could be solved by a single system with customizations. Some of these could also be multiple systems integrated with each other. I knew about both of these ideas when I wrote the kata - and made sure to add a note to the additional context.

Additional Context

This is where the gotchas live. If you are in manufacturing, an off-the-shelf enterprise resource planning (ERP) system might seem tempting. However, I added the twist that these won’t work because an off-the-shelf system rarely has all the pieces and parts.

Conclusion

The architectural kata webinar was a fun one to present. It gets us thinking as architects, putting our skills to the test. The architectural kata enables us to have conversations around systems design, understanding and prioritizing architectural characteristics, and maybe even discuss fitness tests!

If you’re interested in having us facilitate an architectural kata for your developers and software architects, contact us today!


Copyright © 2024 NimblePros - All Rights Reserved