Wednesday, February 16, 2011

Masterpiece Engineering - a commentary on 'Engineering' Software

The 1968 NATO conference on Software Engineering was the first for this area of study to use this name.

Not everyone was convinced that a formalization for producing software was possible or desirable. Here is a paper submitted to that conference which expresses some of the concerns.

Tuesday, February 15, 2011

CHI to Amazon's Mechanical Turk and beyond

In 2005, Philipp Lessen posted an idea on his blog called CHI, where a system is created that automates asking questions to humans. This may seem dense, but the idea is that these questions are ones that humans are better at answering, such as , 'is this photo of a person a man or woman?' or 'Does this description match the photo?' or 'Does this description make sense?"

Six months later, Amazon implements this and it's now known as Amazon's Mechanical Turk. The idea is that tasks that are best done by humans are packaged up and given a price. Workers then can pick up those tasks and get their fee. There are controls in place to ensure that the workers do a good job and are actually qualified to do the work being requested.

Now there are similar sites that are generally known as 'Crowdsourcing'.

But what does this have to do with software?
Suppose you had a system that tied into your automated test framework that would offload some of the more tricky parts of your tests that would be simpler to do manually, but it was just one step out of dozens?

Suppose you wanted to automate the layout of a webpage on multiple browsers under different conditions as part of build testing. You could write the specific rules for what consituted 'improper' layout, but that could take lots of time and lots of tweaking. Wouldn't it be nice to put in your automation:

assertThat(baselineimage.looksLike(myImage), true)

and that call shows both images to you for the determination that they are equivalent?

Sure there are issues, you may not be ready to do these steps when they are being run. Or you may take too long to decide. It's not clear the full extent of the useful features, but there may be some thing here to assist with your testing.

What are your thoughts?

Wednesday, February 09, 2011

Model-based Testing Tools

Here is a handy chart of model-based testing tools to consider using if Visual Studio isn't in your development toolset.

Friday, February 04, 2011

Perform Calculations on Encrypted Data

Here is an article on a plan for performing calculations on encrypted data. You could:
- farm out calculations to untrusted worker processes with little fear of revealing the contents!
- maintain data security in memory!
- much more!

The last batch of IPv4 addresses have been sent to registrars

It's expected that sometime later this year, there will be no more IPv4 addresses for ISPs to hand out. The last blocks of addresses were sent to regional registrars. Moving to IPv6 has started, but very slowly. We should see some visible tests by Yahoo! and Google in the next few months.

Wednesday, February 02, 2011

Auto-generate Test Cases (and have specification documentation to boot!)

Suppose you could create specification documentation that could generate test cases automatically. Suppose that doing this would reduce your testing effort by roughly 40%. Suppose that you could also see requirements coverage.

What would you pay for this tool? How about $0?

Spec Explorer has been available for several years and is available for both Visual Studio 2010 and 2008. There is also an earlier stand-alone version that works well, though it lacks some of the integration features and newly-developed features.

Check it out, give it a try and see if it doesn't make your life easier.

Download version for Visual Studio 2010

Stand-alone version of Spec Explorer and Introduction

Series of webinars on Spec Explorer