One of the most important challenges to face first is leveraging developers’ time for maximum efficiency. At qKAI this is especially due to students, writing their theses, contribute to the code base. Therefore we have established several tools to spare them redundant work, maintain a constant code quality and automate the build.
This time I will write about Maven, which – as Monika already revealed – we utilize to generate (and publish) a simple documentation page. I do see Maven as a mean to conserve and reproduce a process such as building the application and packaging it. Someone who is new to “all this” will most probably forget about byte-code enriching, converting charsets or simply running tests and integration tests. By Maven a “mvn package” is as easy to remember as it preserves the convenience to not forget about running one of the steps mentioned above.
And, should the process be extended no present developer will even have the opportunity to omit eventual new steps; should one go his knowledge does not get lost.
An widely used alternative is Ant. We have decided not to use it primarily as it lacks the ability to resolve and download dependencies, which our current tool is able to. (See Ivy for Ant as dependency manager downloading from Maven repositories.)
By the time I wrote my thesis I have had to spend about a week to dig through qKAI’s dependencies, figure out which package requires another and how to update the clique in case of the errors I experienced.
Today we can even introduce new tools such as PMD or JDepend without burdening someone with installation, configuration or familiarization. A quick “notice the new reports on our page” at the distribution list suffices.
How we managed to automatically provide modified third party code and how we incorporated Maven with continuous integration is another topic. Such as enforcing coding styles and what we used Subversion’s scripts for. So, stay tuned.
Tags: Maven, pursuit of efficiency, qKAI, software engineering
















[...] important challenges to face first is leveraging developers’ time for maximum efficiency. At qKAI this is especially due to students, writing their theses, contribute to the code base. Therefore we [...]
[...] Read the original post: increasing productivity – … [...]
Thanks for this interesting insight! Looking forward to more posts. Niclas
I want to thank the blogger very much not only for this post but also for his all previous efforts. I found blog.qkai.org to be very interesting. I will be coming back to blog.qkai.org for more information.
Good post and this enter helped me alot in my college assignement. Say thank you you seeking your information.
Hey Wassup?
I’ve been around here for a while now, and I finally found something worth writing about: I found This great resource on Entertainment Centers .
Check these out great read on the subject