I've been working for this company for about 5 months. They had very aggressive hiring policy and the result was that the development teams were build fairly quick and we started contributing to the product's code base without any formal development process in place. At the beginning most of the people were confused, not knowing what to do, since the product is fairly big, the code base is old and there is a lot of confusing code and few people with enough experience to explain what's going on.
During this period it was obvious that everyone is acting chaotic and back then the need from some formal approach was obvious. However time passed by and now the people have gained some confidence, some experience, knowing a little more about what is expected from them and I would say, they already started to feel comfortable as it is.
And now I'm given the opportunity to try and convince some of those people (the team that I am part of) to try and adopt the BDD
. If this had happened two months ago I would feel very confident talking to them. I imagine how I explain them how we will get together at the beginning of each sprint, writing our scenarios, making sure that we all start with the same understanding about what should be done. Then, how there will be no downtime for the QA's but instead the whole team starts working, knowing exactly what needs to be done (eliminating that feel of not knowing what you need to do) and collaborating with each other/helping each other.
Bu this is the picture from 2 months ago. If I tell them now the same things I'm not sure if they gonna be interpreted the same way. I feel that it's most likely that now they will find irritating to spend time writing scenarios (after all now they know what should be done or at least they think so), they don't feel so lost anymore so the idea of pair programming and spending more time discussing stuff is more likely to be seen as waste of time or even sign of lack of skills. Things like living documentation or filling the communication gap won't make much sense either since we haven't hit those problems.. yet, and last but not least I myself lost my confidence that BDD
is actually something that will definetlybenefit the team. After all if the team members are feeling OK, if the management is feeling OK, then why bother to change something. Maybe things are going fine.
This is where the things get very subjective and I need some advice. Do you think that given the circumstances the adoption of BDD
is something that worth the effort. If no - why? If yes - what arguments would you give to such a team in order to make them enthusiastic about adopting BDD
and willing to make the effort needed for that?
BDD
is not that good, even worse is not having any process at all. I always prefer, especially when we talk about companies with 100+ people, that formal process are almost always better then just letting people do the work however they see suitable.