SlideShare a Scribd company logo
1 of 11
República Bolivariana de Venezuela
                        Ministerio del Poder Popular para la Defensa
             Universidad Nacional Experimental Politécnica de la Fuerza Armada
                                         U.N.E.F.A
                           Núcleo Carabobo Extensión Guácara




            DISEÑO DE SISTEMAS



Profesor:                                                  Integrantes:

Araujo J.                                                  Flores Ana

                                                            Jones Vanessa

                                                           Muñoz Oswaldo

                                                           Rojas Miguel

                                                           Soto Douglimar

                                                           Sección: GVII-003-D

                                                           Ingeniería Sistemas

                              Guácara, Julio 2010
Introducción



       El creciente poder de la computación y la tecnología ha dado lugar a muchos
esfuerzos de desarrollo de sistemas grandes y complejos. El modelado del mundo real
forma la base para la orientación a objetos y ayuda a los analistas a entender mejor el
sistema y a hacer corresponder lo más cerca posible al dominio de la solución.

       El paso mas importante en el desarrollo orientado a objetos es la identificación
de las clases. Cada aspecto del entorno del problema debe ser plenamente entendido.
Los objetos son mecanismos útiles para hacer que las cosas trabajen bien en un
sistema. A partir de las especificaciones de los requerimientos del problema, el listado
de las abstracciones es crucial; ya que permite manejar la complejidad de un problema
y por lo tanto, reconocer los elementos esenciales para la solución del problema
dejando los detalles irrelevantes de lado.

       La orientación a objetos intenta modelar el mundo real y los objetos del
mundo real; donde primero se modelan las entidades y luego se asocian las acciones
identificadas como las funciones o responsabilidades de estas entidades en la
búsqueda de una solución al problema existente.
Diseño Orientados a Objetos

        El desarrollo de aplicaciones de software es fundamentalmente un proceso
complejo, por lo que, entender, diseñar, desarrollar y desplegar grandes sistemas de
software son los retos que enfrenta la industria de software en la actualidad. El
proceso del ciclo de vida involucra las siguientes etapas:

    •   Entender los requerimientos.

    •   Analizar los requerimientos.

    •   Diseñar el sistema de software.

    •   Implementar el sistema de software.

    •   Probar el sistema de software.

    •   Realizar mantenimiento del sistema de software.

        Al completar cada una de las etapas, se crean uno o más documentos (reportes
o informes). Estos documentos son llamados productos de trabajo y permite
comprender el sistema en cada etapa. Después de la primera etapa, de entender los
requerimientos, se crea un producto de trabajo llamado Entendimiento preliminar de
requerimientos. El entender      los requerimientos juega un rol importante en el
desarrollo de software debido a que los dominios de aplicaciones son cada vez más
variados y complejos. El producto de trabajo en la tercera etapa, correspondiente a
diseñar el sistema, es el documento diseño. En la etapa de implementación, el sistema
resulta en la creación de manuales de diversos tipos, tales como: el manual de usuario,
manual administrativo y otros.

        Aunque cada etapa resulta en un producto de trabajo útil, se esta consciente de
los diferentes problemas que los analistas y desarrolladores de software deben
confrontar. Los requerimientos son pocos claros y volátiles por naturaleza. Un
requerimiento ignorado o dejado de lado tiene un efecto en cascada en todo el
proceso de desarrollo del sistema. Entender un sistema grande y complejo es en si una
tarea difícil. El análisis de diseño de sistemas es un proceso difícil que demanda
tiempo. Las metodologías de análisis y diseño estructurado (orientadas a aspectos;
literal; de patrones) usadas anteriormente, intentaron proporcionar soluciones y eran
exitosas en muchas situaciones. Sin embargo, el mundo real es complejo, y con el
creciente uso de computadoras en todos los aspectos de la vida, el manejo de
aplicaciones del mundo real es cada vez más desafiante.

        El Diseño Orientado a Objeto tiene la capacidad inherente para ocuparse de los
diferentes aspectos de sistemas de software complejos. Mientras la metodología de
diseño estructurado construye un sistema usando funciones, la orientación a objetos
construye sistemas usando objetos. Estos objetos tienen una correspondencia directa
con los objetos del mundo real. Las entidades del mundo real son simples de entender.
Por lo tanto, no es una tarea muy difícil transferir conocimiento del mundo real al
dominio del software.

                        Fundamentos del Diseño Orientado a Objetos

        Se basa en modelar el mundo real; trabaja con objetos en el sistema que
interactúan unos con otros a través de mensajes. Proporciona los recursos para
ocuparse de los objetos de un sistema complejo. Entre los principios que conforman e
diseño son:

    •   Abstracción de Datos: Permite a una persona concentrarse en los aspectos
        esenciales del problema a la mano, mientras ignora detalles que tienden a
        distraer; en una manera conveniente de manejar la complejidad. Por lo tanto,
        la abstracción, es eliminar lo innecesario.




    •   Encapsulamiento: La esencia del encapsulamiento recae en que cuando un
        objeto trae consigo su funcionalidad, esta última se oculta. La utilidad se ve en
        la reducción de complejidad, esto es debido a que las Clases se comportan
        como cajas negras donde solo se conoce el comportamiento pero no los
        detalles internos, y esto es conveniente porque solo interesa saber que hace la
        Clase pero no como lo hace.
