Qn asked ... "In case of selling yearly subscriptions how can we model it? The yearly subscriptions may occurs in different times. For example if customer A sign the first year subscription in time 3 and customer B in time 6 and so on. The renewal of the subscription will be in different time and hence calculation of revenue will depend on it. "

If you have a stream of new subscription sign-ups that varies from month to month, [call it this month new subscriptions] Then 
renewal subscriptions/month = delay (" this month new subscriptions", 12) +  delay (" this month new subscriptions", 24)  + delay (" this month new subscriptions", 12) ... etc
and total subscriptions/month = "this month new subscriptions" + "renewal subscriptions/month" 
You may want to keep these two items separate in case the subscription amount differs for new -v- renewal subscriptions.
Quote 0 0