» Archive for October, 2008

Testing the Tests via Mutation

Wednesday, October 29th, 2008 by Max

HELMAND PROVINCE, AFGHANISTAN - JULY 21: A KBR...

To set the ground for this post I first need to reiterate a message that has been heard from many other sources.  Code coverage can only tell you how bad your test suite is, not how good it is.  Meaning that if you have bad coverage you know something is wrong, but a high coverage number tells you virtually nothing.  This message seems obvious for many developers out there, but it’s not heard by a surprisingly large section of them.

I have been a teaching assistant for several undergraduate and graduate testing classes.  Every year when I grade their unit testing projects I always get several of them (about a quarter) that hand in tests with “good” coverage, but not a single assert statement to check the results of their tests.  This is even after I get up in front of the class and rant about the exact problem from previous years. Needless to say those students tend to do poorly.

So, if test coverage is not a good metric, how can developers measure the quality of their test suites?  I’m going to talk about one approach in this post, mutation testing.

Read the rest of this entry »

Graphsy Update: Save Your Colors

Wednesday, October 22nd, 2008 by Max

This new update brings with it a way to store colors in palettes.  The color picker has changed to include enough space for 23 colors.  Once a color is selected the user has to simply drag it from the display into 1 of the 23 slots available.  These color choices will stay with the user across all of the projects and will be remembered when relaunching Graphsy.

The next feature I am working on is custom shapes.  I want to let users create custom shapes, combine them together into libraries, and share those libraries with others.  There is lots of work that needs to go into this, but I hope to have the basic creation tools available shortly.  Check out a list of features that were requested by other users, vote for your favorites, and add new ones at www.graphsy.com/request.

Since all of these updates, the tutorial videos are really getting out of date.  I’m going to spend some time this week updating them.  Hopefully I can get the object creation feature out in 2-3 weeks, unless work gets in the way again.

Anyway, here is a screenshot of the new feature.

New Color Picker

New Color Picker

Reblog this post [with Zemanta]

The Problems with Reuse and Abstractions

Tuesday, October 21st, 2008 by Max

When talking about software reuse and abstractions it is tempting to bring up one of two analogies. The first treats reusable components as tools, while the second thinks of them as larger, more purposeful Lego blocks. Neither is really correct. In both cases we get an impression that reuse in unequivocally a good thing. The more components or tools we use, the better is our final product. Unfortunately that is not exactly the case. In this post I want to talk about abstractions and reuse, why we like them, and what we have to watch out for.

Read the rest of this entry »

Graph Sharing

Monday, October 13th, 2008 by Max

This is a large update to Graphsy. People have asked for graph embeddings and here they are.  This is my first crack at it, so if there is something you especially don’t like please let me know.  Right now the embeddings are iframes pointing to a viewer page.  I hope to get that changed some time in the future, but wanted to roll out the feature ASAP.

Read the rest of this entry »