Monday, January 29, 2007
Teamwork and RSS
Moreover, besides setting up as many feeds as you want, you have one "implicit" channel where all the events you subscribed to and the messages sent to you are published.
In the picture you can see a Teamwork page displaying RSS news items, on the left, and Internet Explorer 7's internal aggregator showing the same RSS.
Saturday, January 27, 2007
Back from OOP 2007 in Munich
While exposing as usual we did a lot of new developments and bug fixing, and got some nice ideas from the visitors; we had competent opinions, met a really nice guy from IBM (yes, really :-D), several bright developers (also girls!), and a bizarre but stimulating fellow from Siemens; a total of about 50 demos. A 3.1.3 version will be out soon!
It was an occasion for Roberto and me to reflect and discuss where to find our point of balance, between "groupware" (i.e. shared to-do's, boards, agenda, forum, portal features), project management, issue/bug track, document management and customer support; all who came to us reported the need, and we pointed out how limiting management to a specialised bug track leads to general unhappiness in the wider team, to which all agreed. Teamwork collects the different needs in one application, I believe quite maturely for what concerns the object model, and a little still to go for the interface, but we are almost there (I hope!).
All Germans we met spoke English very well, fortunately, as my scholastic German is by now almost useless for explaining (while I understand quite a bit). The size of the Messe expo area is amazing (you see only a bit in the picture); we went round it with our van, and it seemed never ending.
There were a lot of expositors, many selling really bizarre stuff, from Smalltalk development (never heard the news?) to "fast" UML (so what?), to miraculous testing tools (ever tried with a web application?). Anyway, I guess that diversity is a good thing in itself, as my father (a geneticist) always tells me.
Wednesday, January 17, 2007
Jolt 2007 Excellence Awards finalist
The selection is quite serious, the few finalists (6 in our category) are chosen among hundreds of candidates, so we are really happy about this nomination.
The winners will be announced at SD West 2007, on March 21, Wednesday, 6:30 PM – 7:30 PM. Flying to Santa Clara in March!
Monday, January 15, 2007
Review on Java Black Belt
He associates only myself (Pietro) to Teamwork development, as I'm the person he's discussing with, but of course Teamwork is the result of a collective development effort, coordinated by Roberto and myself.
Sunday, January 07, 2007
Testing new Teamwork releases
But this does not mean we do not believe in testing, on the contrary, testing is crucial in releasing reliable applications. And as Teamwork is getting wider adoption, not breaking adopted versions with new releases is becoming crucial for the survival of our product.
We have used extensively hallway testing; for us, a test makes sense if it is not done by the developers, and is performed on the user interface, not on the code. This is particularly true in the case of a web application, where the interface support changes in time and is not uniquely determined. Moreover the application behavior can be quite different depending on the browser, operating system and database used. To test an application like Teamwork, can mean testing several combinations for each page, hence resulting in several thousand tests, multiplied to the number of platform/db combinations. So we needed to somehow persist the tests done, and to make it possible to run thousands of them by one-click. We first checked
1. httpunit, but it’s based on the idea of writing tests in code, discarded,
2. htmlunit and watij.com , which rely on the assumption that you can automate finding links on a page, but this was partly true several years ago, though incredibly hard, and is impossible in a contemporary application like Teamwork which may any time alter the DOM by creating a link, so this too was discarded.
Going our way.
Our tests have a web based management interface, support composition, and are stored through Hibernate persistence on a separate database.You can create and refer to variables, you can write assertions using the beanshell scripting language - we used bsh instead of JDK 6' inner scripting framework as the latter does not yes support Java-like syntax and is a bit unstable.
You may even get more reliable releases now :-D
Here are a few screenshots of our tool:
Labels: testing bugs