En la orientación a objetos, el encapsulamiento ayuda a mantener junto los
elementos de datos, así como las funciones y procedimientos que operan sobre ellos.
En   otros paradigmas,      como el procedimental (programación            orientada a
procedimientos, el cual un programa es estructurado en base a sus funciones) los
datos y operaciones se mantienen separados.




     •   Ocultamiento de la información: El encapsulamiento conlleva al ocultamiento
         de la información, esto es, tanto de datos como la implementación de las
         operaciones de un objeto son ocultados al usuario. Al tener encapsulado
         juntos los datos miembros y las diferentes operaciones, el usuario debe saber
         como acceder a las operaciones y trabajar con los datos.




     •   Clase: Son tipos de datos definidos por el usuario. Representan la mayor de las
         veces a las entidades del mundo real. Son identificadas como Entidades en el
         dominio del problema.



     •   Objeto: Es una instancia de una clase. Este tipo de dato definido por el usuario
         puede ser usado solo cuando se crean instancias del tipo de datos. Un objeto
         promete cumplir el contrato prometido por su clase. Cada objeto puede
         definirse en términos del comportamiento que muestra o se espera que
         muestre. Un objeto tiene lo siguiente:




     -   Estado: Son las propiedades y los valores que toman estas propiedades en un
         instante de tiempo. Sus valores son dinámicos por naturaleza, dado que
         pueden cambiar en cualquier instante de tiempo.

     -   Identidad: Se refiere a la manera única en que el objeto es conocido, referido y
         distinguido de todos los objetos en el sistema.
-   Comportamiento: Consiste de responsabilidades que promete llevar a acabo el
        objeto. Es la manera en que un objeto reacciona a los mensajes que recibe de
        otros objetos.




    •   Interfaz e Implementación: Cuando la complejidad de una entidad en el
        mundo real llega a ser muy grande, se precisa ocultar al usuario algunos de los
        detalles menos necesarios acerca de esa entidad. Usualmente, cada entidad
        tiene dos aspectos:

    -   Interfaz: Es la forma en la cual se presenta la clase al mundo real.

    -   Implementación: Es el método que se sigue para hacer que el objeto de la
        clase realice sus responsabilidades.




    •   Métodos: Son una parte de la declaración de la clase. Son los algoritmos
        usados por la clase para implementar la tarea prometida por la interfaz.




    •   Mensajes: Los objetos se comunican unos con otros a través de mensajes. Es
        un pedido a un objeto para que realice una tarea a través de un método
        apropiado. El objeto iniciador conoce la interfaz del objeto sobre el cual esta
        acción es iniciada. El objeto receptor satisface el requerimiento del objeto
        iniciador aceptándolo e implementando la tarea.




    Un mensaje puede cambiar el estado de un objeto receptor. Típicamente, un
mensaje contiene lo siguiente:

    -   El nombre del objeto que va a recibir el mensaje.

    -   El nombre del mensaje.
-   Argumentos que son pasados al objeto receptor. También se pueden pasar los
    mismos objetos como argumentos.




•   Herencia: Las clases no están aisladas, sino que se relacionan entre sí,
    formando una jerarquía de clasificación. Los objetos heredan las propiedades y
    el comportamiento de todas las clases a las que pertenecen. La herencia
    organiza y facilita el polimorfismo y el encapsulamiento permitiendo a los
    objetos ser definidos y creados como tipos especializados de objetos
    preexistentes. Estos pueden compartir (y extender) su comportamiento sin
    tener que volver a implementarlo. Esto suele hacerse habitualmente
    agrupando los objetos en clases y estas en árboles o enrejados que reflejan un
    comportamiento común. Cuando un objeto hereda de más de una clase se
    dice que hay herencia múltiple.




•   Agregación: Es posible que una entidad contenga a otra entidad. Esto es
    conocido como una relación “tiene un” entre entidades. Esta relación también
    es conocida como la relación contenedora; la cual quiere decir, que es la
    entidad contenida en l parte de la entidad contenedora.



•   Polimorfismo: Es la posibilidad de hacer que una operación exhiba diferentes
    comportamientos en instancias diferentes. El comportamiento depende de los
    tipos de datos usados en diferentes operaciones. La correspondencia entre la
    llamada actual y la implementación de la funcionalidad dependerá de los
    argumentos pasados con la llamada. Polimorfismo significa, “un nombre,
    múltiples funcionalidades”.



•   Tipo: Es un estereotipo de una clase. Un estereotipo permite al diseñador
    crear nuevos bloques de construcción extendiendo bloques existentes. Las
    implementaciones de estas operaciones no están incluidas en el tipo. Se usa
cuando se desea modelar el significado de una abstracción y la adherencia de
        la abstracción a una interfaz.



    •   Rol: Cada entidad tiene un cierto comportamiento asociado a ella. Describe el
        comportamiento de una entidad. Cuando un objeto juega un rol, presenta un
        determinado comportamiento al mundo exterior, dependiendo del rol que
        juega en ese momento.



    •   Paquete: Es un mecanismo para agrupar elementos. Los elementos que se
        hacen referencia son elementos de modelo de alto nivel, como clases y sus
        relaciones. Es similar al concepto de módulos, donde los elementos de la
        función son agrupados.




                        Ventajas del Diseño Orientado a Objetos




   Existen dos grandes ventajas del desarrollo del sistema; estas son:

    •   Capacidad de Reutilización:

        Cuando el comportamiento de una entidad se hereda de otra entidad, el código
