Disciplina: Análise e Projeto de Sistemas Profª Andrea e Prof. Vilson Diagrama de Casos de Uso O Diagrama de Casos de Uso procura por meio de uma linguagem simples, possibilitar a compreensão do comportamento externo do sistema (em termos de funcionalidades oferecidas por ele), segundo a perspectiva do usuário. É um dos mais flexíveis diagramas da UML (Unified Modeling Language); costuma ser utilizado no início da modelagem do sistema, principalmente nas etapas de levantamento e análise de requisitos, servindo de base para modelagem de outros diagramas. Esse diagrama documenta o quê o sistema faz do ponto de vista do usuário. Em outras palavras, ele descreve as principais funcionalidades do sistema e a interação dessas funcionalidades com os usuários do sistema. Nesse diagrama não se deve informar detalhes técnicos que dizem como o sistema faz. Diagramas de Casos de Uso são compostos basicamente por quatro componentes: Atores Cenário: sequência de eventos que acontecem quando um usuário interage com o sistema. Ator: usuário do sistema, ou melhor, um tipo de usuário. Caso de Uso (use case): descrições narrativas de uso de um sistema para satisfazer aos objetivos do usuário. Comunicação: é o que liga um ator a um caso de uso. O Diagrama de Casos de Uso concentra-se em dois itens principais: atores e casos de uso. Os atores representam os papéis desempenhados pelos diversos usuários que poderão utilizar de alguma maneira os serviços e funções do sistema. Podendo eventualmente um ator representar algum hardware, sistema externo desde que esses interajam com o sistema. Identificando atores: para identificar os atores, o analista de sistemas deve tentar identificar quais as fontes de informação a serem processadas e quais são os destinos das informações geradas pelo sistema. Na identificação de atores, há umas perguntas úteis para as quais deve-se procurar respostas: Que órgão, empresa ou pessoas utilizarão o sistema? Que outros sistemas irão se comunicar com o sistema a ser construído?
Alguém deve ser informado de alguma ocorrência no sistema? Quem está interessado em certo requisito funcional do sistema? A, seguir, são apresentados alguns exemplos de atores: Caso de Uso Um caso de uso é representado por uma elipse e um rótulo com o nome do caso de uso. Um caso de uso representa uma possível utilização do sistema por um ator, que pode ser uma pessoa, dispositivo físico, mecanismo ou subsistema que interage com o sistema alvo, utilizando algum de seus serviços. Um caso de uso narra a interação entre o sistema e os atores envolvidos, para atingir um ou mais objetivos. Geralmente, esse objetivo representa uma das funcionalidades do sistema. Um caso de uso deve estar relacionado a um processo bem definido, com começo, meio e fim. Exemplos: Emprestar Livro; Vender Produtos; Abrir ordem de serviço. Para alguns atores, os casos de uso são as funcionalidades centrais que implementarão os requisitos funcionais primordiais do sistema. Existem muitos outros requisitos funcionais, mas os casos de uso são os requisitos mais importantes e com maiores riscos para o projeto (YOSHIMA, 2006).
Relacionamentos Ator x Caso de Uso As associações representam interações ou relacionamentos entre os atores e os casos de uso ou os relacionamentos entre os casos de uso. Os relacionamentos entre os casos de uso recebem nomes especiais como inclusão (<<include>>), extensão (<<extend>>) ou generalização. <<include>> É usado quando o caso de uso A inclui o caso de uso B; isso significa que sempre que o caso de uso A for executado o caso de uso B também será executado. A direção do relacionamento é do caso de uso que está incluindo para o caso de uso incluído. Exemplo:.. <<extend>> Quando o caso de uso B estende o caso de uso A, significa que quando o caso de uso A for executado o caso de uso B poderá (poderá, talvez não seja) ser executado também. A direção do relacionamento é do caso de uso extensor (nesse caso, o caso de uso B) para o caso de uso estendido (o caso de uso A). Exemplo: CASO DE USO Efetuar Pagamento <<extend>>
Modelo de Diagrama de Caso de Uso Exercício: Desenvolva o diagrama de casos de uso para um sistema de controle de hotelaria sabendo que: Os quartos podem ser alugados no momento em que o hóspede chega ao hotel (desde que existam vagas) ou serem reservados via internet. Caso o hóspede não faça o check-in no hotel até ao meio-dia do dia reservado, automaticamente, o sistema efetua o cancelamento da reserva; Caso seja a primeira vez que aluga quartos, o hóspede deve ser cadastrado antes de finalizar o aluguel do quarto. No caso de já ter
cadastro no hotel, devem ser checados e atualizados, se necessário, os dados do cadastro; Além do aluguel do quarto, o hotel oferece diversos serviços, como restaurante, lavar e/ou passar roupas, etc. Obviamente, qualquer um desses serviços, se solicitado, será cobrado na fatura final; O hóspede pode também consumir os produtos contidos no frigobar, que também são cobrados pelo hotel. Todos os dias, quando a faxineira faz a limpeza do quarto, a mesma anota em uma comanda o que foi consumido do frigobar e entrega ao atendente para que o mesmo faça a inserção do consumo no sistema; As diárias vencem ao meio-dia. A política do hotel exige que as diárias sejam quitadas quando o hóspede encerra sua estadia no hotel (checkout). Quando o cliente for quitar a fatura, quitará não somente as diárias do(s) quarto(s) que alugou, mas também qualquer serviço que tenha solicitado e os itens consumidos no frigobar. Ao efetuar o pagamento da fatura, o sistema gera a nota fiscal a ser entregue ao hóspede.