Designing objects and their interactions: a brief look at responsibility-driven design