One possible way of implementing a DCI architecture in a ruby