Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MODELAMIENTO DE SOFTWARE
INTEGRANTES:
Figueroa Preciado Jahir
Chicaiza Fienco Lizbeth
Santistevan Torres Eduardo
Mendoza Soledispa Wesner
Medina Santos Joyce
Panta Pincay Sully Yuviri
Pino Crespo Edgar Jair
CURSO: SOF-NO-4-10
DOCENTE: Ing. Tania Peralta
ACTIVIDAD 1
Enfoques de Modelado
CICLO I
2022-2023
N° Apellidos y Nombre Participación% 100% Observación
PARTICIPANTES
CAPTURA
Los modelos de caso de uso proporcionan información detallada sobre los comportamientos del
sistema o la aplicación de software que se está desarrollando. Los diagramas de caso de uso
describen las relaciones ente los casos de uso y los actores, y los diagramas de actividad
describen el flujo de los objetos y control en cada comportamiento identificado.
Puede comenzar un proyecto de desarrollo identificando primero sus usuarios, los objetivos que
quiere conseguir o un problema en particular que desea resolver, y descubriendo la funcionalidad
y entorno del sistema que conseguirá dichos objetivos o resolver el problema.
Puede recopilar información sobre, y documentar, los requisitos funcionales, e identificar qué
requisitos están asociados con funciones determinadas, tareas o comportamientos del sistema.
Cuando haya identificado los requisitos, podrá crear un modelo de caso de uso para describir la
funcionalidad en términos de cómo será utilizado el sistema.
Actor. –
Una definición previa, es que un Actor es un rol que
un usuario juega con respecto al sistema. Es
importante destacar el uso de la palabra rol, pues
con esto se especifica que un Actor no necesariamente
representa a una persona en particular, sino
más bien la labor que realiza frente al sistema.
Casos de Uso. –
Es una operación o tarea específica que se
realiza tras una orden de algún agente externo,
sea desde una petición de un actor o bien desde
la invocación desde otro caso de uso.
Pasivo: Cuando el caso de uso es iniciado por el software y no por el actor. La flecha debe
apuntar al actor. Las notificaciones y alarmas que emiten a menudo sistemas de información
son un buen ejemplo de este tipo de relación.
Modelo estructural
El modelado estructural sirve para describir los diferentes tipos y relaciones estáticas existentes
entre los diferentes objetos de un sistema. Al igual que un arquitecto crea los planos de un
edificio antes de su construcción, a la hora de desarrollar software, debemos modelar
correctamente el sistema previamente al desarrollo, pudiendo incorporar el patrón o los patrones
de diseño que nos ayuden a optimizar la solución a un determinado problema. La principal forma
de emplear el modelado estructural es mediante el uso de:
Diagramas de
Secuencia: que
muestran la
secuencia de intercambio de mensajes, datos u operaciones del sistema o de ciertos
componentes en un momento dado.
Generalización:
La generalización es una técnica cotidiana que se usa para gestionar la complejidad. En vez de
aprender las características detalladas de cada entidad que se experimenta, dichas entidades se
colocan en clases más generales (animales, automóviles, casas, etcétera) y se aprenden las
características de dichas clases. Esto permite deducir que diferentes miembros de estas clases
tienen algunas características comunes (por ejemplo, las ardillas y ratas son roedores).
Características
Permite modelar relaciones entre diferentes entidades las cuales pueden ser de manera
asociativas, de herencia y de agregación.
Muestra la estructura de un modelo en particular. Por ejemplo: las entidades que deben
existir, su estructura interna y las relaciones con otras clases, por último, no muestran
información temporal.
Elementos de un
diagrama de clases
Un diagrama de clases se compone por los siguientes elementos:
Clase: Es la unidad básica que contiene toda la información de un objeto, contienen las
características y comportamientos de este.
Operaciones: Son aquellas descripciones del comportamiento, son utilizadas para modelar
los servicios u operaciones asociados con una entidad.
Interfaces: Son aquellas clases que definen un juego de operaciones externas accesibles,
pero sin métodos. Se utilizan para modelar una serie de operaciones que definen un servicio
que puede ser ofrecido por diferentes clases.
Relaciones: Permiten definir las dependencias entre clases, es decir si una clase es necesaria
para la implementación de otra.
Agregación: Se caracteriza por ser una jerarquía dentro de la clase y está representada por un
rombo vacío, de este rombo sale una línea que conecta a todos los componentes relacionados.
Asociación: Es una relación estructural que especifica que los objetos de un elemento están
conectados con los objetos de otro.
Partes del diagrama de clases
Estereotipos: Ayuda a entender este tipo de objeto en el contexto de otras clases de objetos
con roles similares dentro del sistema.
Modelo de comportamiento
Los modelos de comportamiento se utilizan para describir el comportamiento del sistema. Entre
los modelos de comportamiento existentes se distinguen dos de estos:
Estos modelos pueden usarse de forma separada o conjuntamente, dependiendo del tipo de
sistema que se esté desarrollando.
Un modelo de flujo de datos puede ser todo lo que se necesite para representar el
comportamiento de estos sistemas. Por el contrario, los sistemas de tiempo real a menudo están
dirigidos por eventos con un mínimo procesamiento de datos.
Un modelo de máquina de estados es la forma más efectiva de representar su comportamiento.
Otras clases de sistemas pueden estar dirigidas tanto por datos como por eventos. En estos casos
se puede desarrollar ambos tipos de modelos.
Modelo dirigido por datos
Los modelos dirigidos por datos muestran la secuencia de acciones involucradas en el
procesamiento de datos de entrada, y a su vez genera una salida asociada. Son particularmente
útiles durante el análisis de requerimientos, pues sirven para mostrar procesamiento “extremo a
extremo” en un sistema. Esto es muy visible en secuencias de acciones que ocurren desde una
entrada a hasta la salida correspondiente, que es la respuesta del sistema.
El modelado dirigido por un evento muestra estos responder a un sistema de eventos externo e
internos. Se basa en la suposición de que un sistema tiene un número finito de estados y que los
eventos (estímulos) pueden causar una transición de un estado a otro.
Por ejemplo, un sistema que controla una válvula puede moverse de un estado de “válvula
abierta” a un estado de “válvula cerrada”, cuando recibe un comando operador (el estímulo).
Esta visión de un sistema es adecuada particularmente para sistema en tiempo real. El modelado
basado en eventos se introdujo en los métodos de diseño en tiempo real, como los propuestos por
Ward y Mellor (1985) y Harel (1987, 1988).
Diagrama de interacción
Diagrama de secuencia
Otra opción para representar las interacciones es usar un diagrama de secuencia. Un
diagrama de secuencia gira en torno a cinco eventos principales:
Diagrama de estado
Las transiciones se marcan con flechas que fluyen de un estado a otro, mostrando cómo cambian
los estados. A continuación, podrás ver estos dos elementos en acción en un diagrama básico
para la vida estudiantil. Nuestra herramienta de diagramas UML puede ayudarte a diseñar
cualquier diagrama personalizado de máquina de estados.
Aplicaciones de los diagramas de estado
De forma similar a la mayoría de los diagramas UML, los diagramas de estado tienen diferentes
usos. Las aplicaciones principales son las siguientes:
Estado compuesto
Pseudoestado de opción
Un símbolo de diamante que indica una condición dinámica con resultados
potenciales ramificados.
Evento
Una instancia que activa una
transición, etiquetada arriba de la
flecha de transición aplicable. En
este caso, "fin de clases" es el
evento que activa el final del
estado “Siendo instruidos” y el
inicio del estado “Exámenes
finales”.
Punto de salida
El punto en el cual un objeto escapa el estado compuesto o máquina de estados, el
cual se indica por medio de un círculo cruzado con una X. El punto de salida
generalmente se usa si el proceso no está completado, pero tiene que ser escapado
por algún error u otro problema.
Primer estado
Un marcador para el primer estado en el proceso, que se muestra mediante un
círculo oscuro con una flecha de transición.
Protección
Una condición booleana que permite o detiene una transición. Se escribe arriba de la flecha de
transición.
Estado
Un rectángulo de esquinas redondeadas que indica la naturaleza
actual de un objeto.
Subestado
Un estado contenido dentro de la región de un estado compuesto. En el diagrama de máquina de
estados de universidad mostrado a continuación, “Abierto para inscripción” es un subestado en el
estado compuesto más grande de “Inscripción”.
Terminador
Un círculo con un punto en el interior que indica que un proceso está
terminado.
Transición
Una flecha que corre de un estado a otro, que indica un estado cambiante.
Comportamiento transicional
Un comportamiento que resulta cuando un estado pasa por una transición. Se escribe arriba de la
flecha de transición.
Disparador
Un tipo de mensaje que mueve activamente un objeto de estado en estado. Se escribe arriba de la
flecha de transición. En este ejemplo, “Problema con la reservación” es el disparador que
enviaría a la persona a la agencia de viajes del aeropuerto en lugar de al siguiente paso en el
proceso.
Ejemplos de diagrama de estados
Ejemplo de diagrama de estados de disponibilidad en calendario
Este ejemplo de diagrama de máquina de estados muestra el proceso por medio del cual
una persona define una cita en su calendario. En el estado compuesto “Revisar fecha”, el
sistema revisa el calendario en busca de disponibilidad en algunos subestados diferentes.
Si no hay disponibilidad de tiempo en el calendario, el proceso es escapado. Sin embargo,
si el calendario muestra disponibilidad, se agregará la cita al calendario.