Yes, you are absolutely correct!
FacetCorp has a single source code base for FacetPhone (as we have with our previous products, FacetWin and FacetTerm). This means that new major features are added along the way with minor features and bug fixes. We did not have a separate development effort for Version 6 taking place in the background. So, as a new major feature was finished, it was included in "the" master source code and became available to customers in the next minor version.
This development methodology has several advantages:
● It is efficient. Working bug fixes and minor features back into a separate code base is an extra task that is completely avoided.
● It provides for a more stable product. Each "build" of the FacetPhone software is tested before releasing to customers (obviously). However, in a feature rich software product like FacetPhone, there are literally millions of combinations of configuration and usage. Therefore, it is always possible that a customer might encounter a situation that was not covered in the testing here. By releasing small changes along the way, we reduce the likelihood of creating a situation where we release a major bug to customers.
● The customers get the benefits sooner and we get the feedback sooner. Once the feature is done, why withhold it?! The next build after a major feature is finished has the feature included and documented and customers can begin using it and give us their feedback.
So, a major version sort of sneaks out little by little. When we feel like the new feature list has hit a critical mass, we declare a new major version and, poof! - your next version of the software is Version 6 even if it is quite a bit like your last Version 5 build!
We think our customers prefer this approach to being overwhelmed by a completely new product when a major version is released (I'm thinking of Windows 8 here!).