profile

Human DevOps

Friday 5th May 2023 - Getting What You Expect from Your Software Changes

Published 12 months ago • 2 min read

I went shopping for a car a couple of years ago. Now I don’t know much about cars. I knew that I wanted a station wagon and that it had to be comfortable for five and it had to cost a maximum of so much. This limited my choices down to a few marques that I liked or that I had driven and had an opinion on. But when it came down to selecting an actual car, you’re at the mercy of the market. You need to react to an advert quickly, and in reality, you have little time to decide if this one is the one.

After a few disappointments and close calls, I just had to settle for the one that was available to me. In the end, it worked out ok, but I don’t feel that I was very exact about the process, and it probably could have been a better result closer to what I envisaged in the first place.

How often do we feel the same way about software projects? We set out with hope and a glorious idea and end up with a compromise.

We have an idea of some of the elements that we want the system to do but the criteria are often vague and difficult to understand. Why? Because software systems are abstract and illusive - they deliver real business value but between specification and delivery a lot can and will happen. If software were cars then who knows what we’d all end up driving around in.

Unfettered choice is always a poor choice. Saying what we actually want is always the hardest part. If there is a choice we will undoubtedly change our mind until we get to a point where we actually decide on the criteria for making the choice.

What I’m saying is this - it’s all about the context. Context for every situation is vital. Software is no different.

This week’s subject is therefore about getting to know yourself - knowing your requirements better through understanding the reasoning behind your requirements. This week I’ve explored this subject in my blog posts about visualisation and C4 diagram, likewise we touched on this and the use of visualisation in Domain Driven Design in the podcast with Nico Krijnen. It was a really fun episode so please enjoy!

Have a great weekend!

-- Richard


How to Visualise Your Systems

Published on May 5, 2023

In a recent podcast episode, Nico Krijnen and I talked about requirements analysis, especially the use of diagrams – particularly context diagrams and DDD context maps, C4 system diagrams and business process canvases. Understanding, architecting and supporting our systems in a collaborative way is easier when we have diagrams that easily explain what we are… Read More »How to Visualise Your Systems

Read more...

How to Write Good Requirements

Published on May 2, 2023

It is human nature to want to excel at our chosen profession. When given the opportunity, many of us are tempted to show our expertise by listing everything we know on a single piece of paper. Therefore, when we are asked to draw a picture of a system and its interactions, we will put on… Read More »How to Write Good Requirements

Read more...

Podcast: Avoiding Legacy? DDD, Collaborative Architecture and Product Thinking with Nico Krijnen

Published on April 30, 2023

Do you hate legacy or do you love it? Do you accept it or do you want to stamp it out? This time I talk to Nico Krijnen (Lumunis) about the opportunities we have in our legacy codebases to understand our business better, the strategic use of new technologies to make important product improvements, the… Read More »Podcast: Avoiding Legacy? DDD, Collaborative Architecture and Product Thinking with Nico Krijnen

Read more...

Human DevOps

by Richard Bown

Join my newsletter for regular views and news about doing effective, essential human DevOps engineering. I dive into the human factors that make successful DevOps organizations and the teams and platforms at the heart of your socio-technical systems. From leadership to team setup, maximizing performance, tools and techniques.

Read more from Human DevOps

Is it just me, or is April turning out to be a complete stinker? The rain hasn't stopped, it's cold, and it feels more like October or November than it does at the start of spring. This feeling appears to be pervading work at the moment, too—I sense frustration bubbling under at every turn. We need some warm sunshine and a few days off before heading back to the grind. I have a short trip coming up and a few things to look forward to not least the just-announced Fast Flow Conference in London...

4 days ago • 1 min read

It's notable how trends take a long time to get moving, and suddenly, they seem everywhere. For the last month or so, I've been working for the Team Topologies organisation, helping them gather some knowledge about applying their ideas and techniques across the industry. I've been talking to agile and DevOps practitioners, consultants, and coaches, people who are using techniques in organisations to make them more humane, to make them more pleasant places to work, and to improve the flow of...

11 days ago • 2 min read

A couple of weeks ago, I ran the Amstelveen Marathon in support of Suicide Prevention NL. It's the first marathon I've attempted in over 12 years and my fifth overall. My fastest time ever was 3 hours 46 minutes. This time, I hoped to complete it in under 4 hours 30 minutes. I figured that with decent training, including some strength training, I'd be able to manage this okay. However, I really learned an important lesson on the day. I eventually completed it in an undistinguished time of 4...

25 days ago • 2 min read
Share this post