HOME     SITEMAP     RSS     TWITTER     EMAIL    
Search:   

FollowSteph Follow Steph as he posts Blog Blazer Friday
 
 

How Much Effort is There in Each Software Update?

Software releases generally come in two flavors, updates and upgrades. Updates are small changes where the version number barely changes and mostly consists of bug fixes, enhancements (perhaps performance), and possibly some new small features. Upgrades are generally considered major releases and often the first number of the version changes. These include major enhancements and lots of new features. Now everyone knows a lot of work goes into major new upgrades, there’s no doubt when you look at the list of new features. But what about updates? How much effort is involved in releasing updates? More than most people realize!

I just took a look at all the updates we released for LandlordMax Property Management Software version 2.12, which is now at version 2.12e, and it was quite lengthy as you can clearly see from this list of new features and fixes for each update. What’s the best metric to show how much effort was involved? That’s very debatable. One could argue LOC (Lines of Code) but that’s very skewed.

To give you a quick idea of why that’s skewed, let’s take a look at some of the huge performance enhancements we did for version 2.12c. Between version 2.12b and version 2.12c, as you can see from the graph below, we added about 250 new lines of code. Very few. But if you look at the effort, it took us many man hours to accomplish, probably more than all the other updates combined! So why so few lines of code? Because we removed as much if not more software code than we added. On top of this, a lot of the time we made modifications to existing code (for example optimizing the database queries), where we didn’t add or remove any code but just changed it. Version 2.12c was by far the update that required the most effort but this isn’t accurately reflected in the lines of code…

LandlordMax Property Management Software Lines Of Code For Each Version 2.12 Update

I can already see the next question, what about just measuring the total amount of time taken to implement each new update rather than using lines of code as a metric? That would be great except that we don’t really keep track here at LandlordMax of what we do in that kind of detail. I don’t know myself if I’ve spent two hours on this, then three hours on that. I know the total amount of time I spend working on LandlordMax, but I don’t know exactly on what. And to be honest, I don’t want to subject myself to this level of time tracking (even daily tracking) just to have metrics, it’s a waste of time and money. I’d rather spend that time adding more features to the software. I’m not billing a client, I’m trying to produce a software product, therefore the details of where the time is spent is not as important as building a quality product. With that being said, I do have a good idea of how much time each update took, a good guess-estimate. And I can tell you that version 2.12c was the largest by far.

In any case, I can only use the best metric I have in hand since I don’t have enough details to graph the time spent per update. Although this is not entirely accurate it’s the best I can do. That being said, it’s interesting to note that between the initial release of version 2.12 and the final release of version 2.12 (version 2.12e), we’ve added over 2000 lines of code. Assuming 40 lines per page, that’s 50 pages of new code. And remember, that’s not counting how much code has been modified, how much code has been replaced, etc.

So to answer the original question, how much effort is there in each software update? A lot! Based on the previous releases using only the lines of code as a metric, I can assure you that if we based it on time it would be a much larger percentage, we’ve added 10% as much code as a brand new full version upgrade release to the updates!



 
Like this article?

