Michael Kok (LinkedIn) joined the family here at Practical Performance Analyst around six months ago and since then we have had lots of fun working together on pieces focused on Systems Performance. Michael is a very experienced Systems Performance Engineer with a strong understanding of Systems Performance across the Development Life Cycle. We caught up with Michael a while ago with the objective of getting to know him better, to talk about his interests, his passions including his role at mBrace.
Practical Performance Analyst – As an author we are delighted to have you part of the family at Practical Performance Analyst. Michael, it’s a pleasure to get to know you better. Through these series of questions we intend to not only get to know you better but also help our readers appreciate the insight, experience and capability you bring to the team here at Practical Performance Analyst. We will also talk about your role at mBrace including the capabilities and services mBrace has to offer.
1. Practical Performance Analyst – Michael, tell us more about yourself. You have over four decades of experience spanning different technology and management roles across different industry verticals. How did you get here. Tell us about your journey this far.
Michael K – I finished a BSc level in electrical engineering in 1965 at the Den Haag Hogeschool. From 1978 – 1983 while I was working at Amro Bank at the same time I took up a math and computer science study at the Delft University.
After serving my duty in the Dutch army as a signal corps officer, I joined the Dutch PTT in 1967 where I received a management training. Here I first acquainted with computers and statistics. Until 1972 I worked at the Dr, Neher Research Laboratory.
Amro Bank (ABNAMRO Bank) 1972 – 1987 – One of my assignments was founding and operating a department specialized in computer performance called Measurement & Modelling, from 1975 – 1983.
BSO & ATOS – After Amro Bank I joined BSO, a Dutch software house, later to become part of ATOS, as a consultant, 1987 – 1990. Apart from various information strategy studies I was invited in a couple of performance projects, for problem solving and risk mitigation.
From there I moved to Inter Access Management View, 1990 – 1998, a Management Consulting Bureau, where I did various consulting projects, project management including a few management consulting assignments. I was invited to give lectures about practical applications of queuing theory as part of the operations research subject at the Amsterdam Hogeschool.
James Martin + CO / Headstrong 1998 – 2001 – As a consultant I conducted various information strategy studies. My last assignment for Headstrong concerned infrastructure architecture for the mortgages departments of ING bank. In the midst of that job and in agreement with my employer I left and continued as an independent consultant (2001 – 2005).
mBrace – Together with a friend I founded the mBrace company by the end of 2005. My friend left in 2007 and I continued.
2. Practical Performance Analyst – What got you interested in Systems Performance Engineering in the first place and why have you stayed focused on Systems Performance Engineering all through.
Michael K – From the beginning I was fascinated by computer performance, measuring, statistics and above all obtaining control of this quality aspect. Statistics was not a subject in my study of electrical engineering. I encountered this for the first time in the training at PTT including things like Erlang’s formulae. It fascinated me, but I could not see how to apply it. It took me quite some time to master the techniques of application. I tried taking up a courses at Delft University but even that unfortunately did not help me master the fundamentals of modelling.
It was Dixon Doll and James Martin’s books that popularized queuing theory for computer systems. It was the work of these authors that gave me insight into the power of modelling. At about the same time an IBM consultant was contracted at Amro Bank. He created a couple of examples that I could pick up and further develop. I also did my first model based performance analyses. From that time (1981), queuing theory, transaction awareness and response time breakdowns became an integral part of my approach. After the period 1976 – 1983 I sought and found employment in other fields of ICT, less technical in the first place. Nevertheless in the period 1983 – 2005 I became involved a number of times in performance risk mitigation studies and problem solving missions but kept leaning towards performance modelling assignments.
As i gained experience, over time I perfected the method and advanced the frontiers of performance modelling. As of 1995 I was invited to lecture at the BSc computer science department of the Amsterdam Hogeschool. I wanted to demonstrate the model (transaction aware of course) that I created in 1993, which was in my view spectacular in describing the performance of a wholesale suit of applications, but still only showed its output in the form of numbers which left a lot to desired given that humans perceive solutions much better when presented in a graphical form. In order to make the output easier visible for the students I invented the visualization technique that became the basis for our current products.
It was 10 years later in 2004 that I created a new model for a risk mitigation study at ING Bank. The result looked very elegant and I decided to quit doing consulting, design and architecture related work. I recognised that Performance Engineering is the field I like most and decided to make it my main focus. Consequently I established the company Contentional with the main product mBrace (the methodology) based on a spreadsheet model in 2005. In 2010 we decided to rename the company mBrace. Development of the method and the tooling accelerated soon after our start. Also friends have assisted with ideas for parts of the tooling such as the parsing system, measurement techniques etc. or pushed us to accelerate while taking more risk.
3. Practical Performance Analyst – Tell us more about mBrace (the company), what it does, where it’s located, who are it’s customers and what is it known for.
Michael K – At mBrace, our first projects were at ING Bank and Nationale Nederlanden Insurances. Next the Tax Administration and Achmea Insurances followed. Our customers mainly include banks, the Tax Administration, Government agencies, Insurance companies and Telco’s. We are also in the process of developing a partnership with CGI in the Netherlands. Recently we have had a sudden increase in the number of projects where we are working with customers on the post-deployment phases of the application lifecycle, Datacentre consolidation including trouble shooting with an application performance monitor using the mBrace Model.
I have also started work with our management team on re-structuring the company for growth. So far we have been able to finance R&D from our own cash flow. To be able to achieve our ambitious growth targets we are planning to go to the market for additional funding. We just shifted our head offices from Velsen Zuid (known from its suburbs Amsterdam and Haarlem) to Rotterdam.
Most of our business is in the pre-deployment: Performance testing and consequently mBrace is mostly known for the alternative performance testing method, which is extended with performance regression testing and Agile performance testing.
4. Practical Performance Analyst –As a Chairman and CTO, what’s your role within mBrace and how do you influence the direction and strategy for mBrace
Michael K – So far I have played the role of both a spiritual father of mBrace including being a company founder.
At the moment I am in the process of transferring the leadership of the mBrace company to Maurits van den Heuvel. My role now mainly includes keeping an eye out and scanning the market for performance engineering solutions and products. I intend to focus on building capability to stay ahead of the competition, choose a direction for developing our products and maintaining our roadmap. I intend to increase the time i spend working on testing the products that are built, providing post sales support, writing papers including articles and soliciting feedback from our customers.
As for our strategy we started with the objective to sell conventional performance testing services and only expected to perform a few engagements where the mBrace model based testing could be implemented. Very quickly we learned that mBrace was leading the charge as a result we still focus on solutions and services with a focus on using mBrace. Hence our modelling capability (which you may have understood already is my hobby) still determines a great deal of our strategy.
5. Practical Performance Analyst – What according to you are some of the most common reasons for poor performing applications
Michael K – It’s quite unfortunate that a very large part of the applications that we’ve seen developed over the years are just chucked into production with little or no thought given to proactive performance management.
From what I have seen there are four main areas that cause performance problems:
- Half baked understanding of performance – Lack of knowledge of (application) performance. The whole set of items and terminology is not easy to control / comprehend. This causes many problems and is the basis for many problems in the other areas.
- Poor quality of code – Software that is not optimally designed and coded can cause severe performance problems.
- Lack of capacity management or planning – Supply and demand of resource capacities are not in equilibrium. Insufficient capacity is also a potential cause for excessive response times. Capacity should be balanced on all tiers of the infrastructure.
- Poor system and configuration tuning – This consists of functional areas that cover defect hardware and embedded software. Many problems originate from wrong parameter settings such as load balancers not spreading the load, insufficient cache, Java parameter settings, processing threads.
6. Practical Performance Analyst – We are curious to know more about mBrace (the technology). While we wait for the updated articles to come through tell us more about why you created mBrace
Michael K – Our web site at mbrace.nl provides extensive information about the mBrace technology. Here is a brief overview.
The mBrace technology rests on two pillars: The data collection protocol for transaction profiling and the performance model, which supports modelling of various optimization scenarios. Together they serve the method for the basic performance analysis cycle, while also helping explain and predict application performance. The analysis cycle is the key component of a broad range of solutions and services.
Examples of such a solutions are the mBrace alternative for load and stress testing, agile performance testing and regression performance testing. There is also an embedded application of this basic cycle in our real user monitor.
7. Practical Performance Analyst – Is mBrace a way of thinking or is it a set of modelling techniques i.e. a type of analytical, statistical or simulation modelling techniques
Michael K – mBrace is founded on the concepts of modelling, suggesting a way of thinking for performance modelling. It requires a couple of paradigm shifts for professionals and customers. Also typical for the mBrace is that one deals directly with the day to day concepts such as response times, transaction profiles, resource utilisations, transaction volumes, concurrent users etc. and not with queuing theory abstractions such as (workload) classes, type of workload, single or multiple server, queuing discipline etc. Use of the mBrace model is all done in day to day ICT terms.
The visualization technique of the model is another special thing. One doesn’t need to study a bunch of figures, each time you recalculate. Rather mBrace provides an efficient and complete graphical overview that enables you to assess performance with the blink of an eye. Together with quick turn around times times this enables you to quickly move through your analysis scenarios.
mBrace is both a way of thinking and a set of modelling techniques based on analytic queuing models, where queueing theory is kept out of sight of the user of the model.
8. Practical Performance Analyst – What type of problems does mBrace address and are there any particular types of situations where mBrace modelling techniques are a good fit
Michael K – In principle the mBrace Method supports performance optimization and risk mitigating interventions throughout the phases of the life cycle of an application.
- In the design phase you can create a first model of an application by hand according to Dr. Connie Smith’s method for Software Performance Engineering.
- Then in the Construction Phase it is possible produce transaction profiles to assess the performance of each segment of code that has been produced by application developers. This is a relatively new area that we focus on now. So we provide an agile performance testing method with tooling.
- In the Implementation and Acceptance Phases we provide an alternative method for load and stress testing that has important advantages. So far this was our main business where we have done over 120 model based analysis cycles in more than 60 projects.
- In the Implementation Phase we have done a couple of projects in the field of problem solving and data center consolidation. The latter was particularly interesting: securing the performance of 120 applications throughout the migrations of decentralized data centers to one central data center at low cost per application. For this we applied our real user monitor to determine current usage and performance and predict the post-migration performance of these applications on the fly.
9. Practical Performance Analyst –9. Who can use mBrace and how effective has mBrace been over the years
Michael K – mBrace modeling can be applied by any ICT professional with motivation and an intermediate level of education. mBrace is suitable for any business application on any heterogeneous multitier infrastructure chain. It is robust we test applications that are difficult or impossible to script.
Effectiveness. If we take a look on the 60 performance testing projects that we have done – in most cases these projects aim at mitigation of the risk of substandard performance. Apart from risk mitigation we also use mBrace to optimize application performance and capacity planning. Two out of the sixty projects met performance problems after implementation only because our recommendations were not implemented. In all other cases performance was adequate at cut over.
10. Practical Performance Analyst – mBrace has a few different product offerings, from the mBrace RUM to mBrace FLITS and mBrace DC Monitoring. Tell us more about each of these products and their positioning.
Michael K – Our products cover the lifecycle of an application. The mBrace Method and Model are applied for risk mitigation via performance testing mainly in the pre-deployment phases and are offered on SAAS basis.
The mBrace Application Performance Monitor (RUM or real user monitor), mBrace Synthetic Monitor with FLITS (First Level Trouble Shooter) and DC monitoring are used in the post-deployment phases.
The RUM module provides the capability of monitoring the full traffic and usage of an application while providing most of the relevant metrics. It is installed in a data center as a physical appliance and makes use of the mBrace model on SAAS basis. It shows all relevant metrics such as average response time for the application, throughput, number of concurrent users and % utilisation on the main resources. It is a first application of the mBrace model embedded in another system. The monitor can show both the performance as it is and projections of future performance after changes to the application and infrastructure. It is applied for service level management, migrations and data center consolidation.
The synthetic monitor is used to obtain a quick view on application performance. It is based on popular technology that periodically fires synthetic transactions that have been scripted and it measures their response times and has FLITS (First Level Trouble Shooter) as an addition that shows a rough response time breakdown into the times spent in the workstation, the network (in-, out-bound and latency) and the rest of the multitier chain in the data center. It provides a quick view on the cause of the problem and stops finger pointing.
11. Practical Performance Analyst – What training do you have to offer for customers who are keen to learn more about mBrace’s performance modelling and analysis techniques
Michael K – As a first step there is the mBrace Introduction training. In two half days we train staff of our customers to handle the data collection protocol and the performance model. The training includes application of the modelling techniques learned on one of the applications of the customer. When the trainees have successfully completed an exercise with 10 questions they receive the mBrace C-certificate. After two or three projects when they show capability of executing the mBrace analysis cycle they receive the B-certificate. After at least a year of experience, evidence of more depth of performance theory and proven capability to provide the training, the A-certificate is issued.
Thanks for taking the time Michael and answering each of the questions above. We appreciate your support. It’s great to have you part of the family here at Practical Performance Analyst. We look forward to working with you and collaborating on building the Body OF Knowledge here at Practical Performance Analyst.