trabajo_final_de_analisis_-_copia

Upload: arturo-pena

Post on 07-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 trabajo_final_de_analisis_-_copia

    1/10

    INSTITUTO UNIVERSITARIO DE TECNOLOGA DE ADMINISTRACIN

    INDUSTRIAL.

    ESPECIALIDAD: INFORMATICA. 3 SEMESTRE

    SECCIN: 203A3

    ANALISIS ORIENTADO A OBJETOS

    Prof.: Alumno:

    Naydrubis Trejo Pea, Arturo.

    C.I.: 20.032.296

    Guarenas, julio del 2011

  • 8/6/2019 trabajo_final_de_analisis_-_copia

    2/10

    ANLISIS Y DISEO ORIENTADO A OBJETOS

    Es un enfoque de laingeniera de software que modela un sistema como un grupo

    de objetos que interactan entre s. Este enfoque representa un dominio en trminos deconceptos compuestos por verbos y sustantivos, clasificados de acuerdo a su

    dependencia funcional.

    En este mtodo de anlisis se crea un conjunto de modelos utilizando una

    notacin acordada como, por ejemplo, el lenguaje unificado de modelado (UML). ADOO

    aplica tcnicas de modelado de objetos para analizar los requerimientos para un contexto

    - por ejemplo, un sistema de negocio, un conjunto de mdulos de software - y para

    disear una solucin para mejorar los procesos involucrados. No est restringido al diseo

    de programas de computadora, sino que cubre sistemas enteros de distinto tipo. Las

    metodologas de anlisis ms modernas son casos de uso guiados a travs de

    requerimientos, diseo, implementacin, pruebas, y despliegue.

    TECNICAS

    -Las Tcnicas Textuales

    Las tcnicas denominadas textuales son aquellas que se basan en

    descripciones informales, pero precisas, escritas en lenguaje natural paraidentificar objetos, atributos y operaciones tanto del dominio del problema como

    del dominio de la solucin, a travs de un anlisis sintctico de sustantivos,

    adjetivos, verbos y adverbios.

    Las tcnicas de esta categora tienen su origen fuera del paradigma de la

    orientacin a objetos, especficamente en el trabajo de [Abbott83], que propone

    disear programa enAda a partir de descripciones informales en ingls. Sin

    embargo, estas tcnicas son insuficientes para abordar problemas ms complejos

    y pueden ser consideradas como sobrepasadas. Se consideran aqu slo por su

    relevancia histrica.

    http://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_softwarehttp://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_softwarehttp://es.wikipedia.org/wiki/UMLhttp://es.wikipedia.org/wiki/UMLhttp://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software
  • 8/6/2019 trabajo_final_de_analisis_-_copia

    3/10

    Tcnica Evolutiva

    Las tcnicas evolutivas son aquellas producto de la extensin o evolucin

    de tcnicas dirigidas por alguna de las dimensiones del modelado (estructural,

    dinmica y/o funcional) y su complementacin con otros aspectos del modelado.

    Esta categora de tcnicas puede ser subdividida segn la dimensin dominante

    en dirigidas por datos, dirigidas por procesos y dirigidas por dinmica.

    Sin duda esta es la categora ms poblada por razones obvias: las tcnicas

    originales son todas ampliamente conocidas y probadas en el desarrollo de

    sistema de software. Entonces parece natural intentar extenderlas para la

    orientacin a objetos.

    TCNICA DIRIGIDA POR DATO

    Esta subcategora incluye las tcnicas que utilizan extensiones semnticas

    de modelos de datos o el denominado modelado de informacin. El modelo de

    datos ms ampliamente utilizado por su divulgacin y carcter intuitivo es el

    modelo entidad-relacionamiento extendido.

    Como la tcnica ms representativa en esta subcategora puede ser indicada

    Object-Oriented Analysis (OOA) de [Coad&Yourdon92]. La tcnica propone cinco

    actividades principales que resultan en un modelo multicamadas, donde cada

    camada es construida sobre la camada anterior. Las actividades

    son:

    1) ubicacin de clases y objetos;

    2) identificacin de estructuras;

    3) identificacin de asuntos;

    4) definicin de atributos y

    5) definicin de servicios.

    Posteriormente a la divulgacin de la tcnica han sido propuestas algunas

    extensiones. Entre ellas cabe destacar la de [Schaschinger92] denominada ESA

    (Expert SupportedOOA) que mejora el aspecto dinmico y la del propio

    [Yourdon94] en que tambin redefine el aspecto dinmico de esta tcnica.

  • 8/6/2019 trabajo_final_de_analisis_-_copia

    4/10

    Otras tcnicas que pueden ser clasificadas en esta subcategora son: los modelos

    Entidad-Relacionamiento

    - TCNICA DIRIGIDA POR PROCESOS

    Esta subcategora incluye las tcnicas que utilizan extensiones de modelos

    funcionales con descomposicin funcional. El modelo funcional ms ampliamente

    utilizado, tambin por su divulgacin y carcter intuitivo, es el diagrama de flujo de

    datos (DFD).

    Como la tcnica ms representativa en esta subcategora puede ser indicada

    Object-Oriented Requirements Specifications Methodde [Bailin89]. Este mtodo

    de AOO se basa en los Entity Data Flow Diagrams que representan tanto

    entidades (objetos) como unciones (mtodos). El mtodo propone los siguientespasos:

    1) identificar las entidades (objetos) claves en el dominio del problema;

    2) distinguir entre entidades activas y pasivas;

    3) establecer flujos de datos entre las entidades activas;

    4) descomponer entidades (o funciones) en subentidades y/o funciones;

    5) buscar nuevas entidades;

    6) agrupar las funciones bajo las nuevas entidades; y

    7) definir dominios apropiados para las entidades.

    Es importante destacar que la propuesta no utiliza una descomposicin

    funcional pura, sino que particiona entidades en funciones y subentidades y las

    funciones en subfunciones. As las funciones siempre pertenecen a una entidad de

    ms alto nivel, sin contrariar el principio de encapsulamiento.

    -TCNICA DIRIGIDA POR DINMICA

    Esta subcategora incluye las tcnicas que utilizan extensiones de modelos

    dinmicos de alguna especie. Los modelos dinmicos ms utilizados son los

  • 8/6/2019 trabajo_final_de_analisis_-_copia

    5/10

    diagramas de transicin de estados, los statecharts de [Harel87] y las redes de

    Petri [Heuser90].

    Como tcnica representativa de esta subcategora puede ser indicada la

    propuesta de [Kappel& Schrefl91], que corresponde a una variante de diagrama

    de transicin de estado y redes predicado/ transicin adaptada para la orientacin

    a objetos.

    3.3 Las Tcnicas Integracionistas

    Esta categora representa a aquellas tcnicas que integran modelos

    separados de las diferentes dimensiones.

    Como tcnica representativa de esta categora se encuentra la de[Rumbaugh91]. Los autores proponen una tcnica de desarrollo de software

    orientado a objetos denominada OMT (Object Modeling Technique), que incluye

    explcitamente el AOO como la construccin de tres modelos, uno para

    cada dimensin, que especifiquen el dominio del problema considerando los

    requerimientos. El procedimiento del AOO est ntimamente ligado a la

    construccin de modelos de estos tres aspectos: modelado estructural, modelado

    dinmico y modelado funcional. El orden en que debe ser realizado el modelado

    es:

    1) objetos, 2) dinmica y 3) funcionalidad.

    Para el modelado de objetos se utiliza una extensin del modelo entidad-

    relacionamiento. En el modelado dinmico es utilizada una variante de los

    statecharts. En el modelado funcional son usados DFD extendidos con flujos de

    control. La integracin final de estos modelos, por ejemplo la asociacin de las

    funciones (del modelo funcional) y las acciones (del modelo dinmico) a los

    objetos, es hecha en una fase posterior denominada diseo de objetos.

    La tcnica OMT se ha transformado en una de las tcnicas ms divulgadas,

    existiendo por ejemplo diferentes herramientas CASE (Computer-Aided Software

    Engineering) que incluyen su notacin.

  • 8/6/2019 trabajo_final_de_analisis_-_copia

    6/10

    Tambin ha sido objeto de evaluaciones como por ejemplo la de

    [Hayes&Coleman91] y la de [Bruegge92].

    - Tcnica Reversa

    Las tcnicas reversas son aquellas originadas a partir de necesidades de

    implementacin, como por ejemplo el soporte a conceptos de lenguajes de

    programacin orientados a objetos especficos (por ejemplo Smalltalk, C++, Eiffel

    oAda2). Esta categora puede ser fcilmente confundida con otras, pues al

    soportar conceptos de un lenguaje de programacin orientado a objetos puede ser

    apropiado utilizar enfoques, notaciones y procedimientos de otra naturaleza.

    La tcnica escogida como ms representativa es la propuesta por [Nerson92], que

    define una tcnica de anlisis y diseo orientados a objetos para el lenguaje Eiffel[Meyer88], usando la notacinde objetos mejorada (Better Object Notation o BON).

    Esta tcnica consiste en tres pasos:

    1) identificacin, designacin y clusteringde clases;

    2) identificacin de eventos y protocolos de comunicacin entre objetos; y

    3) definicin de clases y diseo preliminar de la arquitectura bsica.

    La tcnica se basa en conceptos de lenguaje Eiffel (cluster, relacionamiento

    cliente/proveedor, clases diferidas y modelos esttico/dinmico), la tcnica OBA

    (presentada en la prxima seccin) de [Rubin&Goldberg92] y los conceptos de

    tarjetas de clases de [Beck&Cunningham89].

    - Tcnica Comportamentales

    Las tcnicas comportamentales renen tcnicas en las cuales los objetos

    son derivados a partir del comportamiento externo que debe exhibir el sistema.

    Actuando de esta forma, en general se pospone el encapsulamiento de los

    atributos y/o mtodos en los objetos hasta ms adelante en el procedimiento,

    porque inicialmente interesa el comportamiento global del sistema y la interaccin

    de componentes al interior del sistema que satisfacen este comportamiento global.

    Estos componentes sern potenciales objetos del sistema.

  • 8/6/2019 trabajo_final_de_analisis_-_copia

    7/10

    El mejor representante de esta categora es Object-Oriented Software Engineering

    (OOSE) de [Jacobson92] (una simplificacin de la metodologa Objectoryde los

    mismos autores) que contempla la fase de anlisis. Para esta fase, OOSE sugiere

    los siguientes pasos:

    1) identificacin de actores;

    2) construccin de los casos de uso (use case model);

    3) descripcin de las interfaces;

    4) modelado de objetos del dominio del problema;

    5) refinamiento del modelo de requerimientos; y

    6) construccin del modelo de anlisis.

    El modelo de casos de uso es el modelo fundamental de esta tcnica. Con

    los actores (papeles de usuarios del sistema) identificados se construye un modelo

    que describe un aspecto de la funcionalidad del sistema. Este modelo representa

    diversas maneras especficas de usar el sistema. Cada caso de uso describe un

    escenario completo de eventos iniciados por un actor y especifica la interaccin

    que ocurre entre el actor y el sistema.

    Este modelo est ganando cada vez mayor aceptacin para describir el

    comportamiento esperado del sistema al ser visto externamente e incluso se

    sugiere su incorporacin a otras tcnicas de AOO no comportamentales (ver por

    ejemplo [Hills&Tornier95] y [Jacobson&Christerson95]).

    PROCESO UNIFICADO

    Es un marco de desarrollo de software que se caracteriza por estar dirigido por

    casos de uso, centrado en la arquitectura y por seriterativo e incremental.

    El Proceso Unificado no es simplemente un proceso, sino un marco de trabajo

    extensible que puede ser adaptado a organizaciones o proyectos especficos.

    LENGUAJE DE MODDELADO UNIFICADO

    http://es.wikipedia.org/wiki/Ciclo_de_desarrollohttp://es.wikipedia.org/wiki/Casos_de_usohttp://es.wikipedia.org/wiki/Desarrollo_en_espiralhttp://es.wikipedia.org/wiki/Ciclo_de_desarrollohttp://es.wikipedia.org/wiki/Casos_de_usohttp://es.wikipedia.org/wiki/Desarrollo_en_espiral
  • 8/6/2019 trabajo_final_de_analisis_-_copia

    8/10

    Es la sucesin de una serie de mtodos de anlisis y diseo orientadas a

    objetos que aparecen a fines de los 80's y principios de los 90s.UML es llamado

    un lenguaje de modelado, no un mtodo. Los mtodos consisten de ambos de un

    lenguaje de modelado y de un proceso. El UML, fusiona los conceptos de la

    orientacin a objetos aportados por Booch, OMT y OOSE (Booch, G. et al., 1999).

    UML incrementa la capacidad de lo que se puede hacer con otros mtodos de

    anlisis y diseo orientados a objetos. Los autores de UML apuntaron tambin al

    modelado de sistemas distribuidos y concurrentes para asegurar que el lenguaje

    maneje adecuadamente estos dominios.

    Tambin se puede decir que es la notacin (principalmente grfica) que

    usan los mtodos para expresar un diseo. El proceso indica los pasos que se

    deben seguir para llegar a un diseo.

    La estandarizacin de un lenguaje de modelado es invaluable, ya que es la

    parte principal del proceso de comunicacin que requieren todos los agentes

    involucrados en un proyecto informtico. Si se quiere discutir un diseo con

    alguien ms, ambos deben conocer el lenguaje de modelado y no as el proceso

    que se sigui para obtenerlo.

    Una de las metas principales de UML es avanzar en el estado de la integracin

    institucional proporcionando herramientas de interoperabilidad para el modelado visual deobjetos. Sin embargo para lograr un intercambio exitoso de modelos de informacin entre

    herramientas, se requiri definir a UML una semntica y una notacin.

    La notacin es la parte grfica que se ve en los modelos y representa la sintaxis

    del lenguaje de modelado. Por ejemplo, la notacin del diagrama de clases define como

    se representan los elementos y conceptos como son: una clase, una asociacin y una

    multiplicidad. Y qu significa exactamente una asociacin o multiplicidad en una clase?.

    Un metamodelo es la manera de definir esto (un diagrama, usualmente de clases, que

    define la notacin).

    Para que un proveedor diga que cumple con UML debe cubrir con la semntica y

    con la notacin.

  • 8/6/2019 trabajo_final_de_analisis_-_copia

    9/10

    Una herramienta de UML debe mantener la consistencia entre los diagramas en un

    mismo modelo. Bajo esta definicin una herramienta que solo dibuje, no puede cumplir

    con la notacin de UML.

    El lenguaje est dotado de mltiples herramientas para lograr la especificacin

    determinante del modelo, pero en nuestro caso se trabaja en forma simplificada sobre:

    Modelamiento de Clases

    Casos de Uso

    Diagrama de Interaccin

    CARACTERSTICAS

    - Apoyar todos los diagramas de los nueve que componen UML.- La herramienta debe soportar la diagramacin de casos de uso.

    - Permitir definir la visin esttica con diagramas de clases y diagramas de objeto.

    - Permitir la definicin de la visin dinmica, tales como los diagramas de

    secuencia, la actividad, de los estados, de colaboracin y el despliegue de

    componentes que forman el sistema.

    http://www.docirs.cl/uml.htmhttp://www.docirs.cl/uml.htmhttp://www.docirs.cl/uml.htmhttp://www.docirs.cl/uml.htmhttp://www.docirs.cl/uml.htmhttp://www.docirs.cl/uml.htmhttp://www.docirs.cl/uml.htm
  • 8/6/2019 trabajo_final_de_analisis_-_copia

    10/10

    REFENCIAS

    http://eii.ucv.cl/pers/gbustos/PDF/Clasifica.PDF

    http://es.wikipedia.org/wiki/Proceso_Unificado

    http://www.docirs.cl/uml.htm

    http://www.docirs.cl/caracteristica_herramienta_uml.htm

    http://eii.ucv.cl/pers/gbustos/PDF/Clasifica.PDFhttp://es.wikipedia.org/wiki/Proceso_Unificadohttp://www.docirs.cl/uml.htmhttp://www.docirs.cl/caracteristica_herramienta_uml.htmhttp://eii.ucv.cl/pers/gbustos/PDF/Clasifica.PDFhttp://es.wikipedia.org/wiki/Proceso_Unificadohttp://www.docirs.cl/uml.htmhttp://www.docirs.cl/caracteristica_herramienta_uml.htm