Descobrindo a Modelagem de Sistemas: UML
Olá pessoal tudo bem com vocês? Vamos iniciar hoje uma série super importante para quem deseje se tornar um analista de sistemas, e para iniciar essa nossa nova jornada, iremos conversar sobre a linguagem UML.
Elaborada por Grady Booch, James Rumbaugh e Ivar Jacobson teve a sua primeira versão lançada em Janeiro de 1997, e UML significa (Unified Modeling Language) ou Linguagem de modelagem unificada.
A UML (Unified Modeling Language) é uma linguagem padrão para construção de projetos de sistemas, orientados a objeto, voltada para visualização, especificação, construção e documentação de artefatos de um sistema.
Ela deve ser independente do método de desenvolvimento utilizado, é importante ratificar que ela é uma linguagem de modelagem, não é um método e muito muito menos um método de desenvolvimento, tão pouco uma metodologia ou um processo de desenvolvimento de sistemas.
A UML também não determina a ordem, nem como os diagramas devem ser usados, estes são disponibilizados e ficará a critério de cada empresa em como irá utilizá-los e quando irá utilizá-los.
A UML pode trafegar por diversas áreas do conhecimento, e tem como foco principal de ser empregada em sistemas de software complexos. É muito comum ver a UML ser aplicada em serviços bancários e financeiros, no setor de telecomunicações, em softwares científicos e etc.
A UML irá abranger não só a documentação da arquitetura do sistema, mas também de seus detalhes, podendo expressar requisitos e modelar as atividades de planejamento.
Veja abaixo os 13 diagramas que compõem a UML:
Cabe deixar bem claro aqui, que a UML é uma busca uma forma de padronizar a construção de sistemas, utilizando de imagens via diagrama. Outra questão importante a ser mencionada aqui, é que um conhecimento em orientação objetos, é de fundamental importância para o bom entendimento da UML, visto que ela foi desenvolvida dentro do paradigma orientado a objeto (OO).
Em relação ao uso das classes, não é definido pela linguagem quais diagramas deverão serem usados primeiramente. Contudo, os usuários tendem a concordar que o Diagrama de Classes e o Diagrama de casos de uso, sejam os mais importantes para se iniciar o projeto.
Veja bem, considerando que é uma linguagem que se utiliza do paradigma orientado a objeto, é de uma natureza bem clara, que o diagrama de classes seja de fato muito importante, afinal de contas é a partir daqui que iremos conhecer o nosso conjunto de objetos, seus métodos e atributos.
O diagrama de casos de uso, faz uma representação do sistema a partir da visão do usuário, ou seja, mostra de forma simples o que é feito no sistema e suas interações com o usuário.
Martin Fowler e Steve Mellor propuseram três modos pelos quais pode-se usar a UML no desenvolvimento de sistemas:
- UML como esboço: É o modo mais usado, onde os desenvolvedores usam a UML como forma de expressar aspectos relevantes de um sistema, esboçando ideias e alternativas do que pretende fazer.
- UML como projeto: Aqui a ideia é construir um projeto completo, para ser codificado por programadores, valendo-se de ferramentas case para melhor entendimento dos modelos pelaequipe.
- UML como linguagem de programação: Onde os desenvolvedores desenham os diagramas que são compilados para o código executável e a UML se torna o código fonte.
A UML possui vastos processos interativos de organização para o desenvolvimento de software, uns dos mais conhecidos no momento são as metodologias ágeis como o XP (Extreming Programming) e o Scrum.
Os processo iterativos são processos onde o ciclo de vida do sistema é dividido em uma série de mini projetos curtos, preferencialmente de duração fixa.
A UML por se utilizar de diagramas para expressar uma realidade do projeto, acaba sendo muitas vezes utilizada em desenhos a mão nas reuniões para a discussão de ideias.
Bom pessoal fizemos aqui uma rápida apresentação do que seria a UML e a sua aplicabilidade no mercado de trabalho. Novamente reforço que você venha a buscar o conhecimento em Orientação a Objetos para um bom entendimento do que virá pela frente, e caso você já possua esse conhecimento, apenas reforce os seus conceitos de classe, objeto e métodos, pois ele serão muitas vezes mencionados aqui, sem uma explicação um pouco mais profunda.
Bom pessoal, por hoje é isso!
Como sempre terei a honra de poder ajudá-lo, qualquer dúvida encaminhe a sua pergunta para rfcosta85@gmail.com ou deixe nos comentários.
Obrigado pela paciência e até a próxima!
Abraços!
Rodrigo Costa.
Referências:
[1] Casati, João Paulo — Modelagem de Sistemas — Estácio
[2] Augusto Programmer — UML — Diagrama de Caso de Uso e Diagrama de Classe — Augusto Programer