Comments:

  •     Ari Berdy
    · September 26th, 2006  · 1:28 pm  · Permalink

    You’re not even taking into account all the time and effort that goes into updating documentation, your website…

  •     Steph
    · September 26th, 2006  · 1:43 pm  · Permalink

    Hi Ari,

    You’re absolutely right. The good news is that generally for updates, at least ours, these changes have been relatively small comapred to the major releases.

    One thing I didn’t mention that isn’t shown in the lines of code is also the QA time. In terms of real time, there is an obvious cost. In terms of LOC, it doesn’t show up at all.

    Another cost is re-deployment. We have to make sure the application was successfully launched, that everyone knows about it. That we update all the sites that are linking to us (for example shareware sites), etc.

    All these extra costs do add up, and often the monetary gains are minimal in comparison to the extra sales from major releases. This is why we see so much buggy software where the vendors continue over and over to release new major releases with tons of features that don’t really work! I personally, would rather release a high quality software application than one with lots of buggy features. This is how I believe long term success is achieved!

  •     Ali
    · September 27th, 2006  · 12:10 am  · Permalink

    Hey Steph,
    I’m working at a web based time tracking product (see my website), which is focused on letting you track how much time you spend doing what.

    Your comment about not wanting to go into that detail of time tracking struck me as interesting. Would you be willing to do that, if:
    a) You have a nice/intuitve software interface for doing it, as compared to using Excel or simple paper sheets.

    b) You get all sorts of reports on how you spend your time, such as what percentage of your time goes into each aspect of the development, how good you are at making estimates, whether the amount of time you spend working is increasing or decreasing between two time ranges, as well as being able to track the results/effects of your efforts, etc?

    c) Is there anything else which would convince you to track your time using that software?

    d) Would you pay for such a solution?

    I hope you don’t mind me blatantly asking for feedback 😉
    Cheers,
    Ali.

  •     Steph
    · September 27th, 2006  · 11:58 am  · Permalink

    Hi Ali,

    I don’t mind that you’re asking for feedback. To answer your question, these are all metrics that I would love to have but don’t want to track. It’s a catch 22. It basically comes down to the cost versus the benefits. The benefits I would gain would not be anywhere near equal to the costs of tracking my time (or employees). If you add up all the time taken to enter in all the information as compared to what I can get out of it, it’s nowhere near equal!

    We’re (LandlordMax) not a large company so we don’t need to justify our time to multiple levels of hiearchy (nor do I ever plan to have those kinds of justifications, just look at Google as an example). As long as things are moving and we’re continually advancing our product(s), our customers are happy, we’re profitable and growing, then that’s all I really need to know. Anything above that is great, but I’m not going to spend any time or money on it. I have to look at where my best ROI (return on investment) is. Rarely is it in time tracking.

    If I was a consultancy on the other hand, this would be crucial!

  •     Ali
    · September 28th, 2006  · 2:49 pm  · Permalink

    Thanks Steph. Appreciate you letting me pick your mind 😀

  •     Steph
    · September 28th, 2006  · 4:00 pm  · Permalink

    You’re welcome 🙂

  •     FollowSteph.com » Lines of Code Revisited
    · December 11th, 2006  · 12:58 am  · Permalink

    […] For those of you who are interested, since I did show in a prior article how many lines of code changed between each minor update for version 2.12 (ie patches), the difference between version 3.11 and 3.11a is only a few lines of code in the build script, nothing changed in the actual program. […]

Write a reply:





 


SOFTWARE AND BOOKS BY STEPHANE GRENIER:

LandlordMax Property Management Software

LandlordMax is the EASIEST
Property Management
Software available!
Try it for free!

Real Estate Pigeon

Real Estate Pigeon
The place to ask and answer
all your real estate questions

Blog Blazers: 40 Top Bloggers Share Their Secrets to Creating a High-Profile, High-Traffic, and High-Profit Blog!

Blog Blazers is a book that
features secrets from the
Top 40 Bloggers on the web

How to Generate Traffic to Your Website ebook

How to Generate Traffic to
Your Website
is an ebook for
to you achieve success


 

FollowSteph
More resources from Stephane Grenier:
PUBLICATIONS
For people who work on the web
Blog Blazers
How to Generate Traffic to Your Website
 
SOFTWARE
The EASIEST Property Management Software available!
LandlordMax


Copyright @2003-2024
LandlordMax Property Management Software

Disclaimer: This is a personal blog about my thoughts, experiences and ideas. The contents of this blog are for informational purposes only. No content should be construed as financial, business, personal, or any other type of advice. Commenters, advertisers and linked sites are entirely responsible for their own content and do not represent the views of myself. All decisions involve risks and results are not guaranteed. Always do your own research, due diligence, and consult your own professional advisors before making any decision. This blog (including myself) assumes no liability with regard to results based on use of information from this blog. If this blog contains any errors, misrepresentations, or omissions, please contact me or leave a comment to have the content corrected.