Pular para o conteúdo principal

MDD e DSML, O Potencial da Modelagem no Desenvolvimento de Software

MDD com DSML possui foco em problemas específicos
 de um determinado domínio.
Apesar de não ter realizado uma publicação exclusiva falando sobre MDD (Model-Driven Development), grande parte da sua definição está contida na MDA (Model-Driven Architecture). O Desenvolvimento Orientado a Modelos é um paradigma que envolve todo processo de criação de software, gerando código a partir de modelos (semelhante à arquitetura MDA). Este paradigma, cada vez mais aplicado no meio acadêmico e nas empresas, abstrai a complexidade das linguagens de programação e seus códigos-fonte, já que os sistemas são desenvolvidos a partir de modelos criados para serem transformados automaticamente em código executável. Geralmente a criação destes modelos e a transformação para código executável é realizada a partir de uma ferramenta CASE (Computer-Aided Software Engineering).


MDD
A IDE permite criar/atualizar modelos, que antes só serviam
de documentação, interferindo diretamente no código.
É possível seguir o paradigma MDD a partir duas maneiras: a primeira, semelhante ao que foi falado sobre MDA aqui no blog, utiliza uma linguagem de modelagem de propósito geral (ex.: UML), a segunda faz uso de uma linguagem de propósito específico (ou Domain Specific Modeling Language, DSML). Diferente da primeira, ao utilizar uma DSML, fica estabelecida uma classe específica de problemas que, composta por abstrações e notações apropriadas, oferece maior precisão e expressividade para modelar um problema de um determinado domínio. Esta segunda maneira visa aumentar a qualidade e a produtividade da atividade da modelagem e do desenvolvimento.

DSML
A definição de uma DSML requer a especificação de três elementos: 1) sintaxe abstrata (um metamodelo que descreve os conceitos e as regras de modelagem da DSML, equivalente à gramática de uma linguagem de programação), 2) sintaxe concreta (relativa à notação gráfica da DSML, ex.: ícones e formas), 3) semântica (fornece significado para cada elemento gráfico da DSML). Além disso, a definição de uma DSML também requer a construção de uma ferramenta CASE a partir de um framework de modelagem (ex.: Eclipse Modeling Framework - EMF, Eclipse Graphical Modeling Framework - GMF e Epsilon).


Como recomendação de leitura, indico o livro "Domain-Specific Modeling: Enabling Full Code Generation". Para mais informações acesse o site http://dsmbook.com/.

Particularmente, acredito neste paradigma de desenvolvimento, principalmente em fábricas de software e processos de desenvolvimento que envolvam linhas de produto. O MDD, principalmente quando desenvolvido com DSML, pode trazer grandes benefícios e abrir muitas possibilidades, reduzindo tempo, custo e complexidade no desenvolvimento de sistemas de informação. Em MDD, o explícito conhecimento do domínio é crucial para desenvolver com sucesso uma DSML. Mas, para comprovar isso, na próxima publicação irei mostrar na prática o que pode ser feito utilizando este paradigma com DSML.

Comentários

Postagens mais visitadas deste blog

Utilizando o padrão de referências da ABNT no Word

Uma importante funcionalidade do Microsoft Word é o seu Gerenciador de Fontes Bibliográficas. Para aqueles que estão escrevendo algum trabalho acadêmico ou científico, é possível cadastrar todas as referências do trabalho e no final gerar a listagem já enumerada dos documentos que foram consultados na pesquisa. Essa postagem traz os arquivos necessários e as instruções para facilitar essa etapa da elaboração.

Como resetar completamente uma instalação do Apache no Ubuntu

Quando eu estava experimentando o módulo python do Apache (mod_python), eu 'de alguma maneira' estraguei minha instalação do Apache. Os arquivos de configuração ficaram em um estado estranho, então eu excluí a pasta /etc/apache2, removi o Apache (através do dpkg) e o reinstalei. Mas o resultado não foi como esperado, a pasta /etc/apache2 não foi recriada na instalação.

Como interpretar e utilizar gráficos

A quantidade de uma única postagem nos últimos 5 anos de blog mostra o quanto estive focado em outras coisas e sem tempo para escrever aqui. Porém, no meio de uma pandemia e com a finalização do meu doutorado, acabei ficando com mais tempo e colocando como meta a volta das publicações aqui no blog.
Nunca antes na história desse país a população, de uma maneira geral, se preocupou tanto com gráficos, curvas, média e outras questões básicas da estatística. Assim, em tempos de coronavírus, essa postagem tem o objetivo de auxiliar que mais e mais pessoas consigam interpretar gráficos, fazer comparações e, inclusive, saber o melhor tipo de gráfico para usar em determinados casos.