🎙 Develpreneur Podcast Episode

Audio + transcript

Cover Your Assets Anti-Pattern

In this episode, we discuss the cover your assets anti-pattern, where nobody owns the decision and progress is stalled. We explore the relationship between analysis paralysis and cover your assets and the importance of having a product owner or decision maker to avoid this anti-pattern.

2022-02-18 •Season 16 • Episode 547 •Cover Your Assets Anti-Pattern •Podcast

Summary

In this episode, we discuss the cover your assets anti-pattern, where nobody owns the decision and progress is stalled. We explore the relationship between analysis paralysis and cover your assets and the importance of having a product owner or decision maker to avoid this anti-pattern.

Detailed Notes

The cover your assets anti-pattern is a dysfunctional decision-making process where nobody owns the decision, and progress is stalled. This anti-pattern is related to analysis paralysis, where too much time is spent analyzing and not enough time is spent making decisions. Having a product owner or decision maker is crucial to avoiding this anti-pattern, as they can make decisions and move the project forward. A weekly status can help identify if this anti-pattern is creeping up, and making a decision, even if it's wrong, is better than no decision at all. The episode also mentions the importance of having a clear decision-making process and avoiding the trap of trying to make perfect decisions.

Highlights

  • Analysis paralysis and cover your assets are related issues.
  • Cover your assets is a dysfunctional anti-pattern where nobody owns the decision.
  • Having a product owner or decision maker is crucial to avoiding this anti-pattern.
  • A weekly status can help identify if this anti-pattern is creeping up.
  • Making a decision, even if it's wrong, is better than no decision at all.

Key Takeaways

  • Cover your assets is a dysfunctional anti-pattern where nobody owns the decision.
  • Analysis paralysis and cover your assets are related issues.
  • Having a product owner or decision maker is crucial to avoiding this anti-pattern.
  • Making a decision, even if it's wrong, is better than no decision at all.
  • A weekly status can help identify if this anti-pattern is creeping up.

Practical Lessons

  • Identify the decision-maker and empower them to make decisions.
  • Establish a clear decision-making process to avoid analysis paralysis.
  • Avoid the trap of trying to make perfect decisions and focus on making progress.
  • Use a weekly status to track progress and identify if the cover your assets anti-pattern is creeping up.
  • Remember that making a decision, even if it's wrong, is better than no decision at all.

Strong Lines

  • Sometimes any decision is better than no decision at all.
  • Having a product owner or decision maker is crucial to avoiding the cover your assets anti-pattern.
  • A weekly status can help identify if this anti-pattern is creeping up.

Blog Post Angles

  • The importance of having a clear decision-making process in software development.
  • How to identify and avoid the cover your assets anti-pattern.
  • The role of product owners and decision-makers in software development.
  • The benefits of making decisions quickly and moving forward despite uncertainty.
  • The dangers of analysis paralysis and how to avoid it.

Keywords

  • cover your assets anti-pattern
  • analysis paralysis
  • decision-making process
  • product owner
  • decision maker
  • software development
