Test Engineering Platform
Our story of Tech Transformation in Software Testing
Adi Dassler Standard #23: Test, test and test again.
Tech Transformation means integrating the digital technologies into all areas of our business. When this transformation happens at an enterprise level, it impacts on everything and everyone. From the top to the bottom. And of course, people devoted to software testing in adidas are not an exception. Tech Transformation is essentially in my opinion, a cultural change. And a cultural change implies strategic changes, leading to changes in our organisation and in our mindsets; in our way of thinking and working together. Changes, changes and more changes. So, as you can imagine, this is a story about changes: past changes, present changes and some future changes.
At adidas, two strategic decisions have shaped our journey: first, the strong IT internalisation process we decided to go for; second, the restructuration stages we went through, to find the best Global IT organisation to suit our company needs. And in parallel, the test professionals in the company have been working very hard, as the rest of Global IT people, to technically evolve. Through learning, investigating, trying, training, failing… we had the clear objective of making the-state-of-the-art processes, practices and technologies our standards.
Specifically speaking about test engineering, our goal was and is to live in a true DevOps culture: applying a mature agile test process, implementing CI/CD (Continuous Integration / Continuous Delivery) practices and making use of the latest technologies, tools and capabilities in our test automation.
From an organisational perspective, this process started four years ago when GTT (the Global Testing Team) was created inside the horizontal structure AE&S (Application Engineering & Support) department. Our team worked hard during these years in transforming a bit siloed organisation, where every business area, and most of the times, every project, worked on its own, dealing with their own challenges (processes, tools, infrastructure), achieving their own success and assuming their own failures.
From GTT, we tried to support as many business areas and projects as we could, providing professional test management services, standardising processes, deliverables and tools, setting test teams up and promoting training and community practices.
Even when the recent (January 2018) reorganisation of Global IT, with the creation of the PE&A (Platform Engineering & Architecture) department, means a game changer event on our Tech Transformation journey, I must say that, regarding Test Engineering, it has not been a breaking point. The ones from GTT now in PE&A are applying on the new organisation the vision and targets we shared.
In Q4 2016, we created a Test Automation Group in GTT, with the clear objective of promoting, supporting and standardising Test Automation, CI/CD and DevOps practices. We started small but continuously growing, building a strong team who collaborated with several business areas to implement and evolve test automation practices. The efforts of this team, together with the whole GTT team effort professionalising software testing in adidas through mature engineering practices, experienced test management processes and consolidates infrastructure and tools for test management, test automation and performance testing, contributed to the transformation and pushed adidas testing closer to the industry state-of-the-art.
In January 2018, the PE&A department was officially released. As the rest of the horizontal teams, GTT people was split. Part of us became part of the PE (Platform Engineering) team, owning the central testing services, and part became part of the vertical teams, directly serving the business areas.
As a result of this change, one of our three main targets of our team, the engagement with the test professionals in adidas, became partially easier, as we have our former team mates supporting testing in some business areas. And also, for the two other, standardising and providing archetypes and infrastructure, our work will be the evolution and maintenance of the awesome work our colleagues delivered in the past years.
Once the story is told and our context a bit explained, let’s talk about our present and the vision we share for our future.
Future in adidas Software Engineering is DevOps (I would say, as I heard once in a Conference, “DevTestOps”; or DevTestSecOps, or better, BizArchDevTestOpsSec… BADTOS sounds quite nicely. ) and I would dare to say that DevOps is already our present. Not in all areas, and not in all technologies, because our landscape is huge and our business and organisational contexts are very diverse.
But Tech Transformation is much more than DevOps. It’s a business cultural change, and here, as business representative during software development, testing has an important role to play. If we want to contribute and provide value to our company, (and we want), we have to provide answers and solutions to our challenges.
From the Platform Engineering team, we aim to build the best possible Testing Platform, finding the exact point of balance between standardisation, to gain velocity, and freedom, to allow the test professionals in the company to evolve by their own and co-create.
The questions we try to answer from our team:
· Who to test? We want to manage and promote the Test Community of Practices: through proper unified communication channels (as our ODP (Open Digital Platform) Yammer and Slack channels) and through events and talks to collect adidas testing needs, to share lessons learnt, findings and experiences and to make easily available and quickly adoptable all the common testing resources.
· What to test? We want to help our teams to plan and analyse properly the testing activities needed to ensure the most effective and efficient testing. It’s inside our scope to co-create and co-evolve with the Test Community the needed processes and deliverables templates, traceability examples and guidelines (many of them already available). We want to contribute to get the same quality level in our software and systems as the one adidas builds on our footwear and apparel creations.
· How and where to test? Summarising our approach in a single sentence: let’s provide from the platform team the support, tools and infrastructure needed for test executions (how and where) so the test professionals in the teams can be focused on what needs to be tested.
In a first phase, we are providing:
- Working examples and archetypes covering the standardised tool chain: from project examples showing how to keep full traceability with test artifacts and how to provide meaningful information to code examples of automation and performance solutions covering API testing, web frontend testing, mobile testing, Jenkins pipelines for CI/CD in test.
- Shared infrastructure for test automation execution, performance testing and auxiliary test tools.
For a second phase, we will work on what we call TaaS (Testing as a Service). Our vision here is to make existing tools and infrastructure better performing, more accessible (building self-service capabilities for them) plus extending the standard support of the platform to a wider set of test framework (Cucumber, Specflow, NightwatchJS…).
Our challenges as test professionals inside the Platform Engineering team are many and diverse:
- We should wisely increase our capacity to serve efficiently more than 200 professionals and not becoming a bottleneck for them to create and grow.
- We must work hardly and learn as fast as possible to provide solutions for testing to the new technologies (Big Data, AI, Blockchain…). We must respond to the most changing industry in the world.
- We, together with all the adidas test community, have to keep providing value and proving to the business and to our IT colleagues that professional and dedicated testing is a must to achieve the needed quality our industry demands.
- Quality is not built by testing, it’s built by the whole project team. But test professionals must play the business representative role during the software lifecycle, so we should know more than anyone about our business. And we must identify the risks of the system we are testing to mitigate them, so we should know as much as possible about the architecture, the system design, the technologies in use and the infrastructure. Continuous learning is a must for us.
Journey will be long, intense, tough… but, no doubt, exciting and moving. Engaging adidas test professionals and co-creating with them is the key to a successful platform in test who adds value and helps adidas on its Tech Transformation.
A lot of questions and challenges in front of us; and even when I don’t have most of the answers and solutions, I have clear that our adidas values will bring us together there: creativity, confidence and collaboration is what we need.