Tecnología

Inicio

Las ventajas de usar generalización en UML Modelado

Las ventajas de usar generalización en UML Modelado


En el modelado orientado a objetos utilizando Unified Modeling Language (UML), la generalización se refiere a la extracción de los elementos comunes a través de múltiples clases, conocidas como subclases, y sus asociaciones compartidos en una clase general o superclase. Según Hoffer, George y Valacich en "Modern Sistemas de Análisis y Diseño", en el modelado UML, la generalización se representa "como una línea continua de la subclase a la superclase, con un triángulo hueco en el extremo de, y apunta en la dirección, la superclase . "El uso de la generalización en el modelado UML es ventajoso porque promueve la herencia, la reutilización, la extensibilidad y la simplicidad.

Herencia

En la generalización, una subclase hereda los atributos de una superclase. Esto es beneficioso, ya que proporciona una forma de distinguir atributos comunes de atributos únicos. Sin embargo, desde una subclase es más específico y una superclase es más general, un niño o subclase puede heredar los atributos y el comportamiento de un padre o superclase - pero no al revés. Por ejemplo, si el animal es un superclase y el perro es una subclase de la superclase animal, se puede indicar que cada perro es un animal, pero no cada animal es un perro.

reutilización

Al permitir que las clases para compartir atributos y comportamientos comunes, la práctica de la generalización en el modelado UML permite volver a utilizar, ya que da lugar a la duplicación mínima. Desde subclases heredan los atributos generales de una superclase, es posible reutilizar los atributos y comportamientos de la superclase para producir múltiples subclases. Además, tener clases de objetos con atributos y comportamientos genéricos puede ser valioso en el desarrollo del sistema debido a la reutilización es posible a través de múltiples esfuerzos de desarrollo del sistema sin tener que reinventar la rueda cada vez.

extensibilidad

La generalización es compatible con posibilidad de ampliación, porque una vez que haya definido una superclase, puede continuar para crear atributos y comportamientos que son distintas de las que superclase 'atributos y comportamientos en una subclase. Para ilustrar, utilizando el ejemplo superclase animal, se puede añadir subclases adicionales tales como una subclase de gato a la superclase animal sin tener que redefinir las características que hacen que un gato un animal. Además, la superclase animal puede llegar a ser una subclase de la superclase seres vivos y una nueva subclase planta puede ser creado bajo la superclase seres vivos.

Sencillez

En la generalización, las clases de objetos son más fáciles de manejar, ya que están simplificando el proceso de clasificación de objetos por predefinir puntos comunes para las subclases de una vez a través de una superclase. Entonces, sólo es necesario definir atributos distintos a medida que agrega subclases de la superclase. Como resultado de este mayor nivel de abstracción, que está utilizando un menor número de objetos, lo que reduce la complejidad asociada a la estructuración de una jerarquía de clases de modelado UML.