Uml 2.0 - UML 2.0, trabalho completo
INSTITUTO FEDERAL DE MATO-GROSSO – IFMT
Campo Verde-MT, 01 de julho de 2010.
DIAGRAMAS ESTRUTURAIS ................................................................. 5
DIAGRAMAS COMPORTAMENTAIS .....................................11
CONCLUSÃO .................................................................................22
REFERÊCIAS BIBLIOGRAFICAS .............................................23
Nos últimos anos, o mercado começou a absorver cada vez mais o desenvolvimento de sistemas de softwares Orientados a Objetos, mas a Orientação a Objetos não é muito nova. Não irei entrar em detalhes de quando ela começou a ser estudada/desenvolvida, nem por quem, já que foge do objetivo desse artigo.
No contexto do desenvolvimento de sistemas de softwares orientados a objetos, podemos compreender a OOA como o processo para diminuir a distância conceitual entre o mundo real (domínio do problema), identificando e definindo um conjunto de objetos que interagem e comportam-se conforme os requisitos do sistema.
Utilizamos a UML (Unified Modeling Languagem) para especificar, visualizar, documentar e construir artefatos de um sistema de software. A UML foi homologada em 1997 pela OMG (Object Management Group).
A UML atual e sua organização:
Atualmente a UML está na sua versão 2.1, ela contempla 13 diagramas, divididos em duas categorias (Diagramas Estruturais e Diagramas Comportamentais) e uma sub-categoria (Diagramas de Interação). A sub-categoria pertence está localizada em Diagramas Comportamentais.
Diagrama de Máquina de Estado
Sub-Categoria: Diagramas de Interação:
Diagrama de Colaboração / Comunicação
Os diagramas estruturais da UML são utilizados para que se possa visualizar,especificar, construir e documentar os aspectos estáticos de um sistema. Aspectos estáticos de um sistema podem ser considerados como sendo uma representação de seu esqueleto e estrutura relativamente estáveis (inalteráveis).
O diagrama de classes apresenta elementos conectados por relacionamentos. Este diagrama representa o modelo da estrutura de um sistema orientado a objetos, demonstrando as classes, os tipos e os relacionamentos. É usado para exibir entidades do mundo real, além de elementos de análise e projeto.
É uma modelagem muito útil para o sistema, define todas as classes que o sistema
necessita possuir e é a base para a construção dos diagramas de comunicação, seqüência e estados. É uma representação da estrutura e relações das classes que servem de modelo para objetos.
O diagrama de objetos apresenta objetos e valores de dados. Este diagrama
representa a modelagem de instâncias das classes de um sistema em determinado ponto e momento de execução. Corresponde a uma instância do diagrama de classes, mostrando o estado de um sistema em um determinado ponto do tempo.
O diagrama de objetos é uma variação do diagrama de classes e utiliza quase a
mesma notação, com duas exceções: os objetos são escritos com seus nomes sublinhados e todas as instâncias num relacionamento são mostradas. É como se fosse o perfil do sistema em um certo momento de sua execução, mostrando os objetos que foram instanciados das classes.
Os diagramas de objetos não são tão importantes como os diagramas de classes, mas
eles são muito úteis para exemplificar diagramas complexos de classes ajudando muito em sua compreensão.
Diagramas de objetos também são usados como parte dos diagramas de colaboração,
onde a colaboração dinâmica entre os objetos do sistema são mostrados.
O diagrama de estrutura composta é usado para mostrar colaborações entre um
conjunto de entidades que cooperam entre si para executar uma determinada função. A
estrutura, neste caso, representa uma composição de elementos que estão interconectados (conectados entre si) para se atingir um objetivo comum.
Definido a partir da UML 2.0 destina-se à descrição dos relacionamentos entre os
elementos. É utilizado para descrever a colaboração interna de classes, interfaces ou
componentes para especificar uma funcionalidade e muito útil para representar uma
estrutura formada por um conjunto de estruturas complexas ou em projetos baseados em componentes.
Embora este diagrama seja semelhante ao diagrama de classes, ele expressa
arquiteturas de tempo de execução, padrões de uso e os relacionamentos dos elementos participantes, enquanto que o diagrama de classes representa uma visão estática da estrutura de classes.
O diagrama de componentes representa os componentes que farão parte dos sistemas
em construção, demonstrando as dependências entre esses componentes, ou seja, mostra as dependências entre componentes de software, apresentando suas interfaces. Ilustra como as classes deverão ser organizadas através da noção de componentes de trabalho. Por exemplo, pode-se explicitar (tornar claro), para cada componente, qual das classes que ele representa.