development composite pattern