Introdução a UML Hélder Antero Amaral Nunes haanunes@gmail.com
Introdução a UML UML (Unified Modeling Language Linguagem de Modelagem Unificada) é uma linguagem-padrão para a elaboração da estrutura de projetos de software. É uma linguagem muito expressiva, abrangendo todas as visões necessárias ao desenvolvimento e implantação de sistemas. Apesar da expressividade, não é difícil compreender e usar a UML
Introdução a UML (2) A UML é só uma linguagem, portanto, é somente uma parte de um método para desenvolvimento de softwares.
Visão Geral da UML A UML é uma linguagem destinada a: Visualizar; Especificar; Construir; Documentar os artefatos de um sistema complexo de software.
A UML é uma Linguagem Uma linguagem de modelagem é uma forma de comunicação cuja vocabulário e regras tem seu foco voltado para a representação conceitual e física de um sistemas. Servindo para elaborar a estrutura de projeto de softwares e permitindo a compreensão de um sistema.
A UML é uma Linguagem (2) O vocabulário e as regras de uma linguagem como a UML indicam como criar e ler modelos bem formados. A UML diz quais modelos devem ser criados para um determinado sistema? A UML diz qual o momento em que você deve criar?
A UML é uma Linguagem (2) O vocabulário e as regras de uma linguagem como a UML indicam como criar e ler modelos bem formados. A UML diz quais modelos devem ser criados para um determinado sistema? NÃO!! A UML diz qual o momento em que você deve criar? NÃO!!
A UML é uma Linguagem (3) Essas atividades cabem ao processo de desenvolvimento de software. Um processo bem definido servirá, também, para decidir quais artefatos serão produzidos, quais atividades e pessoas serão alocados para criá-los e gerenciá-los. Mas isso é uma outra história... uma história para o 4º semestre...
A UML é uma linguagem para Visualização Muitos programadores ler uma solicitação pensar sobre ela e em seguida escrever o seu respectivo código fonte; Porém a leitura de textos NÃO é uma boa forma de realizar a interpretação (pelos grupo de programadores)
A UML é uma linguagem para Visualização (2) Pode ocorrer problemas caso a única linguagem de comunicação seja textual. Tais como: A comunicação entre as pessoas pode ocorrer erros (caso não sejam do mesmo grupo) Existem aspectos de sowftwares que podem não ser de fácil percepção (herança) Se alguém deseja remover parte do código, e não gravou os modelos em algum local esse modelo será perdido caso o desenvolvedor não esteja a disposição.
A UML (também) é uma linguagem para especificação Especificar significa construir modelos precisos, sem ambiguidades e completos. A UML é capaz de representar tudo que possa ser mais bem expresso em termos gráficos, enquanto as linguagens de programação representam o que é mais bem expresso em termos textuais.
A UML (também) é uma linguagem para especificação (2) Graças a esse mapeamento é a geração de código a partir de um modelo em UML para uma linguagem de programação. O inverso também é possível (Engenharia reversa)
A UML (também) é uma linguagem para documentação Uma boa empresa de software deve produzir todos os tipos de artefatos, além do código executável. Alguns desses artefatos são: Requisitos Projeto Planos do projeto Testes Protótipos Versões
A UML (também) é uma linguagem para documentação (2) Cada artefato tem uma importância maior ou menos dependendo do projeto São de grande importância não só para o desenvolvimento mas também para a manutenção do software
Diagramas da UML Um diagrama é a apresentação gráfica de um conjunto de elementos. Diferentes diagramas mostram perspectivas diferentes A UML inclui 13 diagramas
Os diagramas da UML Diagrama de Classe Diagrama de Objetos Diagrama de Componentes Diagrama de Estruturas Compostas Diagrama de Casos de Usos Diagrama de Sequências Diagrama de Comunicações Diagrama de Estados Diagrama de Atividades
Os diagramas da UML (2) Diagrama de Implantação Diagrama de Pacote Diagrama de temporização Diagrama de visão geral da interação
Regras da UML Os blocos da UML não podem ser combinados de forma aleatória A UML possui algumas regras que especificam como formar um modelo Os modelos bem formados são aqueles autoconsistentes semanticamente e em harmonia com todos os modelos a eles relacionados
Regras da UML (2) A UML possui regras semânticas para: Nomes quais nomes podem ser atribuídos Escopo O contexto que determina um significado específico para um nome Visibilidade Como esses nomes podem ser vistos e utilizados pelos outros Integridade como os itens se relacionam entre si Execução Como executar ou simular um modelo dinâmico
Referências BOOCH,Grady; RUMBAUGH, James; JACOBSON, Ivar. UML: guia do usuário. Rio de Janeiro: Elsevier, 2012.
Leitura recomendada Capítulo 2 do livro BOOCH,Grady; RUMBAUGH, James; JACOBSON, Ivar. UML: guia do usuário. Rio de Janeiro: Elsevier, 2012.