Nov
29
2007
Effective content caching is one of the key features of scalable web sites. Although there are several out-of-the-box options for caching with modern web technologies, a custom built cache still provides the best performance. Continue Reading »
Nov
26
2007
New version of DbFit (0.92) is now available for download from SourceForge. Here are the most important changes:
-
Better error handling, DbFit now prints out missing column/parameter names and warns if table/procedure could not be found
- new Inspect fixture to help with regression tests: DatabaseTest has three methods to automate it: InspectQuery, InspectProcedure and InspectTable. These methods will quickly print out entire query results, structure of a procedure or a table/view in a form that can be easily converted to a regression test, or used as a template for ExecuteProcedure, Insert or Update tables.
- support for Oracle procedure and package synonyms
- Type details are read from SqlServer in a more efficient way, supporting objects with dots in names and fixing
a few edge cases where duplicate records were retrieved with 0.91
- null keyword handled correctly in Java
For more information, see DbFit project pages
Nov
26
2007
I’ve just read about the Naked Agilists conference – seems like an interesting thing to attend. It is a skype conference, so you can listen in from your home, and it is scheduled for 19th of January 2008 from 20:00 to 21:30 GMT. The conference is based around short experience reports, lasting from 5 to 10 minutes, so it may prove to be very interesting. For more information, see NakedAgilists yahoo group and nakedagilists.blogspot.com
Nov
23
2007
Acceptance tests should reflect customer’s perception of when the job is done, so they must be defined by a customer or a business analyst. That still leaves us with a question who should translate that definition into FIT/FitNesse tables. There was an interesting discussion on this topic at the XPDay 2007 conference in London, during a workshop called “Working With Customers towards Shared Understanding”. Several participants noted that if developers are left to do that on their own, then tests turn out too technical and task-oriented. Acceptance tests are more effective if they are focused on larger activities and expressed in the business domain language. FitNesse allows customers and business analysts to write tests directly without involving developers, but this may be a step too far, as customers often forget about edge cases and focus only or general rules.
Antony Marcano, one of the maintainers of TestingReflections, spotted nicely that the conversation during test writing helps a lot to clarify the domain and enable developers to understand the problem better. If tests are written by customers on their own, then the value of this conversation is lost. So, ideally, a developer and a customer representative, or a business analyst, should write those tests together.
Nov
20
2007
For the last couple of years, I’ve been working with mid-size and large UK bookmakers, trying to introduce agile development practices into those environments on several projects. Although for most of the readers of this blog using agile practices is no longer a question, agile development is fairly rare when it comes to databases, and all these systems were heavily database-centric. About a year ago, I finally found the right formula to do agile development on top of big legacy databases. I presented my experiences at XpDay 07 in London, on a session called “Fighting the monster – agile development on top of legacy databases”. This is the content from that presentation. Continue Reading »