UML O que é UML ? Década de 90, muitos métodos disputavam o mercado Os principais métodos eram: . Booch (Grady Booch - Rational) . OMT (Rumbaugh - GE) . OOSE (Jacobson - Objectory) O que é UML ? • • Booch definiu a noção de que um sistema é analisado a partir de um número de visões, onde cada visão é descrita por um número de modelos e diagramas. O Método de Booch trazia uma simbologia complexa de ser desenhada a mão, continha também o processo pelo qual sistemas são analisados por macro e micro visões. O que é UML ? • • OMT: Técnica de Modelagem de Objetos (Object Modelling Technique) É um método desenvolvido pela GE (General Electric) onde James Rumbaugh trabalhava. • • • O método é especialmente voltado para o teste dos modelos, baseado nas especificações da análise de requisitos do sistema. O modelo total do sistema baseado no método OMT é composto pela junção dos modelos de objetos, funcional e use-cases. O que é UML ? OOSE/Objectory: O método OOSE é a visão de Jacobson de um método orientado a objetos Objectory é usado para a construção de sistemas tão diversos quanto eles forem. Ambos os métodos são baseados na utilização de usecases, que definem os requisitos iniciais do sistema, vistos por um ator externo. O método Objectory também foi adaptado para a engenharia de negócios,onde é usado para modelar e melhorar os processos envolvidos no funcionamento de empresas. O que é UML ? Booch, OMT e OOSE Individualmente possuíam pontos fortes, mas com vários pontos em comum Os três autores decidiram unificar seus métodos ( Rational ) BOOCH Método OMT Unificado OOSE Versões 0.8 e 0.9 O que é UML ? Booch, OMT e OOSE Individualmente possuíam pontos fortes, mas com vários pontos em comum Os três autores Versão 1.1 decidiram unificar padronizada pelo OMG seus métodosde 97 em Novembro UML Método Unified Unificado Modeling Language Versão Versão atual 1.02.0 O que é UML ? UML significa "Linguagem de Modelagem Unificada" O processo de padronização foi longo e demorado Vários metodologistas seguiram de perto este trabalho e anunciaram o suporte a esta notação, como Steve Mellor, Bertrand Meyer, Rebeca Wirfs, James Martin, e outros. UML é definitivamente a notação a ser adotada para novos projetos que utilizem o paradigma de Objetos. Outros antigos Metodologistas estão, atualmente, suportando UML em seus métodos. O que é UML ? A UML combina as vantagens de: Conceitos de modelagem de Dados (Diagramas de Entidade Relacionamento) modelagem de Negócios (work flow) modelagem de Objetos modelagem de Componentes O que é UML ? Metodologia : + . LINGUAGEM GRÁFICA UML . MÉTODO UML diz o que pode ser feito mas não diz como deve ser feito Portanto, UML não é uma metodologia. Ela pode fazer/ser parte de uma. Exemplo: RUP O que é UML ? A UML é a padronização da linguagem de desenvolvimento orientado a objetos para visualização, especificação, construção e documentação de sistemas. É independente de processo. Pode ser usada com todos os tipos de processos, em todo o ciclo do desenvolvimento do software. O que é UML ? UML não é uma linguagem de programação É um standard aberto Suporta todo o ciclo de vida do software modelagem do negócio (processos e objetos do negócio) modelagem de requisitos modelagem da solução de software Suporta diversas áreas de aplicação É baseado na experiência e necessidades da comunidade de usuários É suportado por muitas ferramentas O que é UML ? A UML pode ser usada para: Mostrar os limites de um sistema e suas funções principais.(Use-cases) Ilustrar as funções básicas do sistema por diagramas de interação. Representar a estrutura estática de sistemas. (Diagramas de Classes) Modelar o comportamento de Objetos com diagramas de estado. Modelos e Diagramas Um modelo é uma representação em pequena escala, numa perspectiva particular, de um sistema existente ou ser criado Atitude de abstração (omissão de detalhes) fundamental na construção de um modelo Modelos são a linguagem por excelência do projetista (designer) Modelos são veículos para comunicação com vários interessados (stakeholders) Modelos permitem raciocinar acerca do sistema real, sem chegar a construí-lo Modelagem Visual Modelagem Visual permite que você construa da forma correta na primeira vez: Entender os requisitos do usuário Validar que o design atende as necessidades Visualizar interface, lógica de negócio e dados separadamente Separar domínios de negócio conforme apropriado Vizualizar todas as dependências Validar performance antes do código começar Conceitos da UML A UML pode ser usada para modelar visualmente: A interação de sua aplicação com o mundo externo O comportamento de sua aplicação A estrutura de seu sistema Os componentes de seu sistema A arquitetura de sua empresa Modelos e Diagramas Modelagem abrange: aspectos estáticos: tipos de objetos e relacionamentos entre eles. aspectos dinâmicos: evolução dos objetos no tempo e interação entre eles. Modelos e Diagramas Modelagem abrange: aspectos de ambiente. aspectos organizacionais: particionamento de grandes sistemas; representação de decisões de implementação; implantação do sistema (organização em tempo de execução). Estrutura da UML Elementos Básicos do Modelo . Estruturais (classes, interfaces, colaborações, casos de uso, classes ativas, componentes, nós) . Comportamentais (interação, estado) . Agrupamento (pacotes) . Anotacionais (notas) Relacionamentos . dependência, associação, generalização, realização Estrutura da UML Na UML, há nove diagramas standard Diagramas de visão estática: casos de uso (use-case), classes, objetos, componentes, distribuição ou implantação (deployment) Diagramas de visão dinâmica: sequência, colaboração, estados (statechart), atividades Estrutura da UML Use Case Use Case Diagramas Diagramas Diagramas Sequência Scenario Scenario Diagramas Diagramas Diagramas Colaboração Scenario Scenario Diagramas Máquinas Diagramasde Estados Use Case Use Case Diagramas Diagramas Casos de Usos State State Diagramas Diagramas Diagramas Classes Modelos State State Diagramas Diagramas Diagramas Objetos State State Diagramas Diagramas Diagramas Componentes Component Component Diagramas Diagramas Diagramas Diagramas Atividades Distribuição O que é UML ? A UML é a linguagem padrão para visualizar, especificar, construir e documentar artefatos de um sistema de software