Sei sulla pagina 1di 14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Buscar

post favorito

comentrios

Modelagem de sistemas atravs de UML: uma viso geral


Veja neste artigo uma discusso sobre os objetivos buscados pela notao UML, alm dos principais tipos de diagramas que compem a mesma.

13

Curtir

Gostei (9)

(0)

Independente do porte de uma soluo, todo projeto de software caracterizado por um estgio inicial, sendo este momento uma fase de anlise em que se procura estudar
http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913 1/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

de que forma o mesmo ser conduzido. A nfase que dada a este tipo de atividade depende, basicamente, no apenas do tamanho do sistema a ser construdo, como tambm da forma como a equipe envolvida encontra-se estruturada e do conhecimento desta ltima acerca de padres e metodologias prprios da rea de software. As presses do cotidiano (sobretudo prazos muito curtos e a impacincia das reas que requisitaram uma soluo) acabam, por vezes, relegando este trabalho de anlise a um segundo plano. Tudo isto resulta em uma srie de armadilhas, as quais podem culminar em projetos que levaram mais tempo para serem executados ou, mesmo, que estouraram o oramento previsto para a realizao das atividades. Embora representem aspectos extremamente indesejveis, tais problemas so parte do contexto com que se deparam muitos profissionais de Tecnologia da Informao no diaa-dia. Diversos estudos j foram publicados e fornecem numerosas explicaes para o cancelamento de projetos. Essas pesquisas so unnimes em afirmar, atravs da observao de organizaes dos mais variados tipos, que a falta de uma melhor anlise do que realmente necessita ser feito representa um dos principais motivos de tais fracassos. A linguagem UML procura fornecer meios para auxiliar no levantamento dos requisitos que iro constituir um sistema, alm de recursos para a modelagem de estruturas que faro parte do mesmo. O fato da UML ser um padro de grande aceitao no mercado tambm se deve, em grande parte, forte integrao desta com conceitos da Orientao a Objetos (OO). Como muitos sistemas so concebidos a partir da aplicao de prticas e tcnicas de OO, a elaborao de documentos modelando os componentes esperados feita atualmente a partir de diagramas UML. O objetivo deste artigo apresentar um resumo dos diferentes diagramas disponibilizados pela UML, abordando ainda de que forma estes recursos podem ser teis em sistemas baseados em elementos da Orientao a Objetos.

http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913

2/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Figura 1: A linguagem UML

A UML na modelagem de sistemas


UML (sigla em ingls para "Unified Modeling Language") uma linguagem que se presta modelagem de estruturas que iro compor uma aplicao, estando fortemente amparada em conceitos de Orientao a Objetos. Em termos prticos, a UML contempla uma srie de notaes para a construo de diagramas representando diferentes aspectos de um software, alm de no estar presa a metodologias ou tecnologias especficas de desenvolvimento. Sistemas construdos nas mais variadas linguagens e plataformas como C#, VB.NET, Java, Delphi etc. podem se beneficiar das vantagens decorrentes do uso desta linguagem. O advento da UML como um dos principais meios para a documentao de sistemas aconteceu ainda no final dos anos 1990, graas ao trabalho conjunto de trs especialistas da rea de desenvolvimento de software: James Rumbaugh, Grady Booch e Ivar Jacobson. Diversos dos diagramas disponibilizados pela UML so resultado da evoluo de representaes propostas em momentos anteriores por estes especialistas, sendo que os mesmos procuram contemplar diferentes aspectos da
http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913 3/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

