Separating different aspects at an early time is desirable, because it makes the design more modular by limiting the dependence between aspects. The interface is thus very clear and changing one aspect usually does not require any modification on other aspects.
When aspects are to be woven together for test or distribution purposes, an automatic process is required. This is accomplished by an action semantics description representing the aspect weaving rules. The description is run (or interpreted) by the modelling environment.
An example of aspect weaving is a computation system originally designed to run on a single computer, while later requirements require to run it in a distributed system. If the information sharing and passing aspect is separated from the others at an early design phase, the porting from a single computer to the distributed system is just to redesign this aspect and run the same action semantics description again to weave all the aspects together.