Olá pessoal, estava aqui estudando sobre diagramas de casos de uso, quando me surgiu uma dúvida.
Minha dúvida é sobre os relacionamentos de Casos de uso, mas especificamente sobre a Dependência entre casos de uso.
Vamos aos exemplos:
Tenho 2 casos de uso, Vender CDS e Calcular Desconto. O relacionamento desses casos de uso é [i]<> /i. Pelo que eu entendi, quando meu caso de uso base (Vender CDs) for “executado”, o caso de uso estendido(Calcular Desconto) poderá ou não entrar no fluxo de execução do caso base (opcional). Até ai tudo bem, mas não faz sentido eu calcular um desconto se não for realizada a venda vocês concordam?
Portanto , há uma dependência forte entre os casos de uso ([color=red] COMPOSIÇÃO[/color]). O caso de uso estendido só existirá se o caso de uso base existir.
Outro exemplo:
Tenho um caso de uso MANTER CLIENTES e outro FAZER LOGIN. O relacionamento deles é <> (Inclusão). Nesse caso, há uma dependência fraca entre os casos de uso, para eu “executar” o Manter Clientes eu preciso estar logado no sistema, mas eu posso logar no sistema e não manter nenhum cliente. ([color=red] AGREGAÇÃO[/color])
No primeiro caso, se fosse usado <>, ao vender um cd, um ator teria OBRIGATORIAMENTE que calcular um desconto. Não acho muito legal, já que o desconto é opcional.
gRoOve: Sim, o <> é mais apropriado nesse primeiro caso.
A questão da agregação e composição são outros conceitos, eu não sei se existe no contexto de casos de uso, por isso fiz um comparativo e queria a opinião da galera pra ver se isso faz sentido ou não.
Se para Manter clientes você precisa estar logado, onde então isso é uma dependẽncia fraca ??? ficou confuso pra mim, perdoe-me se eu entendi errado.
Quanto ao outro caso o extends está correto, avaliando seu Caso de Uso pelo o que eu entendi. O include também se encaixou bem… a idéia está correta, só essa sua afirmação que não sei se compreendi corretamente.
É uma dependência fraca, pois o caso de uso FAZER LOGIN pode ser executado sem que o caso de uso MANTER CLIENTES seja executado.
Já no primeiro caso, é uma dependência forte pois o caso de uso CALCULAR DESCONTO não pode ser executado enquanto o caso de uso VENDER CDS não for executado