UML Modelagem e Programação Orientada a Objetos Curso Superior de Tecnologia em Sistemas para Internet Prof. Cristiano Stüpp Nunes cristiano.nunes@metrocamp.edu.br
Por que modelamos? Simplificar realidade; Enfatizar o que é importante e suprimir o que se considera irrelevante; Nos permite aumentar o nível de abstração: Pode representar uma visão superficial do cenário estudado, ou; Representar detalhes de componentes do sistema. Problemas da Linguagem Informal x Modelagem Formal; Facilitar a resolução de problemas através de modelos.
O que é um modelo? Modelos são abstrações que retratam a essência de um problema; Engenheiros, arquitetos, mecânicos montam modelos antes de criar algo; Por quê o Desenvolvimento de Sistemas de Software deve ser uma exceção? A UML vem para responder a questão.
UML Unified Modelling Language (Linguagem de Modelagem Unificada); Linguagem de modelagem não proprietária de terceira geração; Conjunto de convenções de comunicação que um processo de desenvolvimento pode utilizar; Não é uma metodologia de desenvolvimento; Sozinha não resolve nada. Ela deve ser usada dentro de um processo de desenvolvimento
Antes da UML O Método Booch: Método de análise orientada a objetos que incluia um “microprocesso de desenvolvimento” quanto um “macroprocesso de desenvolvimento”; Define que um sistema deve ser analisado com uma série de visões diferentes, e cada uma delas pode ser escrita por meio de uma série de modelos de diagramas.
Antes da UML O Método Rumbaugh: Técnica de modelagem de objetos conhecida como OMT (Object Modelling Technique); Propôs que as atividades de análise deveriam crias 3 modelos: Objetos: que representa os objetos, classe, hierarquia e relacionamentos; Dinâmico: que representa o comportamento de objetos e do próprio sistema; Funcional: representa o fluxo de informação através do sistema.
Antes da UML O Método de Jacobson: Também chamado de engenharia de software orientada a objetos (OOSE); Enfatizava o uso dos chamados casos de uso, que representam uma descrição do cenário que mostra como o usuário e os demais atores envolvidos interagem com o sistema.
UML e seus criadores 1987: Ivar Jacobson deixa a Ericsson e funda a Objective Systems; 1991: Jacobson vende a maioria das ações para a própria Ericsson e a empresa é renomeada para Objectory AB; 1992: Jacobson desenvolve um processo de software denominado de OOSE (Object Oriented Software Engineering); 1993: Booch começa a estudar uma aproximação com o trabalho de Rumbaugh;
UML e seus criadores 1994: Rumbaugh se junta a Booch na Rational Software e lançam a versão 0.8 de seus métodos unificados; 1995: Ericsson vende a Objectory AB para a Rational Software; Ivar Jacobson se junta a Grady Booch e James Rumbaugh na Rational Software unificando a OOSE com a versão 0.8 e criam a UML 0.9; 1997: A OMG (Object Management Group), organização de padrnização de assuntos ligados à orientação a objetos, adota a UML 1.0.
Objetivos da UML De acordo com Grady Booch, a UML deve atingir quatro objetivos básicos: Ajudar a equipe de projeto a visualizar um sistema como ele é ou como ele pretende ser; Ajudar a especificar a estrutura ou comportamento do sistema; Proporcionar um modelo que sirva de guia para a construção do sistema; Documentar as decisões tomadas pela equipe de desenvolvimento do projeto.
Grady Booch
Elementos básicos da UML A UML disponibiliza de uma série de artefatos que são utilizados para modelar uma sistema; Dentre desses artefatos estão os conhecidos diagramas.
Diagramas da UML Diagramas Estruturais: Diagramas Comportamentais: Diagrama de classes, Diagrama de objetos, Diagrama de componentes, Diagrama de instalação, Diagrama de pacotes, Diagrama de estrutura Diagramas Comportamentais: Diagrama de Caso de Uso, Diagrama de transição de estados, Diagrama de atividade, Diagramas de Interação: Diagrama de seqüência, Diagrama de Interatividade, Diagrama de colaboração ou comunicação, Diagrama de tempo
Diagramas da UML