Soluções        Serviços          Atendimento       Governo        Consultoria T.I      Treinamento

Software

A Unified Modeling Language (UML) é uma linguagem de modelagem não proprietária de terceira geração. A UML não é uma metodologia de desenvolvimento, o que significa que ela não diz para você o que fazer primeiro e em seguida ou como projetar seu sistema, mas ela lhe auxilia a visualizar seu desenho e a comunicação entre objetos.

Basicamente, a UML permite que desenvolvedores visualizem os produtos de seus trabalhos em diagramas padronizados. Junto com uma notação gráfica, a UML também especifica significados, isto é, semântica. É uma notação independente de processos, embora o RUP (Rational Unified Process) tenha sido especificamente desenvolvido utilizando a UML.

É importante distinguir entre um modelo UML e um diagrama[1] (ou conjunto de diagramas) de UML. O último é uma representação gráfica da informação do primeiro, mas o primeiro pode existir independentemente. O XMI (XML Metadata Interchange) na sua versão corrente disponibiliza troca de modelos mas não de diagramas.

Objetivos da UML


Os objetivos da UML são: especificação, documentação, estruturação para sub-visualização e maior visualização lógica do desenvolvimento completo de um sistema de informação. A UML é um modo de padronizar as formas de modelagem.

O futuro da UML

Embora a UML defina uma linguagem precisa, ela não é uma barreira para futuros aperfeiçoamentos nos conceitos de modelagem. O desenvolvimento da UML foi baseado em técnicas antigas e marcantes da orientação a objetos, mas muitas outras influenciarão a linguagem em suas próximas versões. Muitas técnicas avançadas de modelagem podem ser definidas usando UML como base, podendo ser estendida sem se fazer necessário redefinir a sua estrutura interna.

A UML será a base para muitas ferramentas de desenvolvimento, incluindo modelagem visual, simulações e ambientes de desenvolvimento. Em breve, ferramentas de integração e padrões de implementação baseados em UML estarão disponíveis para qualquer um.

A UML integrou muitas ideias adversas, e esta integração acelera o uso do desenvolvimento de softwares orientados a objetos.

História

A UML tem origem na compilação das "melhores práticas de engenharia" que provaram ter sucesso na modelagem de sistemas grandes e complexos. Sucedeu aos conceitos de Booch, OMT (Rumbaugh) e OOSE (Jacobson) fundindo-os numa única linguagem de modelagem comum e largamente utilizada. A UML pretende ser a linguagem de modelagem padrão para modelar sistemas concorrentes e distribuídos.

A UML ainda não é um padrão da indústria, mas esse objetivo está a tomar forma sob os auspícios do Object Management Group (OMG). O OMG pediu informação acerca de metodologias orientadas a objetos que pudessem criar uma linguagem rigorosa de modelagem de software. Muitos líderes da indústria responderam na esperança de ajudar a criar o padrão.

Os esforços para a criação da UML tiveram início em outubro de 1994, quando Rumbaugh se juntou a Booch na Rational. Com o objetivo de unificar os métodos Booch e OMT, decorrido um ano de trabalho, foi lançado, em outubro de 1995, o esboço da versão 0.8 do Unified Process - Processo Unificado (como era conhecido). Nesta mesma época, Jacobson se associou à Rational e o escopo do projeto da UML foi expandido para incorporar o método OOSE. Nasceu então, em junho de 1996, a versão 0.9 da UML.

Finalmente em 1997, a UML foi aprovada como padrão pelo OMG (Object Management Group), um consórcio internacional de empresas que define e ratifica padrões na área de Orientação a Objetos.
Visão geral da UML

Uml hierarchie des diagrammes.png


Diagramas da UML 2.0

Diagramas estruturais

Diagrama de classes
Diagrama de objectos
Diagrama de componentes
Diagrama de implementaçã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 (todos também são diagramas comportamentais)

Diagrama de sequência
Diagrama de interatividade
Diagrama de colaboração ou comunicação
Diagrama de tempo

Elementos

De estrutura:
Classe
Objetos
Interface
Componente
Colaboração


De comportamento:
Casos de uso
Iteração
Máquina de estados

