  Software architectures are critical in the successful development and
evolution of software-intensive systems. While formal and automated support for
architectural descriptions has been widely addressed, their evolution is
equally crucial, but significantly less well-understood and supported. In order
to face a recurring evolution need, we introduce the concept of evolution
pattern. It formalises an architectural evolution through both a set of
concepts and a reusable evolution process. We propose it through the recurring
need of introducing an architectural style on existing software architectures.
We formally describe and analyse the feasibility of architectural evolution
patterns, and provide a practical validation by implementing them in
COSABuilder, an Eclipse plugin for the COSA architectural description language.
