Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
UML - Unified Modeling LanguageCasos de Uso
Marcio E. F. Maia
Disciplina: Engenharia de SoftwareProfessora: Rossana M. C. Andrade
Curso: Ciências da ComputaçãoUniversidade Federal do Ceará
24 de abril de 2008
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Agenda
1 IntroduçãoConceitos básicos
2 UMLCaracterísticas Gerais da UML
3 Diagramas da UMLDiagramas EstruturaisDiagramas ComportamentaisFerramentas
4 Diagrama de Casos de UsoDefinições
5 ExemploExercício 1
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Agenda
1 IntroduçãoConceitos básicos
2 UMLCaracterísticas Gerais da UML
3 Diagramas da UMLDiagramas EstruturaisDiagramas ComportamentaisFerramentas
4 Diagrama de Casos de UsoDefinições
5 ExemploExercício 1
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Conceitos básicos
Por que modelar Software?
Melhorar a comunicação entre desenvolvedores,arquitetos e clientesDiminuir inconsistências no projetoDiminuir o tempo total de desenvolvimentoAumentar legibilidadeMelhorar documentação e facilitar manutenção...
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Conceitos básicos
Levantamento e análise de requisitos
Compreender as reais necessidades dos usuários
Entrevistas
Análise dos requisitos
Garantir que as necessidades foram bem compreendidasAuxílio de uma linguagem de modelagemQuanto mais cedo uma inconsistência for identificada,menor o custo para corrigi-la
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Conceitos básicos
Prazos e custos
Qual o real prazo de entregaQuantos profissionais deverão trabalhar?Qual o custo?Qual a complexidade?
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Conceitos básicos
Prazos e custos
Qual o real prazo de entregaQuantos profissionais deverão trabalhar?Qual o custo?Qual a complexidade?
Uma boa modelagem pode auxilar a responder essasperguntas
Tempo: difícil precisar tempo total de desenvolvimentoCusto: diretamente relacionado ao escopo e ao tempoprevisto de desenvolvimento
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Conceitos básicos
Manutenção
Autores afirmam que representa entre 40% e 60% do custototal de desenvolvimento de um software
Modelagem diminui erros de especificação e compreensãodos requisitos
Facilita a evolução do softwareDinamicidade do ambiente
Direção da empresaLeis ou alíquotas
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Conceitos básicos
Manutenção
Autores afirmam que representa entre 40% e 60% do custototal de desenvolvimento de um software
Modelagem diminui erros de especificação e compreensãodos requisitos
Facilita a evolução do softwareDinamicidade do ambiente
Direção da empresaLeis ou alíquotas
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Conceitos básicos
Reuso
Novos projetos podem se beneficiar do conhecimento geradopela empresa em projetos anteriores
Modelagem facilita a difusão do conhecimento gerado nosprojetosMelhora as estimativas em novos projetosDiminui o custo e o prazo de desenvolvimento através dareutilização de rotinas, funções, algoritmos, documentos,casos de testes, ...
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Agenda
1 IntroduçãoConceitos básicos
2 UMLCaracterísticas Gerais da UML
3 Diagramas da UMLDiagramas EstruturaisDiagramas ComportamentaisFerramentas
4 Diagrama de Casos de UsoDefinições
5 ExemploExercício 1
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Características Gerais da UML
UML - Unified Modeling Language
Linguagem visual utilizada para modelar sistemascomputacionais
Definir características do softwareRequisitosComportamentoEstrutura lógicaDinâmica dos processosArquitetura
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Características Gerais da UML
UML - Unified Modeling Language
Linguagem visual utilizada para modelar sistemascomputacionais
Definir características do softwareRequisitosComportamentoEstrutura lógicaDinâmica dos processosArquitetura
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Características Gerais da UML
UML - Unified Modeling Language
Linguagem visual utilizada para modelar sistemascomputacionais
Definir características do softwareRequisitosComportamentoEstrutura lógicaDinâmica dos processosArquitetura
Definição
Linguagem visual para especificar, visualizar, construir edocumentar os artefatos gerados durante o processo dedesenvolvimento de um sistema de software
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Características Gerais da UML
Histórico UML
Primeira versão criada em 1996 a partir da união de trêsmetodologias
BoochOMT - Object Modeling TechniqueOOSE Object-Oriented Software Engineering
Contou com o amplo apoio da Rational Software
Adotada em 1997 pela OMG (Object Management Group)como a linguagem padrão de modelagem
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Características Gerais da UML
Histórico UML
Primeira versão criada em 1996 a partir da união de trêsmetodologias
BoochOMT - Object Modeling TechniqueOOSE Object-Oriented Software Engineering
Contou com o amplo apoio da Rational Software
Adotada em 1997 pela OMG (Object Management Group)como a linguagem padrão de modelagem
Recentemente lançada a versão 2.0Melhoramento e criação de novos diagramas
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Características Gerais da UML
Para que servem os diagramas?
Cada diagrama apresenta uma visão diferente do sistema.Cada diagrama é útil em um determinado estágio dedesenvolvimento do sistema.
Alguns enfocam uma visão mais geral como os Diagramasde Caso de UsoEnfoques mais específicos como os Diagramas deSeqüencia
Outros níveis de detalhes apresentados pelos diagramas
Organização estrutural do sistemaComportamento de um processo específicoNecessidades físicas do sistema
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Agenda
1 IntroduçãoConceitos básicos
2 UMLCaracterísticas Gerais da UML
3 Diagramas da UMLDiagramas EstruturaisDiagramas ComportamentaisFerramentas
4 Diagrama de Casos de UsoDefinições
5 ExemploExercício 1
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Estruturais e Comportamentais
Diagramas Estruturais
Diagrama de ClassesDiagrama de ObjetosDiagrama deComponentesDiagrama deImplantaçãoDiagrama de Pacotes
DiagramasComportamentais
Diagrama de Casos deUsoDiagrama de SeqüenciaDiagrama deColaboraçãoDiagrama de Gráfico deEstadosDiagrama de Atividades
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Estruturais
Diagrama de Classes
Diagrama mais utilizado e importante da UMLDefine a estrutura das classes do sistemaDetermina atributos e métodos de cada classe, além demostrar como as classes se relacionam
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Estruturais
Diagrama de Classes
Diagrama mais utilizado e importante da UMLDefine a estrutura das classes do sistemaDetermina atributos e métodos de cada classe, além demostrar como as classes se relacionam
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Estruturais
Diagrama de Implantação
Necessidades de hardwareCaracterísticas físicas como servidores, estações,topologiasApresentar características de alto nível relevantesIdentificar os elementos arquiteturais relevantes
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Estruturais
Diagrama de Implantação
Necessidades de hardwareCaracterísticas físicas como servidores, estações,topologiasApresentar características de alto nível relevantesIdentificar os elementos arquiteturais relevantes
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Comportamentais
Diagrama de Caso de Uso
Diagrama mais geral e informalLevantamento e análise de requisitosConsultado durante todo o processo de modelagem
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Comportamentais
Diagrama de Caso de Uso
Diagrama mais geral e informalLevantamento e análise de requisitosConsultado durante todo o processo de modelagem
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Comportamentais
Diagrama de Seqüencia
Ordem temporal em que as mensagens são trocadasentre os objetosIdentifica o evento gerador do processo, o atorresponsável e como o processo irá se desenrolar
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Diagramas Comportamentais
Diagrama de Seqüencia
Ordem temporal em que as mensagens são trocadasentre os objetosIdentifica o evento gerador do processo, o atorresponsável e como o processo irá se desenrolar
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Ferramentas
Ferramentas CASE - Computer-Aided SoftwareEngineering
Ferramentas que de alguma forma colaboram para a execuçãode uma ou mais atividades realizadas durante o processo deEngenharia de Software.
1 Rational Rose
Mais conhecida e utilizadawww.rational.com
2 Umbrello, JUDE, Visual Paradigm for UML, Poseidon forUML
Ferramentas livres
3 Enterprise Architect
Bastante completawww.sparxsystems.com.au
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Agenda
1 IntroduçãoConceitos básicos
2 UMLCaracterísticas Gerais da UML
3 Diagramas da UMLDiagramas EstruturaisDiagramas ComportamentaisFerramentas
4 Diagrama de Casos de UsoDefinições
5 ExemploExercício 1
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Diagrama de Casos de Uso
Definição
Os diagramas de caso de uso capturam o comportamento dosistema, de uma forma geral e informal, durante a fase delevantamento e análise de requisitos.
Representam os requisitos funcionais do sistema
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Diagrama de Casos de Uso
Definição
Os diagramas de caso de uso capturam o comportamento dosistema, de uma forma geral e informal, durante a fase delevantamento e análise de requisitos.
Representam os requisitos funcionais do sistema
Apresenta uma visão geral externa das funções e serviçosNão se preocupa como serão implementadasIdentifica os usuários, os seus papéis e as funções queserão requisitadas por cada usuário específico
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Utilidade
Servir como base para toda a modelagem do sistemaIlustrar o comportamento do sistemaFacilitar compreensãoAuxiliar na identificação de mal-entendidos
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Atores
Papéis desempenhados por todos que de alguma formautilizarão ou irão interagir com os serviços e funções dosistema
Não são parte do sistemaUsuáriosHardware especialSoftware externo
É qualquer elemento externo que interaja com o sistema
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Atores
Papéis desempenhados por todos que de alguma formautilizarão ou irão interagir com os serviços e funções dosistema
Não são parte do sistemaUsuáriosHardware especialSoftware externo
É qualquer elemento externo que interaja com o sistema
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Casos de Uso
Serviços, tarefas ou funções que podem ser utilizadospelos atoresExpressar e documentar os comportamentos pretendidosRepresentado por uma elipse e uma descrição sucinta erepresentativa
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Casos de Uso
Serviços, tarefas ou funções que podem ser utilizadospelos atoresExpressar e documentar os comportamentos pretendidosRepresentado por uma elipse e uma descrição sucinta erepresentativa
Documentação fornecelinhas gerais sobre seufuncionamentoEvento gerador, atoresou restriçõesFormalismo fica àcritério do engenheirode software
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Relacionamentos entre Casos de Uso
Especialização
Dois ou mais casos de uso com característicassemelhantesHerança
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Relacionamentos entre Casos de Uso
Especialização
Dois ou mais casos de uso com característicassemelhantesHerança
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Relacionamentos entre Casos de Uso - Cont.
Inclusão
Serviço, situação ou rotina comum a mais de um Caso deUsoEvitar reescrita de trechos semelhantesRelação de obrigatoriedade (comparado a uma sub-rotina)
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Relacionamentos entre Casos de Uso - Cont.
Inclusão
Serviço, situação ou rotina comum a mais de um Caso deUsoEvitar reescrita de trechos semelhantesRelação de obrigatoriedade (comparado a uma sub-rotina)
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Relacionamentos entre Casos de Uso - Cont.
Extensão
Descrever cenários opcionaisSituações específicas onde determinadas condições sãosatisfeitas
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Relacionamentos entre Casos de Uso - Cont.
Extensão
Descrever cenários opcionaisSituações específicas onde determinadas condições sãosatisfeitas
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Documentação de Casos de Uso
Descrever por meio de uma linguagem simples, e em linhasgerais, a função do Caso de Uso
Não existe um formato padrãoFlexívelIdeal é que seja simples, de tal forma que qualquer pessoapossa entendê-la
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Definições
Documentação de Casos de Uso - Cont.
É aconselhável que cada documentação contenha osseguintes campos:
Pré-Condições: o sistema admite que tais condições sãoverdadeirasEx. Para utilizar uma determinada função o usuário deveestar logado e autenticadoPós-Condições: descreve o que mudou com a execuçãodo caso de usoEx. Um usuário foi adicionado no sistemaFluxo Principal: descreve a seqüencia normal de eventosRepresenta as ações dos atores e a resposta do sistemapara tais açõesFluxo Alternativo: qualquer seqüencia de eventosdiferente do fluxo principal.
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Agenda
1 IntroduçãoConceitos básicos
2 UMLCaracterísticas Gerais da UML
3 Diagramas da UMLDiagramas EstruturaisDiagramas ComportamentaisFerramentas
4 Diagrama de Casos de UsoDefinições
5 ExemploExercício 1
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Exercício 1
Especificação do problema
No início de cada semestre os alunos devem requisitar um catálogode cursos contendo os cursos oferecidos no semestre. Este catálogodeve conter informações a respeito de cada curso tais como:professor, departamento e pré-requisitos. Desse modo, os alunospodem tomar suas decisões mais apropriadamente. O novo sistemapermitirá que os alunos selecionem quatro cursos oferecidos para opróximo semestre. Além disso, o aluno indicará dois cursosalternativos, caso o aluno não possa ser matriculado na primeiraopção. Cada curso terá o máximo de 10 e o mínimo de 3 alunos. Umcurso com o número de alunos inferior a 3 será cancelado. Paracada matrícula feita por um aluno, o sistema envia informação aosistema de cobrança para que cada aluno possa ser cobrado duranteo semestre. Os Professores devem acessar o sistema on- line,indicando quais cursos irão lecionar. Eles também podem acessar osistema para saber quais alunos estão matriculados em cada curso.Em cada semestre, há um prazo para alteração de matrícula. Osalunos devem poder acessar o sistema durante esse período paraadicionar ou cancelar cursos.
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Exercício 1
Diagrama de Casos de Uso
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo
Exercício 1
Diagrama de Casos de Uso