Thenmozhi Paramasivam and Manuj Sarpal joined Tom Allen to discuss recent developments in software testing, how these are likely to shape DevOps in the future and also how to make DevOps more sustainable.
DevOps Live was filled with some of the most influential DevOps leaders working in the UK, including Thenmozhi Paramasivam, QE Chapter Lead at Lloyds Banking Group (a multiple DevOps Excellence Awards 2023 winner) and Manuj Sarpal, CTO Granite Shares. The two joined Computing Editor Tom Allen, on a panel to discuss how to refine and redefine testing, and what the future of testing might look like.
Sarpal began by reviewing several key developments in testing which have occurred in the last few years.
"Firstly, we used to talk about software agility. Now we are talking about business agility. Business is changing all the time therefore so are your software requirements. Because of digitalisation, most of the business value is in a digital world, which is software.
"Secondly, people are able to work from anywhere, anytime, with multiple tools and devices so we need to have a platform where everyone can work collaboratively.
"Thirdly, in the last five years is the use of more microservices and dependence on third parties. We get more data from third party sources than ever before and I have started putting a lot of emphasis on DataOps."
So I think putting all these three together, I would say collaboration, speed of delivery, and delivery driven development, are all adding to efficiencies."
Sarpal also emphasised the importance of a pessimistic mindset when it came to external sources - zero trust, indeed.
The discussion moved on to bottlenecks in testing, and where they are most likely to occur.
Paramasivam said that in her experience, test bottlenecks occur due to a lack of planning at the beginning.
"You can't plan in a very closed group, you have to start thinking in all the dependencies and this is the key area where our bottlenecks will strike. So make sure these are planned through. And with this DevOps in all the support, we make sure the connectivity of the development activity and the integration part gets it done. But with the support of the regression and automation packs and other activity, the deliverables are faster than before. Refining well in advance maybe the best strategy."
Both panellists emphasised that individual points of contact could also constitute bottlenecks. Collaboration is crucial and both sides of the traditional divide need to be flexible with skills and learn from one another.
The conversation moved to automation, and the potential role of tools such as ChatGPT. As far as Sarpal was concerned, the use of automation in testing was effectively just an amalgamation of existing tools (a point that was echoed earlier in the day by Data & AI Director Barry Smart.)
As to whether the panel could foresee a point where automated testing completely replaces manual testing, much depends on the organisation itself and application complexity, third party dependencies and the extent of integration.
Paramasivam commented that the organisations she leads currently aims for around 80% test automation but some areas remain resistant, although she stated that frankly, in digital terms, anything could happen.
Optimised code is greener code
A particularly interesting aspect of the discussion focused on the topic of sustainable software engineering. Paramasivam was delighted to share her thoughts and advice, whilst also cautioning that it was still very early days for this sort of work at Lloyds, as the technology is new and there are no real guidelines for any organisation to follow. The focus is still very much on saving the customer money by means of them requiring less energy to access Lloyds digital services.
The team uses plugins to highlight code structures that are likely to increase the negative environmental impact of that code such as energy and resources over-consumption. The engineers in Paramasivam's team then have to work back and fix the code.
"We are not only adding this to the DevOps side, we are trying to add it in the who is testing side also," she says. "We made sure we added a Co2 emissions calculation so we know we run that application how much carbon is being emitted. We try to make sure we reduce that bar of emissions from x to y."
Audience questions were fielded on the weight that tools and culture in the overall equation of DevOps success, the likelihood of DevOps-GPT leading to job cuts or creating jobs that we don't even know exist yet, before the discussion moved back to software sustainability, and Paramasivam emphasising the importance of first establishing metrics to first measure code sustainability and then ultimately optimising the code. Optimised code means less processing, memory, and network resources are consumed. Fewer lines of code consume fewer resources.
DevOps engineers concerned about cloud datacentre emissions and seeking metrics to help inform their decision making can access Computing's cloud sustainability research. The most recent comparison is of AWS versus GCP and is available here.