Relação entre Caso de uso e Atividade

Pessoal, tenho uma dúvida sobre as 2 ultimas matérias do Rodrigo Yoshima na Mundo Java, se eu tenho um caso de uso e não quero quebra-lo pq não vai ser reusado mas queira colocar uma parte dele no diagrama de atividades, isso seria correto?
Usando o exemplo do Rodrigo, tenho o caso Abrir Atendimento e digamos que nele tenha uma parte que se comunica com uma central e faz algo e só é usado aqui mas é algo importante e gostaria de colocar no diagrama de atividades, poderia ficar Abrir Atendimento -&gt Informar Central -&gt Instalar e Remover?
Agradeço desde já.

Duende, trabalho com casos de uso já a um bom tempo, e acho que tudo depende muito do que é bom ou não pro seu “negócio”.

Eu costuma escrever os meus casos de uso baseado único e exclusivamente nos casos de negócio, mais já vi muita empresa que coloca detalhes de implementação tb, mesmo que inconcientemente.

Quanto ao diagrama de atividades, a relação caso de uso->diagrama de atividades não é extritamente 1 para 1.

Você pode quebrar um caso de uso em vários diagramas de atividades, e o contrário também é válido.

Essa é a grande vantagem da UML, apesar de ter uma linha a ser seguida, ela é customizável.

Então, se você acha que uma parte do seu caso de uso é interessante o suficiente para passar para um diagrama de atividades, manda bala.

Bons livros para entender essas coisas são o “Escrevendo Casos de Usos Eficazes- Alistair Cockburn” e “Utilizando UML e Padrões - Craig Larman”, um autor cita o outro em seu livro, e ambos dão uma boa visão de como utilizar casos de usos e UML em seus projetos.

Duende… o que seria essa “Central”? É um sistema externo?

Ola, valeu pelas respostas, essa comunicação com a central seria so alguns passos do caso de uso, como uma validação ou algo parecido que so é usado aqui mas é um passo importante do processo como um todo.
:wink:

O fluxo do sistema ou do processo onde existe a comunicação com essa central, depende da sua resposta?

Caso seja um processo assíncrono, onde o fluxo do processo não depende do retorno da central, tu pode tratar isso no diagrama de atividade como sendo um processo paralelo usando o simbolo de “fork”. Rodrigo, me corrija se eu estiver errado. :wink:

Eu tenho feito dessa forma quando da ocorrência de processo paralelos que são ativados em meio do fluxo que estou desenvolvendo.

Concordo com o sapulha, um caso de uso pode ter quantos diagramas de atividades forem necessários, devido a abstração existente nesse diagrama.

Certo, então eu posso quebrar o caso de uso em atividades se elas forem importantes pro meu negocio, isso não tinha ficado muito claro pra mim, valeu a todos. Lucashgt, não é em paralelo, seriam somente alguns passos do caso de uso que são importantes no contexto geral.
:smiley:

Duende, acho que as coisas já estão bem claras na sua cabeça de como as coisas vão funcionar na implementação, certo? Quanto mais claras as coisas na sua cabeça, menor é a necessidade de modelagem. Esse é o cerne do meu artigo sobre UML. UML é ferramenta de análise.

O Caso de Uso é importante para mapear requisitos. O Diagrama de Sequências você pode mapear o fluxo de processo ou do que ocorre no caso de uso, mas só para dar uma visão geral… Não vejo muita utilidade em um Diag. de Seq. que seja muito detalhado ao ponto de ter esse fork. Lucas.

Acho que essa central é mais um conceito da infraestrutura de rede do que um conceito de negócios. Talvez seja até melhor demonstrar isso usando um diagrama de implantação (se for interessante para o seu projeto).

Hmmm entendo… porém estava fazendo referencia ao diagrama de atividade, mas tudo bem, ficou claro mesmo assim.

Isso é um detalhe bom da UML, o tempo que tu disponibiliza para análise através dela, já acaba por responder vários questionamentos que nos surgem durante o processo de construção de um software.