Continuous integration has established its place among the good software development practices. However, setting up a continuous integration server and configuring it to run your tests automatically does not mean that you are really doing continuous integration. It only means that you have installed a continuous integration server and it run your tests automatically. Martin […] Read more
A common method of setting transaction boundaries in Spring Framework is to use its annotation driven transaction management and annotate service methods with @Transactional annotation. Seems pretty simple, right? Yes and no. Even though the annotation driven transaction management of Spring Framework is easy to setup and use, there are a few things which you […] Read more
Apache Wicket is a component based web application framework which offers good unit testing capabilities. This blog entry describes how you can use those capabilities to mock beans which are injected by using the Spring integration of Apache Wicket (Note: The precondition of this blog entry is that you are using Apache Wicket 1.5). The […] Read more
The problem with sprint retrospective meetings is that too often they are kept only because they are "required" by Scrum. If that is the case in your organization, you are probably feeling that sprint retrospective meetings are a waste of time. If I would be in your shoes, I would feel the same way. I […] Read more
I remember a time when I used to believe that the ability to create reusable components was a sign of a professional software engineer. This is definitely true if you are building a framework or a library. However, I am not convinced that reusability is valuable when a framework or a library is used for […] Read more
Since agile software development has really hit the mainstream during the last few years, it is only natural that there are a lot of misconceptions around. Also, I have noticed that some misconceptions are more common than other ones. This blog entry is written to introduce you the three most common misconceptions about agile software […] Read more