Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Análisis Funcional de Aplicaciones Web Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelado de sistemas. Modelado de sistemas: ● Es el proceso de desarrollo de modelos abstractos de un sistema. ● Cada modelo presenta una vista o perspectiva diferente de ese sistema. ● Por lo general, el sistema se representa utilizando algún tipo de notación gráfica. ● En este curso utilizaremos el Lenguaje de Modelado Unificado (UML). Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Los modelos se utilizan para: ● para ayudar a derivar los requisitos de un sistema durante el proceso de ingeniería de requisitos; ● para describir el sistema a los ingenieros que implementan el sistema durante el proceso de diseño; ● y para documentar la estructura y operación del sistema después de la implementación. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web ● Un modelo es una abstracción del sistema que se estudia, en lugar de una representación alternativa de ese sistema. ● Idealmente, una representación de un sistema debe mantener toda la información sobre la entidad que se representa. ● Una abstracción simplifica y selecciona deliberadamente las características más sobresalientes. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelado de sistemas Existen distintos modelos para representar el sistema desde diferentes perspectivas. Por ejemplo: ● Una perspectiva externa, donde se modela el contexto o el entorno del sistema. ● Una perspectiva de interacción, donde se modelan las interacciones entre un sistema y su entorno o entre los componentes. ● Una perspectiva estructural, donde se modela la organización de un sistema o la estructura de los datos que procesa. ● Una perspectiva de comportamiento, donde se modela el comportamiento dinámico del sistema y cómo responde a los eventos. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Lenguaje de Modelado Unificado (UML) ● El Lenguaje de Modelado Unificado (UML) es un conjunto de 13 tipos de diagramas diferentes que se pueden usar para modelar sistemas de software. ● El UML es universalmente aceptado como el enfoque estándar para desarrollar modelos de sistemas de software. ● Se han propuesto variantes para modelos de sistemas más generales. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de contexto ● En una etapa temprana de la especificación de un sistema, se debe decidir sobre los límites del sistema. ● Esto implica trabajar con las partes interesadas para decidir qué funcionalidad se debe incluir en el sistema y qué se proporciona en el entorno del sistema. ● En algunos casos, el límite entre un sistema y su entorno es relativamente claro. ● En otros casos, hay más flexibilidad… Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de contexto ● Una vez que se han tomado algunas decisiones sobre los límites del sistema, parte de la actividad de análisis es la definición de ese contexto y las dependencias que un sistema tiene en su entorno. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de contenido. Diagrama de clases. Modelo de contenido Muestra la organización de un sistema en términos de los componentes del sistema y sus relaciones. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases ● Los diagramas de clases se utilizan en el modelado de un sistema orientado a objetos para mostrar las clases en un sistema y las asociaciones entre ellas ● Inicialmente, los objetos representan elementos del mundo real, como un paciente, una receta, un médico, etc. ● A medida que se desarrolla una implementación, se definen objetos de implementación adicionales necesarios para proporcionar la funcionalidad requerida. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases ● Las clases son gráficamente representadas por rectángulos con las siguientes especificaciones: Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Nombre de Clase Atributos Funciones Diagramas de clases. Relaciones. ● Entre las clases vamos a tener que identificar las relaciones. ● Una relación identifica una dependencia. Esta dependencia puede ser entre dos o más clases (más común) o una clase hacía sí misma (menos común, pero existen), este último tipo de dependencia se denomina dependencia reflexiva. ● Las relaciones se representan con una línea que une las clases; esta línea variará dependiendo del tipo de relación. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases. Tipos de Relaciones. ● Un diagrama de clases incluye los siguientes tipos de relaciones: ○ Asociación. ○ Agregación. ○ Composición. ○ Dependencia. ○ Herencia. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases. Tipos de Relaciones. Asociación ● Este tipo de relación es el más común y se utiliza para representar dependencia semántica. Se representa con una simple línea continua que une las clases que están incluidas en la asociación. ● Un ejemplo de asociación podría ser: Una mascota pertenece a una persona. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases. Tipos de Relaciones. Agregación ● Es una representación jerárquica que indica a un objeto y las partes que componen ese objeto. Es decir, representa relaciones en las que un objeto es parte de otro, pero aun así debe tener existencia en sí mismo. ● Se representa con una línea que tiene un rombo en la parte de la clase que es una agregación de la otra clase. ● Un ejemplo de esta relación podría ser: Las mesas están formadas por tablas de madera y tornillos o, dicho de otra manera, los tornillos y las tablas forman parte de una mesa. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases. Tipos de Relaciones. Agregación ● Un ejemplo de esta relación podría ser: Las mesas están formadas por tablas de madera y tornillos o, dicho de otra manera, los tornillos y las tablas forman parte de una mesa. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases. Tipos de Relaciones. Composición ● Representa una relación jerárquica entre un objeto y las partes que lo componen, pero de una forma más fuerte. ● En este caso, los elementos que forman parte no tienen sentido de existencia cuando el primero no existe. Es decir, cuando el elemento que contiene los otros desaparece, deben desaparecer todos ya que no tienen sentido por sí mismos sino que dependen del elemento que componen. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramasde clases. Tipos de Relaciones. Composición ● Se representa con una línea continua con un rombo relleno en la clase que es compuesta. ● Un ejemplo de esta relación sería: Un vuelo de una compañía aérea está compuesto por pasajeros, que es lo mismo que decir que un pasajero está asignado a un vuelo. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases. Tipos de Relaciones. Dependencia ● Se utiliza este tipo de relación para representar que una clase requiere de otra para ofrecer sus funcionalidades. ● Es muy sencilla y se representa con una flecha discontinua que va desde la clase que necesita la utilidad de la otra flecha hasta esta misma. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagramas de clases. Tipos de Relaciones. Herencia ● Este tipo de relaciones permiten que una clase (clase hija o subclase) reciba los atributos y métodos de otra clase (clase padre o superclase). ● ● Estos atributos y métodos recibidos se suman a los que la clase tiene por sí misma. Se utiliza en relaciones «es un». Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de interacción. Diagrama de casos de uso. Modelo de interacción Todos los sistemas implican interacción de algún tipo: ● puede ser la interacción del usuario, ● la interacción entre el sistema y otros sistemas o entre los componentes del mismo. Modelar la interacción del usuario es importante ya que ayuda a identificar los requisitos del usuario. La interacción entre el sistema y el entorno resalta los problemas de comunicación que pueden surgir. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de interacción ● Hay dos enfoques relacionados con el modelado de interacción: ○ Diagrama de casos de uso, que se utiliza principalmente para modelar las interacciones entre un sistema y actores externos (usuarios u otros sistemas). ○ Diagramas de secuencia, que se utilizan para modelar las interacciones entre los componentes del sistema, aunque también se pueden incluir agentes externos. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagrama de casos de uso ● Un caso de uso se puede describir como un escenario simple que describe lo que un usuario espera de un sistema. ● Un caso de uso se grafica como una elipse con los actores involucrados representados con figuras de palo (monigote) y el nombre del actor al pie de la figura. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Diagrama de casos de uso ● La notación de figura de palo se desarrolló inicialmente para cubrir la interacción humana, pero también se usa para representar otros sistemas y hardware externos. ● En los diagramas de casos de uso se deben usar líneas sin flechas, ya que las flechas en el UML indican la dirección del flujo de mensajes. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de casos de uso ● Los diagramas de casos de uso ofrecen una visión general bastante simple de una interacción, por lo que se debe proporcionar más detalles para comprender lo que está ocurriendo. ● Este detalle se puede incorporar mediante una descripción textual simple, una descripción estructurada en una tabla. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de casos de uso ● Un caso de uso describe una funcionalidad más una interacción entre un actor y un sistema en forma de secuencia de acciones. ● La descripción se centra en lo que debe hacerse, no en la manera de hacerlo. ● Deben evitarse expresiones imprecisas. Se busca sencillez y claridad. ● Puede utilizarse un lenguaje estructurado para representar secuencia, repeticiones y situaciones opcionales. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Especificación de casos de uso Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de casos de uso. Relaciones. Generalización ● Es una relación de generalización donde un caso de uso extiende otro caso de uso pudiendo añadir acciones a un caso de uso general. ● Indica que un caso de uso es una variante de otro. El caso de uso especializado puede variar cualquier aspecto del caso de uso base. ● Cuando un caso de uso extiende otro, significa que el primero puede incluir parte del comportamiento del caso de uso que él extiende. ● No tiene porque incluir el comportamiento completo; pudiendo elegir que partes del comportamiento del caso más general se quieren reutilizar. ● Es una relación muy flexible. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de casos de uso. Relaciones. Extiende ● Es una relación de dependencia donde un caso de uso extiende otro caso de uso añadiendo acciones a un caso de uso extendido. ● Requiere que el caso de uso extendido tenga previstos unos puntos de extensión. Si hay más de uno, hay que identificar exactamente cual es es punto extendido. ● Un caso de uso extendido puede manejar excepciones, alternativas, etc. convirtiéndose en casos de uso específicos de casos de uso generales en los que no es fácil describir dichas situaciones. ● Es una alternativa a casos de uso complejos con múltiples alternativas, posibilidades de error, etc. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Modelo de casos de uso. Relaciones. Incluye ● Es una relación de dependencia donde un caso de uso utiliza otro caso de uso, indicando que es parte de un caso de uso. ● Cuando un número de casos de uso comparten un comportamiento común, este comportamiento puede ser descrito por un caso de uso que es utilizado por otros casos de uso. ● Cuando un caso de uso incluye otro, el caso de uso completo debe ser usado. Si el caso de uso nunca se utiliza por sí mismo se denomina caso de uso abstracto. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web Bibliografía ● Ian Sommerville. 2010. Software Engineering (9th ed.) Addison-Wesley Publishing Company, USA. ● Grady, Booch. 2006. El lenguaje unificado de modelado (2nd ed.) Pearson Educación. Tecnicatura Universitaria en Diseño y Desarrollo de Aplicaciones Multiplataforma Análisis Funcional de Aplicaciones Web ¡Muchas Gracias! 👤: Marina Rodríguez 📨: mlrodriguez209@comunidad.unnoba.edu.ar 👤: Rosana Piergallini 📨: mrpiergallini@comunidad.unnoba.edu.ar 👤: Paula Lencina 📨: pllencina@comunidad.unnoba.edu.ar mailto:mlrodriguez209@comunidad.unnoba.edu.ar mailto:mrpiergallini@comunidad.unnoba.edu.ar mailto:pllencina@comunidad.unnoba.edu.ar
Compartir