ingenierÍa del software - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está...
TRANSCRIPT
INGENIERÍA DEL SOFTWARE
INGENIERÍA DEL SOFTWARE
1
Sesión No. 8 Nombre: Tipos de diagramas Contextualización
¿Cómo identificar los elementos importantes del software?
Cuando diseñamos el sistema no basta con crear diagramas de uso acerca de
las funciones, sino identificar cuales son los elementos que nos guiaran como
subsistemas, dependencias, interfaces, nodos, entre otros; estos elementos nos
muestran de donde partir y hasta donde debemos llegar.
Una vez que identificamos estos elementos, podemos representarlos
gráficamente mediante diagramas en los cuales se expresan las entradas de
información, las salidas, las estructuras lógicas y las formas en que la
información se procesará.
Figura 1. Ronda, R. (2007). La diagramación en la arquitectura de información. [Diagrama de
funcionamiento]. Recuperado de: http://www.nosolousabilidad.com/articulos/diagramacion.htm
INGENIERÍA DEL SOFTWARE
2
Introducción al Tema
¿Cómo influye la arquitectura en el software?
Cuando creamos la arquitectura del software tomamos decisiones importantes,
que se verán reflejadas en el desarrollo y durante todo el proyecto, como la
organización del sistema, los elementos que lo integraran, interfaces,
comportamientos y la relación que hay entre cada uno de ellos; el
comportamiento de los subsistemas y los módulos cuando el sistema crece.
La arquitectura define la arquitectura y el comportamiento del software, pero
también define su uso, como la funcionalidad, flexibilidad, compatibilidad y
rendimiento, restricciones, costos y la estética final.
INGENIERÍA DEL SOFTWARE
3
Explicación
Tipos de diagramas
Los diagramas UML son una representación gráfica de la arquitectura del
sistema, cada uno muestra la misma información pero con diferentes enfoques
(recordando el ejemplo de la construcción del edificio, varios colaboradores con
diferentes funciones, pero con el mismo objetivo); existen 13 diagramas
principales que son:
1. Diagrama de clases.
2. Diagrama de objetos.
3. Diagrama de componentes.
4. Diagrama de estructura compuesta.
5. Diagrama de despliegue.
6. Diagrama de paquetes.
7. Diagrama de actividades.
8. Diagrama de casos de uso.
9. Diagrama de estados.
10. Diagrama de secuencia.
11. Diagrama de comunicaciones.
12. Diagrama de tiempo.
13. Diagrama de interacción.
INGENIERÍA DEL SOFTWARE
4
Figura 2.Daniel. (2012). Iteraciones de Software. [Organización de los diagramas de UML 2].
Recuperado de: http://codeoptimizations.com/proyectos-con-uml-2/organizacion-de-los-
diagramas-de-uml-2/
INGENIERÍA DEL SOFTWARE
5
Arquitectura del sistema
Un sistema se define por su estructura, porque es la que presenta las
características de uso dentro del ambiente electrónico, es decir, ya sea la
estructura de un sistema operativo o de una aplicación de ejecución particular,
estos se definen por el uso de los elementos, el rendimiento, las herramientas
que se ofrezcan y los medios con los que puedan conectar dentro y fuera del
sistema.
El diseño del sistema se divide en subsistema de diseño para facilitar el trabajo,
esto se logra si las partes son piezas lógicas, coherentes y de interfaz bien
definida. Los pequeños subsistemas deben soportar la participación de distintos
perfiles técnicos y seguir en función a lo que se ha estipulado, es algo principal
poder determinar de igual forma el software y el hardware con el que se cuenta
para poder tener un desarrollo óptimo del sistema.
Se pueden y deben diseñar datos específicos si es que se desea que el medio
que se desarrolla reconozca elementos particulares, como se ha hecho con los
códigos bidimensionales, la realidad aumentada, el sistema que utiliza las
cámaras fotográficas para la detección de rostros y muchos más.
Figura 3.Jacobson, I., Booch, G., & Rumbaugh, J. (2000). El Proceso Unificado del Desarrollo de Software
[Existen diferentes tipos de requerimientos y productos que influyen en la arquitectura, aparte de los casos
de uso. También son de ayuda en el diseño de una arquitectura la experiencia de trabajos anteriores y las
estructuras que podemos identificar como patrones de la arquitectura]. España: Pearson Education
INGENIERÍA DEL SOFTWARE
6
Contexto y requisitos del sistema
El contexto del sistema (véase en la sesión 4 de este curso), representa el
modelo del software que se está diseñando y su entorno externo, representa
asociaciones donde son creados diagramas de bloques del sistema. Existe un
diagrama especial para su presentación que es el “diagrama de contesto del
sistema”, el cual define los límites entre el sistema y su ambiente, muestra las
entidades que interactúan con él.
¿Qué elementos determina los requisitos de funcionamiento en un software?
Los elementos que determinan los requisitos con los cuales funciona una
aplicación son las herramientas de trabajo que se ofrezcan, el uso del entorno
que manejen y las interfaces gráficas que lo compongan, es decir, si una
aplicación o sistema está dirigida al desarrollo de material 3D, los requisitos del
sistema deben ser altos, pues la construcción y cálculo de los elementos
consume gran parte de la memoria RAM y de la capacidad del procesador, por lo
que siempre es importante conocer lo que puede hacer la aplicación y los
medios por los cuales funciona dentro de la computadora.
Para realizar estas características se deben cumplir con metodologías
necesarias y útiles que determinarán de una forma más gráfica el
funcionamiento y desarrollo para poder determinar de una forma directa y
concreta lo que se desea sin cometer varios errores en el diseño.
INGENIERÍA DEL SOFTWARE
7
Conceptos básicos de casos de uso
Los conceptos de casos de uso son formas en las que se diseñan implementos
dentro del ambiente de desarrollo, los casos de uso se muestran mediante
diagramas de diferentes tipos y sus atributos.
Éstos son requerimientos funcionales o de comportamiento.
No son orientados a objetos
Un caso de uso puede ser un texto el cual puede tener un contenido de
diferentes formatos.
Representa un escenario de forma específica con iteraciones entre el
usuario y el sistema.
Éste puede definirse como una colección de escenarios de éxito y fracaso.
Los casos de uso son funciones visibles para el usuario
Puede ser pequeño o grande
Cada caso logra un objetico discreto para el usuario
INGENIERÍA DEL SOFTWARE
8
Figura 3.Salazar, L. (2012). Casos de Uso 2.0: Cosas con las cuales trabajar. [Mapa Conceptual
de Casos de Uso]. Recuperado de: http://www.gazafatonarioit.com/2012/11/casos-de-uso-20-
cosas-con-las-cuales.html
Relaciones
Las relaciones en el caso de los lenguajes de programación, son conjuntos de
vínculos entre clases, las cuales pueden ser binarias o n-arias, según sea el uso
de dos o más clases. Las relaciones se identifican por su función, los nombres
que indican su comportamiento que tienen y los tipos o las clases.
Los elementos principales que determinan las relaciones son;
Composición
Generalización
Dependencia
Multicapacidades
Agregación
INGENIERÍA DEL SOFTWARE
9
Conclusión
Los diagramas se utilizan para poder definir de manera correcta la arquitectura y
diseño de una aplicación, por tanto dentro de los diagramas debemos ser
capaces de detectar los errores y las funciones que pueden tener un desarrollo
óptimo y detectar de igual manera las cosas que no llevan un procedimiento
extenso o de estructura condicional.
Existen varios tipos de diagramas que funcionan determinando acciones dentro
de diferentes software, es decir, debido a que existen varios elementos y de
diferente aplicación se desarrollan varios diagramas; no se utilizan más de 2 en
un mismo software, pues se utilizan elementos de desarrollo específicos,
códigos de programación directos para el uso en las funciones y las estructuras
lógicas o condicionales específicas para cada situación.
INGENIERÍA DEL SOFTWARE
10
Para aprender más
Diagramas de componentes UML
• Diagramas de componentes de UML: Referencia, de Microsoft Developer
Network. Sitio Web:
https://msdn.microsoft.com/es-MX/library/dd409390.aspx
Modelado de desempeño de programas
• Ortega Arjona, Jorge. (2008). Using UML State Diagrams for Modelling
the Performance of Parallel Programs. Computación y Sistemas, 11(3),
199-210. Recuperado en 15 de julio de 2015,
de http://www.scielo.org.mx/scielo.php?script=sci_arttext&pid=S1405-
55462008000100003&lng=es&tlng=en. .
INGENIERÍA DEL SOFTWARE
11
Actividad de Aprendizaje
Instrucciones:
Con la finalidad de aplicar tus conocimientos adquiridos en esta sesión, tendrás
que realizar una actividad la cual consiste en crear al menos dos diagramas UML
por cada funcionalidad del sistema para la biblioteca escolar, pueden ser
diagramas de secuencia, diagramas de casos de uso, diagramas de estado, etc.
Puedes apoyarte de alguna de las siguientes herramientas que sirven para el
diseño de estos diagramas:
• Microsoft Visio (Algunas veces está incluido en el paquete de office).
• Visual Paradigm http://www.visual-paradigm.com/
• ArgoUML http://argouml.tigris.org/
Deberás guardarlo en formato JPG, para subirlo a la plataforma de la asignatura.
Recuerda que esta actividad te ayudará a poner en práctica tus conocimientos
acerca del diseño de software y UML.
Para esta actividad se tomará en cuenta lo siguiente:
Título
Datos personales
Ortografías y redacción
Diagramas UML
Bibliografía
INGENIERÍA DEL SOFTWARE
12
Bibliografía
• González, L. y Urrego, G. (2010, Octubre), Modelo de contexto y dominio
para la ingeniería de requisitos de sistemas ubicuos. Revistas Ingenierías.
Universidad de Medellín, Vol. 9.Sitio Web:
http://www.scielo.org.co/pdf/rium/v9n17/v9n17a13.pdf
• Tipos de organización.com. (2013) Tipos de diagramas. Sitio
web: http://www.tiposde.org/empresas-y-negocios/723-diagramas/
• Piquer, J. (s.f.), Arquitectura del sistema operativo. Sitio
web: http://users.dcc.uchile.cl/~jpiquer/Docencia/SO/aps/node16.html
• Jacobson, I., Booch, G., & Rumbaugh, J. (2000). El Proceso Unificado del
Desarrollo de Software. España: Pearson Education
• Fowler, M. (1999). UML gota a gota. México: Pearson Education