De agrupamento:
Pacote
Modelo
Subsistema
Framework

De anotação:
Notas

Relacionamentos


Agregação
Associação (bidirecional ou unidirecional)
Composição
Generalização
origem:wikipedia

MAIS INFORMAÇÕES DO SETOR DE SOFTWARE

Análise de requisitos de software

Análise de requerimento de software Origem: Wikipédia, a enciclopédia livre. Na engenharia de [ ... ]


IBM

article thumbnail

International Business Machines (IBM) Slogan Uma Divina Mais Inteligente Ti [ ... ]


Licitação

Licitação é o procedimento administrativo para contratação de serviços ou aquisição de pro [ ... ]


Windows Server 2008 R2

article thumbnail

O Windows Server 2008 R2 é um sistema operacional de servidor, produzido pela Microsoft. Foi libe [ ... ]


Desenvolvimento web

article thumbnail

Desenvolvimento web é o termo utilizado para descrever o desenvolvimento de sítios, na Internet  [ ... ]


Ferramenta CASE

Ferramentas CASE (do inglês Computer-Aided Software Engineering) é uma classificação que abran [ ... ]


Hacker

article thumbnail


Originalmente, e para certos programadores, hackers (singular: hacker) são indivíduos que elabo [ ... ]


CRM - Customer relationship management

Customer Relationship Management (CRM) é uma expressão em inglês que pode ser traduzida para a l [ ... ]


Comércio eletrônico

Comércio eletrônico (português brasileiro) ou comércio electrónico (português europeu) ou e-co [ ... ]


Novas tecnologias de informação e comunicação

Comunicação Novas tecnologias de informação e comunicação Tipos Social • M [ ... ]


Ambiente de desenvolvimento integrado

IDE, do inglês Integrated Development Environment ou Ambiente Integrado de Desenvolvimento, é um p [ ... ]


Linux

article thumbnail


Linux
Tux, a mascote do Linux Modelo: Software Livre Família do SO: bas [ ... ]


Otimização em engenharia de software

A Otimização em engenharia de software é uma recente área de pesquisa que trata da aplicação [ ... ]


Software educativo

article thumbnail

Software educativo é um software cujo principal propósito é o ensino ou o auto-aprendizado.[1]  [ ... ]


Rede de computadores

article thumbnail

A Wikipédia possui o portal:
Portal das tecnologias de informação Uma rede de comp [ ... ]


Google

article thumbnail


Google Google Inc. Logotipo do Google Slogan “Don't be evil” [ [ ... ]


Git - sistema de controle de versão

article thumbnail

Origem: Wikipédia, a enciclopédia livre. Git Desenvolvedor Linus Torvalds, Ju [ ... ]


NetBeans

NetBeans Desenvolvedor Oracle Corporation Plataforma x86 e x64 Lançado em  [ ... ]


Inteligência organizacional

Inteligência Organizacional é a capacidade coletiva disponível em uma organização para identifi [ ... ]


E-mail marketing

E-mail marketing é a utilização do e-mail como ferramenta de marketing direto, respeitando norma [ ... ]


Estrutura de dados

article thumbnail

Uma árvore binária é uma estrutura de dados. Na Ciência da computação, uma estrutura  [ ... ]


Sistemas de CRM

Os sistemas de CRM.. são aplicativos de informação desenvolvidos com o objetivo de auxiliar na ge [ ... ]


Computador

article thumbnail

Um assistente pessoal digital. Um computador pessoal. Columbia, um supercomp [ ... ]


Django (framework web)

Django Desenvolvedor Lawrence Journal-World Lançado em 21 de Julho de 2005  [ ... ]


Miniaturização

Miniaturização é o processo de produção de objetos de consumo cada vez menores (miniaturas), in [ ... ]


C♯

article thumbnail


C♯ Paradigma Orientação a objetos
estruturado
imperativo Surgido em 2001  [ ... ]


Linguagem de programação

Uma linguagem de programação é um método padronizado para expressar instruções para um compu [ ... ]


Programação extrema

Programação extrema (do inglês eXtreme Programming), ou simplesmente XP, é uma metodologia ág [ ... ]


Sharepoint

