BMJ – formerly the British Medical Journal – is using AppDynamics applications performance monitoring (APM) tools to let developers fix software code problems before release, aiding its move to a devops operating model. SEE ALSO, WHAT IS DEVOPS?
The medical publishing firm initially deployed the AppDynamics technology to detect software issues which can arise in the applications used to deliver its range of online products - all the way from front-end systems to databases.
However, it has now also using the APM platform to improve the quality of code before it is released, which has supported its move to a devops operating model. Devops is a software development approach that, as its name suggest, involves developer and operations staff working more closely together to drive efficiencies and release code more quickly.
“We have started use AppDynamics in our development environment,” says BMJ chief technology officer, Sharon Cooper, "and this means that, as our devs are writing code and as the scrum team is developing, they are using AppDynamics to see how fast things are as they are writing it. So they are tuning [the software] in dev, rather than waiting until something is live and then working out how good it is going to be, and how it runs.”
Being able to see how responsive the code they are writing “before they deploy it live” ties in with the firm’s agile development approach.
BMJ’s Cooper recently spoke to CIO UK about how its move away from the ‘waterfall’ development methodology has allowed the organisation to release code much more frequently: “In 2012 when I first joined I did one release a month, a year later we were doing 12 releases, a year after that we were doing 35 releases,” she said.
“This month our ops team are not doing releases any more, the developers are doing it themselves, so we have moved to a devops environment very quickly.”
Speaking to ComputerworldUK today, Cooper said that the organisation has now reached 50 releases during the month of June.
Its trial of AppDynamics in development environments is playing a role in supporting this, she said, and helping improve trust between the two IT teams.
“We are running much faster: we have moved to a devops approach,” said Cooper. “So what AppDynamics does there is - because it is being used in the background in the dev environment - the sysadmins can see that the code is performant.
"It allows us to build up an element of trust between our dev and our ops teams, to say that we are building stuff that is ready and fit for purpose and fit for release without having to do loads and loads of testing and validation of it.”
Improving software quality
The initial goal of the AppDynamics deployment was, however, to improve the quality of software across its IT estate.
“It has been able to very quickly point us in the right direction of where something is failing, right down all the way through from the front end of the applications all the way to depths of the databases,” Cooper said, adding that it also offers visibility into applications that BMJ doesn't manage directly. "It has been able to highlight a particular problem there, and we have been able to go back to the application vendor and say ‘we need to go and fix that line of code’.”
BMJ's IT estate includes 100-plus servers, seven different software platforms, 80 databases, 200-plus application instances, and 180 site instances, Cooper says. It also uses six hosting providers, which meant that managing problems with externally run applications was often a challenge.
One example is its third-party controlled access control system, which authorises its customers – such as large hospitals, which purchases access on an organisation-wide basis - to view its range of online products. When problems arose, it could take a long time for IT staff to respond.
“We are one of very few people who use that [access control] application, so it doesn’t get a huge amount of development work on it. That application has been slow for years...it was taking our customer service people sometimes forty minutes to set up a customer with a new application,” Cooper said.
“We pointed AppDynamics at it, and it came back within a couple of days and it had gone through everything and it [revealed what was] running really slowly.”
“Once these were all fixed – we put some fixes in, the vendor put some fixes in – and the application has a 400 percent increase in response time, which meant that in our really busy renewal season when we are dealing with hundreds and hundreds of renewals, the customer services team were able to deal with a call every five minutes instead of every half an hour or hour.”
AppDynamic: BMJ efficiency gains
Another major benefit has been operational efficiency, Cooper said. “We believe that it saves us - without any other work, just actually being able to do the monitoring – at least a day a week of a full time equivalent salary."
Cooper said that staff “kind of talk about AppDynamics as being another member of the team”.
“What it does is make our small team really efficient. It is at least a day a week that we save, which we offset against the cost of the licence, but it is the fact that every other member of that four person team is working far more efficiently because they know where to go and find things.”