construo de aplicaes baseadas em tcnicas da OO. bastante comum que se encontrem literaturas a respeito de design patterns que fazem uso da UML, empregando esta ltima como um meio para a representao esquemtica das ideias que esto sendo discutidas. Alm disso, metodologias de desenvolvimento como RUP (Rational Unified Process) tm nesta linguagem um importante pilar, j que os diversos diagramas existentes acabam por servir como parte da documentao de um projeto. As diversas notaes da UML podem ser utilizadas em vrias situaes: Para esboar estruturas de um sistema em discusses a respeito do mesmo. Isto costuma acontecer de um modo informal, atravs do desenho de um componente ou processo da aplicao considerada, buscando assim um melhor entendimento daquilo que est analisando; Como documentao que servir de base para atividades de codificao das estruturas de um sistema, bem como elaborao de testes das funcionalidades implementadas; Na documentao de estruturas j existentes de um sistema, ou seja, como uma ferramenta de engenharia reversa, a partir da qual sero documentadas funcionalidades e outras estruturas da aplicao em questo. Os diferentes diagramas que compem a UML podem ser agrupados em categorias, levando em conta para isto o contexto em que cada uma dessas representaes pode vir a ser empregada: Diagramas Estruturais: priorizam a descrio esttica de estruturas de um sistema, como classes, atributos e operaes destas ltimas, alm de provveis relacionamentos entre tais construes. A Tabela 1 lista os diversos diagramas que pertencem a esta classificao; Diagramas Comportamentais: detalha o funcionamento (comportamento) de partes de um sistema ou processos de negcio relacionados a tal aplicao. Na Tabela 2 so apresentados os diversos diagramas que se enquadram nesta categoria; Diagramas de Interao: considerados um subgrupo dos diagramas comportamentais, sendo normalmente utilizados na representao de interaes entre objetos de uma aplicao. Os diferentes diagramas que fazem parte deste conjunto de representaes foram descritos na Tabela 3.
http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913 4/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Diagrama

Funo Permite a visualizao de um conjunto de classes, detalhando atributos e

Diagrama de Classes

operaes (mtodos) presentes nesta ltima, assim como provveis relacionamentos entre essas estruturas. Este tipo de representao pode incluir ainda definies de interfaces. Apresenta diferentes componentes de um sistema, alm de possveis

Diagrama de

dependncias entre tais elementos. A ideia de componente refere-se a uma

Componentes parte (ou at mesmo um mdulo) de uma aplicao, englobando assim uma sria de outras estruturas relacionadas (como classes, interfaces etc.). Descreve as dependncias entre diferentes namespaces/pacotes que Diagrama de Pacotes compem uma aplicao. Dentro da plataforma .NET, um namespace costuma conter classes, interfaces e outros elementos, atuando como uma forma de agrupamento lgico destes elementos. Diagrama de Objetos Diagrama de Estrutura Composta Apresenta o estado de instncias de objetos dentro de um sistema, levando em conta para isto um intervalo de tempo especfico.

Utilizado para demonstrar a estrutura interna de uma classe, incluindo referncias que apontam para outras partes de um sistema.

Empregado para demonstrar a estrutura de hardware adotada para a Diagrama de Instalao implantao de uma aplicao em um ambiente. Pode envolver dispositivos como servidores de aplicao, servidores de banco de dados, terminais de usurios etc. Possibilita a definio de novos elementos UML, permitindo assim estender os diagramas existentes com a incluso de estruturas customizadas para uma determinada necessidade.

Diagrama de Perfil

Tabela 1: Diagramas Estruturais da UML


Diagrama Diagrama de Casos de Uso Funo Voltado apresentao de funcionalidades e caractersticas de um sistema, assim como de que forma tais elementos se relacionam com usurios e entidades externas envolvidas num determinado processo.

http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913

5/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Diagrama de Atividades Diagrama de Transio de Estados

Contempla as diversas tarefas desempenhadas na execuo de uma atividade, sendo utilizado geralmente na representao de processos dentro de uma empresa/organizao.

Detalha os diferentes estados pelos quais pode passar um objeto, tomando por base a execuo de um processo dentro do sistema que se est considerando.

Tabela 2: Diagramas Comportamentais da UML