no necesita ser reescrito. Esto permite ahorrar en los costos de mantenimiento y
prueba, además de ser más confiable, puesto que todos los usuarios comparten el
código. La herencia y la agregación facilitan la reutilización.




    •   Prototipos Rápidos:

        Cuando un sistema de software se diseña a partir de componentes reutilizables,
el tiempo de programación puede ser utilizado eficientemente para entender el nuevo
sistema. Cuando las metas y requerimientos del sistema son pocos claros, solo
contribuyen con un estilo particular de prog5amacion.

                         Beneficios del Diseño Orientado a Objetos

    •   Ofrece un mayor nivel de productividad del programador, mejor calidad de
        software y menor costo de mantenimiento.




    •   Los programas pueden ser construidos en módulos de trabajo estándares que
        se comunican unos con otros, más que teniendo que empezar desde un
        borrador. Esto ayuda a ahorrar tiempo de desarrollo y a aumentar la
        productividad.



    •   Es fácil aportar trabajo en un proyecto basado en entidades.




    •   Es posible para múltiples instancias de una entidad coexistir sin ninguna
        interferencia.




    •   Usando el principio de ocultamiento de información, el programador esta en la
        capacidad de construir programas seguros que no pueden ser invalidados por
        códigos de otras partes del programa.




    •   La herencia elimina códigos redundantes y extiende el uso de las entidades.




    •   El diseño centralizado de los datos permite capturar mas detalles de la
        modularidad en el modo de implementación.
Conclusiones



         El diseño orientado a objetos surge por la necesidad de solventar los problemas
en la construcción de software ya que es un proceso complejo y requiere de una
perspectiva diferente en la cual se propone nuevos esquemas de desarrollo,
metodologías de análisis y formas de programación en el desarrollo de sistemas a
partir     de un conjuntos de objetos relacionados; permitiendo aumentar la
productividad de los programadores y facilitar la creación de soluciones de software
acordes con las demandas impuestas por los nuevos escenarios.

         Este tipo de diseño hace uso de elementos intangibles tales como: conceptos,
ideas, y de elementos físicos tangibles como: las cosas, herramientas u objetos. Cada
uno de estos elementos es conocido como entidades del mundo real; las cuales tienen
a su vez, propiedades y valores, así como, las operaciones que se pueden realizar con
ellas.

         Presenta ciertas características tales como: simula actividades del mundo real,
tiene tipos de datos definidos por los usuarios, esconde los detalles de la
implementación, reutiliza el código a través de la herencia y permite el mismo nombre
para diferentes funcionalidades, permitiendo su uso en forma natural en la resolución
de problemas.

         Los pilares fundamentales de la orientación a objetos son abstracción,
encapsulamiento, modularidad, herencia entre otros; mediante las cuales se basan las
actividades de desarrollo de un sistema.
Trabajo de diseño de sistemas orientados a objetos

More Related Content

What's hot

Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modelado
Marvin Zumbado
 
Casos de Uso ejercicios
Casos de Uso ejerciciosCasos de Uso ejercicios
Casos de Uso ejercicios
Walter Chacon
 
Tm03 modelo de casos de uso
Tm03 modelo de casos de usoTm03 modelo de casos de uso
Tm03 modelo de casos de uso
Julio Pari
 
Introduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalIntroduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos original
Jose Angel Rodriguez
 
Modelo requisitos UML
Modelo requisitos UMLModelo requisitos UML
Modelo requisitos UML
ramirezjaime
 
Analisis y diseño diagrama de caso de uso
Analisis y diseño diagrama de caso de usoAnalisis y diseño diagrama de caso de uso
Analisis y diseño diagrama de caso de uso
Yovana Connie Roca Avila
 
Diagramas de paquetes
Diagramas de paquetesDiagramas de paquetes
Diagramas de paquetes
Moises Cruz
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
Giancarlo Aguilar
 

What's hot (20)

Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modelado
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Casos de Uso ejercicios
Casos de Uso ejerciciosCasos de Uso ejercicios
Casos de Uso ejercicios
 
Herramientas case
Herramientas caseHerramientas case
Herramientas case
 
Tm03 modelo de casos de uso
Tm03 modelo de casos de usoTm03 modelo de casos de uso
Tm03 modelo de casos de uso
 
DIAGRAMAS DE CLASE
DIAGRAMAS DE CLASEDIAGRAMAS DE CLASE
DIAGRAMAS DE CLASE
 
Diagrama de contexto
Diagrama de contextoDiagrama de contexto
Diagrama de contexto
 
Introduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalIntroduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos original
 
Modelo requisitos UML
Modelo requisitos UMLModelo requisitos UML
Modelo requisitos UML
 
Rational rose
Rational roseRational rose
Rational rose
 
Modelo del dominio
Modelo del dominioModelo del dominio
Modelo del dominio
 
MODELADO RUP UML
MODELADO RUP UMLMODELADO RUP UML
MODELADO RUP UML
 
Modelo Orientado A Objetos
Modelo Orientado A ObjetosModelo Orientado A Objetos
Modelo Orientado A Objetos
 
Conceptos básicos de programación orientada a objetos (poo)
Conceptos básicos de programación orientada a objetos (poo)Conceptos básicos de programación orientada a objetos (poo)
Conceptos básicos de programación orientada a objetos (poo)
 
Diagramas de Casos de Uso del Negocio y del Sistema
 Diagramas de Casos de Uso del Negocio y del Sistema Diagramas de Casos de Uso del Negocio y del Sistema
