Abstract:
Los Patrones de Software fueron concebidos como una forma para solucionar problemas comunes al proceso de desarrollo y diseño de software, éstos fueron pensados de forma que definan el diseño e interacción de los objetos, además de proveer una plataforma de comunicación que sea elegante y reutilizable. Un patrón de diseño no es algo terminado, es una descripción o una referencia de cómo se debe resolver un problema que puede ser utilizado en circunstancias muy variadas. En este documento se habla acerca de los Patrones de Software como elementos para ayudar al desarrollo de aplicaciones y componentes que sean más flexibles, mantenibles y reutilizables. El objetivo es mostrar a un equipo de desarrollo de software elementos que apoyen a la construcción de una aplicación empresarial. Los temas que son tratados se refieren directamente al desarrollo y codificación de una aplicación. Usualmente en las metodologías de desarrollo de software se trata sobre el proceso de desarrollo, la documentación, la realización de especificaciones de requerimientos, en esta tesis el enfoque será hacia como codificar una clase, una interfase o un componente para que éste sea extensible, reutilizable o mantenible con más facilidad.
El documento empieza con una descripción teórica de UML, los frameworks, la tecnología .net de Microsoft utilizada para el desarrollo, las aplicaciones distribuidas y la arquitectura de aplicaciones orientadas a servicios.