REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DE EDUCACIÓN SUPERIOR I.U.P “SANTIAGO MARIÑO” CÁTEDRA: SISTEMAS II Metodología RDD (Responsabilidad Driven Design) Profesor: Integrantes: Guillermo Oropeza Ronald Rangel C.I: 15.040.761 Adriana García C.I: 17.100.061 Francy Delgado C.I: 14.872.365
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
REPÚBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DE EDUCACIÓN SUPERIOR
I.U.P “SANTIAGO MARIÑO”
CÁTEDRA: SISTEMAS II
Metodología RDD (Responsabilidad Driven Design)
Profesor: Integrantes:
Guillermo Oropeza Ronald Rangel C.I: 15.040.761
Adriana García C.I: 17.100.061
Francy Delgado C.I: 14.872.365
José García C.I: 17.470.208
John Rondón C.I: 14.035.055
Caracas, Enero 2011
INTRODUCCIÓN
En el ámbito empresarial de la programación y el desarrollo de software
resulta vital la definición temprana, de forma clara y completa, de las
necesidades del usuario (cliente) para la definición de la calidad del software
a elaborar, de tal forma que el proceso de desarrollo apunte a la satisfacción
de las mismas y que el producto logrado corresponda a lo planificado.
Por otra parte, el desarrollo de software abarca un proceso, que al igual que
toda actividad humana, está expuesta a la ocurrencia de errores y la
inclusión de cambios lo que la hace dinámica y no rígida ni del todo
predecible o controlable.
El ciclo de vida del desarrollo Orientado a Objeto (O-O) consiste en el
desarrollo progresivo de la representación de objetos a través de tres fases
análisis, diseño e implementación, similares a las del ciclo de vida de
desarrollo simplificado.
Una vez desarrollado el proceso de programación O-O se desenvuelven
distintas metodologías entre la que destaca la Driven Design
Responsabilidad Conocido como Responsabilidad Driven Design, es una
manera de diseñar sistemas complejos de software utilizando objetos y la
tecnología de componentes.
Implica describiendo las acciones y actividades para las que nuestro
software es responsable describir las responsabilidades en cuanto a que
tanto los usuarios y desarrolladores pueden entender el diseño de objetos
de software que implementan las responsabilidades
Paradigma de da Orientación a Objeto
Es una “nueva” manera de ver y expresar el mundo, de pensar acerca de los
problemas para encontrar una representación adecuada a nivel de software.
El software es organizado como una colección de unidades atómicas (los
OBJETOS) constituidas por datos y funciones, que interactúan entre sí.
Desarrollo de Software O-O (Orientada Objeto)
Los CONCEPTOS inherentes al dominio de la aplicación son
identificados, organizados y comprendidos antes de que los detalles
sobre las estructuras de datos y las funciones puedan ser
considerados efectivamente.
Es un proceso conceptual INDEPENDIENTE del lenguaje de
programación hasta que se encuentra en sus etapas finales.
Consiste en la construcción y paulatino refinamiento del MODELO
DEL DOMINIO DE LA APLICACIÓN para, finalmente, agregarle los
detalles de implementación.
Potenciales Beneficios de la Tecnología O-O
Promueve la reusabilidad.
Reduce la complejidad del mantenimiento (extensibilidad y facilidad de
cambios).
Riqueza semántica.
Disminuye la brecha semántica entre la visión interna y la visión
externa del sistema.
Facilita la construcción de prototipos.
Algunos Métodos O-O (Orientada Objeto)
Diseño Basado en Responsabilidades (Wirfs-Brock et al., 1990)
Análisis Orientado a Objeto (Peter Coad y Ed. Yourdon, 1991)
Diseño Orientado a Objeto (Peter Coad y Ed. Yourdon, 1991)
Diseño Orientado a Objeto (Grady Booch, 1991)
Técnica de Modelación Orientada a Objeto: OMT (James Rumbaugh
et al., 1991)
Ingeniería de Software Orientada a Objeto: OOSE (Ivar Jacobson et
al., 1992)
Fusión (Derek Coleman et al., 1994)
Lenguaje de Modelación Unificado: UML (Rational Corporation, 1996)
Ciclo De Vida de Desarrollo O-O (Orientada Objeto)
El ciclo de vida de desarrollo O-O consiste en el desarrollo progresivo de la
representación de objetos a través de tres fases análisis, diseño e
implementación, similares a las del ciclo de vida de desarrollo simplificado.
En contraste con del ciclo de vida tradicional, gráficamente se asemeja más
a una “cebolla” (por capas) que a una cascada.
El Proceso de Análisis y Diseño O-O (Orientado Objeto)
En la fase de análisis, el modelo del mundo real de la aplicación es
desarrollado mostrando sus propiedades importantes. Los conceptos
abstractos de la aplicación dominan y describen QUÉ debe hacer el
sistema, más que CÓMO lo va a hacer.
El modelo de análisis especifica el comportamiento funcional del
sistema, independientemente de los aspectos relativos al ambiente en
el que va a ser finalmente implementado.
Es necesario tomar el tiempo suficiente para entender claramente los
requerimientos del problema.
El modelo de análisis captura completamente y con exactitud los
requerimientos del sistema.
Siempre hay que tener presente que es más fácil y menos costoso
hacer cambios o arreglar defectos en el análisis que en las fases
siguientes.
En la fase de diseño O-O, se define cómo el modelo de análisis
orientado a la aplicación va a ser realizado en el ambiente de
implementación.
Ventajas de la Programación Orientación a Objetos
Reutilización
El diseñador piensa en términos del comportamiento de objetos y no
en detalles de bajo nivel.
Confiabilidad
Un diseño más rápido
Integridad
Mantenimiento más sencillo. Modificaciones locales.
Ciclo vital dinámico.
Modelado más realista.
Modelos empresariales inteligentes.
Independencia del diseño.
Computación Cliente-Servidor.
Computación paralela.
Eficacia de la máquina.
Mejores herramientas CASE.
Bibliotecas de clases para las empresas.
Estabilidad
Se construyen clases cada vez más complejas.
Nuevos mercados para el software.
Diseño de mayor calidad.
Programación más sencilla.
Invención.
Esmero durante la construcción
Mejor comunicación entre los profesionales de los Sistemas de
Información y los empresarios.
Especificaciones declarativas y diseño.
Interacción.
Computación de distribución masiva.
Mayor nivel de automatización de las bases de datos.
Migración.
Bibliotecas de clases para las industrias.
La comprensión del sistema es más fácil porque la semántica entre el
sistema y la realidad son similares.
Driven Design Responsabilidad
Conocido como Responsabilidad Driven Design, es una manera de diseñar
sistemas complejos de software utilizando objetos y la tecnología de
componentes. Guiados por la responsabilidad del diseño fue concebido en
1990 como un cambio de pensamiento sobre los objetos como datos más
algoritmos, a pensar en objetos como papeles más responsabilidades.
Guiados por la responsabilidad cataliza la tecnología de diseño de objetos
con técnicas prácticas y herramientas de pensamiento. Responsabilidad-
Driven Design tiene sus raíces en el diseño de Smalltalk y el desarrollo, en el
que todo es un objeto y la manera de estructurar una aplicación es la
concepción de empresas que cooperaron objetos a la derecha. Dado que
estas tecnologías objeto primeros días, basada en la responsabilidad del
diseño ha tenido una profunda influencia en otras impulsado el desarrollo de
"prácticas".
En un modelo basado en la responsabilidad, los objetos desempeñan
funciones específicas y ocupan posiciones bien conocidas en la arquitectura
de la aplicación. Se trata de una comunidad sin problemas de ejecución de
los objetos. Cada objeto es responsable de una parte específica de la obra.
Objetos de colaborar en formas claramente definidas, la contratación entre sí
para cumplir los objetivos más amplios de la aplicación. Al crear una
"comunidad de objetos," la asignación de responsabilidades específicas a
cada uno, a construir un modelo de colaboración de su aplicación.
Los objetos son más que paquetes simples de la lógica y los datos que son
los proveedores de servicios, los titulares de la información, estructuradores,
los coordinadores, los controladores, e interfaces con el mundo exterior.
Cada uno debe saber y hacer su parte. Pensar en términos de estos
estereotipos objeto función le permite construir, flexibles aplicaciones de gran
alcance. El desarrollo de estilos de control coherente de las piezas similares
de su aplicación reduce costos de mantenimiento.
Responsabilidad Driven Design (RDD) implica describiendo las acciones y
actividades para las que nuestro software es responsable describir las
responsabilidades en cuanto a que tanto los usuarios y desarrolladores
pueden entender el diseño de objetos de software que implementan las
responsabilidades.
La responsabilidad del diseño impulsado:
Responsibility-driven design is a design technique in .Impulsada por el
diseño de Responsabilidad es una técnica de diseño en la programación
orientada a objetos . It was proposed by and Brian Wilkerson who defined it
as follows: Fue propuesto por Rebecca Wirfs-Brock Wilkerson y Brian, que se
define de la siguiente manera:Responsibility-driven design is inspired by the
client/server model. La responsabilidad del diseño orientado se inspira en el
modelo cliente / servidor. It focuses on the contract by asking:
Se centra en el contrato, preguntando:
What actions is this object responsible for? ¿Qué acciones es
responsable de este objeto?
What information does this object share? ¿Qué información esta acción-
objeto?
The model they refer to assumes that a software client and a software
server exchange information based on a contract that both parties
commit to adhere to.El cliente / servidor modelo que se refieren se supone
que un cliente de software y un servidor de software de intercambio de
información basado en un contrato que ambas partes se comprometen a
cumplir. The client may only make the requests specified, the server must
answer them. El cliente sólo puede hacer que las solicitudes se especifica, el
servidor debe responder. Thus, responsibility-driven design tries to avoid
dealing with details, such as the way in which requests are carried out, by
instead only specifying the intent of a certain request. Así, el diseño guiados
por la responsabilidad trata de evitar el trato con los detalles, tales como la
forma en la que se solicita se lleven a cabo, por única vez especificando el