Data, context and interaction (software paradigm)