Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email:...
Transcript of Revisão 2º Bimestre Engenharia de Software I Leonardo Brussolo de Paula Email:...
Revisão 2º BimestreEngenharia de Software I
Leonardo Brussolo de Paula
Email: [email protected]
MSN: [email protected]
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
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.
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
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
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.
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
1º Modelo:
Diagrama de Casos de Uso
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
Notação da UML
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
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
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
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
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
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
2º Modelo:
Diagrama de Seqüência
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
Diagrama de Seqüência
3º Modelo:
Diagrama de Atividade
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
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
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.
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.
Diagrama de Atividades