Testing and concurrency Our team is currently working with a client on a medium sized, medium complexity Java application which has quite low test coverage. We are introducing characterisation tests to snapshot functionality. These will give us the confidence to refactor away ...
Importance of real time performance monitors Decent log entries are essential. On our current project we aim to write enough data to allow off-line analysis of performance and usage plus errors. I am also an advocate of more immediate and accessible runtime information. Log analysis is great but ...
Concrete problems when developers opt out of TDD We have two major classifications of automated test in common use: Acceptance tests which execute against the application in its fully deployed state. Unit tests which typically target a single class and are executed without instantiating a ...
Anti-pattern: The release vehicle. At my current client site you cannot get a piece of compiled code into production unless you can find an appropriate 'release vehicle', i.e. a planned high ceremony release of the component which has been officially prioritised, scheduled and funded. ...
Tale of two SCRUM stand ups I walked past two teams doing their daily SCRUM standup today. Both teams claim to be agile. I didn't join in (even as a chicken) but just observed for a minute or so. The first team was sitting down in a breakout area. Their body language spoke volumes. ...
Value and cost in hardware and software Neal Ford's presentation on emerging architecture contained a reference to the controversial Intel practice in the 1990s regarding the 386-SX math co-pro. Intel were producing two variants of the 386 chip at the time: The 386-DX which featured a ...
Agile 2009 I have spent the week at the Agile2009 conference in Chicago. This annual conference, now in its eighth year, is the premier international gathering for agilsts. It caters for a whole spectrum of experience from new comers to the discipline to the gurus ...
Use of best of breed open source Over the last two years of my current project I have noticed a recuring pattern. On several occasions we have identified an implementation pattern which commonly appears on many enterprise projects. That pattern is common enough that there is a well known ...
Security compliance without empirical evidence As the project nears the final delivery I am having to complete a statement of compliance for group security (did you feel a shiver as you read that, it was justified). One of the values I have tried to instil is that we don't do any documentation or ...
Valtech Blog is live The Valtech blog is live, yay! It incorporates posts from various Valtech consultants and covers all things Agile and software development in general. My submissions are featured so no more swearing...
SpringSource in the cloud? SpringSource has been acquired by VMWare! Interesting that VMWare paid more for SpringSource than Redhat paid for JBoss, even in the midst of the recession. Spring has got to be the tool of choice for the development of enterprise Java applications ...
Professional Services Day We had an excellent professional services day today. Rather than the previous format of set talks and dry presentations the organiser used the Open Spaces pattern. He drew up a grid with time slots and rooms then invited the attendees to write a single ...
Dangers of executable examples over dry documentation My team is responsible for several web service APIs that are used by external parties. The standard pattern for educating users about these interfaces was to provide an API document which listed the calls possibly with the occasional example. I have ...
In container vs out of container testing Ever since I started with Test Driven Development back in early 2004 I have always advocated out-of-container testing and regarded any test scheme that requires deployment before execution as flawed. I still think this is largely true and there are many ...
Death by developer If you commit suicide by forcing a police officer to kill you, this is Death by cop . We have some stakeholders external to the team who seem committed to performing death by developer. Just because a project is agile and adaptive to change doesn't mean ...
Removing database dependancy from tests At a recent internal tech day a project I had previosuly been involved in made a short report about some serious issues they were having with their test suite. They made heavy use of DBUnit to create a complex data set in an Oracle database. This was ...
Distractions We are still getting distracted from our main task. Two of the four developers have spent more than 50% of their time looking at a production memory leak. I am spending a lot of time doing interviews and attending meetings. All of it is important but it ...
Welcome to the waterfall We have made some progress in the last week of development but it has not been as I envisaged. We have spent a lot of time talking through the use cases and that has helped the dev team understand some of the issues facing us. Those use cases have been ...
Technical interviews Executing a decent technical interview is hard. Often you only have an hour or less with a complete stranger to somehow assess technical skills which might take days or even weeks to fully appreciate if you were working with them on project. The urge to ...
The release starts here I am keeping a diary of the main events during a software release as they happen. Right now, we are moving (in the client's methodology) from feasibility to detailed design. For a few weeks now one release has been almost finished and another almost ...
Re: Anti-pattern: The release vehicle. This whole Article hits the NAIL ON THE H.E.A.D. I am so tired of what's happening in the software industry. I really am exhausted with all the crap. All i want to do is get stuff out there. Stuff that really works. Stuff that'll make the customer happy, ...
Re: Anti-pattern: The release vehicle. I definitely agree but I could I suggest that you have a better definition of a 'release vehicle' to indicate that each release vehicle is a one-off. To borrow your transportation analogy, the solution you have suggested is a 'release train' where you ...