XClose

Research Impact

Home
Menu

UCL method for spotting software bugs adopted by Facebook

UCL computer scientists have developed and commercialised a tool to identify bugs in mobile apps, now adopted by Facebook/Meta and improving user experience for 2.6 billion people every day.

clubhouse app icon on smartphone display.png

28 April 2022

Professor Mark Harman (UCL Computer Science) co-founded the research field of Search Based Software Engineering (SBSE). A subset of this discipline is Search Based Software Testing (SBST), which uses computational search techniques to tackle software engineering problems involving large, complex search spaces.

SBST has proved to be a widely applicable and effective way of generating test data, in addition to optimising the testing process.

Developing a commercial proposition

In 2015, Professor Harman began working at UCL with Dr Yue Jia, and their PhD student Ke Mao on the problem of applying SBSE to the automated generation of fault-revealing test cases for Android apps to improve their functionality. Based on this research, the UCL team developed the prototype search-based testing tool, Sapienz, which was released as open source.

In September 2016, Harman, Mao and Jia co-founded the start-up company Majicke Ltd to ensure their search-based testing methods and their ground-breaking Sapienz testing tool would be applied more widely.  

Integrating with Facebook infrastructure

In February 2017, the team took up full-time positions at Facebook (now Meta), founding a new Facebook Sapienz team within the company’s Developer Infrastructure organisation.

The first prototype of Sapienz technology was deployed at Facebook in September 2017 and used to test continuous master builds of the main Facebook app and the workplace application. The research prototype reported on at the software testing conference ISSTA in 2016 had already found 558 bugs in the top 1,000 apps.  

When the Facebook Sapienz team was established in 2017 it deployed the Sapienz tool into the Facebook infrastructure and the tool went on to find thousands more bugs. Tested apps now include the key members of Facebook’s family of apps, including Facebook, Instagram, Messenger and WhatsApp, which, in December 2020, had approximately 2.6 billion users each day.

Proactively testing for bugs

By February 2018, the prototype had been extended to handle continuous testing of every change submitted by developers to the central code repository, rather than simply continuously testing master builds. In 2018, the Facebook Sapienz team reported that over 700 bugs had already been found and fixed by developers by January 2018. By the same year, the Facebook Sapienz team had grown from three to eight staff members.

Research synopsis

 

Sapienz deployment at Facebook 

Professor Mark Harman, Dr Yue Jia, and Dr Ke Mao hasve revolutionised the way that “bugs” are identified in mobile Apps through the commercialisation of the testing tool Sapienz. Sapienz continues to be in full use at Facebook where it directly impacts the user experience of 2.6 billion people every day on Facebook, Instagram, Messenger, and WhatsApp. 

Project team: Prof Mark Harman, Dr Yue Jia and Dr Ke Mao

Links

Image