Descargar

Modelado Estructural y Paquetes de Software

Enviado por Pablo Turmero


Partes: 1, 2, 3

    edu.red

    Modelado estructural Se describen los tipos de objetos de un sistema y las relaciones estáticas que existen entre ellos. Clases Interfaces Relaciones de dependencia, realización, generalización y asociación (agregación, composición) También pueden incluir paquetes.

    Un diagrama de clase es una representación gráfica de un modelo estructural.

    edu.red

    Modelado estructural Diferentes perspectivas. Modelado Conceptual Conceptos del dominio del problema: atributos, restricciones y relaciones entre ellos. Modelo del Análisis Clases que corresponden a conceptos del dominio Atributos y métodos Modelo de Diseño Incluye clases que corresponden a decisiones del diseño Modelo de Implementación Clases que corresponden a un lenguaje de programación

    edu.red

    Modelo Conceptual

    edu.red

    Modelo Análisis

    edu.red

    Modelo de diseño

    edu.red

    Modelo del Comportamiento

    edu.red

    Modelado estructural y del comportamiento Colaboraciones y Patrones de diseño tienen una parte estructural y otra de comportamiento.

    edu.red

    Patrón de diseño (parte estática) (Gp:) Observer (Gp:) Update() (Gp:) Subject (Gp:) subjectState (Gp:) Attach() (Gp:) Detach() (Gp:) Notify() (Gp:) 1..* (Gp:) 1..1 (Gp:) 1..* (Gp:) +observers (Gp:) 1..1 (Gp:) ConcreteSubject (Gp:) subjectState (Gp:) getState() (Gp:) setState() (Gp:) ConcreteObserver (Gp:) observerState (Gp:) update() (Gp:) +subject (Gp:) observerState= (Gp:) subject.getState() (Gp:) for all o in observers (Gp:) {o.update()}

    edu.red

    Patrón de diseño (parte dinámica)

    edu.red

    Ingeniería directa e inversa Ingeniería directa Transformar modelos en código en un lenguaje de programación determinado Ingeniería inversa Obtener un modelo a partir de código. Más difícil ya que hay pérdida de información al pasar de los modelos al código.

    edu.red

    Clases Atributos Operaciones No se tienen por qué mostrar todos las propiedades Se pueden agrupar operaciones: <>, <>

    edu.red

    Clases Clases y métodos abstractos Multiplicidad Variables y métodos de clase 1

    edu.red

    Interfaces Una interfaz es una colección de operaciones que especifica los servicios de una clase o componente.

    edu.red

    nombre: nombre del atributo tipo: tipo del atributo valor_inicial: valor inicial o por defecto [visibilidad] nombre [: tipo] [‘[‘multiplicidad’]’] [= valor_inicial ] [property-string {‘,’ property-string}] propiedades: {frozen} {addOnly} Atributos (Gp:) (Gp:) visibilidad (Gp:) + = pública (Gp:) # = protegida (Gp:) – = privada (Gp:) ~ = package

    edu.red

    Atributos : Ejemplos origen + origen origen : Punto nombre : String [0..30] origen : Punto = (0,0) id : Integer {readOnly}

    edu.red

    nombre: nombre de la operación lista_parámetros: lista de parámetros separados por comas tipo retorno: tipo de valor devuelto por la operación propiedades: {isQuery}, {sequential}, {concurrent} [visibilidad] nombre [‘(‘lista_parametros’)’] [: tipo_retorno] [property-string {‘,’ property-string}] Operaciones (Gp:) (Gp:) visibilidad (Gp:) + = pública (Gp:) # = protegida (Gp:) – = privada (Gp:) ~ = package

    Partes: 1, 2, 3
    Página siguiente