Vista
lgica de presentacin.
Actualizar.
Lgica de aplicacin.
Actualizar.
Modelo
Lgica de negocio.
ndice
La
ingeniera del software. Arquitecturas de software. Patrn de diseo. MVC Referencia Bibliogrfica
Arquitecturas de software.
La arquitectura de software, tiene que ver con el diseo y la implementacin de estructuras de software de alto nivel. Es el resultado de ensamblar un cierto nmero de elementos arquitectnicos de forma adecuada para satisfacer la mayor funcionalidad y requerimientos de desempeo de un sistema, as como requerimientos no funcionales, como la confiabilidad, escalabilidad, portabilidad, y disponibilidad. Por qu es importante la arquitectura de software? La arquitectura de software es de especial importancia ya que la manera en que se estructura un sistema tiene un impacto directo sobre la capacidad de este para satisfacer lo que se conoce como los atributos de calidad del sistema. La manera en que se estructura un sistema permitir o impedir que se satisfagan los atributos de calidad. Por ejemplo, un sistema estructurado de tal manera que una peticin deba transitar por muchos componentes antes de que se devuelva una respuesta podra tener un desempeo pobre. Por otro lado, un sistema estructurado de tal manera que los componentes estn altamente acoplados entre ellos limitar severamente la modificabilidad. Curiosamente, la estructuracin tiene un impacto mucho menor respecto a los requerimientos funcionales del sistema. Por ejemplo, un sistema difcil de modificar puede satisfacer plenamente los requerimientos funcionales que se le imponen. Adems de los atributos de calidad, la arquitectura de software juega un papel fundamental para guiar el desarrollo. Una de las mltiples estructuras que la componen se enfoca en partir el sistema en componentes que sern desarrollados por individuos o grupos de individuos. La identificacin de esta estructura de asignacin de trabajo es esencial para apoyar las tareas de planeacin del proyecto. Finalmente, los diseos arquitectnicos que se crean en una organizacin pueden ser reutilizados para crear sistemas distintos. Esto permite reducir costos y aumentar la calidad, sobre todo si dichos diseos han resultado previamente en sistemas exitosos.
Patrn de diseo
Los patrones de diseo son el esqueleto de las soluciones a problemas comunes en el desarrollo de software. En otras palabras, brindan una solucin ya probada y documentada a problemas de desarrollo de software que estn sujetos a contextos similares. Debemos tener presente los siguientes elementos de un patrn: su nombre, el problema (cuando aplicar un patrn), la solucin (descripcin abstracta del problema) y las consecuencias (costos y beneficios). Clasificacin: Patrones Creacionales: Inicializacin y configuracin de objetos. Patrones Estructurales: Separan la interfaz de la implementacin. Se ocupan de cmo las clases y objetos se agrupan, para formar estructuras ms grandes. Patrones de Comportamiento: Ms que describir objetos o clases, describen la comunicacin entre ellos. Uno de los aspectos ms importantes de los patrones arquitectnicos es que encarnan diferentes atributos de calidad. Algunos patrones representan soluciones a problemas de rendimiento y otros pueden ser utilizados con xito en sistemas de alta disponibilidad. A primeros de la fase de diseo, un arquitecto de software escoge qu patrones arquitectnicos mejor ofrecen las calidades deseadas para el sistema. Ejemplos de patrones arquitectnicos incluyen los siguientes: Programacin por capas Tres niveles Pipeline Invocacin implcita Arquitectura en pizarra Arquitectura dirigida por eventos, Presentacin-abstraccin-control Peer-to-peer Arquitectura orientada a servicios Objetas desnudos Modelo Vista Controlador
Referencia Bibliogrfica
INGENIERA DEL SOFTWARE: METODOLOGAS Y CICLOS DE VIDA Ing. Jos Luis Jurado Informtica III Avgeriou, Paris; Uwe Zdun (2005). Architectural patterns revisited:a pattern language.
Referencias Electrnicas: