Following some key concepts will help keep changes to your analytics processes to a minimum, as your needs scale.
Designing for scale
Decouple key components
Decoupling means separating functional groups into components so they are not dependent upon each other to operate. This allows functionality to change or new functionality to be added with minimal impact on other components.
Encapsulate analytics
Encapsulate means grouping together similar functions and activities into distinct units. It is a core principle of object-oriented programming, and you should employ it...