July 7th, 2010 | Tags:
C++,
quality,
software | Category:
Tech
CodeProject
When developing in C++, an impeccable API is a must have: it has to be as simple as possible, abstract, generic, and extensible. One important generic concept that STL made C++ developers familiar with is the concept of iterator.
An iterator is used to visit the elements of a container without exposing [...]
Continue reading How to write abstract iterators in C++
October 19th, 2009 | Tags:
ASIC,
EDA,
FPGA,
quality,
verification | Category:
Business,
EDA,
Tech
Functional verification is a major bottleneck in the chip design cycle. Any misstep in closing the functional correctness of a digital system costs millions of dollars in redesign, additional testing, and silicon respins. One can argue at length about its actual cost, but people in the industry usually agree that functional verification takes between [...]
Continue reading The formal verification market is still untapped
October 13th, 2009 | Tags:
EDA,
quality,
software,
verification | Category:
EDA,
Tech
CodeProject
I wrote earlier about the good practices in designing APIs, which is so important when developing complex software. However one usually does not have the chance to start a product from scratch. This means that more often than ever, a software manager picks up an existing tool with an existing [...]
Continue reading Test-driven design, a methodology for low-defect software
October 8th, 2009 | Tags:
quality,
software | Category:
EDA,
Tech
CodeProjectI built up products from scratch several time in my professional life. Usually it starts with a very small engineering team –sometimes I was the very first member of the team. This is a great opportunity to lay strong foundations for the subsequent software development, because one is in charge of the [...]
Continue reading API design 101