Você está na página 1de 10

Escola Tcnica Leiaut Cariele

Curso Tcnico de Informtica







Gustavo Grauzely da Silva Alves




UML - Unified Modeling Language
(Linguagem Unificada de modelagem)












Recife
2014
Escola Tcnica Leiaut Cariele





Gustavo Grauzely da Silva Alves




UML - Unified Modeling Language
(Linguagem Unificada de modelagem)



Trabalho apresentado para avaliao parcial
da cadeira de Analise de Orientao a
Objetos do Curso de Informtica, Nvel
Tcnico, da Escola Tcnica Leiaut Cariele
de Recife, PE.
Orientador: Prof. Cloves Alberto



Recife
2014
Resumo
UML (Linguagem de Modelagem Unificada) nada mais do que uma
linguagem visual para especificao, construo e documentao de artefatos
de software. O foco principal da modelagem a criao de esquemas em UML
para entendimento do projeto, ou seja, a UML um modo de padronizar as
formas de modelagem. A UML no uma metodologia de desenvolvimento. A
UML basicamente permite que as pessoas envolvidas em um projeto possam
visualizar os produtos de seus trabalhos em diagramas padronizados.
importante distinguir entre um modelo UML e um diagrama UML. Um modelo
representado por um ou mais diagramas. Desta forma, um diagrama pode ser
visto como uma viso dentro de um modelo. Um diagrama pode ser
representado de vrias formas, dependendo de quem ir interpret-lo e servem
para capturar diferentes vises do sistema.
Abstract
UML (Unified Modeling Language) is nothing more than a visual language for
specifying, constructing, and documenting software artifacts. The main focus of
modeling is the creation of UML diagrams to understand the project, ie, the
UML is a way to standardize the forms of modeling. The UML is not a
development methodology. The UML basically allows people involved in a
project can view the products of their work in standardized diagrams. It is
important to distinguish between a UML model and a UML diagram. A model is
represented by one or more diagrams. Accordingly, a diagram can be viewed
as a vision within a model. A diagram can be represented in various ways,
depending on who will play him and serve to capture different views of the
system.





Introduo

O inicio dos processos de desenvolvimento de software, ainda com os
Mainframes, j existiam metodologias para anlise e desenvolvimento de
software. Estas metodologias no especificam a tecnologia e sim modelos
administrativos, documentais e organizacionais. Abrangendo desde a
concepo at a entrega final da soluo, metodologias baseadas no modelo
UML hoje se tornaram o padro entre as empresas e profissionais de
informtica. Quando a "Unified Modeling Language" (UML) foi lanada, muitos
desenvolvedores da rea da orientao a objetos ficaram entusiasmados j
que essa padronizao proposta pela UML era o tipo de fora que eles sempre
esperaram.
A UML muito mais que a padronizao de uma notao. tambm o
desenvolvimento de novos conceitos no normalmente usados. Por isso e
muitas outras razes, o bom entendimento da UML no apenas aprender a
simbologia e o seu significado, mas tambm significa aprender a modelar
orientado a objetos no estado da arte.
UML foi desenvolvida por Grady Booch, James Rumbaugh, e Ivar Jacobson
que so conhecidos como "os trs amigos". Eles possuem uma extenso
conhecimento na rea de modelagem orientado a objetos j que as trs mais
conceituadas metodologias de modelagem orientado a objetos foram eles que
desenvolveram e a UML a juno do que havia de melhor nestas trs
metodologias adicionado novos conceitos e vises da linguagem. Veremos
caractersticas de cada uma destas metodologias no desenvolver deste
trabalho.
Veremos como a UML aborda o carter esttico e dinmico do sistema a ser
analisado levando em considerao, j no perodo de modelagem, todas as
futuras caractersticas do sistema em relao utilizao de "packages"
prprios da linguagem a ser utilizada, utilizao do banco de dados bem como
as diversas especificaes do sistema a ser desenvolvido de acordo com as
mtricas finais do sistema.

