1. A method of modeling a component-based application, the method comprising: modeling communication capabilities of components of the application; modeling a plan for interlinking components of the application; modeling communications capabilities of a compound component composed of a plurality of constituent components; and determining if interlinked components are compatible to communicate validly in the application.