130 likes | 404 Views
Diagramas de Atividades. Diagramas de Atividades. Os Diagramas de Atividades mostram o fluxo entre atividades (ações não-atômicas) São um caso especial dos Diagramas de Estados, com a maioria das transições resultantes do término das atividades São semelhantes aos antigos fluxogramas
E N D
Diagramas de Atividades • Os Diagramas de Atividades mostram o fluxo entre atividades (ações não-atômicas) • São um caso especial dos Diagramas de Estados, com a maioria das transições resultantes do término das atividades • São semelhantes aos antigos fluxogramas • São muito usados para modelar atividades concorrentes
Transições e condições • Transições sem condições são disparadas assim que as atividades correspondentes terminam • Transições com condições só disparam quando a atividade termina e as condições são satisfeitas
Concorrência, Forks e Joins • Barras de sincronização são usadas para especificar forks e joins • Um fork representa um único fluxo de controle em vários fluxos de controle concorrentes • Um join representa a sincronização de dois ou mais fluxos de controle concorrentes
Concorrência, Forks e Joins • Atividades depois de um fork podem ser realizadas em qualquer ordem, ou ao mesmo tempo • Para que as atividades depois de um join possam ser realizadas, todas as atividades antes do join devem ser concluídas
Swimlanes (raias) • Swimlanes (raias) são usadas para definir quais são as classes (ou conjuntos de classes) responsáveis pela realização de cada atividade • Swimlanes são especialmente úteis para a modelagem de processos empresariais • Em muitos casos, os swimlanes implicam concorrência, ou pelo menos independência, das atividades.
Modelando Workflow • Estabeleça o foco do workflow. Para sistema não-triviais, é impossível mostrar todos os workflows interessantes em um diagrama, • Selecione os objetos de negócio que têm as responsabilidades de mais alto nível (swimlanes) • Identifique as pré-condições dos estados inicial e final do workflow. • A partir de estado inicial, especifique as atividades e ações que ocorrem com o passar do tempo (estados)
Modelando Workflow • No caso de ações complicadas, ou ações que acontecem múltiplas vezes, colapse-as em estados de atividades, que serão expandidos separadamente. • Transições entre estados de atividades: • 1. Fluxo sequêncial • 2. Branching • 3. Fork e Join • Se existem objetos envolvidos no workflow, inclua-os no diagrama de atividade. Indique as mudanças de valores e estados, se necessário.
Modelando uma Operação • Identifique todas as abstrações que estão envolvidas com a operação (parâmetros e tipos de retorno, classe, etc.). • Identifique as pré-condições no estado inicial da operação e as pós-condições no estado final da operação. • Identifique os invariantes que devem ser mantidos durante a execução da operação.
Modelando uma Operação • Use bifurcações para identificar caminhos condicionais e iteração. • Use fork e join para modelar fluxos paralelos de controle.