Logo Studenta

3-Modelado de sistemas - Parte 1

¡Este material tiene más páginas!

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

Continuar navegando