Software modeling has received a lot a of attention in the last decade and now is an important support for the design process. Actually, the design process is very important to the usability and understandability of the system, for example functional requirements present a complete description of how the system will function from the user’s perspective, while nonfunctional requirements dictate properties and impose constraints on the project or system. The design models and implementation code must be strictly connected, i.e. we must have correlation and consistency between the two previous views, and this correlation must exist during all the software cycle. Often, the early stages of development, the specifications and the design of the system, are ignored once the code has been developed. This practice cause a lot of problems, in particular when the system must evolve. Nowadays, to maintain a software is a difficult task, since there is a high coupling degree between the softwar...