1. O UML
Na necessidade de resolver um grande problema do desenvolvimento de
novos sistemas utilizando a orientao a objetos nas fases de anlise de
requisitos, de sistemas e design que no existia uma notao padronizada e
realmente eficaz que abranja qualquer tipo de aplicao que se deseje. Onde
cada um possua seus prprios conceitos, grficos e terminologias gerava uma
grande confuso. Quando a UML (Unified Modeling Language, em portugus,
linguagem unificada de modelagem) foi laada os desenvolvedores da rea da
orientao a objetos ficaram entusiasmados, pois a UML tinha a proposta de
padronizao.
O UML no uma linguagem de programao, e sim uma linguagem de
modelagem padro utilizada para modelar sistemas computacionais por meio
de paradigma de orientao a objetos, cujo qual nos auxilia a visualizar o
desenho e a comunicao entre objetos, definir as caractersticas do software,
tais como seus requisitos, seu comportamento, sua estrutura lgica, a dinmica
de seus processos e at mesmo suas necessidades fsicas em relao a
equipamento sobre o qual o sistema dever ser implantado, permitindo o
desenvolvedor uma viso de seu projeto em diagramas padronizado. O UML
controlado pelo Object Management Group (OMG) que uma organizao sem
fins lucrativos, compostas por representantes de diversas empresas que
trabalham no desenvolvimento de software orientado a objetos, que se dedica
ao esforo de desenvolver normas relacionadas ao desenvolvimento de
software de orientao a objetos.







2.Diagramas

Os diagramas UML podem ser entendidos como uma representao de um
sistema com reas com textos que se ligam com outras atravs de linhas
continuas ou pontilhadas com decoraes nas pontas. Os diagramas utilizados
pela UML so compostos de nove tipos: diagrama de use case, de classes, de
objeto, de estado, de sequncia, de colaborao, de atividade, de componente
e o de execuo. Todos os sistemas possuem uma estrutura esttica e um
comportamento dinmico. A UML suporta modelos estticos (estrutura
esttica), dinmicos (comportamento dinmico) e funcional. A Modelagem
esttica suportada pelo diagrama de classes e de objetos, que consiste nas
classes e seus relacionamentos. Os relacionamentos podem ser de
associaes, herana (generalizao), dependncia ou refinamentos. Os
modelamentos dinmicos so suportados pelos diagramas de estado,
sequncia, colaborao e atividade. E o modelamento funcional suportado
pelos diagramas de componente e execuo. Os diagramas em questo so os
seguintes:
2.1 Diagramas Estruturais Estticos (Diagramas de Classes)
a representao do sistema no conceito de classes como seus
atributos e mtodos e suas relaes. Classes podem se relacionar com outras
atravs de diversas maneiras: associao (conectadas entre si), dependncia
(uma classe depende ou usa outra classe), especializao (uma classe uma
especializao de outra classe), ou em pacotes (classes agrupadas por
caractersticas similares).
2.2 Diagramas de Componentes
Seria um diagrama que mostra o sistema por um lado funcional,
mostrando as relaes entre seus componentes e a organizao de seus
mdulos durante a execuo, ou seja, descreve os componentes de software e
suas dependncias entre si, representando a estrutura do cdigo gerado.

