DDD bounded context: what is it and why is it useful? | LetsGit.IT