This raises some good points -- I'm sure it must drive business owners around the bend the way software's so imaginary, yet plays such a vital part of the success or failure of some businesses.

What is Quality?

For me, quality, as it applies to software, is a measure of how little trouble the software's going to cause, where trouble is defined of some combination of time and money to fix.

Why is it important?

Quality is important because as the quality of the code decreases, the time and money required to improve it, or even keep it up date, increases -- this is technical debt. And in addition to time and money, there is also the opportunity cost -- if a customer wants a feature in 30 days, but that can't be done with the existing staffing levels because they're too busy bailing water, the company loses out on the opportunity to make another sale.

Quality is free -- but it is not a gift

The title of this section is the key quote that I remember from The Art of Quality. Building a quality software system is a mindset, an approach to the craftmanship of writing lines of stuff and getting them to successfully run a business.

A quick and dirty solution is something that needs to be revisited as soon as possible. If not, it quickly becomes permanent, just One More Quirk in the established complexity that we drag around.

Writing code needs to start with quality in mind -- for me, this includes Test Driven Development, so that the developer can prove that the code really does what it is supposed to do.

Alex / talexb / Toronto

"Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds


In reply to Re: The dangers of perfection, and why you should stick with good enough by talexb
in thread The dangers of perfection, and why you should stick with good enough by redhotpenguin

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.