RESUMEN Hoy en día, la complejidad de los sistemas software y la gran relevancia que han adquirido los requisitos no funcionales son retos que han de abordarse durante el proceso de desarrollo software. En los últimos años, estas propiedades han provocado un gran incremento en el tiempo y el personal necesario para llevar a cabo los procesos de desarrollo y mantenimiento del software. Por ello, existe un gran interés en mejorar dichos procesos. Esta tesis presenta un nuevo enfoque de desarrollo para sistemas software complejos. Dicho enfoque, llamado PRISMA, da soporte a estos nuevos retos y permite satisfacer la elevada competitividad del mercado. El enfoque PRISMA se ha materializado en un marco de trabajo formado por un modelo, un lenguaje, una metodología y un prototipo de herramienta CASE (Computer-Aided Software Engineering). El modelo de PRISMA combina dos aproximaciones para definir arquitecturas software: el Desarrollo de Software Basado en Componentes (DSBC) y el Desarrollo de Software Orientado a Aspectos (DSOA). Las principales aportaciones del modelo es la manera en la que integra ambas aproximaciones para obtener sus ventajas y su lenguaje formal. PRISMA tiene en cuenta los requisitos no funcionales desde las primeras etapas del ciclo de vida software y mejora su reutilización y el mantenimiento. Todo ello gracias a la descomposición que realiza de los sistemas software utilizando dos conceptos diferentes: aspectos y elementos arquitectónicos (componentes y conectores). PRISMA proporciona un Lenguaje de Descripción de Arquitecturas Orientado a Aspectos (LDAOA) formal para la especificación de arquitecturas software orientadas a aspectos. El LDAOA de PRISMA es independiente de cualquier tecnología y está basado en lenguajes formales para evitar la ambigüedad y poder aplicar técnicas de generación automática de código. La metodología de PRISMA apuesta por el desarrollo de software siguiendo el Paradigma de la Prototipación Automática mediante la aplicación del enfoque de Desarrollo Dirigido por Modelos (DDM). De esta manera, PRISMA proporciona trazabilidad desde las etapas de análisis y diseño, a la etapa de implementación del ciclo de vida software, y proporciona mecanismos para mejorar el tiempo y el coste invertido en los procesos de desarrollo y mantenimiento del software. El modelo de PRISMA y su metodología son soportados mediante una herramienta CASE llamada PRISMA CASE. PRISMA CASE permite la especificación de arquitecturas PRISMA utilizando su LDAOA tanto de forma textual como gráfica, la verificación de arquitecturas PRISMA, y la generación automática de código C# gracias al middleware y a los patrones de generación de código que la herramienta CASE integra. Finalmente, PRISMA CASE proporciona una Interfaz Gráfica de Usuario (IGU) genérica que permite la ejecución de aplicaciones PRISMA sobre la plataforma .NET y la validación de su comportamiento.