Diagrama Funo Demonstra as interaes entre diferentes objetos na execuo de uma Diagrama de Sequncia operao, destacando ainda a ordem em que tais aes acontecem num intervalo de tempo. A sequncia em que as diversas operaes so executadas ocorre na vertical, de cima para baixo. Espcie de representao hbrida, com uma estrutura similar de diagramas Diagrama de Interatividade de atividade. O que diferencia este tipo de representao est justamente no fato do equivalente a uma atividade ser representada por outro diagrama, sendo o de sequncia um exemplo de uso vlido neste ltimo caso. Similar aos diagramas de sequncia, tambm empregado na modelagem de Diagrama de Colaborao ou Comunicao interaes entre vrios objetos dentro de um determinado contexto. Este tipo de representao difere de um diagrama de sequncia por no possuir uma estrutura rgida para demonstrar a comunicao entre objetos, ou seja, estes elementos podem ser dispostos na melhor ordem que se julgar necessria, sem a obrigatoriedade de exibir as diferentes operaes na vertical uma aps a outra. Corresponde a um tipo especfico de diagrama de sequncia, descrevendo mudanas de estado e interaes entre objetos dentro de intervalos de tempo tomados como parmetro.

Diagrama de Tempo

Tabela 3: Diagramas de Interao da UML

http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913

6/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Benefcios e pontos de ateno quanto utilizao de UML


Dentre as vantagens em se adotar a UML como ferramenta para a modelagem e documentao de sistemas, convm destacar: A UML foca na representao visual de diferentes elementos e aspectos de um software. Devido s suas caractersticas bastante intuitivas, esta linguagem permite uma compreenso mais rpida, assim como abrangente, de componentes e funcionalidades que fazem parte de uma aplicao; Sistemas extensos costumam apresentar relacionamentos complexos entre as diferentes partes que os compem. Muitas vezes, a simples descrio textual de dependncias entre os diversos recursos de uma aplicao pode ser confusa, no atingindo o resultado esperado e que , basicamente, possibilitar uma clara compreenso sobre como tais elementos interagem. O uso de UML pode simplificar tal tarefa, permitindo a elaborao de diagramas primeira vista simples, mas que resumem o difcil trabalho de descrever como classes e processos esto relacionados entre si; Desenvolvedores de diferentes plataformas podem compreender com mais facilidade as caractersticas de um sistema (independentemente da tecnologia na qual este foi concebido). Isto se deve ao fato da UML ser uma linguagem independente de plataforma, alm de corresponder a um padro de ampla aceitao dentro da rea de software; Ainda considerando o item anterior, os diagramas UML representam uma excelente ferramenta para a demonstrao de conceitos de Orientao a Objetos, sobretudo no que se refere a explicaes a respeito de design patterns e outras solues genricas passveis de reaproveitamento em novos projetos; A forte nfase dada por esta linguagem padronizao tambm contribui, sem sombra de dvidas, para um melhor desempenho das funes dentro dos times de implementao de projetos. Os diferentes profissionais envolvidos na codificao de uma aplicao tm na UML um meio que facilita a comunicao e a transmisso de ideias, partindo-se para isto da premissa de que todos contam com um conhecimento adequado desta linguagem. Algumas questes devem ser ponderadas ao se adotar a UML para a gerao de

http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913

7/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

