Teoría sobre Elaboración de diagramas de comportamento
Sumario
- 1 Obxectivos
- 2 Introducción
- 3 Tipos de diagramas de comportamento: campo de aplicación
- 4 Diagramas de casos de uso: actores, escenario e relación de comunicación
- 5 Diagramas de interacción: tipos (diagramas de secuencia e de comunicación)
- 6 Diagramas de comunicación
- 7 Diagramas de actividades
- 8 Diagramas de estados
- 9 Resumo
- 10 Bibliografía
- 11 Referencias
Obxectivos
Vimos que os diagramas de clases representan o modelo dun sistema, os distintos obxectos que o compoñen, cómo están relacionados uns cos outros, as xerarquías ou taxonomías existentes entre eles e tanto o estado coma o seu comportamento. É unha visión estática do sistema.
Nesta sección:
- Aprederemos a traballar con diagramas de casos de uso, de secuencia, de estados, etc.
- Permitiranos ver vai a interactuar o sistema co usuario, cal é a secuencia de eeecución, cómo se relacionan os obxectos, en qué orden van a executarse os seus métodos, o ciclo de vida dos obxetos, etc.
- isto é a parte dinámica que vai ser necesaria para o programador
Introducción
Tipos de diagramas de comportamento: campo de aplicación
Diagramas de casos de uso: actores, escenario e relación de comunicación
Diagramas de interacción: tipos (diagramas de secuencia e de comunicación)
Diagramas de secuencia
Diagramas de colaboración
Lembra. Os diagramas de secuencia e os diagramas de colaboración son equivalentes; amosan a mesma información pero de xeito distinto Un diagrama de secuencia pode convertirse nun de colaboración e viceversa.
Diagramas de comunicación
Diagramas de actividades
Os diagramas de actividades son unha variante dos diagramas de estados nos que os estados representan a execución de actividades ou accións e as transaccións só se disparan cando se finaliza a execución das actividades ou accións.
Cando se empeza a traballar con este tipo de diagramas non sempre resulta doado diferenciar un estado dunha actividade. Os estados son xeralmente atómicos (non se poden dividir) e pásase dun estado a outro cando se produce algún evento. As actividades, por contra, non son atómicas (poden dividirse noutras actividades ou accións) e xeralmente pásase dunha a outra cando a actividade termina.
Facendo un símil coas persoas, un estado podería ser triste, e non o podemos dividir en estados mais sinxelos, e normalmente só poderemos cambiar de estado - a contento por exemplo - cando suceda algún evento, por exemplo recibir unha boa noticia. Pola contra, un exemplo de actividade podería ser facer a colada, que podemos dividir en actividades ou accións mais sinxelas (seleccionar roupa, metela na lavadora, poñer a lavadora, etc) e, normalmente cambiaremos a outra actividade, facer a comida por exemplo, cando terminemos a primeira.
A diferenza doutros diagramas que soen empregarse para funcións moi concretas, os diagramas de actividades son mais versátiles e poden empregarse para distintas tarefas dentro do proceso de análise e deseño dun proxecto e a distinto nivel de detalle.
Por exemplo para describir:
- un proceso de negocio ou un fluxo de traballo entre os usuarios e o sistema.
- os pasos que se levan a cabo nun caso de uso.
- un método, unha función ou unha operación de software.
En todos estes casos, debuxar un diagrama de actividades pode axudar a mellorar o proceso que se está representado. Se o diagrama de actividade do proceso resulta ser moi complexo, pódense buscar posibilidades para simplificalo.
Elementos
Os diagramas de actividade poden incluír os seguintes elementos:
- Actividade/Acción. Identificase cun paso ou conxunto de pasos na execución do proceso que se estea representando. A diferenza entre actividades e accións é que as primeiras poden ser subdivididas en outras actividades ou accións e as segundas non (considéranse atómicas, e dicir, indivisibles).
- Represéntanse mediante un rectángulo cos bordos redondeados. Dentro poñerase o nome da actividade ou acción aínda que tamén pode aparecer unha expresión que a identifique.
- Algunhas veces as accións represéntanse cunha figura en forma de píldora ou cápsula para diferencialas das actividades.
- Transición ou fluxo. Determina a actividade que vai a continuación doutra. Representase cunha frecha entre unha actividade e outra.
- Bifurcación. Marca a existencia de fluxos alternativos. En cada fluxo de saída indícase unha condición de garda.
- Represéntase cun rombo que ten unha transición de entrada e 2 ou máis de saída.
- As bifurcacións poden fusionarse despois nun único fluxo. Isto pode vir representado de varias formas:
- Divisións e unións. Utilízanse para representar estados que se poden realizar en paralelo. Graficamente represéntanse cunha barra de sincronización que é unha liña ancha horizontal ou vertical.
- Particións. Pódense facer particións nun diagrama de actividades para identificar as accións que teñen algunha característica en común. Por exemplo que se levan a cabo por un mesmo actor:
Recomendacións
- Tendo en conta que os diagramas de actividade soen estar asociados a unha clase, a unha operación ou a un caso de uso, débese seleccionar correctamente a operación que será representada; recoméndase seleccionar operacións importantes que poidan ser custosas, repetitivas e que causen dificultades no proceso.
- É preciso determinar onde empeza e onde remata o ciclo que se quere representar.
- Convén observar varias veces a operación para dividila nos seus elementos e identificalos claramente.
Finalmente, cos datos anteriores e seguindo a secuencia de elementos, constrúese o diagrama.
Exemplos
Extracción de cartos nun caixeiro automático
Venta de gando
Diagramas de estados
Resumo
- Pode especificarse cómo o usuario vai a interactuar co sistema mediante os diagramas de casos de uso.
- O caso de uso é a funcionalidade do sistema.
- Un actor é unha persona ou rol que utiliza o sistema.
- Os casos de uso documéntanse na fase de análise. Esta documentación inclúe os actores, as condicións previas ou precondicións e os fluxos de execución.
- Existen tres tipos de relacións:
- Include ou inclusión. Utilízase cando un caso dentro dun diagrama necesita a funcionalidade doutro.
- Extends ou extensión. Situación na que se ten un caso de uso similar a outro pero que fai algo máis.
- Xeneralización. Identificanse elementos comúns e crease unha xerarquía.
- Os diagramas de secuencia
- permiten engadir unha característica fundamental a análise coma é o tempo.
- extraense do diagrama de clases e do diagrama de casos de uso.
- Existen tres tipos de mensaxes:
- Simples.
- Sincrónicos.
- Asincrónicos.
- É posible representar recursividade nos diagramas de secuencia.
- Os diagramas de colaboración amosan:
- cómo os distintos obxectos dun sistema interaccionan uns cos outros
- qué mensaxes se envían
- cómo interactúan tendo en conta a orde
- Os diagramas de secuencia e diagramas de colaboración son equivalentes
- amosan a mesma información, pero de xeito distinto.
- un diagrama de secuencia puede convertirse en un de colaboración e viceversa.
- Os diagramas de estado permiten representar os distintos estados polos que pasa un obxecto.
- Os iconos de estado igual que as clases adoitanter a seguinte información:
- O nome do estado.
- As variables de estado.
- As actividades
- Existen estados en reposo ou standby do mesmo xeito que subestados.
- Os diagramas de actividades son moi parecidos ós diagramas de fluxo e se crean para coñecer dunha maneira esquemática o que un proceso fai.
- É posible expresar a concurrencia nun diagrama de actividades.
Bibliografía
- Traballo realizado durante unha licenza de formación retribuída pola Consellería de Cultura, Educación e Ordenación Universitaria. María del Carmen Fernández Lameiro, Máximo Fernández López e Andrés del Río Rodríguez. licenza Creative Commons BY-NC-SA
- Entornos de desarrollo. Moreno Pérez, Juan Carlos. Editorial Síntesis. ISBN: 9788491711612
- Pressman, R. S. Ingeniería del Software: Un enfoque práctico. Editorial McGraw-Hill
- Sommerville, I. Ingeniería del software. Editorial Addison Wesley
