Software products can vary in different fields. One thing good software products maintain is updates, which encourages the user to use it more often. Updates also allow the company or organization to fix any bugs or errors present in their software
For example, anti-virus software generally comes with updates and a lot of them have trials as well so as to let the user experience the software without actually buying it.
Another major factor that plays in is price against quality. If you are delivering a high priced product to the consumer, it should reach that standard and quality which the user expects.
Apart from that, many software products have issues with product registration since most have product keys which get in the hands of others and let others get their hands on it without actually having to buy them.