Diagramas de Casos de Uso del Negocio y del Sistema
 
Analisis y diseño diagrama de caso de uso
Analisis y diseño diagrama de caso de usoAnalisis y diseño diagrama de caso de uso
Analisis y diseño diagrama de caso de uso
 
Diagramas de paquetes
Diagramas de paquetesDiagramas de paquetes
Diagramas de paquetes
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
 
Análisis estructurado
Análisis estructuradoAnálisis estructurado
Análisis estructurado
 
OOSE
OOSEOOSE
OOSE
 

Viewers also liked

Diseño Orientado a Objetos
Diseño Orientado a ObjetosDiseño Orientado a Objetos
Diseño Orientado a Objetos
MegaMono
 
Analisis Y Diseño De Sistemas Orientado A Objetos
Analisis Y Diseño De Sistemas Orientado A ObjetosAnalisis Y Diseño De Sistemas Orientado A Objetos
Analisis Y Diseño De Sistemas Orientado A Objetos
joalmerca6
 
Fundamentos del análisis orientado a objetos
Fundamentos del análisis orientado a objetosFundamentos del análisis orientado a objetos
Fundamentos del análisis orientado a objetos
Eduardo Galindo
 
Esquema comparativo de los tipos de modelos y metodologías
Esquema comparativo de los tipos de modelos y metodologíasEsquema comparativo de los tipos de modelos y metodologías
Esquema comparativo de los tipos de modelos y metodologías
Leo Jm
 
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A ObjetosMetodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
hector_h30
 
Analisis y diseño orientado a objetos con aplicaciones
Analisis y diseño orientado a objetos con aplicacionesAnalisis y diseño orientado a objetos con aplicaciones
Analisis y diseño orientado a objetos con aplicaciones
Crista Blue
 

Viewers also liked (20)

Diseño Orientado a Objetos
Diseño Orientado a ObjetosDiseño Orientado a Objetos
Diseño Orientado a Objetos
 
Analisis Y Diseño De Sistemas Orientado A Objetos
Analisis Y Diseño De Sistemas Orientado A ObjetosAnalisis Y Diseño De Sistemas Orientado A Objetos
Analisis Y Diseño De Sistemas Orientado A Objetos
 
Analisis y diseño de sistemas
Analisis y diseño de sistemasAnalisis y diseño de sistemas
Analisis y diseño de sistemas
 
Desarrollo de Software Orienta a Objetos
Desarrollo de Software Orienta a ObjetosDesarrollo de Software Orienta a Objetos
Desarrollo de Software Orienta a Objetos
 
etapas del análisis,diseño y programacion orientada a objetos
etapas del análisis,diseño y programacion orientada a objetosetapas del análisis,diseño y programacion orientada a objetos
etapas del análisis,diseño y programacion orientada a objetos
 
Analisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado ObjetosAnalisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado Objetos
 
Fundamentos del análisis orientado a objetos
Fundamentos del análisis orientado a objetosFundamentos del análisis orientado a objetos
Fundamentos del análisis orientado a objetos
 
Esquema comparativo de los tipos de modelos y metodologías
Esquema comparativo de los tipos de modelos y metodologíasEsquema comparativo de los tipos de modelos y metodologías
Esquema comparativo de los tipos de modelos y metodologías
 
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A ObjetosMetodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
 
Modelado Orientado a Objetos
Modelado Orientado a ObjetosModelado Orientado a Objetos
Modelado Orientado a Objetos
 
Trabajo poo
Trabajo poo Trabajo poo
Trabajo poo
 
QUE ES UML
QUE ES UMLQUE ES UML
QUE ES UML
 
Conceptos poo (presentación1)
Conceptos poo (presentación1)Conceptos poo (presentación1)
Conceptos poo (presentación1)
 
Diseño de salida de un Sistema
Diseño de salida de un SistemaDiseño de salida de un Sistema
Diseño de salida de un Sistema
 
UML - MANUAL DE REFERENCIA
UML - MANUAL DE REFERENCIAUML - MANUAL DE REFERENCIA
UML - MANUAL DE REFERENCIA
 
Analisis y diseño orientado a objetos con aplicaciones
Analisis y diseño orientado a objetos con aplicacionesAnalisis y diseño orientado a objetos con aplicaciones
Analisis y diseño orientado a objetos con aplicaciones
 
Wrapper class (130240116056)
Wrapper class (130240116056)Wrapper class (130240116056)
Wrapper class (130240116056)
 
Principios de diseño oo
Principios de diseño ooPrincipios de diseño oo
Principios de diseño oo
 
Consejos para escribir un buen ensayo
Consejos para escribir un buen ensayoConsejos para escribir un buen ensayo
Consejos para escribir un buen ensayo
 
Fase De DiseñO Y Analisis De Datos
Fase De DiseñO Y Analisis De DatosFase De DiseñO Y Analisis De Datos
Fase De DiseñO Y Analisis De Datos
 

Similar to Trabajo de diseño de sistemas orientados a objetos

Programacion orientada objetos-1
Programacion orientada objetos-1Programacion orientada objetos-1
Programacion orientada objetos-1
Scott Chavez
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
alexmoncada21
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
brandonhh10
 
2983238 programacion-orientada-a-objetos
2983238 programacion-orientada-a-objetos2983238 programacion-orientada-a-objetos
2983238 programacion-orientada-a-objetos
johnny herrera
 

