Por que a indústria de software tem uma relação de amor e ódio com diagramas UML
Publicados: 2017-05-19UML é uma linguagem visual versátil que é usada para modelar um sistema de software. A indústria de software tem se dividido em sua opinião quanto ao uso de diagramas UML. Enquanto alguns o veem como parte integrante dos sistemas e desenvolvimento de software, há um número significativo de pessoas que o consideram completamente desnecessário.
Neste post, exploramos os dois lados desse argumento (vantagens e desvantagens da UML) e tentamos entender a relação de amor e ódio da indústria de software com diagramas de design UML.
Vantagens da UML
Mais usado e flexível
UML é uma plataforma altamente reconhecida e compreendida para design de software. É uma notação padrão entre os desenvolvedores de software. Você pode presumir com segurança que a maioria dos profissionais de software estará pelo menos familiarizado, se não bem versado, diagramas UML, tornando-se assim a alternativa para explicar os modelos de design de software.
O que torna a UML adequada e muito necessária para o desenvolvimento de software é sua flexibilidade. Você pode personalizar seus elementos de modelagem e interações em um diagrama UML especificamente para se adequar ao domínio ou às tecnologias que está usando.
A arquitetura de software deve ser comunicada de forma eficaz
A arquitetura de software é o projeto do sistema. É a estrutura da qual depende a eficiência do sistema e seus processos. Mas, este framework só é eficaz se for comunicado adequadamente a todos os que o utilizam e trabalham nele. É aqui que a Linguagem de Modelagem Unificada (UML) entra em cena.
A UML é uma linguagem rica e extensa que pode ser usada para modelar não apenas a engenharia de software orientada a objetos, mas também a estrutura e o comportamento do aplicativo e também os processos de negócios. Os jogadores de software concordaram que não podemos acabar com a documentação da arquitetura. É importante. Ele ajuda na avaliação de desempenho, segurança, rastreamento e fornece diretrizes importantes para a atribuição em operação.
Devido ao seu amplo alcance, a UML é a linguagem visual perfeita para comunicar informações detalhadas sobre a arquitetura ao maior número de usuários.
Você precisa conhecer apenas uma fração do idioma para usá-lo
Embora existam 14 tipos diferentes de diagramas UML para modelagem de aplicativos, os desenvolvedores usam apenas três ou quatro para documentar um sistema de software. Diagramas de classe, diagramas de sequência e diagramas de caso de uso continuam sendo os mais em voga.
O que isso implica é que você precisa conhecer apenas 20% da linguagem UML para explicar 80% de suas necessidades de modelagem. Você não precisa conhecer ou compreender a notação inteira para se comunicar efetivamente usando diagramas UML. Conhecer um subconjunto da notação o equipa muito bem.
Abundância de ferramentas UML
As ferramentas UML são uma das razões mais importantes pelas quais a UML é tão amplamente utilizada. As ferramentas UML variam de software livre de código aberto até aqueles que custam milhões de dólares. Essas ferramentas cobrem muito território além de apenas desenhar diagramas. Eles podem gerar código a partir do projeto, aplicar padrões de projeto, requisitos de mineração, fazer engenharia reversa de código e realizar análises de impacto e complexidade.
Essas vantagens e a abundância de ferramentas UML tornam a UML a linguagem de modelagem e desenvolvimento de referência no campo da engenharia de software.
Apesar de seus inúmeros usos e benefícios, a UML não é a preferida de todos. Na verdade, uma parte considerável de desenvolvedores de software não usa UML e acumula críticas pesadas sobre o mesmo. Vejamos os argumentos contra o uso de UML.
Desvantagens da UML: Raciocínio contra a UML
Notação formal não é necessária
O argumento mais forte contra a UML é que você realmente não precisa de um diagrama UML para comunicar seus projetos. Você pode ter o mesmo impacto e efeito com diagramas informais de caixa e linha criados no PowerPoint, no Visio ou em um quadro de comunicações. Como a codificação é uma linguagem formal por si só, muitos desenvolvedores não preferem a complexidade e a formalidade no nível arquitetural, o que desencoraja o uso da UML e se tornou uma de suas desvantagens.
Grau Crescente de Complexidade
Desde o seu início até agora, a UML cresceu em complexidade e tamanho. O tamanho da UML deixa muitas pessoas nervosas logo no início, e elas sentem que não serão capazes de aprendê-la e estão melhor sem ela.
Não é necessário em 'Design indiferente à arquitetura'
Um termo cunhado por George Fairbanks, 'design indiferente à arquitetura' é uma situação em que a UML é considerada desnecessária.
Em sua essência, um design indiferente à arquitetura refere-se a uma arquitetura de software que é simples e básica e não precisa de diagramas complexos para representar ou explicar o design. Se as empresas derem mais ênfase à codificação formal e houver uma cultura predominante de documentação de projeto mínima, a UML será considerada desnecessária.
Decifrando essa relação de amor e ódio:
Embora se fale muito sobre a redundância da UML na indústria de software, não se pode negar que, até agora, não há substituto holístico ou apropriado para a UML. Para receber uma perspectiva imparcial sobre o significado e o destino da UML, conversamos com gigantes de hardware que estão em contato próximo com a indústria de software, mas neutras em sua perspectiva.
“A ausência de documentação de design é boa a curto prazo, mas pode se tornar um problema a longo prazo quando você precisa comunicar o projeto a um desenvolvedor que está em outro país ou alguém que se juntará à equipe seis meses depois . A UML se torna uma grande ajuda em tais circunstâncias e alivia a ambiguidade e as dúvidas sobre o design.” Um representante da Sconect, fabricante de cabeçotes femininos, opina.
“Podemos falar sobre linguagens específicas de domínio para modelagem visual, mas o fato é que nenhuma delas encontrou ampla aceitação, o que apenas afirma que a UML continua sendo a melhor alternativa no que diz respeito às linguagens visuais.” Esta observação foi feita de forma muito interessante por um representante da Scondar, especializada na fabricação de conectores de pinos.
As contribuições de um representante da Ismolex resumem adequadamente o caso da relação de amor e ódio da indústria de software com diagramas de design UML. “Pode haver mil argumentos contra o uso da UML, mas devido à sua capacidade de capturar as nuances das informações sobre arquitetura de projeto e com a crescente importância da documentação de projeto, a UML permanece insubstituível.”
Vantagens e desvantagens da UML: de que lado você está?
As negações e as aderências aos diagramas UML continuarão nos círculos de software. Mas a UML veio para ficar. Os diagramas UML, no entanto, precisam ser atualizados continuamente para que seu uso não se limite apenas à descrição e comunicação da arquitetura, mas seja ampliado para representar e criar sistemas que possam acomodar mudanças dinâmicas.
sobre o autor
Eu sou Rachel Oliver, tenho trabalhado nos últimos dois anos como escritora freelance e atualmente associada à Ismolex – fabricante de cabeçalhos de pinos. Embora eu goste de escrever sobre todas as coisas sob o sol, incluindo energia, negócios, esportes, reforma da casa e moda, sou especialmente apaixonado por negócios, tecnologia e eletrônicos. Você pode entrar em contato comigo no Google+, Facebook e Twitter.