2.3 Diagramas de objeto
uma variao do diagrama de classes e utiliza quase o mesma
notao, mas a diferena que o diagrama de objetos mostra os objetos que
foram instanciados das classes e os objetos so escritos com seus nomes
subliados.
2.4 Diagramas de Casos de Uso
uma tcnica usada para descrever e definir os requisitos funcionais de
um sistema. Para os desenvolvedores os casos de uso so uma ferramenta
muito til, pois ele pode ser considerado uma tcnica do tipo tentativa e erro
para obter os requisitos do sistema a partir do viso do cliente.
2.5 Diagramas de Sequncia
Um diagrama de sequencia descreve a maneira como os objetos
colaboram em algum comportamento ao longo do tempo e registra o
comportamento de um nico caso de uso. Esse diagrama simples e lgico,
com o objetivo de bvios a sequencia e o fluxo de controle, ou seja, mostra a
colaborao dinmica entre os vrios objetos de um sistema. O mais
importante aspecto deste diagrama que a partir dele percebe-se a sequncia
de mensagens enviadas entre os objetos. Ele mostra a interao entre os
objetos, alguma coisa que acontecer em um ponto especfico da execuo do
sistema. O diagrama de sequncia consiste em um nmero de objetos
mostrado em linhas verticais. O decorrer do tempo visualizado observando-se
o diagrama no sentido vertical de cima para baixo. As mensagens enviadas por
cada objeto so simbolizadas por setas entre os objetos que se relacionam.
2.6 Diagramas de Comunicao (Colaborao)
Mostra de maneira semelhante ao diagrama de sequncia, a
colaborao dinmica entre os objetos. Normalmente pode-se escolher entre
utilizar o diagrama de colaborao ou o diagrama de sequncia. No diagrama
de colaborao, alm de mostrar a troca de mensagens entre os objetos,
percebe-se tambm os objetos com os seus relacionamentos. A interao de
mensagens mostrada em ambos os diagramas. Se a nfase do diagrama for
o decorrer do tempo, melhor escolher o diagrama de sequncia, mas se a
nfase for o contexto do sistema, melhor dar prioridade ao diagrama de
colaborao.
2.7 Diagramas de Estado
tipicamente um complemento para a descrio das classes. Este
diagrama mostra todos os estados possveis que objetos de uma certa classe
podem se encontrar e mostra tambm quais so os eventos do sistemas que
provocam tais mudanas. Em um determinado momento um objeto possui um
estado particular. No caso de uma pessoa ela pode ser: recm-nascida,
criana, adolescente ou adulto. A representao UML que captura este
comportamento chama-se diagrama de estado
2.8 Diagramas de Atividade
Capturam aes e seus resultados, mostrando o fluxo de atividades em
um nico processo. O diagrama mostra como uma atividade depende uma da
outra. Eles focam o trabalho executado na implementao de uma operao
(mtodo), e suas atividades numa instncia de um objeto.
2.9 Diagramas de Depurao
Representa uma coleo de componentes e mostra como esses so
distribudos em um ou vrios ns de hardware.
2.1.1 Diagramas de pacotes
Representa uma coleo de outros elementos de modelagem e
diagramas.
2.1.2 Diagramas de Distribuio
Mostram a distribuio de hardware do sistema, identificando os
servidores como ns do diagrama e a rede que relaciona os ns. Os
componentes de software vo estar mapeados nestes ns. Ele permite
apresentar a topologia de uma rede de mquinas'' e qual processo (um
componente executvel) cada mquina'' vai rodar. As maquinas'' so
chamadas de nos. Um n apresenta uma fonte computacional, sendo
normalmente um processador com alguma memria. (VOXXEL)
Concluso
Como vimos no desenvolvimento do trabalho, o uml uma grande ajuda no
desenvolvimento de projetos orientados a objetos , realmente incorporou
muitos recursos com do a linguagem uma extensibilidade muito grande. A
modelagem visual orientada a objetos agora possui um padro, e esse padro
extremamente simples de ser escrito a mo, sendo robusto para especificar e
descrever a grande maioria das funes, relacionamentos e tcnicas de
desenvolvimento orientado a objetos que hoje so utilizados. Sem dvida
alguma a UML facilitar s grandes empresas de desenvolvimento de software
uma maior comunicao e aproveitamento dos modelos desenvolvidos pelos
seus vrios analistas envolvidos no processo de produo de software j que a
linguagem que ser utilizada por todos ser a mesma, acabando assim com
qualquer problema de interpretao e mal-entendimento de modelos criados
por outros desenvolvedores. Os modelos criados hoje podero ser facilmente
analisados por futuras geraes de desenvolvedores acabando com a
diversidade de tipos de nomenclaturas de modelos, o grande empecilho do
desenvolvimento de softwares orientados a objetos.













Referncia Bibliogrfica
http://www.uml.org/
http://www.infoescola.com/engenharia-de-software/uml/
http://www.dpi.inpe.br/~gribeiro/apresentacoes/uml_2008_02_29.pdf
http://www.devmedia.com.br/curso/introducao-a-uml/128
http://www.etelg.com.br/paginaete/downloads/informatica/apostila_uml.p
df