13
INGENIERÍA DEL SOFTWARE

INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

INGENIERÍA DEL SOFTWARE

Page 2: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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

Page 3: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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.

Page 4: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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.

Page 5: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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/

Page 6: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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

Page 7: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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.

Page 8: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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

Page 9: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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

Page 10: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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.

Page 11: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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. .

Page 12: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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

Page 13: INGENIERÍA DEL SOFTWARE - moodle2.unid.edu.mx€¦ · modelo del software que se diseñando está y su entorno externo, representa asociaciones donde son creados de bloques del sistema.diagramas

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