Companies need the software systems that support their operation, and the proper functioning of these depend in part on the software architectures that they implement. The architecture of a software system is designed to meet the functional and non-functional requirements established by those interested in the system such as: users, customers, suppliers. In addition, the software architecture directly impacts the way in which these products are marketed, allowing business models to be applied which improve the competitiveness of said products. A well designed architecture is key for software companies to evolve with the dynamism demanded by today's economies.