Plataforma de colaboraçãoO Windows Sharepoint Services (WSS) é uma plataforma de colaboração vo [ ... ]


CMMI

O CMMI (Capability Maturity Model Integration) é um modelo de referência que contém práticas (Ge [ ... ]


Alta tecnologia

Alta tecnologia (em inglês, high tech) refere-se à tecnologia considerada de ponta (em inglês,  [ ... ]


Desktop

Desktop, expressão inglesa oriunda de desktop publisher (editor de textos de mesa). São os computa [ ... ]


Parque Tecnologico Capital Digital (Cidade Digital)

Toda a informação será disponibilizada através do site da secretaria de Ciência e Tecnologia do [ ... ]


Gerenciamento de nível de serviços

Gerenciamento de nível de serviços é uma disciplina de gestão responsável pelo processo gerenci [ ... ]


Teste de software

article thumbnail

O teste do software é a investigação do software a fim de fornecer informações sobre sua qual [ ... ]


Segurança da informação

article thumbnail

A Wikipédia possui o portal:
Portal das tecnologias de informação A segurança da  [ ... ]


Licenças Microsoft

Microsoft Product Activation O Microsoft Product Activation (MPA, em português, traduz. literal.:  [ ... ]


Modelo de entidades e relacionamentos

O modelo de entidades e relacionamentos é um modelo abstrato cuja finalidade é descrever, de man [ ... ]


Lista de softwares Públicos

em 11/11/2011LISTA DE SOFTARES PÚBLICOSSoftware Público Brasileiro InVesalius  (542 [ ... ]


Modelagem de dados

Modelagem de Dados Representa um conjunto de requerimentos de informações de negócio. É uma part [ ... ]


Lotus Notes

article thumbnail

Lotus Tipo Corporação privada Indústria Software Produtos Ver lista com [ ... ]


Antivírus

article thumbnail

Os antivírus são programas de computador concebidos para prevenir, detectar e eliminar vírus de [ ... ]


IBM Rational Unified Process

O RUP, abreviação de Rational Unified Process (ou Processo Unificado Racional), é um processo pro [ ... ]


Gestão do conhecimento

article thumbnail

A definição clássica de conhecimento. A Gestão do Conhecimento, do inglês KM - Knowled [ ... ]


AJAX


AJAX (acrônimo em língua inglesa de Asynchronous Javascript and XML, em português "Javascript  [ ... ]


ArgoUML

ArgoUML é uma aplicação open source que usa UML para modelar o desenho de software de computado [ ... ]


Análise de pontos de função

Análise de Pontos de Função (APF) é uma técnica para a medição de projetos de desenvolvimen [ ... ]


Sistemas dinâmicos

article thumbnail

O atrator de Lorenz é um exemplo de sistema dinâmico não-linear. O estudo deste sistema incen [ ... ]


Processo de desenvolvimento de software

Um processo de desenvolvimento de software é um conjunto de atividades, parcialmente ordenadas, c [ ... ]


Ruby on Rails

article thumbnail

Origem: Wikipédia, a enciclopédia livre. Ruby on Rails

Boas vindas do Rails  [ ... ]


Artigos Relacionados

Pluriverso - Inteligência em Tecnologia

Pluriverso - Inteligência em Tecnologia


Ed.Centro Sul, 2°Andar, SCIA, Qd. 14, Conj. 07, Lt 1, S. Ind.
CEP: 71.250-135, Brasília-DF.  
Como Chegar
| Atendimento  


+55 (61) 4141.5555

Serviços

Desenvolvimento de Software
Oursourcing de T.I
Consultoria em Tecnologia
Licitação com o Governo

Produtos

ERP, CRM, Colaboração
Cloud Computing

Soluções
Soluções em Outsourcing de Tecnologia
Integração de Software
Avaliação de nível tecnológico
Cálculo de custos de T.I
Softwares customizados


Porque escolher a Pluriverso

Blog Corporativo
Blog do Software

Conheça a Pluriverso
quem somos
verticais de atuação
portifólio
casos de sucesso

Atendimento
contatos
sala de imprensa
como chegar
Trabalhe conosco

desenvolvimento de software