|
|
May 30th, 2011 | Tags: C++, quality, software | Category: CodeProject, Software
CodeProject A program is deterministic, or repeatable, if it produces the very same output when given the same input no matter how many times it is run. Refining this definition, we should consider whether a program produces the same result on any platform (32 and 64 bits machines, running Windows, Mac OS, Linux, Solaris, etc). [...] [...]
Continue reading How to make software deterministic
April 9th, 2011 | Tags: C++, quality, software | Category: CodeProject, Software
CodeProject The quality of software is assessed by a number of variables. These variables can be divided into external and internal quality criteria. External quality is what a user experiences when running the software in its operational mode. Internal quality refers to aspects that are code-dependent, and that are not visible to the end-user. External [...] [...]
Continue reading What is software quality?
July 7th, 2010 | Tags: C++, quality, software | Category: CodeProject, Software
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 how the [...] [...]
Continue reading How to write abstract iterators in C++
November 24th, 2009 | Tags: advertising, apps, Google, marketing, Microsoft, mobile, quality, search, social network, Twitter | Category: social network
The last 10 days have been pretty interesting to follow in the fast moving world of Twitter. They showed a contrasting (or seemingly so) picture of where the super-hyped company is heading. Let us rewind the last few events [...] Continue reading Twitter sure is a rollercoaster, but going up or down? [...]
Continue reading Twitter sure is a rollercoaster, but going up or down?
October 19th, 2009 | Tags: ASIC, EDA, FPGA, quality, verification | Category: Business, EDA
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 40 [...] [...]
Continue reading The formal verification market is still untapped
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 team. Making the tool [...] [...]
Continue reading Test-driven design, a methodology for low-defect software
October 8th, 2009 | Tags: quality, software | Category: CodeProject, Software
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 whole process. But [...] [...]
Continue reading API design 101
|
|