<< Google Talk | Home | Architecture in RUP >>
Twitter RSS feed for Simon Brown [Twitter] simonbrown: @kpseal that might explain why my full 99GB backup took just a few hours!

Coding the Architecture RSS feed for Simon Brown [Coding the Architecture] I did some technical consulting/due diligence on a large software development project recently where I'd been called in to look at how the project team was dealing with some of the non-functional requirements. I'm not sure exactly how large ...

Java best practices

An age old topic, yet still always timely

At Evolution we hold regular special interest group meetings that are open to our staff and clients. Last night, I ran a session about Java best practices. It's an age old topic, yet somehow still remains to be timely. Here's an interesting quote from a blog entry entitled On Software Engineering (emphasis mine).

On August 4 we had a session on software engineering. The aim of the session was to share knowledge and experience about the way we develop software and to discuss the importance of doing it a certain way. After the break we had a workshop that briefly touched the different parts of the software development process.

The quiz on current real-life practices raised a lot of discussion. While we all recognize the importance of source control, automation of manual tasks, testing, documentation and proper incident management many of us fail in a proper implementation of these practices.

I think that's so true and ultimately it comes down to time pressures. Of course, it's easy to argue that it's worth a small upfront effort to adopt some of the practices (particularly automation) since they will reduce time pressures further downstream. But that's a different story.

Anyway, the session itself consisted of two parts. The first was an overview of the key best practices we adopted on my last development project, including automated unit testing with JUnit, continuous integration with CruiseControl and project blogs with Pebble. The second half was more of a roundtable discussion about other best practices that we are using, including code quality checking (e.g. Checkstyle and PMD), code coverage (e.g. Clover) and automated acceptance testing (e.g. HttpUnit and Canoo WebTest). As a consultant, listening to other people talk about their own projects and experiences is part of the fun and we had quite an engaging session, washed down with a beer or two.

If anybody is interested, a copy of the slides can be found here and if you have any questions, just fire me off an e-mail to the address on the last slide.

Java best practices slides

If you're in London and would like me to come and talk to your team about this sort of stuff, again, just drop me a mail. I'm looking forward to our .NET session on the same topics.




Add a comment Send a TrackBack