A UML Profile to Support the Formal Presentation of Software Architecture