- Assistant Professor, School of Computing
- NSERC/RIM Industrial Research Chair in Software Engineering of Ultra Large Scale Systems
Savvy Software Solutions
If you own a computer, you've experienced the frustration when your email service fails of you can't access your Facebook account because of a service disruption. Dr. Ahmed Hassan feels your pain - and he's doing something about it.
Hassan, the NSERC/RIM Industrial Research Chair in Software Engineering at Queen’s School of Computing, is a co-inventor of the Blackberry communication platform and a world leader in a field known as Ultra-Large-Scale (ULS) computing. He also heads the Software Analysis and Intelligence Lab (SAIL), an innovative, multidisciplinary research group of software engineers at Queen’s School of Computing that is working to increase the reliability of global-scale computing services.
Hassan and his colleagues are engaged in critical work. Every second of every day, millions of computer and smart-phone users surf, chat, search, bank, buy, email, game, and upload. The services that enable this computing whirlwind – Google, Amazon, eBay, Blackberry, Xbox Live, PayPal, Interac, Facebook, and wireless networks such as those operated by Bell and Rogers – are based on massive, complex and global ULS computing infrastructures. With so much economic and social activity depending on such services, they must operate flawlessly all the time.
Usually these services work the way they’re supposed to, with billions of daily online transactions zipping back and forth without incident. But even a minor glitch in a ULS service affects countless users and exacts an enormous financial toll – such as a recent four-hour PayPal outage estimated to have cost as much as $32 million in lost customer transactions. Similarly, periodic outages of messaging, email and internet services cause productivity losses and impact financial markets worldwide.
When such downtimes occur, ULS software engineers must identify the problem and fix it, quickly and effectively. However, solutions are often devised on the fly and rely more on the experience, guesswork and intuition of engineers rather than on evidence derived from hard data. Hassan and the SAIL team are devising unique data-mining processes – Hassan describes it as digital archeology – that allow software engineers to sift through billions of lines of code and real-time operating data generated by ULS services and to quickly spot the anomalies, leading them to the source of a current or potential software problem – and a solution.
Data mining – the analysis of extremely large and complex data sets – is not new. Banks and large retailers use it all the time to analyze sales, identify consumer usage trends and make business decisions based on trends that are gleaned from terabytes of corporate data. This analytical process is often referred to as “Business Intelligence.”
The sort of data mining that Hassan’s team performs is different. The mining is applied to data from both the historical software development and the real-time field usage of computing systems instead of business-level data like customer purchases. Hassan coined the term “Software Intelligence” to differentiate it from traditional data mining.
Software Intelligence is quickly becoming a cornerstone of ULS computing. Unlike traditional consumer software, whose updates are methodically written, tested and rolled out every year or two, ULS services may be updated monthly, or even more frequently, while the service itself is running. To help ensure this near-continuous development and operation, accurate and actionable information is needed from both the software development world and the real-life operational world. Hassan’s team is creating the protocols, algorithms and techniques to make this happen.
“Software Intelligence offers up-to-date, pertinent information to support daily decision-making processes,” says Hassan. “Owners, operators, maintainers and developers of ULS services can use it to inform their long- and short-term strategic planning.”
The SAIL team is a diverse group whose 20-odd members have expertise in data mining, grid computing, distributed systems and database management. They have research partners all over the world, and at any given time about a quarter of the group is stationed at Blackberry offices in Waterloo or Toronto to collaborate with the company’s software engineers.
Hassan is a key figure in Queen’sthriving software engineering ecosystem, whose researchers in the past few years have produced the highest return on investment for NSERC funding in Canada. SAIL has also become a success story for two key supporters, the Ontario Centres of Excellence and the Ontario Ministry of Research and Innovation.
“Canada has already established itself as a world leader in ULS systems thanks to innovations like Blackberry and the Bell wireless networks,” says Hassan. “Our goal is to ensure that Queen’splays a key role in future research innovations and in student training so we maintain our leadership in ULS computing – the backbone of all future services.”