INGENIERÍA DEL SOFTWARE - Mi Materia en...

15
INGENIERÍA DEL SOFTWARE

Transcript of INGENIERÍA DEL SOFTWARE - Mi Materia en...

Page 1: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

Page 2: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

1

Sesión No. 7 Nombre: Lenguaje unificado de modelado – UML Contextualización

¿Por qué utilizar un lenguaje unificado?

Cuando desarrollamos un proyecto entre dos o más personas, debemos utilizar

el mismo lenguaje técnico y para el desarrollo, esto es para crear el proyecto de

la misma manera, aunque las áreas que maneje cada integrante sean diferentes

pertenecerán al mismo proyecto; por ejemplo, cuando se crean los planos de un

edificio, el arquitecto muestra una versión dependiendo de la función de los

demás integrantes, al electricista le muestra el plano basado en la engería

eléctrica, al contratista le muestra el plano enfocado en la estructura y

cimentación, al plomero le muestra al plano enfocado a las tuberías, todos con

una tarea diferente pero se va a construir el mismo edificio, lo mismo es con el

software, pero para construir el mismo proyecto necesitamos tener la misma

base con un lenguaje unificado.

Page 3: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

2

Introducción al Tema

¿Cómo surge el uso del lenguaje unificado?

En la llamada “Crisis de software”, no existía un lenguaje estandarizado para el

desarrollo ni lineamientos en base a pruebas provocadas, lo que hacía muy

complicado que se trabajara en equipo y tener un control del sistema.

Actualmente, metodologías deben comprender de los aspectos más esenciales

en cuanto a lo que se desea cubrir, no dejar a un lado lo que la minoría necesita,

pues muchas veces los procesos que realizan son más complicados y requieren

de un soporte mayor, la creación de un software debe ser capaz de soportar la

carga de información y tener un buen gestor de información para no detener

ningún procedimiento ni dejar en ciclo las líneas condicionales que componen la

aplicación.

Figura 1. Jaimes, J., Mena, J. (2008). Análisis y Diseño de Sistemas de Información [Historia

UML]. Recuperado de: http://www.geocities.ws/jjaimes6603/fase2/paraque.html

Page 4: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

3

Explicación

Lenguaje unificado de modelado UML

¿Qué es UML?

El Lenguaje Unificado de Modelado (UML, por sus siglas en inglés Unified

Modeling Languaje) es el lenguaje grafico que es utilizado para facilitar el

desarrollo de software, proporciona un vocabulario y reglas para utilizarlo y un

lenguaje de modelado, todo para lograr una representación conceptual y física

del sistema. Este lenguaje ayuda a interpretar grandes sistemas utilizando

gráficos o texto obtenido de modelos explícitos, los cuales ayudan a la

comunicación durante el desarrollo por el hecho de tratarse de un estándar.

Desde una perspectiva general, el UML se compone de tres elementos básicos

que son; bloques de construcción, reglas y algunos mecanismos comunes. Estos

elementos interactúan entre sí para dar al UML un medio de no-ambigüedad.

Este medio proporciona un conjunto de pautas al momento de realizar

asociaciones entre objetos para poder conseguir modelos bien formados.

UML se vale de elementos, como:

Bloques de construcción de UML

Page 5: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

4

Elementos estructurales

Clases

Interfaz

Colaboración

Casos de uso

Nodos

Estudio de metodologías

¿Qué es una metodología?

Una metodología es un conjunto de procedimiento y reglas que se deben cumplir

con un orden bien estructurado para ofrecer un resultado buscado. Las

metodologías se utilizan para realizar investigación en la mayoría de los casos,

pues ofrecen un método de desarrollo de la investigación, se basa en hipótesis y

desarrollo de información ya investigada anteriormente o de nuevas ramas, por

lo que ofrece un soporte especial a las demostraciones de algún hecho científico,

es la parte teórica y escrita que funciona como la base de un tema.

Cuando se habla del estudio de metodologías, se trata de una serie de pasos e

investigaciones que se desarrollan en base a la metodología, una metodología

puede ser para investigaciones documentales o de campo, por lo que el estudio

de cada una de éstas es diferente y abarca elementos, características y medios

