Sie sind auf Seite 1von 9

Aplicaciones Móviles Nativas - MTIC

ISC Daniel Arturo Maupomé Rosales

INTRODUCCIÓN

Al momento de pensar en el desarrollo de una solución informática (aplicación web,


aplicación móvil o software de escritorio), es una buena práctica de ingeniería
realizar un modelado adecuado. Para ello, tenemos al Lenguaje de Modelado
Unificado (UML, por sus siglas en inglés) como una poderosa herramienta creada
por Booch, Jacobson y Rumbaugh en 1995 con la finalidad de unificar algunas
convenciones de la época pensadas para el modelado del software. En el presente
resumen conoceremos los aspectos más relevantes para el diseño de aplicaciones
móviles.

CONCEPTO E HISTORIA DE UML

Ferre & Sánchez (2004) nos ofrecen el siguiente concepto sobre UML: “es un
lenguaje que permite el modelado, la construcción y documentación de los
elementos que forman un sistema, sobre todo aquellos que se basan en un
paradigma de orientación a objetos”. La notación ha sido aceptada de manera
amplia, a tal grado de convertirse en un estándar de facto en la industrial del
software y un tema de enseñanza obligada en cursos de ingeniería de software a
nivel superior.

UML como estándar aprobado en 1997 ofrece un vocabulario, reglas y estereotipo


para modelar distintos planos del software, obteniendo una representación
conceptual del sistema que, posteriormente, apegándose a una metodología de
desarrollo adecuada, se transformará en un producto físico basado en código.

El éxito de UML se basa en la unificación de distintos métodos de modelado


preponderantes en los 90’s, por parte de Booch y Rumbaugh, desde la Rational
Software Corporation en 1994, al combinar los métodos OMT y Booch, y que, en
1995 con la inclusión de Jacobson, produjeron lo que hoy se conoce como UML

Esto sitúa al UML dentro de la fase del diseño, y según sus autores (2000), es útil
para capturar la información de la estructura estática y el comportamiento dinámico
de un sistema, entendiéndolo como una colección de objetos discretos que
interactúan para realizar alguna tarea que tiene un beneficio para los usuarios de
un sistema.

CARACTERISTICAS

Con el estándar UML podemos representar una serie de elementos de la estructura


y comportamientos del sistema, basándonos en elementos de la programación

2
Aplicaciones Móviles Nativas - MTIC
ISC Daniel Arturo Maupomé Rosales
orientada a objetos. Precisamente, derivándonos de la metodología de orientación
a objetos, a continuación, se explicarán algunos de los diagramas más relevantes,
clasificados en Estructura estática y Comportamiento dinámico.

Esto quiere decir, que un proyecto complejo de software puede dividirse en un


numero de diagramas que representen cada una de las vistas del proyecto, pero
que juntos representan la arquitectura del mismo. Esto, permite conocer el sistema
a través de diferentes niveles de abstracción.

Permite la extensión del Lenguaje a través de los estereotipos, como los ofrecidos
por Eriksson – Penker para el modelado de vistas de negocios.

ESTANDARES

Según lo consultado en el sitio www.epidataconsulting.com (2005), los estándares


que componen al UML 2.0 son:

 Superestructura: Es la especificación que usamos todos los días. Aquí se


encuentran todos los diagramas que la mayoría de los desarrolladores
conocen.
 Infraestructura: Conceptos de bajo nivel. Meta-Modelo da soporte a la
superestructura, entre otras.
 OCL: Lenguaje de restricción. De utilidad para especificar conceptos
ambiguos sobre los distintos elementos del diagrama.
 XMI / Intercambio de diagramas: Permite compartir diagramas entre
diferentes herramientas de modelado UML.

DIAGRAMAS UML

Según los autores del UML, un modelo es una representación abstracta de una
entidad. El modelo capta los aspectos importantes de lo que se está modelando, y
simplifica u omite el resto. Entonces, técnicamente, el modelo de un sistema de
software se compone de los diversos diagramas UML que se pueden obtener, de la
misma manera que los planos de una casa representan la construcción de la misma.

Los diagramas UML pueden representar la estructura estática y el comportamiento


dinámico de un sistema. Estos no son excluyentes, y entre todos conforman la
arquitectura y comportamiento del sistema dentro de sí, al ser operado por usuarios
y responder al contexto. En ese sentido, se clasifica a los diagramas UML en dos
categorías:

