Changes in PVS-Studio's licensing policy
The licensing policy of the PVS-Studio static code analyzer will be changed in the new version PVS-Studio 4.32.
At first I will list two significant changes and then explain the reasons why we did so:
- We remove Single User License and leave only licenses for teams of developers.
- The license is valid during one year, after that you have to renew it (with a discount), otherwise the program will stop working.
Now let's go to the reasons for doing that. There is only one reason, of course: we want to gain more money. Let me show you why we consider it reasonable.
Since the time PVS-Studio 3.00 was released (July 27, 2009), the software product has changed GREATLY. At that time it was a tool to make port of software to 64-bit platforms easier (the Viva64 module). Now it is a complete solution for permanent maintenance of code quality during the software development process at a certain level. What are the differences between the contemporary PVS-Studio version and that old version 3.00 dated by 2009? Look at them yourself:
- Now it uses the general analyzer to diagnose a wide range of errors. Currently, there are more than 80 diagnostic checks and their number increases with each version released.
- The quality of diagnosing 64-bit errors has been improved greatly; the number of false reports has been reduced.
- The tool's interface has been significantly changed and therefore it became more convenient and simple to handle:
- there is the new window of analysis results output PVS-Studio Output Window;
- the mechanism of false reports marking "Marking As False Alarms";
- check of only new and recently changed files (Incremental Analysis);
- capability of convenient setting of filters at different levels;
- work from the command line: Makefile support, support of launch from continuous integration systems, check at daily builds;
- fast and convenient Help system (online, program-integrated and in the pdf format);
- saving and loading of analysis results in a log-file;
- multi-core and multi-processor support;
So, the product has become really better during the two years. It is because we need to maintain this functionality and implement the new functionality (including implementation of new diagnostic rules), that we have to change the licensing policy. Since the tool has become much more powerful, the profit it brings to a company (rather than individual developers) has also risen. Here you are an example. First, all the members of a team can use Incremental Analysis (to learn more about this function, see here) to detect issues in code as soon as they appear there. Second, you must use daily check of the whole code through continuous integration systems (see examples here). Third, if the code base (code's size) is large, it must be reasonable to launch analysis on several machines (some project is being checked on one computer and another project is being checked on another computer). So it turns out that a developer team cannot do with a single user license if it adopts static analysis in its work - they need a team license at least.
All this made us introduce changes to the licensing policy. The new licensing policy is described on the order page. We hope for your understanding.