160 likes | 368 Views
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;
E N D
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 • UnifiedModellingLanguage (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 (ObjectModellingTechnique); • 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 (ObjectOriented 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 GradyBooch 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 GradyBooch, 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.
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: • 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