Tuesday, March 25, 2014

Software Version Numbers ... And The Story They Tell

Although there is no "law" in the software industry pertaining to Version Numbering ... nor what convention requires following ... most major software developers follow the "standard" system of X-Y-Z or Major.Minor.Patch.


Most often you will see software with version numbers such as 3.1.2 or 5.1.0. As mentioned above the FIRST digit is the MAJOR version number ... SECOND digit is MINOR version number ... and THIRD digit is the PATCH or sometimes referred to as the BUILD version number. So what does it all really mean?

MAJOR version numbers change when something significant is rolled out ... new features ... major enhancement ... etc.

MINOR version numbers change when minor changes are made to a release ... minor feature release ... the title basically stays the same with some minor feature enhancements.

PATCH version numbers change when a bug fix or patch is released to repair or correct a bug for a previous version that has been released to the public.


What Story Can Version Numbers Tell to the Consumer?
As far as a consumer is concerned ... version numbers can go beyond just indicating what "model" of the software they are about to purchase or that is in their possession. Version numbers also tell the life story of that software title. As a consumer ... what could they mean for you? Some examples :

(1) Low MAJOR version numbers probably indicate that not a lot of work or enhancements have been developed for the title. If the title has been on the market for say 5-6 years and the major version is still 1 or 2 ... that means there has been less than 1 major release every 2-2.5 years. Not much movement there. Either not many new ideas or not much interest in moving forward.

(2) High MINOR version numbers most likely also means that there are no new ideas on the table. Development has been devoted to slight improvements in the product but no new cutting edge ideas have been developed that would trigger a major release. Again ... the length of time the title has been on the market and the MINOR version number will work together to indicate this inside story.

(3) High PATCH version numbers can tell a deeper tale. Obviously ... if the patch version numbers are high the title has had a lot of issues and the developers have had to release multiple bug fixes and patches to fix those issues. Sure they may be fixing the issues ... but it doesn't project an air of confidence in either the development or the testing.

Just a note on BETA testing as well. BETA testing is performed on a software title prior to release to the public. This is the general way smaller software companies put a title out there so BETA users can use it and report back bugs or other issues that need to be corrected. Smaller developers use this method because most likely they don't have the staff to perform in-depth BETA testing in-house ... or perhaps they are creating software outside the realm of their market experience. In our business ... non-machinists developing software for the machinist. In reality ... the longer the title is in BETA testing ... the bleaker the outlook for a quality product release. Is it because the design is all wrong to begin with? Too many bugs causing release delays? Can't get the features right? Whatever the reason ... long periods of BETA testing usually indicate issues that will follow the title to release and beyond.

How About Kentech Titles and Development?
Here at Kentech Inc. we do follow the Major.Minor.Patch version numbering system. We invite you to take a look at the version numbers for our software titles ... and see the reflection of the pace of our general development .... the pace of ground-breaking major releases ... and the number of patches or builds that accompany those releases. Below is a listing of some of our MAJOR titles ... their life span and version numbers.

KipwareM® - Conversational CNC Programming Software for Milling
Initial Release Date : 1999
Current Version Number : 16.1.0

KipwareT® - Conversational CNC Programming Software for Turning
Initial Release Date : 2001
Current Version Number : 17.0.1

KipwareQTE® - Machine Shop Job Costing and Estimating Software 
Initial Release Date : 1996
Current Version Number : 12.3.2

KipwareCYC® - Machining Cycletime Estimating Software
Initial Release Date : 2007
Current Version Number : 5.2.3

In addition ... here are couple of links that outline our development and releases for the years 2013 and 2012 where you can get a quick report on all the releases for that calendar year.

2013 Development Report :
http://kentechinc.blogspot.com/2013/12/yearly-development-report-wow.html

2012 Development Report :

Conclusion ...
We are proud of our achievements ... many have been ground-breaking in our particular market sector. And we are proud to lay out those achievements for all to observe. In both this BLOG and in our software titles and version numbering system as well.

I hope that this short article has assisted you in becoming a little more of an educated consumer pertaining to your software purchases. Because at Kentech Inc. we live with the motto made famous by a local New England clothing store ... "An educated consumer is our best customer."

Kenney Skonieczny - President
Kentech Inc.

No comments: