Our philosophy: No shortcuts, no compromises, no excuses

Fri, 04/19/2019 - 15:36

The story of how BUGSENG came to be has taken many twists and turns over the years. From a teenage boy playing with his friend’s programmable calculator, through stints with the military and CERN and on to a glittering academic career spanning both Italy and Yorkshire, England. We wanted to find out more about this story, and who better to tell it than BUGSENG’s co-founder and CTO, Roberto Bagnara.

Q: What inspired you to set up BUGSENG?

The initial idea came to me back in 2008. As a Computer Science Professor at the University of Parma, I was involved in a project with a number of big European companies who were using commercial software verification tools. They asked for our help to evaluate the effectiveness of those tools.

We were alarmed by what we found. These companies were developing safety-critical software, but the verification tools available to them were badly designed and based on old, sometimes obsolete, technology. They were totally inadequate and not able to detect the software issues they were being marketed, and bought, to detect.

Remember, this is safety-critical software. People’s lives, health, safety and property depend on that software being right. We knew we could do better, much better in fact.

My software verification research group at the University of Parma had already been active in this field for 10 years. We had an immense amount of expertise, so we started to think seriously about creating a spin-off company.

I got together with my brother, Abramo and Dr. Patricia Hill, a former Senior Research Fellow at the School of Computing, University of Leeds, UK, who is truly brilliant at programming languages and program analysis. We spent two years conducting careful engineering of the prototypes my research group had developed. This is Abramo’s area of expertise; he can program absolutely anything that needs programming.

We officially launched BUGSENG in 2011. From the very start, we were all determined to focus relentlessly on quality and accuracy, even if that means delaying a release. In safety critical software, quality must always come first.

That attitude is enshrined in everything we do and is systematically transmitted to everyone we work with. Our philosophy is very simple: no shortcuts, no compromises, no excuses. Software verification must be done right, every time.

Q: When did you start to be involved in software verification?

It was the topic of my Computer Science MSc thesis at the University of Pisa, in 1992. I went on to deepen my knowledge of software verification and validation methodologies and technologies during my Ph.D, also at Pisa. Then, I went to work as a research fellow at the School of Computer Studies, University of Leeds, UK, under the direction of Dr. Patricia Hill.

I set out to convince her to steer her research group from programming language design to program verification. I’m delighted to report that it worked, and we’re still working together today.

Q: Have you always been interested in Computer Science, even as a child?

Yes, but we didn’t call it that then. I remember, when I was about 14, reading my father’s electronics magazines and seeing a mention of a new, programmable calculator. When Abramo and I discovered our neighbour had one, nothing was going to stop us playing with it and working out exactly what it could do.

There was no Computer Science in schools at that time, but I studied Electronics in high school and had part-time jobs with small firms building the first bar code readers and repairing video games. Abramo and I were always passionate about electronics and we designed and soldered our first computers (based on the Z80) while still in high school.

After high school, I worked with a company producing some of Italy’s first personal computers. But, my first big break came during my compulsory military service. I was selected to work in the Biomedical Physics group at the University of Bologna; a role I was much better suited to than being a soldier. That led to a project at CERN, where I worked with Tim Berners-Lee (although it was before his much more famous work on the World Wide Web).

I was essentially self-taught. But those long evenings spent studying in the CERN library, convinced me that to progress further, I needed a more formal education. And, by this stage, I knew exactly where I wanted to go; the most theoretically oriented Computer Science program available at the time, which was at the University of Pisa.

Thank you, Roberto, that is a fascinating story.

In future blogs we’ll be covering more BUGSENG news; technical updates, as well as details of the projects we work on, and stories from the people behind the company, our partners and clients.

We’d also love to hear your thoughts. If you have any topics, concerns or questions that you’d like us to cover in future blogs, please let us know. You can contact us here.

Roberto Bagnara, Ph.D is CTO of BUGSENG, a leading provider of solutions and services for static code analysis. He is also a member of the ISO/IEC JTC1/SC22/WG14 - C Standardization Working Group and the MISRA C Working Group.



We are a passionate team of experts. Do not hesitate to let us have your feedback:
You may be surprised to discover just how much your suggestions matter to us.