documentao em um projeto de software: Em muitas situaes ser necessrio sincronizar a documentao do projeto, atualizando diagramas elaborados num estgio inicial para que contemplem as ltimas mudanas efetuadas numa aplicao. Este tipo de atividade costuma consumir uma parcela significativa de tempo, devendo ser bem planejado a fim de evitar atrasos ou, at mesmo, ser deixado de lado por representar um processo relativamente trabalhoso; essencial que a construo de diagramas UML priorize partes mais complexas ou crticas de um sistema. A documentao de funcionalidades e estruturas relativamente simples pode no agregar muito ao projeto, sendo desaconselhvel investir tempo neste tipo de tarefa (quando o foco poderia justamente estar direcionado a elementos de uma maior importncia dentro do contexto geral da aplicao); LOGIN A construo de diagramas muito extensos pode dificultar a compreenso de determinados pontos de um sistema. A montagem de representaes com um escopo mais reduzido pode ser a melhor opo em alguns momentos, visto que permite um melhor entendimento de alguns detalhes que passariam despercebidos num diagrama abrangendo um contexto bem maior. UML (sigla em ingls para "Unified Modeling Language") uma linguagem que se presta modelagem de estruturas que iro compor uma aplicao, estando fortemente amparada em conceitos de Orientao a Objetos. Em termos prticos, a UML contempla uma srie de notaes para a construo de diagramas representando diferentes aspectos de um software, alm de no estar presa a metodologias ou tecnologias especficas de desenvolvimento. Sistemas construdos nas mais variadas linguagens e plataformas como C#, VB.NET, Java, Delphi etc. podem se beneficiar das vantagens decorrentes do uso desta linguagem. O advento da UML como um dos principais meios para a documentao de sistemas aconteceu ainda no final dos anos 1990, graas ao trabalho conjunto de trs especialistas da rea de desenvolvimento de software: James Rumbaugh, Grady Booch e Ivar Jacobson. Diversos dos diagramas disponibilizados pela UML so resultado da evoluo de representaes propostas em momentos anteriores por estes especialistas, sendo que os mesmos procuram contemplar diferentes aspectos da construo de aplicaes baseadas em tcnicas da OO.

http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913

8/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Ferramentas para a gerao de diagramas UML


So diversas as ferramentas disponveis no mercado para a gerao de diagramas UML. Existem desde solues gratuitas e que contam com um bom suporte para a elaborao de representaes baseadas nesta linguagem, passando ainda por softwares proprietrios dotados de uma ampla gama de recursos. No que se refere a aplicativos pagos, comum que muitos destes ofeream funcionalidades baseadas em mecanismos de engenharia reversa (para a gerao de diagramas a partir de implementaes pr-existentes) ou, at mesmo, a obteno de cdigo-fonte tomando por base diagramas concebidos a partir da ferramenta em questo (o que no significa que todo o esforo de codificao ser substitudo por esta ltima). Constituem bons exemplos de aplicaes que suportam a construo de diagramas baseados nas notaes da UML: Astah UML: conhecida anteriormente como JUDE, esta soluo conta tanto com verses gratuitas quanto pagas. fornecida pela empresa japonesa Change Vision, disponibilizando recursos para a elaborao dos diferentes diagramas previstos pela UML; Enterprise UML: software de modelagem comercializado pela Sparx Systems, contando com total suporte construo dos diferentes diagramas de UML, alm de compatibilidade com diversas linguagens como Java e C# (gerao de cdigo e aplicao de engenharia reversa); Visio: parte integrante do pacote Office da Microsoft, este aplicativo tambm permite que diagramas UML sejam elaborados a partir do mesmo, alm de um amplo conjunto de outros tipos de representaes grficas suportadas. Importante destacar ainda que todas as ferramentas mencionadas nesta seo possibilitam a exportao de diagramas para diferentes formatos grficos, tais como .gif, .jpg e .png.

Concluso
Conforme discutido ao longo deste artigo, a UML oferece uma ampla variedade de
http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913 9/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

diagramas, buscando com isto abranger diferentes aspectos relativos ao desenvolvimento de software. Isto no significa, obrigatoriamente, que a modelagem de uma nova aplicao precise empregar todas as representaes fornecidas por esta linguagem. Na verdade, cada projeto conta com caractersticas bem especficas, o que significa que somente alguns dos diagramas podem realmente agregar algum valor como documentos que especificam o sistema a ser construdo. Alm disso, o uso de elementos de UML no se restringe apenas elaborao de artefatos dentro de um projeto. bastante comum que a UML seja utilizada como meio para representar estruturas baseadas em conceitos de Orientao a Objetos ou ainda, em mecanismos de engenharia reversa que permitem a elaborao de diagramas a partir de estruturas de cdigo implementadas anteriormente. A grande preocupao no tocante padronizao desta linguagem foi um fator determinante para o sucesso da mesma, com tal fato no restringindo ao meio acadmico, mas contando ainda com o respaldo de gigantes da rea de tecnologia (Microsoft, Oracle e IBM so algumas destas empresas). Espero que o contedo aqui apresentado, embora de carter introdutrio, possa ter sido til e sirva de motivao para voc aprofunde seus conhecimentos em UML. At uma prxima oportunidade!