distintos. Para el estudio se deben determinar puntos objetivos para demostrar

parecidos a las hipótesis por cada caso en específico.

Existen varias metodologías, las cuales se dividen en fases que deben cumplirse

y determinar elementos de importancia, por ejemplo una metodología llama “Yin”,

se divide en 5 pasos los cuales determinan la investigación;

Diseño de caso de estudio

Conducción del caso de estudio: Preparación de la recolección de Datos.

Conducción del caso de estudio: recolección de datos

Page 6: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

5

Análisis del caso de estudio

Elaboración del reporte de caso de estudio

Existen varios métodos de investigación y desarrollo, por lo que es importante

conocerlos y no limitarse a la inclusión de la palabra “Software” en el método,

pues en función de lo que se desea se encuentra la metodología.

Proceso unificado

El proceso unificado es una versión libre del proceso iterativo incremental que

ayuda al desarrollo del software con un proceso unificado, es un medio de

creación de información que se caracteriza por dirigirse a los casos de uso que

se centran en la arquitectura de software.

Éste no es simplemente un proceso, sino que se trata de un marco de trabajo en

el cual se pueden adaptar proyectos específicos o determinados a un solo fin.

Sus principales características son;

Dirigido por casos de uso

Centrado en la arquitectura

Iterativo e incremental

Y su estructura de ciclo de vida del proceso de desarrollo unificado consta de;

Fase de concepción

Fase de elaboración

Fase de construcción

Fase de transición

El conjunto de todas las fases y características principales describen de una

forma breve y general lo que es el proceso unificado, por lo que es importante

conocer los atributos, pues son los que definen los procedimientos dentro del

UML. Recordemos que se fundamenta en la misma estructura pues es la

Page 7: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

6

programación que se basa a objetos, por tanto la plataforma es la misma en los

casos en que se utiliza el lenguaje.

Figura 2. (2013). Proceso Unificado de Desarrollo. [Estructura del proceso unificado].

Recuperado de: http://informatica-iutll.blogspot.mx/2013/03/proceso-unificado-de-desarrollo.html

Características de metodologías orientadas a objetos

¿Qué es una metodología orientada a objetos?

Es la planificación que se tiene en un proyecto de programación, es decir, la

creación de diagramas y modelos para poder mostrar gráficamente los

elementos que se utilizarán y las conexiones dentro del mismo, es decir, las

partes del código que anidarán para presentar estabilidad o funcionalidad. Las

etapas de este medio son;

Análisis

Diseño

Implementación

Pruebas

Page 8: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

7

Estos pasos se realizan para garantizar la calidad y funcionalidad de la

aplicación.

Objetivos y características de UML

UML es un lenguaje de programación que se orienta a los objetos, es un medio

el cual puede utilizar prácticamente cualquier lenguaje de programación sin

importar el dispositivo para el cual se desarrolle el contenido, pues la orientación

a objetos se utiliza en muchos de los casos de desarrollo de software. Los

objetivos principales de este medio son;

Debe ser capaz de modelar no solo sistemas, sino también otro tiempo de

software real para las empresas, siempre con el uso orientado a objetos.

Crear un lenguaje de modelado utilizable por las máquinas y

comprensible por el hombre.

Establecer un acoplamiento explícito de los conceptos y los artefactos

ejecutables.

Manejar los problemas cotidianos que los sistemas más complejos

presentan en forma crítica.

Una de las características de este medio de programación es que cuenta con

medio de visualización con los que es más fácil comprender lo que se ha

diseñado. Es muy flexible en cuanto a sus opciones de diseño para organizar

modelos, por lo que se utiliza con manejadores lógicos.

¿A qué elementos está dirigido UML?

UML es un lenguaje de programación que se especializa en la programación a

objetos, pero cuenta con varios elementos que lo definen y lo hacen funcional,

por lo que podemos decir que UML es para;

Page 9: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

8

Visualizar: nos permite ver lo que queremos conseguir con el sistema,

facilitando la comunicación y dando una representación gráfica para una

fácil comprensión.

Especificar: construir modelos precisos, cubriendo decisiones en análisis

diseño, implementación y funcionamiento.

Construir: permite el desarrollo de plantillas aplicables a diferentes

