We’ll never eliminate respins, but we can address problems earlier.
By Jon McDonald
Change can be a very difficult thing. Most organizations I talk to about adopting system-level design know it’s a worthwhile investment. They believe it will have a positive return. They genuinely want to improve their processes, but believe they don’t have time to invest in making the change. In a recent conversation I heard an excellent encapsulation of this thinking. It was a variation on a John Wooden quote: “We don’t always have time to do it right, but we always make time to do it over.”
Putting out a system that doesn’t meet specifications is usually not acceptable. So, late in the process, when we finally know what modifications are necessary to satisfy the specification, there is simply no choice but to accept the time penalty and go back and make time to do it over. Reluctance to changing the process perseveres because the existing process works. It may not be the most efficient path to get there, but putting something together, then doing it over and correcting the deficiencies, does get you to the end goal.
In a captive market with little time pressure and little incentive to reduce development costs, this may been very successful. In fact, it has been successful in many markets for a long time. Unfortunately—or fortunately, depending on your point of view—markets, systems-capabilities, and expectations are constantly evolving. More functionality is required in a shorter timeframe, so we have to improve our processes to deliver successful systems in time to reap the rewards.
The argument to change or not to change comes down to a fairly simple choice. We can do what we’ve always done, hoping that the demands of what we are building today are close enough to what we’ve done in the past to get by. Or we can look at our processes and apply system-level design techniques to get it right as early as we can, thus eliminating the need to do it over.
This doesn’t mean we’ll never have to do a design spin. But we can eliminate many of the mistakes that might cause issues by investing more in doing it right the first time with earlier, high-level design and analysis capabilities. I’m reminded of another Woodenism: “If you’re not making mistakes, then you’re not doing anything.” Increased design complexity means that mistakes are going to happen. To be successful, we have to take the time to identify mistakes early so they can be corrected, allowing us to get it right as early as possible so we do not have to do it over later.
—Jon McDonald is a technical marketing engineer for the design and creation business at Mentor Graphics.
Leave a Reply