QA Financial Forum New York | 15 May 2024 | BOOK TICKETS
Search
Close this search box.

QA Financial’s Leadership Insight: Matt Wynne, Co-Founder of Cucumber Ltd.

mattwynne-headshot--1569493339

What started as a hobby project in 2007 for developers Matt Wynne and Aslak Hellesøy, the open source software testing tool Cucumber has evolved into something neither of them ever expected. Following a Behaviour-Driven Development (BDD) approach, Cucumber runs automated acceptance tests by taking plain text specifications written by users to describe how they want a system to work. Glue code then connects these examples to the system to check whether it conforms to the written specifications. The tool can be used to test systems written in almost any programming language, as well as across various devices. It was only in 2011 when Cucumber’s founders began making money from the open source tool, upon publication of Wynne and Hellesøy’s The Cucumber Book. Wynne saw the opportunity to provide consultancy and training services to companies following BDD and using Cucumber; and it was from this that Cucumber Ltd. was born in 2013. Matt Wynne, Co-Founder and CEO of Cucumber Ltd., tells QA Financial how his company is helping financial services overcome challenges as they go through digitisation, and discusses the initial teething problems the company has faced while building the first version of their inaugural off-the-shelf product, Cucumber Pro. Q. Why is Cucumber better placed than your competitors to help financial firms address challenges that they face when automating testing? The thing to say about the financial industry is that it is a complex domain. Financial services have intricate business rules, and if software is being rewritten or enhanced, these rules still need to be followed. Where I think BDD and Cucumber really shine is that we can capture these rules as automated tests, putting them front and centre of development. As tests are run, business rules are being validated and eventually you end up with this living documentation. Another challenge faced by financial services is that a lot of information about their legacy systems has been lost in the mist of time. Systems are just running away – no one knows exactly how it behaves, but it seems to be doing something useful so it’s just left to run. A great example of this is when we worked with a big UK insurer that was rewriting a system from a mainframe app into Java and the team didn’t know where the original code specifications were. Luckily, there was one person in the business who worked on the original system as an analyst. So from memory, the person had to write examples day after day so that knowledge could be captured and applied to the new system – this is just one example, but this problem is common amongst financial services. I think another hurdle financial services face is that there is a lot of pressure to get things right first time round. If one of their systems goes down, there’s going to be a cost associated with this, and it can sometimes be significant sums of money – for example, if a trading platform is down, you know that every second it’s down it isn’t making money. Development teams need to have a lot more caution in the financial services industry; there needs to be more rigor. Q. How has Cucumber and Cucumber Ltd. been received in the financial services market? The thing with Cucumber is that anyone can download the software for free. We don’t actually track who is using the software itself and we don’t have control over this, but we do know it’s being used by financial services. We also know Cucumber is used globally, as it works in around 40 different spoken languages. One way we can keep track of who’s using the tool is through our consultancy business in Cucumber Ltd., and here we have done very well in providing training to financial services. In fact, our biggest customer right now is Vanguard, one of the world’s largest investment management companies. They have around 2,000 development staff that we have trained in BDD and Cucumber. It’s been a phenomenal experience, they have been really enthusiastic to get on board and have taken on some major organisational shifts. As consultants, we are very fortunate because we are associated with the Cucumber product which is so popular. We are in a privileged position in that we don’t do any push advertising at all, we really wait for people to come to us. I don’t know how sustainable that is, but so far it is working ok for us. Q. In terms of competition, who do you see as your main competitors, especially in the financial marketplace? What is your edge? There are other open source BDD and testing tools like JBehave and Concordion. Cucumber’s advantage is that it works across many different software platforms. For example, we worked with the BBC Sport team who used a single set of Cucumber specifications to test several implementations of their app on multiple different TV models and set-top boxes. Similarly, many companies use one set of features for their iOS and Android apps, with completely different glue code underneath. As far as competition in terms of training and consulting services, there’s the likes of Capgemini and ThoughtWorks – these are big players in the Agile space and can certainly do a good job of putting bodies into an organisation. Where I think we differ is that every consultant we have is an expert practitioner themselves – they are either contributing to the Cucumber open source project or have written books on BDD. We can give organisations the kind of confidence that comes from speaking to someone who has been there. This can often help get people on board who are either a bit scared or cynical about change. We want to make sure customers go from a team that has high defect counts, slow development sprints and missed deadlines to a team that is really clicking, meeting deadlines and shipping applications regularly. That’s where our focus is. Q: What were the drivers behind creating and working with an open source product? Personally, I was attracted to the open source community because I like the idea of collaboration. And having worked with Cucumber since 2007, I can say it’s been a wonderful experience. From a user’s perspective, I think there’s something really great about open source software. As a user, it’s fantastic to be able to tinker with the tool you’re using. If there’s something you don’t like about it, or if you want it to behave differently, you can crack it open and change it. If you think those changes will be valuable to other people, you can share them with the project’s community, and if the maintainers of project think that your changes will be useful to the project, they will pull your changes back into the software. Everyone gets the benefit and you get the credit. Although the founders of Cucumber Ltd. are the same people that founded the Cucumber open source project, the open source project is kept alive by hundreds of volunteers who contribute to it daily, and we are very grateful for them. Q: What have been the main challenges Cucumber Ltd has faced? Cucumber the open source tool is very much a technician’s tool – built by engineers and used by engineers. Currently, a QA engineer will use the tool to write, run and validate tests, but it’s not necessarily user friendly. We identified that there was this need for an enterprise collaboration tool for organisations using Cucumber and BDD and wanted to be able to share test specifications across an organisation. And so we had a go at building one. We didn’t set out to build a tool to throw away. But what we did was we went very fast, and we probably didn’t follow our own advice about technical rigor and keeping the code clean and maintainable. We wanted to prove the business case for the tool, test out the market and understand what people’s needs were. What we ended up with after a year or so of building Cucumber Pro was a bunch of customers that were telling us that this is a great idea, but the product was too buggy. We also had a code base that none of us wanted to work with anymore. It was at this point we took a step back and started again. It was a hard thing to do and it’s been slow going for our customers; however, the rewrite of Cucumber Pro is very much alive and kicking. It is currently being tested out in several organisation and we are hoping to launch the product next year. In the long run, throwing the first version of Cucumber Pro away was a healthy decision.