Transcript Text
Welcome to Building Better Developers, the Developer Nord podcast, where we work on getting better step by step, professionally and personally. Let's get started. Well, hello and welcome back. We'll continue our season where we're looking at software architecture patterns and anti-patterns, and we've gotten into the back half of the season where we're looking at anti-patterns. If you want to talk about patterns, you want to look through those. Those are in the first about dozen plus episodes, and the last few, we started into anti-patterns. This time we're going to continue with the probably well-known phrase at least, but it's the cover your assets anti-pattern. This is I think something that people assume when they look at this anti-pattern is not quite as bad maybe as it is, but we're going to dig into it a little bit and see that it really is a truly dysfunctional anti-pattern. The way cover your assets work is it's a situation where much like analysis paralysis, we spend too much time doing things that are essentially preparing to do things as opposed to getting something done. In a documentation sense, what you will often see is large amounts of content created. So if somebody wanted to say, well, what did you get done? Hey, I wrote this big, long, multi-volume set that is the description of our architecture. The challenge is that when you look into it, well, first challenge is that it was a big, long, multi-volume thing. When you're putting together documentation over something particularly like an architecture and it takes days or weeks for people to sort through it, you've done too much. You're not doing something right. That alone should be a flag that there's an anti-pattern involved. What's worse is that as you get into it as a reader, you realize that there's not really, there's really no decisions made. It's more defining the problem a hundred different ways maybe, but never actually making a decision. A simpler example of this anti-pattern would be when you say, and you say to your friend, your spouse, whatever, hey, let's go out to eat somewhere. And they say, great. And you say, well, where should we go? And they start listing out all of the different places you can go, but with no inclination towards one or the other. So you say, yeah, we could do fast food. We could do sit down food. We could go to this Italian place, this Mexican place, this American food place, this German food place, this French food place. And they just keep walking through stuff, but they never give you an answer. They just tell you the world of possibilities. And that's what cover your assets is instead of actually, I don't know, recommending something or making a decision. What you have is the architecture group says, well, here's all the ways we can do stuff, lays out all these options, lays out all of these possible paths, and then leaves it there. There's no and maybe there is some sort of a metric or something related to those where they say, you know, this one has these pros and cons, that one has those pros and cons. That's not useful in an architecture. We need to know not necessarily and really, in a lot of cases, really don't need to know what are the other things that were considered. We just need to know what was the decision. What did we decide on? How does that work? How do we build that or use that? It's like if you order, if you buy some software for, I don't know, let's say just something simple like a word processor and you want to know, you want to read the little user guide on it to understand how to use it. And instead, it doesn't really tell you that product. It tells you all the other products that are out there and tells you, you know, scores them and says, yeah, these are good. This has pros, this has cons, but never actually tells you about the product you bought and how to use it. We get this in architecture because sometimes we have, we will call them wishy washy people involved in the architectural decision. Or and it could be because they don't, maybe they don't really know. Maybe they don't have the experience to make the decision. In some cases, they don't feel like they have the power or maybe they don't have the power to make a decision. And so instead, they they feel like they're forced to just lay out the options and say, here's all the different options we have. And then that's it. Well, if there's no owner, if there's no decision maker, then you end up in this anti-pattern. And that's what it looks like is when you if you want to see this in the wild, if you want to see what does this look like when you run, you know, if I run into something, is this that anti-pattern? Is this the anti-pattern where we're just covering our assets as opposed to actually, I don't know, getting something done? Which also you may think of it as busy work versus being productive, which you'll have in these situations is a lot of probably documentation or discussion around things, around topics, but never resolution. So you may have meeting after meeting after meeting where we go over what we could do, how we could approach things, but you don't come out with any decisions. Or the decisions are, let's go do more research or here's three or four things we can do. We'll look into those. You're not actually getting to a decision point. It is the case in a lot of these anti-patterns or the instances of this anti-pattern, where just any decision is a step forward. Even even if it was like the wrong decision, the wrong architecture to use for this solution, it still would be better because at least you've made that decision and you can move forward with it. It may be a very difficult, clunky architecture, but that's better than sitting in this cover your assets pattern where nobody owns it. Nobody sticks their neck on the line, basically say, all right, let's make a decision and move on. And you see this often with large teams, but it's really more about multiple groups involved in an architecture. We saw this, it's sometimes a little bit. It can be a thing that we will see with the design by committee where instead of just everybody giving a voice, it's not only that it's just they give a voice and then that's it. There's no push to actually decide on anything, whether it's in or out or whether we do it or not. So avoiding this is actually pretty important. And unfortunately, I have seen this anti pattern far more often than than one would expect because when you look at it, the core problem is that there is no there's no owner. There is no one that is a disorder, at least one person that is a decision maker. Or if there is, they won't make a decision. And I have seen both of those cases. I've seen situations where you have a team or teams involved and nobody is actually the owner. Nobody is actually the decision maker. So you just go around and around discussing things and trying to look busy, but you never can move anywhere because nobody makes a decision. The other situation you'll see at times is an owner or decision maker that doesn't want any piece of that, that they are constantly pushing that off, that they're delegating the decision off to somebody else as opposed to assessing the situation, make a decision and move on. And that's where the anti pattern is. You end up in this basically this cycle of looking busy, but going nowhere. You just literally, in a sense, spinning your wheels. You're just sitting there. You're not going forward at all. You're just there's a lot of work maybe going on. There may be some very busy people, but there is no productivity. And what you'll see as another indicator of this would be if there's some sort of a status weekly, bi-weekly, once a month, something like that, that the status is never really an advancement. It's more, well, we looked into these things or we discussed these options or we expanded the possibilities over here. Nothing to show for it. No decisions. Nothing where they said, okay, this thing is now decided and we can move forward, which is another indicator. If you see a topic even being discussed over and over and over again, it just can. Yes, we're still discussing it. Yes, we're still looking into it. At some point you have to say, look, let's make a decision. It is in a sense related to that analysis paralysis. We're spending all this time analyzing and then cover the assets. Cover your assets. It is the inner pattern is I am providing you a ton of information mostly because I want to be able to say, yes, I provided that as opposed to really focusing on helping a decision maker make a decision. It's not always helpful to just pour data into on to somebody and say, here you go. Sometimes you have to put a little risk into it and say this is a recommendation or this is good or this is bad or this fails this metric or this exceeds this metric. Sometimes you have to actually step up and do something other than provide content. It would be like searching. The Internet's available to find all kinds of information. If you want to figure out how to fix a bug, then go search all over the place. You may find dozens of ways to fix that, but with those you may and probably won't find any recommendations on how you need to do it. What is your approach? You may. Sometimes people will provide solutions and say, hey, this or fixes and say this is a good fix for this situation. But a lot of times it's more, hey, I ran into this. This is what I did to fix it. Okay, that may be useful. It may not. It may be that that person's situation is completely different from yours. Thus, we have sort of the same thing with this anti-pattern is that there is a lot to sort through, which in itself is a time sink. It's going to cost somebody time to go through this. But it's sort of it can be demoralizing because you get to a point where you realize I'm going to dig through all this stuff and I'm going to come out really not knowing any more than I know now. I may have a whole lot of information in my head because I dug through all this stuff, but I may not be any closer to a decision, which then begs the question why bother reading through all that stuff anyways. Now, avoiding this is really comes down to you need to have a product owner or somebody that is a driver of the project, somebody that says, okay, we need to keep moving forward. So we need to have decisions made on this. Now, maybe it is. Hopefully it is the decision maker that just says, you know, we're going to have a certain amount of time and think of like politics, you know, where they debate things like, okay, or I guess a debate in general, you know, you have one minute to present your case. Okay, cool. Present your case. Minute later, we're done. Let's have the other side or somebody else present their case. Give them time. Get it all together. Consider it. Make a decision or, you know, a ruling or whatever and then move forward. So you and status is great to help with this. You'd be probably surprised how often just things like a simple weekly status can highlight these sort of this any pattern starting to creep up. Because you'll see a status that looks basically the same week after week after week. Yeah, there may be some additional content. Some work was done on this thing, but essentially you're languishing and it's it's a little different. You'll see the same kinds of things in like a death march and some of those others where people are moving the goalpost. But this case instead of moving the goalpost, it's you're not moving any closer to the goalpost. You may be running around in circles. You're doing a whole lot of work, maybe going side to side, but not advancing towards the goalpost if that helps. And once you get the the owner or the decision maker, then a lot of times that's it's actually sort of a quick fix because there may be a ton of information. But when it comes to the point where somebody just has to make a decision, then once you make that decision, that is that's like a line in the sand. I seem to more than a line of sand. That's like a waterfall moment almost a watershed moment of basically, okay, we've made this decision. Now we can move on. And yes, you may be in a situation where people want to go back and rehash the decision to get that, you know, all the arguments or whatever, but you can stop that because you can say that decisions made we're moving on whatever debates there it's done. It's closed. We made a decision. We're going to stick with it. We're going to move on. You can backtrack. That's a whole different issue. That's going to be a different anti-pattern that will end up wandering through at some point in the season. But I think that covers it for the covers it for the covers your assets cover your assets anti-pattern. It is it comes down to sometimes any decision is better than no decision. That being said, I'm going to decide to wrap this one up. So go out there and have yourself a great day, a great week, and we will talk to you next time. Thank you for listening to building better developers, the developer nor podcast you can subscribe on Apple podcast, Stitcher, Amazon, anywhere that you can find podcasts. We are there. And remember just a little bit of effort every day ends up adding into great momentum and great success. There are two things I want to mention to help you get a little further along in your embracing of the content of develop an or one is the book. The source code of happiness. You can find links to it on our page out on the developer nor site. You can also find it on Amazon search for Rob Rodhead or source code of happiness. You can get it on Kindle. If you're interested in developing a book, you can find it on the developer nor website, or you can find it on the developer nor website. Or source code of happiness. You can get it on Kindle. If you're an Amazon prime member, you can read it free. A lot of good information there. That'll be a lot easier than trying to dig through all of our past blog posts. The other thing is our mastermind slash mentor group. We meet roughly every other week, and this isn't an opportunity to meet with some other people from a lot of different areas of it. We have a presentation every time we talk about some cool tools and features and things that we've come across, things that we've learned, things that you can use to advance your career today. Just shoot us an email at info at develop a newer.com. If you would like more information, now go out there and have yourself a great one.