Skip to main content

Posts

Showing posts from March, 2014

Measuring QA Key Skills and Competencies

I have been thinking about how I can help encourage self improvement within my team, as I understand it, everyone wants to improve, it's just that often there are a number of things that hold people back. I believe one of these things that hold people back are around identifying skills that they are perhaps weak in or that they could/should improve on. So I thought about how I can help tackle that problem. One solution that I want to try with people is to identify the key skills for a QA, what key skills should every QA have, or at least what key skills make up a good QA? If I can identify these then I can start helping people identify if they are lacking in an area. Sure there is a competency matrix that we have, but it has things like "An excellent understanding of XXX", it's often very difficult to quantify what an excellent understanding actually is. So I sat down and came up with the following key skills: OOP Test Documentation Manual Testing Automated...

Benefits of using BDD

For those that aren't aware, BDD stands for Behaviour Driven Development. It is a style of writing (often) acceptance tests, in a Given, When Then format. I've spoke about them in previous blog posts. People often say what are the benefits of them? Why not just write normal tests? Firstly, I feel that BDD isn't just useful as an automation framework, but more of a method of documenting the system that is under test. The Feature files become the documentation, and the great thing is, if the system changes, then the feature files need to be kept up to date to ensure they still pass! Documentation that is always kept up to date sounds too good to be true right!? Not with BDD!!! It provides a living specification of the software under test. Secondly, BDD is a method of getting teams to discuss Acceptance Criteria, and ensuring that teams fully understand the business requirements up front, and it's a great enabler for Acceptance Test Driven Development. Related to t...

How to manage resources within new teams?

Working where I work we are constantly spinning up new teams to take on new workloads as business come up with new demands and new features they want developed and tested. The problem with this is how do we ensure the work of the newly spun up team is of sufficient quality. One method is by taking people from other established teams and placing them on the new team. This works great for the new team, but unfortunately it will oftenl eave the established team lacking in a resource whilst they try and fill the gap left by the person who has left. We are seeing this often with our offshore teams, it can be damaging to the team structure and the teams velocity, but try as I might, I can't think of another way around it. It's far easier to take 1 person from a team that is established than it is to build a whole new team from scratch. At least by leaving the core of a team in place, you should be guaranteeing that the new team are aware of any coding standards or any QA standard...