Similar to Trabajo de diseño de sistemas orientados a objetos (20)

Orientado a objeto
Orientado a objetoOrientado a objeto
Orientado a objeto
 
Programacion orientada objetos-1
Programacion orientada objetos-1Programacion orientada objetos-1
Programacion orientada objetos-1
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Cspr
CsprCspr
Cspr
 
Cspr
CsprCspr
Cspr
 
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOSCUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
 
Poo
PooPoo
Poo
 
1. introduccion a la programación orientada a objeto (poo)
1.  introduccion a la programación orientada a objeto (poo)1.  introduccion a la programación orientada a objeto (poo)
1. introduccion a la programación orientada a objeto (poo)
 
Presentacion De La Primera Unidad 2
Presentacion De La Primera Unidad 2Presentacion De La Primera Unidad 2
Presentacion De La Primera Unidad 2
 
Principios poo
Principios pooPrincipios poo
Principios poo
 
Unidad II.pdf
Unidad II.pdfUnidad II.pdf
Unidad II.pdf
 
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Trabajo investigativo sobre la programación orientada a objetos y java
Trabajo investigativo sobre la programación orientada a objetos y javaTrabajo investigativo sobre la programación orientada a objetos y java
Trabajo investigativo sobre la programación orientada a objetos y java
 
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
Analisis y diseno_oo
Analisis y diseno_ooAnalisis y diseno_oo
Analisis y diseno_oo
 
Fundamentos De ProgramacióN Unidad 1
Fundamentos De ProgramacióN Unidad 1Fundamentos De ProgramacióN Unidad 1
Fundamentos De ProgramacióN Unidad 1
 
2983238 programacion-orientada-a-objetos
2983238 programacion-orientada-a-objetos2983238 programacion-orientada-a-objetos
2983238 programacion-orientada-a-objetos
 
Poo
PooPoo
Poo
 

Recently uploaded

Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdfLas Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
Demetrio Ccesa Rayme
 
Diseño Universal de Aprendizaje en Nuevos Escenarios JS2 Ccesa007.pdf
Diseño Universal de Aprendizaje en Nuevos Escenarios  JS2  Ccesa007.pdfDiseño Universal de Aprendizaje en Nuevos Escenarios  JS2  Ccesa007.pdf
Diseño Universal de Aprendizaje en Nuevos Escenarios JS2 Ccesa007.pdf
Demetrio Ccesa Rayme
 
Lineamientos de la Escuela de la Confianza SJA Ccesa.pptx
Lineamientos de la Escuela de la Confianza  SJA  Ccesa.pptxLineamientos de la Escuela de la Confianza  SJA  Ccesa.pptx
Lineamientos de la Escuela de la Confianza SJA Ccesa.pptx
Demetrio Ccesa Rayme
 
Apunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdfApunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdf
Gonella
 
Filo Descartes para selectividad de andalucía
Filo Descartes para selectividad de andalucíaFilo Descartes para selectividad de andalucía
Filo Descartes para selectividad de andalucía
JoaquinMaisanaba
 
Escucha tu Cerebro en Nuevos Escenarios PE3 Ccesa007.pdf
Escucha tu Cerebro en Nuevos Escenarios  PE3  Ccesa007.pdfEscucha tu Cerebro en Nuevos Escenarios  PE3  Ccesa007.pdf
Escucha tu Cerebro en Nuevos Escenarios PE3 Ccesa007.pdf
Demetrio Ccesa Rayme
 
FICHA DE LA VIRGEN DE FÁTIMA.pdf educación religiosa primaria de menores
FICHA DE LA VIRGEN DE FÁTIMA.pdf educación religiosa primaria de menoresFICHA DE LA VIRGEN DE FÁTIMA.pdf educación religiosa primaria de menores
FICHA DE LA VIRGEN DE FÁTIMA.pdf educación religiosa primaria de menores
Santosprez2
 

Recently uploaded (20)

Síndrome piramidal 2024 según alvarez, farrera y wuani
Síndrome piramidal 2024 según alvarez, farrera y wuaniSíndrome piramidal 2024 según alvarez, farrera y wuani
Síndrome piramidal 2024 según alvarez, farrera y wuani
 
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdfLas Preguntas Educativas entran a las Aulas CIAESA  Ccesa007.pdf
Las Preguntas Educativas entran a las Aulas CIAESA Ccesa007.pdf
 
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxAEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
 
TAREA_1_GRUPO7_ADMINISTRACIÓN_DE_EMPRESA.pptx
TAREA_1_GRUPO7_ADMINISTRACIÓN_DE_EMPRESA.pptxTAREA_1_GRUPO7_ADMINISTRACIÓN_DE_EMPRESA.pptx
TAREA_1_GRUPO7_ADMINISTRACIÓN_DE_EMPRESA.pptx
 
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE.pdf
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE.pdfDISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE.pdf
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE.pdf
 
Diseño Universal de Aprendizaje en Nuevos Escenarios JS2 Ccesa007.pdf
Diseño Universal de Aprendizaje en Nuevos Escenarios  JS2  Ccesa007.pdfDiseño Universal de Aprendizaje en Nuevos Escenarios  JS2  Ccesa007.pdf
Diseño Universal de Aprendizaje en Nuevos Escenarios JS2 Ccesa007.pdf
 