Links
Astah UML Enterprise Architect - UML Design Tools and UML CASE tools for software development Microsoft Visio Object Management Group Object Management Group UML Unified Modeling Language

Renato Jose Groffe


Atua como consultor em atividades voltadas ao desenvolvimento de softwares h mais de 10 anos.
http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913 10/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Bacharel em Sistemas de Informao, com especializao em Engenharia de Software. Microsoft Certified Technology Specialist (Web, WCF, [...]

O que voc achou deste post? Gostei (9) (0)

Poste seu comentrio


Wa gner C a etano Te xto rep etid o: UML (s igla em ingls pa ra "Unified Mo de ling La nguag e") uma ling ua gem q ue se p re sta mo de la gem d e estruturas q ue ir o c omp or um a ap lic a o , e stando fo rteme nte amp ar ad a em c onceito s de Or ie nta o a O bj etos. Le ia m ais e m: Mo de la gem d e sis te ma s a tr av s de UML: uma vis o g er al http ://www.de vme dia.com .b r/mod elag em-de -sistem as-atra ves -d e-uml-uma -visa oge ra l/27913#ixzz 2S 32Mks WZ [h +1 m s] - Re sp onder [a utor ] R enato Jos e Gro ff e Wa gner , Ob riga do pe lo aler ta . De vo ter co piado e ss e tre cho p or a cid ente enquanto es tav a re vis ando o ar tigo. J s olicite i inc lusive ao p ess oa l do site pa ra que a cor re o p os sa se r ef etuad a.

Re na to [h +1 m s] - Re sp onder

Jo el R odr ig ue s Op a, houv e um a p eq ue na fa lha d e ed i o a, m as j f oi co rr ig ida . O tex to d uplic ad o fo i re mov id o. Ob riga do pe lo co me ntrio. [h +1 m s] - Re sp onder
http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913 11/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Selo - Post Top DevMedia

Publicidade

Servios
Inclua um comentrio Adicionar aos Favoritos Marcar como lido/assistido Incluir anotao pessoal Verso para impresso

+Engenharia de software

http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913

12/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Mais posts
Artigo

QlikView: conhea a ferramenta de B.I.


Artigo

Introduo ao Desenvolvimento gil


Artigo

Modelos de Processos geis: conceitos e princpios


Artigo

Mtodos geis: Processo gil e Ferramentas de Suporte


Artigo

Melhoria do Processo de Software Brasileiro


Artigo

Modelos de Processo Especializado: conceitos e princpios


Artigo

Introduo ao Business Process Modeling Notation (BPMN)


Artigo

CQRS: Um modelo para aplicaes escalveis


Artigo

Introduo ao Modelo Cascata


http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913 13/14

14/2/2014

Modelagem de sistemas atravs de UML: uma viso geral

Artigo

Introduo aos Processos de Software e o Modelo Incremental e Evolucionrio

Listar mais contedo

Anuncie | Loja | Publique | Assine | Fale conosco

DevMedia
Curtir 19.899 pessoas curtiram DevMedia.

Plug-in social do Facebook

Hospedagem web por Porta 80 Web Hosting Todos os Direitos Reservados a Web-03

http://www.devmedia.com.br/modelagem-de-sistemas-atraves-de-uml-uma-visao-geral/27913

14/14

Potrebbero piacerti anche