Use activities to do heavy calculations in the background.
To have a responsive system, CMFActivity system should be used to defer execution heavy tasks. Indexing and simulation are done as activities.