Process support for architecture-based development is centred on simple analysis techniques that can be applied throughout the project lifecycle. These analysis techniques are used in development processes to help consolidate a reference architecture. Examples include the derivation of shared interface descriptions from multiple requirements sources, the use of information about uncertainty to derive useful architectural advice, and the refactoring of components to modify their non-functional properties.