Sunday, September 21, 2008

A big milestone is just the beginning

Well, we hit a big milestone last week. We upgraded our internal Timeless Time & Expense Web installation to version 3.0. This wasn't a 'developer-install', this was a real upgrade installation just like our customers will have to go through. We believe in using our applications just like our customers do. This means a feature complete application down to the installation. (Okay, we're not perfect. The documentation was not included).

As usual, it doesn't take long using the new features where you start to see the next enhancements. I was laying out the work items and assignments for the development of the Windows version today. I was using new 3.0 project management features for this for all of about 10 minutes when I wanted something more. Don't get me wrong, the new features are great and a big improvement but everything can be made better. Most of these will wait until 3.1 or later, but we hope to slip a couple into 3.0.

In any case, it was a significant week. Sometime in the future, we plan to give a limited sneak peek of the new version. Sign up to receive pre-release email notices when it is available.

Labels: , ,

Saturday, September 6, 2008

I love automated unit tests - part II

We recently reached the milestone of being feature complete in the web interface for Timeless 3.0. The next step was to create the installation so we could start our in house alpha testing during the development of the Windows version. But since we allow the choice of Access as a database option for small teams using the Windows version, we felt it was best to create the database and verify our business layer worked before integrating the SQL scripts into the web installation.

If you've ever developed an application to work with SQL Server and MS Access, you know there are differences. There are slight SQL differences, but the big one for us was differences in the way they handled paramertized queries. SQL Server uses named parameters and does not care about the order while the OLEDB provider for Jet only cares about the order of the parameters. As you can imagine this can cause significant testing.

Thankfully, our automated unit tests solved this problem. We still had to make the code changes, but it was a lot easier than trying to change it during UI development. It also meant we wouldn't be making changes to the web version during alpha testing just to accomodate Access in our Windows version.

As a side note, our test suite executes around 40,000 commands against SQL Server and around 42000 against MS Access.

Labels: , ,