lenguajes de programación.

Documentar: cubre con los requisitos de los medios escritos para tener

algún soporte técnico y de estudio.

Usos de UML

El principal uso de UML es la creación de estructuras lógicas en las cuales se

puedan crear aplicaciones de software para cualquier aplicación y dispositivo

electrónico, por lo que consta de varios elementos. Como una importante

característica de uso es la creación de operaciones y tareas específicas que se

realizan tras una orden externa; las órdenes pueden ser dadas por una

aplicación que controles el sistema o por un usuario el cual se dedique al trabajo

mediante este lenguaje y su ejecución.

Un uso no tan común pero sí que cumple con las funciones necesarias es la

creación de lenguajes, que se pueden adaptar a cualquier lenguaje de

programación sin importar es CISCO, ORACLE, MICROSOFT, etc., pues

se debe de adecuar con los elementos que se dirigen a los objetos.

Page 10: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

9

Figura 3. (2015).Ejercicio de diagrama UML. Tienda en Internet. Recuperado

de: https://juansantiagoblog.wordpress.com/2015/04/28/ejercicio-de-diagrama-uml-tienda-en-

internet/

Page 11: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

10

Conclusión

Los lenguajes que son unificados deben mantener un estándar en cuanto al uso

de palabras reservadas y a la información que compone las aplicaciones que se

desarrollan mediante esta característica. Cada lenguaje tiene características

imperantes que se aprovechan en las plataformas en que se ejecutan, por lo

tanto conocer el potencial de cada uno de estos determina si existe la posibilidad

de extender las funciones de un código, se puede lograr con la unificación de

funciones y la aplicación de medios compatibles con otros códigos y versiones

del sistema en que se utilizarán.

Page 12: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

11

Para aprender más

Uso de esquemas UML.

• Sánchez, S. (2014). Desarrollo de un sistema web para la consulta de

información de una base de datos espacial de variables oceanográficas.

(Tesis de ingeniería inédita) Facultad de Ingeniería. Universidad Nacional

Autónoma de México. Sitio Web:

http://www.ptolomeo.unam.mx:8080/xmlui/bitstream/handle/132.248.52.10

0/4954/Tesis%20SNSP.pdf?sequence=1

Herramientas UML.

• Medina, M. (2005). Metodología y herramientas UML para el modelado y

análisis de sistemas de tiempo real orientados a objetos. (Tesis doctoral)

Departamento de Electrónica y Computadores. Universidad de Cantabria.

Sitio Web:

http://www.tdx.cat/bitstream/handle/10803/10633/JMPtesis.pdf?sequence

=1

Page 13: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

12

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 crear las clases de los módulos que

tendrá en sistema para la biblioteca escolar, recuerda hacer uso de las

herramientas UML para que te sea más fácil plasmar las funciones.

Deberás guardarlo en formato JPG, para subirlo a la plataforma de la asignatura.

Es muy importante que tengas claros los conceptos de esta sesión, ya que más

adelante harás uso de ellos de manera práctica.

Para esta actividad se tomará en cuenta lo siguiente:

Título

Datos personales

Ortografía y redacción

La actividad completa con la herramienta UML

Bibliografía

Page 14: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

13

Bibliografía

• Calpena, V. (2013). Clases y Objetos. Sitio web:

http://vcalpena.wordpress.com/clases-y-objetos/

• Espinoza, H. (2011) Programación orientada a objetos. Sitio

web: http://programacionorientadaaobjetos.wordpress.com/tag/encapsulac

ion/

• mdjesus, (2010) ¿Qué es el proceso unificado? Sitio

Web: http://mdjesus.wordpress.com/2010/05/19/84/

• Moros, B. (2009) Clase y objetos en Java. Departamento de Informática y

Sistemas. Sitio Web: http://dis.um.es/~bmoros/privado/apuntes/Curso09-

10/POO2-Java-0910.pdf

• 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

Page 15: INGENIERÍA DEL SOFTWARE - Mi Materia en Líneamoodle2.unid.edu.mx/dts_cursos_mdl/pos/TI/IS/S07/IS07_Lectura.pdf · ... al le muestra el plano basado en la electricista engería ...

INGENIERÍA DEL SOFTWARE

14