Measuring software performance is an important concept which helps us evaluate options for implementing business software solutions. Certainly developing, implementing and maintaining software is costly and brings with it the promise of productivity, efficiency and control. Our focus now is to consider the business aspects. We want to create a metric which can be compared before the software implementation to after the implementation. Kind of a score card with a numeric grade. The good thing about considering a metric is that "to measure is to know". So, the more we dive into how to measure the performance of a software function, the more we will understand what we are automating and how best to do it. For example, for a particular software implementation we have a metric of 6.7 before and 8.2 after. That's a 22% increase! Sounds significant but certainly only meaningful if we agree on what we are measuring. Of course, any metric is only as good as the parameters which make up the measurement. So, let's stick to some basics of business like Quality ( better product or service - feedback, happier customers ), growth ( more sales/revenue, long term / marketing ), profitability ( efficiency, reduce costs / labor ). Generally, the faster we can implement, the better. The world is changing faster and faster. So, the ability to implement quickly is necessary both from the cost perspective and for the business opportunities. Spending too much time on software implementation allows competitors to catch up as well as business market and resource changes. Of course, we want to take the time necessary to implement the software correctly but we don't want to waste time. Perfection is a waste of time. Ultimately we want to consider both the directly effected processes and the indirectly effected processes. Create grades for Quality (Q), Growth (G) and Profitability (P). (For our example we will arbitrarily assume the factors of 0.5 , 0.2 and 0.3 respectively) So, for each process, we have a Grade for Q,G and P. Then we will have a matrix of factored grades for all processes effected by this software. We have 2 sets of grades. One before the implementation and one after. We might also consider a third grade reflecting the conditions during the implementation which consider partial chaos or improvements during this period. We should consider time and expenses when comparing multiple possible solutions. Economies of scale may dwarf the expenses but time will always be a factor. This is neither a mathematical exercise nor an in depth evaluation of your business. Since every business is different, you must consider your own business factors. We can generalize and consider those aspects which are common to most businesses and leave the math for a student who wishes to pursue it. So let's say that software solution A has G=7 (on a scale of 1 to 10) and Q=8 and P=6 and software solution B has G=8, Q=9 and P=4. Grading A and B we have the following:
A:
7 X 0.5 = 3.5
8 X 0.2 = 1.6
6 X 0.3 = 1.8
Total 6.9
B:
8 X 0.5 = 4.0
9 X 0.2 = 1.8
4 X 0.3 = 1.2
Total 7.0
Assuming both solutions take the same amount of time and cost the same. So our conclusion for this example is to go with solution B.
Considering a metric to evaluate software solutions will help you better understand the process and will make for an honest well thought out decision.
Keep it simple so everyone involved understands it and can make contributions to it and you'll find this to be a practical and effective method for measuring software performance.
Any thoughts?
Steve Cantor is president of Optimal Process, a software development firm in Memphis TN which provides ready to go software solutions like Field Service, Email Broadcast, Content Management, View Edit and Ecommerce as well as custom software solutions. You may contact Steve at cantors@optimalprocess.com
Loading...