Altium's Rob Evans ruminates on the dilemma of design reuse in his latest blog on New Electronics: http://t.co/M4uuSCK
Altium's Rob Evans ruminates on the dilemma of design reuse in his latest blog on New Electronics: http://t.co/M4uuSCK
He brings up the key point, if you do not know if the design will work against your requirements, then you are not going to try it. I have been in this argument for the last four decades and it always comes down to the confidence in the product, be it hardware, software, firmware, water, food, etc.
In most engineering applications, the decision comes down to reusing something that may work, verses designing something that may work. Most designers are confident that they can do better, sooner, and cheaper. In some cases it is true, but when your reputation is on line, you have to be absolutely sure that the reused component will work flawlessly and integrate seamlessly with your design.
So, do you drink the water? Only if you know it has been cleaned by a process that ensures you that it is 100% reliable, verified and validated. Otherwise, not on your, or my, life! I wish that was not the answer, but until your organization creates a V&V repository of thoroughly tested components for reuse, most designers will roll their own solutions. Plus, most will create their own toolbox of proven components, which they will reuse, but seldom will they try anyone elses. It just too risky.
Just my opinion,
DAB
Confidence in the product is indeed the bottom line when it comes to design resue. To have sufficient faith in the reusable element, be it components or entire slabs of circuitry, means covering all the bases.
Secure and managed storage is one thing, but the state of reusable elements must be easily traceable and up to date. In the proposed model, components (right down their models) are also released to the vault, so if their lifecycle state changes (deprecated, superseded by a newer revision or different type) this is flagged in any higher level vault items that use the components.
The act releasing any design element(s) to the vault instigates full validation checks (rules, synchronization, etc) then wraps the content into a defined revision, with a nominated lifecycle state. In most, if not all cases the content has already been applied in a known (possibly production) design, and these links are maintained. You know exactly where it's already used, and therefore its performance and reliability in that situation. This applies for components right up to blocks of functional circuitry.
In a way, the idea is to maintain the purity of the water (and know everything about it), rather than rely on a complex and potentially unreliable process to clean it after it's become corrupted. Perhaps the original metaphor falls down at this point! Nonetheless, it is about eliminating risk, and the managed vault system goes a long way towards achieving this goal while eliminating the need to keep reinventing the wheel. There's more information at live.altium.com.
Nice article Rob!
Would this change the design concept to a more modular approach? We have design for manufacture, and design for test, would it become design for reuse?
Ally
Hi Ally,
Back before I retired, I was trying to get my organization to adopt a component oriented design reuse culture. I still have wounds from the fight. It is very interesting how quickly people will confuse "reuse" with "I will lose my job if we do that." They refused to see the benefits, both from a professional aspect and from the point of doing more, better, quicker and at lower cost.
I can only speak for myself, but after thirty years building advanced systems, I firmly believe in reuse and modular design. It leads to solid, low maintenance systems that are easy to upgrade at a lower cost than new designs.
If you can get the "culture" changed, then engineering can reach new levels of application that will far exceed the technologies we currently have available to use. It can be done, but it is a hard sell to people who do not have the confidence in their own abilities, or worse, would rather do the same design over and over again, hoping to get it perfect.
Design for reuse is more important than a design that exceeds requirements, but cost too much to maintain.
Thanks,
DAB
Thanks Ally. For those that use advanced design systems and a hierarchical project structure I think modular design is our natural approach anyway, particularly at a schematic level. This can easily coexists with the needs of design for testing and manufacturing.
As outlined by DAB, adapting the mindset of design reuse has the potential to deliver enormous benefits. Part of breaking down those barriers is having access to an integrated system that maintains the integrity of the reusable design data, and therefore restores confidence in using it.
And once adopted, it also leaves designers free to focus on the creative and innovative stuff that really matters.
Ben Jordan, one of my associates here at Altium, has put these reuse concepts into practice by developing a PCI-Express peripheral card using as much content as possible from Altium’s internal vaults. It was fast, drama-free and is currently moving through the prototype stage. You can read about it in his initial ‘Putting managed content to the test’ article.http://envision.altium.com/articles/putting-managed-content-to-the-test/