• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Análisis y diseño oo con umldclases
 

Análisis y diseño oo con umldclases

on

  • 357 views

 

Statistics

Views

Total Views
357
Views on SlideShare
357
Embed Views
0

Actions

Likes
0
Downloads
11
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Análisis y diseño oo con umldclases Análisis y diseño oo con umldclases Presentation Transcript

    • Análisis y Diseño OO con UML Diagramas de Clases
    • CLASESModelado Conceptual: Organización del conocimiento del dominio del problema en un conjunto de abstracciones ordenadas de forma que se obtiene un conocimiento más profundo del problema
    • Clasificación El mundo real puede ser visto desde abstracciones diferentes (subjetividad) Mecanismos de abstracción:  Clasificación / Instanciación  Composición / Descomposición  Agrupación / Individualización  Especialización / Generalización La clasificación es uno de los mecanismos de abstracción más utilizados
    • ¿Qué es una Clase? Es una descripción de un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semántica. Son una abstracción de las cosas que forman parte del vocabulario del dominio.
    • Clases La clase define el ámbito de definición de un conjunto de objetos Cada objeto pertenece a una clase Los objetos se crean por instanciación de las clases
    • Clases: Notación Gráfica Cada clase se representa en un rectángulo con tres compartimientos:  nombre de la clase  atributos de la clase  operaciones de la clase
    • ClasesAtributo Es una propiedad, cualidad o característica asociada a una clase, identificada por un nombre que describe un rango de valores que puede tomar la propiedad. El nombre de un atributo es un nombre corto o expresión nominal extraída del dominio.  Por lo general se suele poner la primera letra de cada palabra en mayúsculas, excepto de la primera (precio; tipoProducto) Junto al nombre se pueden incluir otras características (tipo, valor por defecto, etc.)
    • ClasesOperación Es una implementación de un servicio que puede ser requerido a cualquier objeto de la clase para que muestre un comportamiento. Generalmente la invocación de una operación sobre un objeto produce un cambio en los datos o el estado de éste. El nombre de una operación es un verbo o expresión verbal extraído del dominio.  Por lo general se suele poner la primera letra de cada palabra en mayúsculas, excepto de la primera (comprar; calcularImporte)
    • ClasesOperación Junto al nombre se puede especificar su signatura.  Nombre, tipo y valores por defecto de los parámetros y en ciertos casos necesarios tipo de retorno.
    • ClasesEspecificación de una clase Para facilitar la comprensión no se suelen mostrar todos los atributos y operaciones de la clase, o incluso a veces sólo se muestra el nombre de la clase.  Se puede indicar explícitamente que hay más atributos o propiedades mediante: ...
    • ClasesIdentificación de clases El objetivo es identificar los conceptos significativos del dominio. Dos posibles estrategias:  A partir de una lista de categorías.  A partir de identificación de frases nominales.
    • ClasesIdentificación de frases nominales Este método consiste en identificar en las descripciones textuales del dominio nombre o frases nominales y considerarlas como conceptos. En esta estructura los verbos representan asociaciones entre conceptos.Ejemplo.- El cliente realiza los pedidos CLIENTE REALIZA PEDIDO
    • ClasesErrores y problemas en la identificación de clasesIncorporación de documentos como clases. Incorporarlos sólo si cumplen un papel especial respecto a las reglas del negocio (ejemplo.- un recibo de compra puede ser necesario para realizar una devolución).Distinción entre atributo y clase. Si el concepto identificado no se describe mediante un simple número o texto descriptivo, posiblemente sea una clase.
    • Clases: Encapsulación La encapsulación presenta dos ventajas básicas:  Se protegen los datos de accesos indebidos  El acoplamiento entre las clases se disminuye  Favorece la modularidad y el mantenimiento Los atributos de una clase no deberían ser manipulables directamente por el resto de objetos
    • …Clases: Encapsulación Los niveles de encapsulación están heredados de los niveles de C++:  (-) Privado : es el más fuerte. Esta parte es totalmente invisible (excepto para clases friends en terminología C++)  (#) Los atributos/operaciones protegidos están visibles para las clases friends y para las clases derivadas de la original  (+) Los atributos/operaciones públicos son visibles a otras clases (cuando se trata de atributos se está transgrediendo el principio de encapsulación)
    • Relaciones entre Clases Los enlaces entre objetos pueden representarse entre las respectivas clases Expresa una conexión entre las clases del dominio. Formas de relación entre clases:  Asociación y Agregación (vista como un caso particular de asociación)  Generalización/Especialización Las relaciones de Agregación y Generalización forman jerarquías de clases