Episode 30
The Business of Legacy - Making Software Change Successful
We are bombarded with the need for business change - which means systems change. At the same time, we need to be faster, safer and more secure than ever. How can you learn to make software delivery effortless, and how can you use the best knowledge on the planet to help you?
In this episode, I introduce the best books on software and IT change in business and how I would deliver effortless change dependent on context. If you want to know where to start tackling legacy systems change, start here.
NOTES
Check out this link for the map of the Books I mention in the podcast:
https://richardwbown.com/how-does-ability-to-innovate-impact-bottom-line/
- Domain Driven Design by Eric Evans (the blue book)
- Test Driven Development by Example by Kent Beck
- Out of the Crisis by W. Edwards Deming
- The Phoenix Project and the Unicorn Project by Gene Kim et al
- Team Topologies by Matthew Skelton and Manuel Pais
- The Goal by Eli Goldratt
- Crossing the Chasm by Geoffrey A Moore
- Working Effectively with Legacy Code by Michael Feathers
- Obviously Awesome by April Dunford
- Accelerate by Nicole Forsgren, Jez Humble and Gene Kim
- The Value Flywheel Effect by David Anderson et al
- The DevOps Handbook by Gene Kim, Jez Humble, Patrick Debois, John Willis and Nicole Forsgren
QUOTES
[01:18] "So what is the secret glue that holds successful tech companies together and lets them succeed with it and software delivery where others fail?" [RB]
[01:55] "From what I can see, there is no secret to success in software change for your business. You need to be clear, consistent, pragmatic" [RB]
[02:22] "These are some of the lessons already distilled from the biggest and the best companies on the planet" [RB]
[02:37] "This, how quickly can your systems react and anticipate to changing market conditions? " [RB]
[03:47] "Almost anyone can manage IT and software delivery but the best always ask what appear to be on the surface, the most obscure, unrelated, or perhaps downright stupid questions." [RB]
[04:24] " it helps if you have a decent, wide base of technical knowledge before you start asking the questions" [RB]
[05:11] "So find the rough spots. Be an ear to those who are upset or disaffected or annoyed by how things are going now, and use their knowledge to inform your opinion" [RB]
[06:10] "At that point, no matter what the size or the shape of the system or the solution you're proposing, you'll be in a position to potentially deliver something that might make a difference to the business." [RB]
[06:43] "Ensuring that you have listened and understood is a priority. Then show how change can work for everyone and finally, show the results." [RB]
[07:10] "Therefore, it is not your change, it is the business' change, it is everybody's change" [RB]
[08:05] "I've put together a map of the best books that I feel contribute to this area, and I've also created a suggested path, which will help you navigate" [RB]
[09:41] "You can't afford to ignore product development as part of software development these days" [RB]
[10:59] "software deployment in a real life situation is always inevitably going to involve a legacy system or is going to involve a legacy decision that you've made on a previous deployment." [RB]
Transcript
Hello, I'm Richard Bown and welcome to the Loving
Richard Bown:Legacy Podcast, episode 30.
Richard Bown:This is your regular dose of discussion that helps you pick the path between
Richard Bown:complex human systems and the accompanying complex software systems.
Richard Bown:This time I'm talking about the business of legacy, or how the world's leading
Richard Bown:companies make software change successful over the last year in an effort to make
Richard Bown:more sense of the world of building commercial and enterprise software.
Richard Bown:I've talked to lots of people.
Richard Bown:I've been reading a lot of newer and older books that speak about software
Richard Bown:delivery, business efficiency systems, product processes, and organization.
Richard Bown:These all give a perspective on the human aspect of business delivery
Richard Bown:systems, which is now, of course, pretty much software systems delivery.
Richard Bown:Business delivery can be something.
Richard Bown:Like a production line for a manufacturing company or a system that provides direct
Richard Bown:value to an end user, say a website for a retailer or perhaps a business to business
Richard Bown:system that allows better integration and eventually leads to downstream
Richard Bown:sales or savings or an opportunity.
Richard Bown:Wherever systems are built these days, they are partly software,
Richard Bown:partly IT change and partly social.
Richard Bown:So what is the secret glue that holds successful tech companies together
Richard Bown:and lets them succeed with it and software delivery where others fail?
Richard Bown:This is what I want to understand today.
Richard Bown:If you read any of the great books out there, like Accelerate or Team to
Richard Bown:Apologies or the Value Flywheel Effects, They will all give you case studies and
Richard Bown:there must have been millions, if not billions, maybe of words written on the
Richard Bown:subject, let alone talked about by now.
Richard Bown:So none of this stuff is really secret.
Richard Bown:It's just complicated.
Richard Bown:It's out there, but it's hard to get to the, the bit that you need to understand
Richard Bown:in order to go forward with your business.
Richard Bown:From what I can see, there is no secret to success in software
Richard Bown:change for your business.
Richard Bown:You need to be clear, consistent, pragmatic.
Richard Bown:You need to be bold, but also bold enough to know when to pivot.
Richard Bown:The way I've boiled it down is a bit like this.
Richard Bown:There is a process you can follow to make any businesses a success,
Richard Bown:but you also need to be able to react to changing circumstances.
Richard Bown:And then you also always need a little bit of luck on your.
Richard Bown:These are some of the lessons already distilled from the biggest and the
Richard Bown:best companies on the planet, the ones that run the big supply chains, the big
Richard Bown:manufacturers, the digital exchanges, the ones who make a lot of the money,
Richard Bown:the essence of modern businesses.
Richard Bown:This, how quickly can your systems react and anticipate
Richard Bown:to changing market conditions?
Richard Bown:How reliable are they?
Richard Bown:How resilient are they?
Richard Bown:How secure are they and how do we make software change successful
Richard Bown:while doing all these things?
Richard Bown:What can we learn about existing best practices and the experience and stories
Richard Bown:of hundreds and thousands of engineers that have gone before and more than that
Richard Bown:with so much information and best practice out there, how do you make sense of it
Richard Bown:all and know what to do and when I would.
Richard Bown:All of this starts with learning.
Richard Bown:You need to have a baseline of knowledge to understand how to work with IT
Richard Bown:systems and software together with Legacy in the modern enterprise or
Richard Bown:in the modern startup because none of us working in any company of any size
Richard Bown:lives in a world free of legacy systems.
Richard Bown:All systems are ones which we'll need to do something about
Richard Bown:at some time in the future.
Richard Bown:So how can we learn to love our systems and how can we learn to live with them?
Richard Bown:My approach, the approach I've always taken is to keep learning.
Richard Bown:And the best way to keep learning is to keep asking questions.
Richard Bown:Almost anyone can manage IT and software delivery but the best always
Richard Bown:ask what appear to be on the surface, the most obscure, unrelated, or
Richard Bown:perhaps downright stupid questions.
Richard Bown:When I start a new job, I learn by listening, by reading, by starting to ask
Richard Bown:questions to everybody that is around me.
Richard Bown:And then also I start to question some of the assumptions I'm making when
Richard Bown:I'm exposed to the way things work.
Richard Bown:Before you can ask the right stupid questions you need
Richard Bown:to know what you don't know.
Richard Bown:You need a framework for something to put your knowledge upon.
Richard Bown:Therefore, it helps if you have a decent, wide base of technical
Richard Bown:knowledge before you start asking the questions in the first place.
Richard Bown:Especially if you're talking to technical people.
Richard Bown:That replies you're gonna get are usually going to be technical in nature
Richard Bown:and they might be quite wide ranging.
Richard Bown:Learning a technical discipline and reading around that subject
Richard Bown:will help you talk to the techies.
Richard Bown:Secondly, you need to learn the domain that you're working in.
Richard Bown:The business does something to make its money.
Richard Bown:And now this is your primary concern.
Richard Bown:Make sure you spend as much time as you can learning about the intricacies
Richard Bown:of the business from the people who are closest to the customer.
Richard Bown:These are the people who will have discovered all the friction with
Richard Bown:the existing systems and are the most invested in making a new system
Richard Bown:that works better than the old one.
Richard Bown:So find the rough spots.
Richard Bown:Be an ear to those who are upset or disaffected or annoyed by how
Richard Bown:things are going now, and use their knowledge to inform your opinion.
Richard Bown:Thirdly, try to model something.
Richard Bown:Use the knowledge of the system, the knowledge that you've gained from the
Richard Bown:people you've spoken to in the business.
Richard Bown:User knowledge or reactions of the customers you have contact
Richard Bown:with to play with some idea.
Richard Bown:You can run these out as questions to begin with.
Richard Bown:What would happen, for example, if we didn't have a system here, or we
Richard Bown:did this manually, or we automated this piece of work, how do you
Richard Bown:think that would change anything?
Richard Bown:You can also do modeling in your head or modeling on paper to understand
Richard Bown:better and analyze a situation.
Richard Bown:Finally, when you have a solution, get confirmation that what you want
Richard Bown:to try is the right next thing to do.
Richard Bown:Make sure that you get technical, functional, and business buy-in, and that
Richard Bown:everyone is aligned to accept this change.
Richard Bown:At that point, no matter what the size or the shape of the system or the solution
Richard Bown:you're proposing, you'll be in a position to potentially deliver something that
Richard Bown:might make a difference to the business.
Richard Bown:But don't leave that to chance.
Richard Bown:Don't leave the.
Richard Bown:To chance, try as closely as you can to track the course of this work in
Richard Bown:order to show what you have achieved.
Richard Bown:It's not enough sometimes to sweat away tirelessly working on a solution
Richard Bown:which no one is interested in.
Richard Bown:Likewise, it's no good making projections based on little knowledge of the
Richard Bown:technical or functional landscape.
Richard Bown:Ensuring that you have listened and understood is a priority.
Richard Bown:Then show how change can work for everyone and finally, show the results.
Richard Bown:All of this is a learning path to a successful software change.
Richard Bown:Whether you are a dedicated staffer, a consultant, an external
Richard Bown:contractor, it doesn't matter what your investment is in the firm you
Richard Bown:work for, you are working together to make the business more successful.
Richard Bown:Therefore, it is not your change, it is the business'
Richard Bown:change, it is everybody's change.
Richard Bown:This is a mindset that asks questions to find out what people
Richard Bown:know and what people don't know.
Richard Bown:When you get people to confront what they know and what they don't
Richard Bown:know, they sometimes think long and hard about what they're doing
Richard Bown:and why it's good to make a change.
Richard Bown:So as a starting point, how do you know what to do and how do
Richard Bown:you know what you don't know?
Richard Bown:And how do you know what is the best next thing to do to make a change?
Richard Bown:This very much depends on your journey.
Richard Bown:Very much depends on your knowledge and where you're
Richard Bown:starting from with the business.
Richard Bown:For example, you may be technically capable but unsure
Richard Bown:where the actual pain is.
Richard Bown:As a techie, you might want to feel that you're working on something
Richard Bown:that is delivering business value.
Richard Bown:As a manager, you are closer to the business impact of changes.
Richard Bown:So your responsibility is to help show this impact to everyone you work.
Richard Bown:I've put together a map of the best books that I feel contribute to
Richard Bown:this area, and I've also created a suggested path, which will help you
Richard Bown:navigate these books or navigate this knowledge in a way that depends on the
Richard Bown:context which you're starting from.
Richard Bown:The books are as follows, and I'll link this in the show notes.
Richard Bown:Domain driven, designed by Eric Evans, also known as the Blue Book, test
Richard Bown:Driven Development by example, by Kent Beck ,Out of the Crisis by w Edwards.
Richard Bown:The Phoenix Project and The Unicorn Project by jean Kim, and others, Team
Richard Bown:Topologies by Matthew Skelton and Manual Pais ,The Goal by Eli Goldratt,
Richard Bown:Crossing the Chasm by Jeffrey Moore.
Richard Bown:Working effectively with Legacy Code by Michael Feathers,
Richard Bown:obviously awesome by April Dunford.
Richard Bown:Accelerate by Nicole Forsgren, Jess, humble and Gene Kim.
Richard Bown:The Value Flywheel Effect by David Anderson et al and the DevOps Handbook by
Richard Bown:some other names I've already mentioned.
Richard Bown:These are mainly software related books at various levels of scale, from
Richard Bown:architecture to delivery, approach to team, and organizational concerns.
Richard Bown:Additionally, there are two business process related books,
Richard Bown:the Goal and Outta the Crisis.
Richard Bown:The goal in particular, has influenced many of the things that we do day to day
Richard Bown:now books such as The Phoenix Project, which was very much a peon to that book.
Richard Bown:Very much a tribute to that book.
Richard Bown:Plus I've also included two product related books in crossing
Richard Bown:the Chasm and obviously awesome.
Richard Bown:You can't afford to ignore product development as part of
Richard Bown:software development these days.
Richard Bown:I would argue that having a nodding reference to all of these books would
Richard Bown:give a great view of software product development and product delivery in 2023.
Richard Bown:Additionally, depending on your context, whether you are struggling
Richard Bown:with legacy systems, technical debt, too much bureaucracy or that you
Richard Bown:just lack an idea where to start.
Richard Bown:Then look at the diagram in the link that I've included and follow the arrows.
Richard Bown:From that perspective, this will give you a context and a way forward.
Richard Bown:I hope you've found this useful today.
Richard Bown:I've been trying to work some context into the reading that
Richard Bown:I've been doing, and as I work.
Richard Bown:Interactions with clients.
Richard Bown:I also see that the ideas and lots of these books can be
Richard Bown:useful at certain points in time.
Richard Bown:However, your context will always differ, and if you read any of these books, it
Richard Bown:will say that very clearly in all of them.
Richard Bown:Your individual context is something that you need to be aware of.
Richard Bown:So by finding your context, finding out where you are starting, then
Richard Bown:you can start to approach tackling.
Richard Bown:Any particular challenge that you have with software deployment in a real life
Richard Bown:situation, software deployment in a real life situation is always inevitably
Richard Bown:going to involve a legacy system or is going to involve a legacy decision that
Richard Bown:you've made on a previous deployment.
Richard Bown:Therefore, it is essential to be able to understand the full
Richard Bown:context in order to move forward.
Richard Bown:I hope you find.
Richard Bown:This list useful.
Richard Bown:I hope you find this episode useful.
Richard Bown:Thank you for joining me.
Richard Bown:My name's Richard Bown.
Richard Bown:This has been The Loving Legacy Podcast.