Case study: BSB
How RevDeBug has passed the test as a profiler
It's uncommon for a company to have 40 years of experience in the IT industry. One such business is BSB, which was founded in 1974. It is a company with a great tradition. They were involved in laying down foundations of banking IT infrastructure in Poland and are still at the bleeding edge of banking technology innovation. Designated as a company of strategic national importance, and its sole shareholder is the National Bank of Poland.
Their main specialization is the creation of comprehensive IT solutions for the banking, insurance, financial, and public sectors. The company's focus is on the development of specialized IT systems for these sectors, particularly in interbank settlements, reporting, and automatic fraud detection.
They are also one of RevDeBug users.
RevDeBug is most helpful in finding bugs, but recently, RevDeBug Profiler can help you also find bottlenecks and analyze the performance of a program based on a historical recording. The conception of RevDeBug Profiler and automatic masking of sensitive data is tightly tied to how BSB was using our reverse debugger. The idea originated from their needs, was implemented for the first, and was battle-proven on one of their top priority banking applications.
During one of the conversations with Artur Szatkowski, the Head of Development in BSB, he asked us:
"If you could have all the data and values, could you show us how it all changed in time?"
We love this kind of feedback at meetings. Of course, we can! It is one of the ideas that we have fancied earlier, but we didn't know how useful it might be to our clients. We promptly implemented this idea, and at the next meeting with Leszek Lewandowski, the Head of the .NET development team, we were able to demonstrate the new functionality. Leszek wanted to test it right away, saying, "I won't be convinced until I try it myself." He began with a program that needed performance improvements.
The program in question was obligo.XBRL created solely by BSB. It implements the XBRL reporting guidelines defined in the FINREP and COREP taxonomies prepared by the National Bank of Poland following EU standards developed by the Committee of European Supervisors (CEBS). Besides, the XBRL mandate can support consolidated reporting processes within the group. That doesn't sound very easy, and so it is! The program itself does a lot of data processing. Calculates and establish relationships between lots of values, which results in a geometric progression of complexity while the application is extended.
One processing of the client's data took over 90 min to complete, and it wasn't within an acceptable range. The analysis conducted with RevDeBug Profiler has given us an immediate insight into where the application spends the most time.
Apart from the top-view presentation of profiling data, the execution frequency for each line of code was indicated in the editor window. This feature also has helped with the analysis.
Having data on bottlenecks available like on a plate, optimizing system structure has been proven to be easy. Leszek Lewandowski best described the final effect:
"It was 90 minutes; now, it works in 15 seconds."
And when asked how RevDeBug has helped him achieve this result, he summarized it as:
It took Leszek 80 times less time than usual to improve the application's performance so significantly.
Next, BSB will roll out RevDeBug to use with their SPERT and SWPF applications, where it will help finding bugs by remotely recording web applications on a staging environment.
RevDeBug is a new hope for profiling and debugging applications.