Technology, Education and all things eLearning
Stuart Sim's Blog
Archives
« January 2005 »
SunMonTueWedThuFriSat
  
1
2
3
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
     
       
Today
XML
Search

Links
Referrers

Today's Page Hits: 51

Main | Next month (Feb 2005) »
20050205 Saturday February 05, 2005
Quality Bugs Me
I remember my toughest assignment at University was having to write an essay on defining the meaning of quality. At the time it was in the context of the US car manufacturing industry and their adoption of the Japanese 'Total Quality' techniques which have now evolved into the Six Sigma quality improvement approach pioneered at Motorola now adopted at most organizations including Sun.

Study: Few bugs in MySQL database | CNET News.com

What is a bug anyway?

In a services contract for a bespoke software system it is a mismatch between requirements and the delivered software. More often than not it's a mismatch between expectations and the delivered software because the requirements were so poorly documented or the functional domain was not clear to the team. You could say unexpected outcomes are bugs. This might be true of uncaught exceptions. Generally, poorly written code that leads to memory leaks, race conditions or is just plain ugly is also called buggy.

If the software is not delivered to contract as is the case for open source then how do you measure it's quality? I don't know the environment that the MySQL software was tested and am not familiar with the company that performed the tests. Did the team develop a tight test harness to verify the documented functional requirements for the RDBMS? My guess is yes - to a level but there was more automated code profiling and checking for code cleanliness and security holes.

Don't get me wrong, I think MySQL is an excellent piece of engineering but I object to the often touted claim that open source software has a higher 'quality' than commercial products simply because there are more eyes reviewing it. Quality is ensured by a structured process of managing expected outcomes to delivery and that requires more than releasing your code for review. I agree that more eyes is a good thing not just to catch 'bad or ugly code' but also to get as many possible unique solutions to a problem is mostly a good thing - too many chefs and all that. Any good architect encourages peer review on their project, open source and commercial.

The only bug free software in the world is our old friend Hello World. Its functional design and expected outcome is well documented in every programming 101 book in history. With my expectations set I am assured Hello World is of excellent quality.

Of course someone could claim they expected "Hello World!" instead of "Hello World". Doh!!! My perfect software is riddled with bugs and 100% failure rate !!


Feb 05 2005, 03:11:40 PM GMT+05:00 Permalink

20050204 Friday February 04, 2005
Free Solaris
If you haven't heard, Solaris is now Free so dust off that old pc in the closet and bring it back to life with Solaris 10 for x86.
I just rebuilt an old pentium III server running RedHat Fedora Core 3 and it flies. Boot time was cut in half and shut down in 5 seconds.

The most awesome developer platform out there. True resource virtualization with zones and DTrace for hardcore performance tuning. Performance programming isn't what it used to be cheap memory and the availability of rapid application development tools. For those of us old enough to remember how to optimize memory allocation and read a stack trace DTrace is a huge step forward in program traceability.


Feb 04 2005, 09:22:14 PM GMT+05:00 Permalink