El liderazgo en la empresa sostenible, introducción, definición y ejemplo.
El liderazgo en la empresa sostenible, introducción, definición y ejemplo.El liderazgo en la empresa sostenible, introducción, definición y ejemplo.
El liderazgo en la empresa sostenible, introducción, definición y ejemplo.
 
Lineamientos de la Escuela de la Confianza SJA Ccesa.pptx
Lineamientos de la Escuela de la Confianza  SJA  Ccesa.pptxLineamientos de la Escuela de la Confianza  SJA  Ccesa.pptx
Lineamientos de la Escuela de la Confianza SJA Ccesa.pptx
 
Apunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdfApunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdf
 
Filo Descartes para selectividad de andalucía
Filo Descartes para selectividad de andalucíaFilo Descartes para selectividad de andalucía
Filo Descartes para selectividad de andalucía
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
animalesdelaproincia de beunos aires.pdf
animalesdelaproincia de beunos aires.pdfanimalesdelaproincia de beunos aires.pdf
animalesdelaproincia de beunos aires.pdf
 
Escucha tu Cerebro en Nuevos Escenarios PE3 Ccesa007.pdf
Escucha tu Cerebro en Nuevos Escenarios  PE3  Ccesa007.pdfEscucha tu Cerebro en Nuevos Escenarios  PE3  Ccesa007.pdf
Escucha tu Cerebro en Nuevos Escenarios PE3 Ccesa007.pdf
 
Presentación de la propuesta de clase.pdf
Presentación de la propuesta de clase.pdfPresentación de la propuesta de clase.pdf
Presentación de la propuesta de clase.pdf
 
GOBIERNO DE MANUEL ODRIA EL OCHENIO.pptx
GOBIERNO DE MANUEL ODRIA   EL OCHENIO.pptxGOBIERNO DE MANUEL ODRIA   EL OCHENIO.pptx
GOBIERNO DE MANUEL ODRIA EL OCHENIO.pptx
 
Realitat o fake news? – Què causa el canvi climàtic? - La desertització
Realitat o fake news? – Què causa el canvi climàtic? - La desertitzacióRealitat o fake news? – Què causa el canvi climàtic? - La desertització
Realitat o fake news? – Què causa el canvi climàtic? - La desertització
 
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdfTÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
TÉCNICAS OBSERVACIONALES Y TEXTUALES.pdf
 
MINEDU BASES JUEGOS ESCOLARES DEPORTIVOS PARADEPORTIVOS 2024.docx
MINEDU BASES JUEGOS ESCOLARES DEPORTIVOS PARADEPORTIVOS 2024.docxMINEDU BASES JUEGOS ESCOLARES DEPORTIVOS PARADEPORTIVOS 2024.docx
MINEDU BASES JUEGOS ESCOLARES DEPORTIVOS PARADEPORTIVOS 2024.docx
 
PLAN ANUAL DE TUTORIA PARA SEGUNDO AÑO DE SECUNDARIA
PLAN ANUAL DE TUTORIA PARA  SEGUNDO AÑO DE SECUNDARIAPLAN ANUAL DE TUTORIA PARA  SEGUNDO AÑO DE SECUNDARIA
PLAN ANUAL DE TUTORIA PARA SEGUNDO AÑO DE SECUNDARIA
 
FICHA DE LA VIRGEN DE FÁTIMA.pdf educación religiosa primaria de menores
FICHA DE LA VIRGEN DE FÁTIMA.pdf educación religiosa primaria de menoresFICHA DE LA VIRGEN DE FÁTIMA.pdf educación religiosa primaria de menores
FICHA DE LA VIRGEN DE FÁTIMA.pdf educación religiosa primaria de menores
 

