The term 'virality' with apps, youtube clips, songs and so on refers to the explosive exponential spread of a product that far exceeds the amount of effort and money spent on marketing.
It may be derived with the following mathematical model.
dU/dt = Total Rate of Accumulation of Users = Rate of Gain - Rate Of Loss
Rate of Loss we have already shown to be approximately equivalent to -aU where a is a measure of the quality of the app. This is a rough figure.
For the simplistic purposes of this model we shall express the Rate of Gain as equal to:
b + cU where b is approximately constant based on app store rankings and so on, while c is related to the likelihood of a person sharing the product with a friend or another person.
Therefore we get an equation for our rate that looks something like this:
dU/dt = b + cU - aU
= b + (c-a)U
Now, this first order differential equation will result in either an exponential curve that asymptotes to a flat curve or which exponentially explodes with time.
It all depends on whether (c-a) is positive or negative.
The meaning of (c-a) is the difference between the likelihood of the app being shared with friends to the likelihood of the app being uninstalled at any given time by a user.
So the key to having a viral app would appear that it has to be a product that is sufficiently high quality to keep 'a' small and sufficiently remarkable to have a high likelihood of being shared with another person.
For most of us mere mortals c is extremely low and a is small but not anywhere near as small as c.
The value of b is ultimately irrelevant with respect to a viral app although the ratio of b to a is the approximation of the equilibrium install value of a non viral app and so in that sense b matters.
Causing 'a' to be a low value is not too difficult as long as you are capable of making a quality product.
The real interesting thing lies in making something that has a non negligible c value - that is the key.
The difference is either a flat curve at equilibrium or exponential increase.