An application can be decomposed by its integration points, or how it communicates with the other components and subcomponents. Here, more components could be merged together. Another aspect to consider in such an approach is to eventually take apart only the components that are very slow from the ones that are faster in processing requests. Furthermore, merge components that interact slowly.