Alexander Beletsky's development blog

My profession is engineering

Agileee 2010: Pavel Gabriel: Successful projects without testers

Disclaimer: text below is compilation of notes I made on Agileee 2010 conference, listening to different speakers. I do it to keep knowledge I got on conference, share it with my colleagues and anyone else who interested. It is only about how I heard, interpret, write down the original speech. It also includes my subjective opinion on some topics. So it could not 100% reflects author opinion and original ideas.

This speech has been done by Pavel Gabriel IT professional from Minks. Maybe it was influenced by Pavels not experienced to much for public speaking in English, but speech turns to be very generic, with a lot of obvious things and not really convincing.

The story

2 programmers 1 manager. Started without testers, after release user found a lot of bugs. The message from Boss was, that hiring a tester will help to improve problems. But Pavel has other opinion on that. Developers could solve quality problems by overselves.

So, Pavel initiated a process of improvements, for making accepted-quality products by developers only.

Right tools helps make things right

Team were using Ruby as it language and Ruby On Rails as their framework of choice. It is really influenced process, cause framework is done with TDD in mind, Ruby is dynamic language that makes it easy with unit testing, a lof already created solutions like Cucumber etc. But tools are not enough, there have to be something that change developers mind to care about quality, to be responsible for quality.

Responsibility

Most issues is the because no responsibility in their actions. If there are testers, developers stop to test the application. Whole team is responsible for quality, all and no one.

On Pavel’s opinion responsibility is gathered by Asking Questions, Code review, Demonstration.

Awareness

Team have to be aware of what is going on around. TDD/BDD is way of improvement of developer awareness. Retrospectives, to discuss progress and problems.

Doing a BDD with Cucumber make a developer really clear of what exactly is expected, what roles are involved.

Communication

Communication is very important, so it is always a goal to improve communication.

Question and Answers

QnA session turns to be a nightmare :). 90% were out of context of speech, like “What tools do you use?”, “How you test pages?”, “How you do security tests?” and so on. I’ve tried to ask a common question, like “You try to did improvements, you convinced your boss you don’t need testers, developer could do testing.. what was the results? Number of bugs increased/decreased, customers started to be happy?”. An answer was, “Customers still unhappy, but users do not find critical bugs, exact statistics does not exists”. OK, fair enough. The idea of “testing by developers” turned out to be - give developers right tools to make them happy to do testing (TDD/BDD, acceptance), make them like to do that, as soon as they are happy they will produce better results. Also, everything depends on professionalism. So, we went back to old saying by Kent Beck - “XP is a team of Responsible professionals”, if people is not professional and responsible nothing will helps.

I personally like the idea of - create software by developers only. But as for me, it could work good only for small product shops (there customers are product creators actually). It does not fit big organization and outsourcing companies, mainly to to reasons above: in such organization there is just very low percentage of really professional developers.