Trabajo de diseño de sistemas orientados a objetos

  • 1. República Bolivariana de Venezuela Ministerio del Poder Popular para la Defensa Universidad Nacional Experimental Politécnica de la Fuerza Armada U.N.E.F.A Núcleo Carabobo Extensión Guácara DISEÑO DE SISTEMAS Profesor: Integrantes: Araujo J. Flores Ana Jones Vanessa Muñoz Oswaldo Rojas Miguel Soto Douglimar Sección: GVII-003-D Ingeniería Sistemas Guácara, Julio 2010
  • 2. Introducción El creciente poder de la computación y la tecnología ha dado lugar a muchos esfuerzos de desarrollo de sistemas grandes y complejos. El modelado del mundo real forma la base para la orientación a objetos y ayuda a los analistas a entender mejor el sistema y a hacer corresponder lo más cerca posible al dominio de la solución. El paso mas importante en el desarrollo orientado a objetos es la identificación de las clases. Cada aspecto del entorno del problema debe ser plenamente entendido. Los objetos son mecanismos útiles para hacer que las cosas trabajen bien en un sistema. A partir de las especificaciones de los requerimientos del problema, el listado de las abstracciones es crucial; ya que permite manejar la complejidad de un problema y por lo tanto, reconocer los elementos esenciales para la solución del problema dejando los detalles irrelevantes de lado. La orientación a objetos intenta modelar el mundo real y los objetos del mundo real; donde primero se modelan las entidades y luego se asocian las acciones identificadas como las funciones o responsabilidades de estas entidades en la búsqueda de una solución al problema existente.
  • 3. Diseño Orientados a Objetos El desarrollo de aplicaciones de software es fundamentalmente un proceso complejo, por lo que, entender, diseñar, desarrollar y desplegar grandes sistemas de software son los retos que enfrenta la industria de software en la actualidad. El proceso del ciclo de vida involucra las siguientes etapas: • Entender los requerimientos. • Analizar los requerimientos. • Diseñar el sistema de software. • Implementar el sistema de software. • Probar el sistema de software. • Realizar mantenimiento del sistema de software. Al completar cada una de las etapas, se crean uno o más documentos (reportes o informes). Estos documentos son llamados productos de trabajo y permite comprender el sistema en cada etapa. Después de la primera etapa, de entender los requerimientos, se crea un producto de trabajo llamado Entendimiento preliminar de requerimientos. El entender los requerimientos juega un rol importante en el desarrollo de software debido a que los dominios de aplicaciones son cada vez más variados y complejos. El producto de trabajo en la tercera etapa, correspondiente a diseñar el sistema, es el documento diseño. En la etapa de implementación, el sistema resulta en la creación de manuales de diversos tipos, tales como: el manual de usuario, manual administrativo y otros. Aunque cada etapa resulta en un producto de trabajo útil, se esta consciente de los diferentes problemas que los analistas y desarrolladores de software deben confrontar. Los requerimientos son pocos claros y volátiles por naturaleza. Un requerimiento ignorado o dejado de lado tiene un efecto en cascada en todo el proceso de desarrollo del sistema. Entender un sistema grande y complejo es en si una tarea difícil. El análisis de diseño de sistemas es un proceso difícil que demanda tiempo. Las metodologías de análisis y diseño estructurado (orientadas a aspectos;
  • 4. literal; de patrones) usadas anteriormente, intentaron proporcionar soluciones y eran exitosas en muchas situaciones. Sin embargo, el mundo real es complejo, y con el creciente uso de computadoras en todos los aspectos de la vida, el manejo de aplicaciones del mundo real es cada vez más desafiante. El Diseño Orientado a Objeto tiene la capacidad inherente para ocuparse de los diferentes aspectos de sistemas de software complejos. Mientras la metodología de diseño estructurado construye un sistema usando funciones, la orientación a objetos construye sistemas usando objetos. Estos objetos tienen una correspondencia directa con los objetos del mundo real. Las entidades del mundo real son simples de entender. Por lo tanto, no es una tarea muy difícil transferir conocimiento del mundo real al dominio del software. Fundamentos del Diseño Orientado a Objetos Se basa en modelar el mundo real; trabaja con objetos en el sistema que interactúan unos con otros a través de mensajes. Proporciona los recursos para ocuparse de los objetos de un sistema complejo. Entre los principios que conforman e diseño son: • Abstracción de Datos: Permite a una persona concentrarse en los aspectos esenciales del problema a la mano, mientras ignora detalles que tienden a distraer; en una manera conveniente de manejar la complejidad. Por lo tanto, la abstracción, es eliminar lo innecesario. • Encapsulamiento: La esencia del encapsulamiento recae en que cuando un objeto trae consigo su funcionalidad, esta última se oculta. La utilidad se ve en la reducción de complejidad, esto es debido a que las Clases se comportan como cajas negras donde solo se conoce el comportamiento pero no los detalles internos, y esto es conveniente porque solo interesa saber que hace la Clase pero no como lo hace.
  • 5. En la orientación a objetos, el encapsulamiento ayuda a mantener junto los elementos de datos, así como las funciones y procedimientos que operan sobre ellos. En otros paradigmas, como el procedimental (programación orientada a procedimientos, el cual un programa es estructurado en base a sus funciones) los datos y operaciones se mantienen separados. • Ocultamiento de la información: El encapsulamiento conlleva al ocultamiento de la información, esto es, tanto de datos como la implementación de las operaciones de un objeto son ocultados al usuario. Al tener encapsulado juntos los datos miembros y las diferentes operaciones, el usuario debe saber como acceder a las operaciones y trabajar con los datos. • Clase: Son tipos de datos definidos por el usuario. Representan la mayor de las veces a las entidades del mundo real. Son identificadas como Entidades en el dominio del problema. • Objeto: Es una instancia de una clase. Este tipo de dato definido por el usuario puede ser usado solo cuando se crean instancias del tipo de datos. Un objeto promete cumplir el contrato prometido por su clase. Cada objeto puede definirse en términos del comportamiento que muestra o se espera que muestre. Un objeto tiene lo siguiente: - Estado: Son las propiedades y los valores que toman estas propiedades en un instante de tiempo. Sus valores son dinámicos por naturaleza, dado que pueden cambiar en cualquier instante de tiempo. - Identidad: Se refiere a la manera única en que el objeto es conocido, referido y distinguido de todos los objetos en el sistema.
  • 6. - Comportamiento: Consiste de responsabilidades que promete llevar a acabo el objeto. Es la manera en que un objeto reacciona a los mensajes que recibe de otros objetos. • Interfaz e Implementación: Cuando la complejidad de una entidad en el mundo real llega a ser muy grande, se precisa ocultar al usuario algunos de los detalles menos necesarios acerca de esa entidad. Usualmente, cada entidad tiene dos aspectos: - Interfaz: Es la forma en la cual se presenta la clase al mundo real. - Implementación: Es el método que se sigue para hacer que el objeto de la clase realice sus responsabilidades. • Métodos: Son una parte de la declaración de la clase. Son los algoritmos usados por la clase para implementar la tarea prometida por la interfaz. • Mensajes: Los objetos se comunican unos con otros a través de mensajes. Es un pedido a un objeto para que realice una tarea a través de un método apropiado. El objeto iniciador conoce la interfaz del objeto sobre el cual esta acción es iniciada. El objeto receptor satisface el requerimiento del objeto iniciador aceptándolo e implementando la tarea. Un mensaje puede cambiar el estado de un objeto receptor. Típicamente, un mensaje contiene lo siguiente: - El nombre del objeto que va a recibir el mensaje. - El nombre del mensaje.
  • 7. - Argumentos que son pasados al objeto receptor. También se pueden pasar los mismos objetos como argumentos. • Herencia: Las clases no están aisladas, sino que se relacionan entre sí, formando una jerarquía de clasificación. Los objetos heredan las propiedades y el comportamiento de todas las clases a las que pertenecen. La herencia organiza y facilita el polimorfismo y el encapsulamiento permitiendo a los objetos ser definidos y creados como tipos especializados de objetos preexistentes. Estos pueden compartir (y extender) su comportamiento sin tener que volver a implementarlo. Esto suele hacerse habitualmente agrupando los objetos en clases y estas en árboles o enrejados que reflejan un comportamiento común. Cuando un objeto hereda de más de una clase se dice que hay herencia múltiple. • Agregación: Es posible que una entidad contenga a otra entidad. Esto es conocido como una relación “tiene un” entre entidades. Esta relación también es conocida como la relación contenedora; la cual quiere decir, que es la entidad contenida en l parte de la entidad contenedora. • Polimorfismo: Es la posibilidad de hacer que una operación exhiba diferentes comportamientos en instancias diferentes. El comportamiento depende de los tipos de datos usados en diferentes operaciones. La correspondencia entre la llamada actual y la implementación de la funcionalidad dependerá de los argumentos pasados con la llamada. Polimorfismo significa, “un nombre, múltiples funcionalidades”. • Tipo: Es un estereotipo de una clase. Un estereotipo permite al diseñador crear nuevos bloques de construcción extendiendo bloques existentes. Las implementaciones de estas operaciones no están incluidas en el tipo. Se usa
  • 8. cuando se desea modelar el significado de una abstracción y la adherencia de la abstracción a una interfaz. • Rol: Cada entidad tiene un cierto comportamiento asociado a ella. Describe el comportamiento de una entidad. Cuando un objeto juega un rol, presenta un determinado comportamiento al mundo exterior, dependiendo del rol que juega en ese momento. • Paquete: Es un mecanismo para agrupar elementos. Los elementos que se hacen referencia son elementos de modelo de alto nivel, como clases y sus relaciones. Es similar al concepto de módulos, donde los elementos de la función son agrupados. Ventajas del Diseño Orientado a Objetos Existen dos grandes ventajas del desarrollo del sistema; estas son: • Capacidad de Reutilización: Cuando el comportamiento de una entidad se hereda de otra entidad, el código no necesita ser reescrito. Esto permite ahorrar en los costos de mantenimiento y prueba, además de ser más confiable, puesto que todos los usuarios comparten el código. La herencia y la agregación facilitan la reutilización. • Prototipos Rápidos: Cuando un sistema de software se diseña a partir de componentes reutilizables, el tiempo de programación puede ser utilizado eficientemente para entender el nuevo
  • 9. sistema. Cuando las metas y requerimientos del sistema son pocos claros, solo contribuyen con un estilo particular de prog5amacion. Beneficios del Diseño Orientado a Objetos • Ofrece un mayor nivel de productividad del programador, mejor calidad de software y menor costo de mantenimiento. • Los programas pueden ser construidos en módulos de trabajo estándares que se comunican unos con otros, más que teniendo que empezar desde un borrador. Esto ayuda a ahorrar tiempo de desarrollo y a aumentar la productividad. • Es fácil aportar trabajo en un proyecto basado en entidades. • Es posible para múltiples instancias de una entidad coexistir sin ninguna interferencia. • Usando el principio de ocultamiento de información, el programador esta en la capacidad de construir programas seguros que no pueden ser invalidados por códigos de otras partes del programa. • La herencia elimina códigos redundantes y extiende el uso de las entidades. • El diseño centralizado de los datos permite capturar mas detalles de la modularidad en el modo de implementación.
  • 10. Conclusiones El diseño orientado a objetos surge por la necesidad de solventar los problemas en la construcción de software ya que es un proceso complejo y requiere de una perspectiva diferente en la cual se propone nuevos esquemas de desarrollo, metodologías de análisis y formas de programación en el desarrollo de sistemas a partir de un conjuntos de objetos relacionados; permitiendo aumentar la productividad de los programadores y facilitar la creación de soluciones de software acordes con las demandas impuestas por los nuevos escenarios. Este tipo de diseño hace uso de elementos intangibles tales como: conceptos, ideas, y de elementos físicos tangibles como: las cosas, herramientas u objetos. Cada uno de estos elementos es conocido como entidades del mundo real; las cuales tienen a su vez, propiedades y valores, así como, las operaciones que se pueden realizar con ellas. Presenta ciertas características tales como: simula actividades del mundo real, tiene tipos de datos definidos por los usuarios, esconde los detalles de la implementación, reutiliza el código a través de la herencia y permite el mismo nombre para diferentes funcionalidades, permitiendo su uso en forma natural en la resolución de problemas. Los pilares fundamentales de la orientación a objetos son abstracción, encapsulamiento, modularidad, herencia entre otros; mediante las cuales se basan las actividades de desarrollo de un sistema.