3
Aplicaciones Móviles Nativas - MTIC
ISC Daniel Arturo Maupomé Rosales
A. Diagramas de Estructura Estática

Diagrama de Clases

Es útil para entender la perspectiva


estática del sistema, así como la
definición de plantillas de las que podrán
crearse un numero de objetos
determinados. Se representa como un
bloque dividido en 3 partes horizontales,
en la primera se coloca el nombre, en la
segunda los atributos que posee,
anteponiéndose su visibilidad (pública +, privada -, protegida #) y al final el tipo de
dato después de colocar el símbolo (:). En el tercer bloque se colocan los métodos,
en el que, dentro de paréntesis, se listan los parámetros de entrada.

Las clases pueden tener la propiedad de la herencia (figura 2a) o ser clases
abstractas (figura 2b), como se muestra a continuación:

Figura 2a: Herencia Figura 2b. Herencia con clases abstractas.

Diagrama de Objetos

Es un rectángulo dividido en dos partes (cuando


es una representación extensa), en el que la
parte superior aparece subrayada el Nombre del
Objeto y separado por el símbolo (:) el nombre de
la clase. En la parte inferior se listan todos los
atributos de la clase, pero con un valor asignado.

4
Aplicaciones Móviles Nativas - MTIC
ISC Daniel Arturo Maupomé Rosales
Diagrama de Paquetes

Permite agrupar algunos elementos, como


pueden ser clases o componentes, para
representarlos como parte de un
subsistema en particular. En la figura del
costado observamos cómo se agrupan los
componentes en 4 paquetes, y vemos una
interacción entre los 4 siguiendo la
dirección del flujo de comunicación.

Diagrama de Componentes
Describe la organización de los componentes físicos de
un sistema, aplicación o empresa.

Aquí podemos colocar componentes como son los


formularios, las bases de datos y algunas clases útiles
dentro del proyecto.

Diagrama de Casos de Uso

Es una descripción de las acciones de un


sistema desde la perspectiva del usuario.
Es útil para la obtención de requerimientos
dada la percepción del usuario. Nos
permiten modelar la funcionalidad del
sistema utilizando actores (representados
por figuras humanas) y casos de uso
(representados por óvalos) que son
servicios provistos por el sistema. Puede
ser necesario señalar las inclusiones y
extensiones a través de flechas entre los
casos de usos.

5
Aplicaciones Móviles Nativas - MTIC
ISC Daniel Arturo Maupomé Rosales
B. Diagramas de Comportamiento Dinámico

Diagramas de Estados.

Útil para representar la transición de


estados que ocurre dentro de un
sistema. Representa la interacción de
un objeto con los métodos disponibles
de sí mismo y de otros objetos.

Diagrama de Secuencias.

Representa la interacción de un usuario


con los objetos, con base en líneas del
tiempo y muestra las secuencias de
interacción dentro del sistema a través
de las llamadas a los métodos.

Diagrama de Actividades

Ilustra la naturaleza dinámica del sistema a


través del flujo ocurrente entre actividades.
Esto es posible ya que un cambio de estado
dentro del sistema puede ocurrir a través de
una cadena de llamadas a mensajes
internamente dentro de la aplicación.

Diagrama de Colaboración

Combina la información de los diagramas de clases,


de secuencias y de casos de uso para describir el
comportamiento de las estructuras estática y
dinámica del sistema a través de mensajes
secuenciados.

6
Aplicaciones Móviles Nativas - MTIC
ISC Daniel Arturo Maupomé Rosales

MODELADO RELACIONAL CON UML

En un artículo publicado por Popkin Software & Systems se hace referencia a la


popularidad creciente que tienen las bases de datos orientadas a objetos, hecho
que facilita el uso de UML en el modelado de las mismas. Sin embargo, aun
actualmente, las bases de datos relacionales gozan de gran popularidad entre los
desarrolladores, y aunque se sabe que las bases de datos poseen sus propios
diagramas (Modelo Entidad – Relación), es posible utilizar diagramas de clases
UML para el modelado a través del diseño de una extensión o estereotipo informal
que se denominó Diagramas de Relaciones de Entidad.

Dicha organización refiere que puede tomarse como base el Diagrama de Clase, ya
que permitiría modelar la estructura lógica de una tabla, considerando que la clase
sea una entidad (tabla) y los atributos sean las columnas.

En la siguiente imagen queda más claro el proceso, inclusive considerándolo ya


como extensión de UML y denominándolo Diagrama de Relación de Entidad

Cabe destacar que esta propuesta es utilizada por Andrade (2011) en su trabajo
sobre el modelado de los sistemas de e-gobierno de Venezuela, por lo que se
demuestra la viabilidad de utilizar los Diagramas de Clases como punto de partida
en un modelado de bases de datos relacionales.

7
Aplicaciones Móviles Nativas - MTIC
ISC Daniel Arturo Maupomé Rosales

VENTAJAS

López y Ruiz (s. f.) listan las siguientes ventajas e inconvenientes de UML:

Ventajas de UML Inconvenientes de UML


 Es estándar => Facilita la comunicación  No es una metodología. Además de
 Está basado en metamodelo con una UML, hace falta una metodología OO
semántica bien definida  No cubre todas las necesidades de
 Se basa en una notación gráfica concisa especificación de un proyecto software
y fácil de aprender y utilizar  No define los documentos textuales o el
 Se puede utilizar para modelar sistemas diseño de interfaces de usuario
software de diversos propósitos.  Puede resultar complejo alcanzar un
 Es fácilmente extensible conocimiento completo del lenguaje

CONCLUSION

El Lenguaje de Modelado Unificado es una herramienta muy útil para el diseño


conceptual de una solución de software. Se gestó como la unificación de diversas
técnicas, y cumple con la mayoría de procesos, mas no se manifiesta como una
opción cerrada, sino que permite la inclusión de extensiones que le brindan un
mayor alcance al lenguaje.

Si bien es cierto, que la ingeniería de software ha evolucionado, aun podemos


encontrarle utilidad al lenguaje UML en las etapas de diseño, ya que permite
comprender la estructura estática y el comportamiento dinámico de un sistema de
software. Asimismo, ya que muchos sistemas aun utilizan bases de datos
relacionales, se puede utilizar UML para el diseño de las bases de datos,
sustituyendo el tradicional Modelo Entidad Relación de Peter Chen.

Aunque las nuevas tendencias apunten a lenguajes de tipo BPMN (Bussiness


Process Model and Notation), cierto es que el UML refuerza la concepción natural
de un sistema dentro de los procesos de negocios, por eso es que es imprescindible
continuar trabajando con este lenguaje.

Además, vale la pena mencionar las herramientas case que permiten partir de un
diagrama para la generación de código, como son ArgoUML, Rational Rose o Visual
Paradigm, que sin duda se convierten en un gran apoyo para los desarrolladores y
modeladores de sistemas.

8
Aplicaciones Móviles Nativas - MTIC
ISC Daniel Arturo Maupomé Rosales

REFERENCIAS
Andrade, J. (2012) Diagramas entidad-relación y de clases de UML en el modelado
de gobierno electrónico, Revista Ciencia y Técnica Administrativa, No 1, Vol. 11Bs
As, Argentína, Recuperado de: http://www.cyta.com.ar/ta1101/v11n1a1.htm

Booch, Jacobson & Rumbaugh (2000) El Lenguaje Unificado de Modelado, Manual


de Referencia, 1ª Edición, Pearson – Addison Wesley, España.

Epidata (2005) Introducción a UML 2.0, Consultado el 19/06/2018, Disponible en


http://www.epidataconsulting.com/tikiwiki/tiki-read_article.php?articleId=15

Ferré, X. & Sánchez, Ma. (2004) Desarrollo Orientado a Objetos con UML,
Consultado el 19/06/2018, Disponible en
https://www.uv.mx/personal/maymendez/files/2011/05/umlTotal.pdf

López, P. & Ruiz, F. (S. F.) Lenguaje Unificado de Modelado, (Material de apoyo de
la Asignatura Ingeniería del Software I), Universidad Cantabria. Disponible en:
https://ocw.unican.es/pluginfile.php/1403/course/section/1792/is1-t02-trans.pdf

Popkin (2002) Modelado de Sistemas con UML, Consultado el 19/06/2018,


Disponible en http://es.tldp.org/Tutoriales/doc-modelado-sistemas-UML/doc-
modelado-sistemas-uml.pdf

Materiales Digitales UNID.

Das könnte Ihnen auch gefallen