49
Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril de 2008

UML - Unified Modeling Language - disciplinas.lia.ufc.br fileIntrodução UML Diagramas da UML Diagrama de Casos de Uso Exemplo UML - Unified Modeling Language Casos de Uso Marcio

Embed Size (px)

Citation preview

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

Introdução UML Diagramas da UML Diagrama de Casos de Uso Exemplo

Exercício 1

[email protected]