A disciplina de Análise de Sistemas, no âmbito da Tecnologia da Informação, preceitua um conjunto de técnicas e notações para a elucidação e especificação de requisitos de software. Entre as notações, a UML (Unified Modeling Language) destaca-se por sua abrangência. No que concerne à especificação de requisitos funcionais e não funcionais por meio de casos de uso, é imperativo que o analista de sistemas compreenda as nuances dos relacionamentos 'include' e 'extend'. Com base no exposto, e considerando as melhores práticas de modelagem, assinale a opção que, em conformidade com o padrão da UML, apresenta a correta interpretação e aplicação desses relacionamentos.
- A)O relacionamento 'extend' é mandatório e indica que um caso de uso base sempre será estendido por outro, representando um comportamento obrigatório que é inserido no fluxo principal. É utilizado para simplificar fluxos complexos, tornando-os mais coesos.
- B)O relacionamento 'include' denota um comportamento opcional, que pode ou não ocorrer durante a execução do caso de uso base. A execução do caso de uso incluído depende de uma condição específica verificada no fluxo do caso de uso base.
- C)A relação 'extend' permite que um caso de uso adicione, de forma opcional e sob certas condições, novos comportamentos a um caso de uso base. O caso de uso base, por si só, é completo e não depende do caso de uso de extensão para ser executado.gabarito
- D)Utiliza-se o 'include' quando se deseja modelar um comportamento que é uma especialização de outro caso de uso mais genérico, similar ao conceito de herança em programação orientada a objetos. O ator do caso de uso especializado herda as características do ator do caso de uso geral.
- E)Os relacionamentos 'include' e 'extend' são semanticamente idênticos, podendo ser utilizados de forma intercambiável para indicar a decomposição de uma funcionalidade complexa em partes menores, com o objetivo único de melhorar a legibilidade do diagrama.