revisão 2º bimestre engenharia de software i leonardo brussolo de paula email:...
TRANSCRIPT
![Page 1: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/1.jpg)
Revisão 2º BimestreEngenharia de Software I
Leonardo Brussolo de Paula
Email: [email protected]
MSN: [email protected]
![Page 2: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/2.jpg)
Histórico – Técnicas de modelagem OO
Ano Autor (Técnica)
1990 Shaler & Mellor
1991 Coad & Yourdon (OOAD – Object-oriented Analysis and Design)
1993 Grady Booch (Booch Method)
1993 Ivar Jacobson (OOSE – Object Oriented Software Engineering)
1995 James Rumbaugh et al (OMT – Object Modeling Technique)
1996 Wirfs-Brock (Responsability Driven Design)
1996 Surge a UML como a melhor candidata de notações, diagramas e formas de representação
![Page 3: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/3.jpg)
UML – Linguagem de Modelagem Unificada
• Principais autores do processo: Grady Booch, James Rumbaugh, Ivar Jacobson
• Chamados os 3 amigos
• Aproveitar o melhor das caracterísiticas das notações preexistentes
• Notação da UML é uma união das diversas notações prexistentes com alguns elementos removidos e outros adicionados com o objetivo de torna-la mais expressiva.
![Page 4: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/4.jpg)
UML – Linguagem de Modelagem Unificada
• 1997 – A UML foi aprovada pela OMG (Object Management Group)
• A definição passa por constantes melhorias e conta com diversos colaboradores comerciais(Digital, HP, IBM, Oracle, Microsof, Unysis, etc)
• 2003 – Foi lançada a UML 2.0 – Especificação atual adotada pela OMG
![Page 5: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/5.jpg)
UML – Linguagem de Modelagem Unificada
• UML – é uma linguagem visual para modelar sistemas Orientados a
Objetos– Define elementos gráficos que podem ser utilizados na
modelagem de sistemas– Através dos elementos definidos na linguagem podem-se
construir diagramas para representar diferentes perspectivas de um sistema
– Cada elemento gráfico possui uma • Sintaxe: forma predeterminada de denehar o elemento
• Semântica: O que significa o elemento e com que objetivo deve ser usado
– A sintaxe e a semântica são extensíveis
![Page 6: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/6.jpg)
UML – Linguagem de Modelagem Unificada
• Diagramas:– Os documentos gerados em um processo de
desenvoleimento são chamados de artefatos na UML– Os artefatos compõe as visões do sistema– A UML define 13 diagramas– Esta quantidade de diagramas é justificada pela
necessidade de analisar o sistema por meio de diferentes perspectivas
– Cada diagrama fornece uma perspectiva parcial do sistema.
![Page 7: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/7.jpg)
Diagramas da UML
Diagramas comportamentais
Diagramas estruturais
Diagramas de objetos
Diagramas de classes
Diagramas de pacotes
Diagramas de estrutura
composta
Diagramas deImplementação
Diagramas de Componentes
Diagramas de Implantação
Diagramas de Atividades
Diagramas de Casos de Uso
Diagramas de Transições de estados
Diagramas de Interação
Diagramas de Seqüência
Diagramas de Temporização
Diagramas de Visão geral
Da Interação
Diagramas de Colaboração
UML 2.0
UML 2.0UML 2.0
![Page 8: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/8.jpg)
1º Modelo:
Diagrama de Casos de Uso
![Page 9: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/9.jpg)
Introdução
Modelos de Casos de Uso É uma representação das funcionalidades eternamente
observáveis do sistema e dos elementos externos ao sistema que interagem com eles
É um modelo de análise que representa um refinamento dos requisitos funcionais.
Idealizado por Ivar Jacobson em 1970 e inserida na UML na década de 90.
É o modelo mais popular para a documentação de requisitos funcionais
O MCU representa os possíveis usos de um sistema.
Componentes: Casos de Usos, Atores e Relacionamentos
![Page 10: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/10.jpg)
Notação da UML
![Page 11: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/11.jpg)
Atores
• Os atores representam os papéis desempenhados pelos diversos usuários– Cliente, Caixa do Banco, Gerente, etc.
• Casos de Uso descrevem interações entre o sistema e estes atores
• Atores podem ser– Pessoas que interagem com o sistema
– Um hardware especial que dispara uma interação– Outro software que comunica com o sistema
![Page 12: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/12.jpg)
Casos de Uso
• Definem os serviços, tarefas ou funções do sistema
• Os nomes indicam ação (verbos)– Cadastrar venda - loja– Sacar - banco– Consultar um filme - locadora
![Page 13: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/13.jpg)
Relacionamentos
• Representam as interações ou associações entre– Atores e Casos de Uso– Dois ou mais Casos de Uso– Dois ou mais Atores
• Principais tipos de relacionamentos– Inclusão– Extensão– Generalização
![Page 14: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/14.jpg)
Especialização / Generalização
• Acontece quando dois ou mais casos de uso possuem características semelhantes– Reuso
• O Caso de Uso geral que descreve as características compartilhadas
• As especializações definem características específicas
![Page 15: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/15.jpg)
Inclusão (Include)
• Utilizado quando um caso de uso é usado dentro de outro caso de uso
• Os relacionamentos de inclusão indicam obrigatoriedade
• A execução do primeiro obriga a execução do segundo
![Page 16: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/16.jpg)
Extensão de Caso de Uso
• Geralmente usado em funcionalidades opcionais de um caso de uso
• Exemplo: cenários que somente acontecerão em uma situação específica
• Se uma determinada situação for satisfeita
• Extensão pode necessitar um teste para determinar se o caso de uso será estendido
![Page 17: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/17.jpg)
2º Modelo:
Diagrama de Seqüência
![Page 18: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/18.jpg)
Diagrama de Seqüência
• Preocupa-se com a ordem temporal em que as mensagens são trocadas
• Baseia-se em um Caso de Uso
• Identifica– O evento gerador da funcionalidade
modelada– O ator responsável por este evento
![Page 19: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/19.jpg)
Diagrama de Seqüência
![Page 20: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/20.jpg)
3º Modelo:
Diagrama de Atividade
![Page 21: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/21.jpg)
Diagrama de Atividades
• Descreve as atividades a serem executadas para a conclusão de um processo
• Concentra-se na representação do fluxo de controle de um processo
![Page 22: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/22.jpg)
Diagrama de Atividades
• Tipicamente utilizados para a modelagem dos aspectos dinâmicos de um sistema
• Associado a um Caso de Uso descrev as atividades realizadas pelo Ator e pelo Sistema, tendo como referencial o ponto de vista dos atores que colaboram com o sistema
![Page 23: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/23.jpg)
Desvios e Intercalações
• O comportamento condicional é delineado por– Desvios: Transição de entrada única e várias
transições de saídas guardadas.– Intercalações: Tem várias transições de
entrada e uma única transição de saída.
![Page 24: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/24.jpg)
Separação e Junção
• Separação:– Tem uma transição de entrada e várias
transições de saída.– Quando uma separação é acionadas todas as
suas saídas são executadas em paralelo.
• Junção:– A transição seguinte é efetuada somente
quando todos os estados nas transições de entrada tenham completado suas atividades.
![Page 25: Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email: leonardo.brussolo@gmail.comleonardo.brussolo@gmail.com MSN: lbpaula@hotmail.comlbpaula@hotmail.com](https://reader036.vdocuments.site/reader036/viewer/2022062700/552fc181497959413d8f3187/html5/thumbnails/25.jpg)
Diagrama de Atividades