Você está na página 1de 9

Traduzido do Inglês para o Português - www.onlinedoctranslator.

com

Veja discussões, estatísticas e perfis de autor para esta publicação em:https://www.researchgate.net/publication/344842798

Apoiar a compreensão e comparação de plataformas de desenvolvimento de baixo


código

Conferência· Agosto de 2020


DOI: 10.1109/SEAA51224.2020.00036

CITAÇÕES LER
119 10.278

4 autores:

Apurvanand Sahay Arsene Indamutsa


Università degli Studi dell'Aquila Università degli Studi dell'Aquila

8PUBLICAÇÕES134CITAÇÕES 4PUBLICAÇÕES130CITAÇÕES

VER PERFIL VER PERFIL

Davide Di Ruscio Alfonso Pierantonio


Università degli Studi dell'Aquila Università degli Studi dell'Aquila

222PUBLICAÇÕES3.513CITAÇÕES 205PUBLICAÇÕES3.303CITAÇÕES

VER PERFIL VER PERFIL

Alguns dos autores desta publicação também estão trabalhando nos seguintes projetos relacionados:

Evolução do software livre e de código aberto (EVOSS)Ver projeto

LowcomoteVer projeto

Todo o conteúdo que segue esta página foi carregado porApurvanand Sahayem 18 de dezembro de 2020.

O usuário solicitou aprimoramento do arquivo baixado.


Apoiar a compreensão e comparação de
plataformas de desenvolvimento de baixo código

Apurvanand Sahay, Arsene Indamutsa, Davide Di Ruscio, Alfonso Pierantonio


Dipartimento di Ingegneria e Scienze dell'Informazione e Matematica
Università degli Studi dell'Aquila
L'Aquila, Itália
nome sobrenome@univaq.it

Abstrato—Plataformas de desenvolvimento de baixo código (LCDPs) são de 200. Consequentemente, entender e avaliar os LCDPs candidatos
ambientes visuais fáceis de usar que estão sendo cada vez mais introduzidos e que melhor se ajustam ao problema específico em questão pode ser
promovidos pelos principais players de TI para permitirdesenvolvedores
uma tarefa árdua e desafiadora.
cidadãospara construir seus sistemas de software, mesmo que não tenham
experiência em programação. Compreender e avaliar o LCDP a ser empregado
Neste artigo, um levantamento técnico é fornecido para destilar as
para o problema específico em questão são tarefas difíceis, principalmente funcionalidades relevantes fornecidas por diferentes LCDPs e organizá-los
porque os tomadores de decisão precisam escolher entre centenas de com precisão. Em particular, oito principais LCDPs foram analisados para
plataformas heterogêneas, difíceis de avaliar sem suporte dedicado. Assim, é fornecer aos potenciais tomadores de decisão e adotantes elementos
necessária uma classificação detalhada para elaborar as plataformas low-code
objetivos que podem ser considerados quando seleções e considerações
existentes e ajudar os usuários a encontrar as plataformas mais adequadas com
base em seus requisitos.
fundamentadas devem ser realizadas. As contribuições do artigo estão
Neste artigo, uma pesquisa técnica de diferentes LCDPs é apresentada com resumidas a seguir:
base em uma estrutura conceitual comparativa proposta. Em particular, • Identificação e organização de funcionalidades relevantes que
analisando oito LCDPs representativos, um conjunto correspondente de
caracterizam diferentes plataformas de desenvolvimento low-code;
recursos foi identificado para destilar as funcionalidades e os serviços que cada
plataforma considerada pode suportar. O objetivo final é facilitar o • Comparação de plataformas de desenvolvimento low-code relevantes
entendimento e a comparação das plataformas lowcode que melhor podem com base nos recursos identificados;
acomodar os requisitos do usuário. • Apresentação de um breve relato de experiência relacionado à
adoção de LCDPs para desenvolvimento de uma aplicação simples de
Termos do Índice—Plataformas de desenvolvimento de baixo código, engenharia
benchmark.
orientada a modelos, desenvolvimento de software
Até onde sabemos, este é o primeiro artigo com o objetivo de
eu. euNTRODUÇÃO analisar diferentes plataformas de low-code e discuti-las de acordo
com um conjunto de recursos eliciados e organizados.
As plataformas de desenvolvimento de baixo código (LCDPs) são fornecidas
O artigo está organizado da seguinte forma: A Seção II apresenta o
na nuvem por meio de um modelo de plataforma como serviço (PaaS) e
background do trabalho mostrando os principais aspectos arquiteturais de
permitem o desenvolvimento e a implantação de aplicativos de software
plataformas de desenvolvimento low-code. A Seção III apresenta os oito
totalmente funcionais, utilizando interfaces gráficas de usuário avançadas e
LCDPs que foram considerados neste trabalho. A Seção IV apresenta a
abstrações visuais que exigem o mínimo ou nenhum código processual [21].
taxonomia, que foi concebida para comparação de LCDPs conforme
Assim, com o objetivo principal de lidar com a escassez de desenvolvedores de
discutido na Seção V. A Seção VI apresenta um breve relato de experiência
software profissionais altamente qualificados, os LCDPs permitem que os
relacionado à adoção de LCDPs para o desenvolvimento de uma aplicação
usuários finais sem experiência em programação específica (chamados
de benchmark simples. A Seção VII conclui o artigo e discute algumas
desenvolvedores cidadãosno jargão do LCDP) para contribuir com os processos
perspectivas do trabalho.
de desenvolvimento de software, sem sacrificar a produtividade dos
desenvolvedores profissionais. II. BACKGROUND
Ao usar plataformas de baixo código, os desenvolvedores cidadãos podem
Plataformas de desenvolvimento de baixo código1são plataformas de
construir seu aplicativo de software sem a ajuda de vários desenvolvedores que
software que ficam na nuvem e permitem que desenvolvedores com
estiveram anteriormente envolvidos no desenvolvimento de pilha completa de
diferentes conhecimentos de domínio e experiência técnica desenvolvam
aplicativos totalmente operacionais. Assim, os desenvolvedores podem se
aplicativos completos prontos para produção [16]. Tais aplicativos são
concentrar na lógica de negócios do aplicativo que está sendo especificado, em
desenvolvidos por meio de princípios de engenharia orientados a modelos
vez de lidar com detalhes desnecessários relacionados à configuração das
e aproveitam infraestruturas de nuvem, geração automática de código,
infraestruturas necessárias, gerenciar a integridade dos dados em diferentes
abstrações declarativas e de alto nível e gráficas para desenvolver
ambientes e aprimorar a robustez do sistema. A correção de bugs e a
aplicativos totalmente funcionais [20]. Essas plataformas aproveitam os
escalabilidade e extensibilidade do aplicativo também são facilitadas, rápidas e
desenvolvimentos recentes em tecnologias e modelos de computação em
fáceis de manter nessas plataformas pelo uso de abstrações e modelos de alto
nuvem, como plataforma como serviço (PaaS), e padrões e arquiteturas de
nível [4]. O código processual também pode ser especificado nessas plataformas
design de software comprovados para garantir desenvolvimento,
para obter mais personalização do aplicativo de acordo com as próprias
implantação e manutenção eficazes e eficientes do aplicativo desejado.
preferências.
Forrester e Gartner documentam o crescimento das LCDPs em seus
No coração das plataformas de baixo código, existem princípios de
relatórios [16], [18], [20] que prevêem um aumento significativo do
engenharia orientada a modelos (MDE) [11] que foram adotados em
mercado para as empresas LCDP nos próximos anos. Os principais players
várias disciplinas de engenharia, contando com as possibilidades de
de PaaS, como Google e Microsoft, estão integrando LCDPs (Google App
automação, análise e abstração possibilitadas pela adoção de
Maker e Microsoft Power Platform, respectivamente) em suas soluções de
modelagem e metamodelagem [ 12].
uso geral. De acordo com um relatório da Forrester [18], espera-se que o
mercado de low-code represente $ 21 bilhões em gastos até 2022. Em um 1A seguir, os termosplataformas de baixo códigoeplataformas de desenvolvimento de baixo código são
relatório recente do Gartner [20], 18 LCDPs foram analisados usados de forma intercambiável.
Camada de aplicação
(por exemplo, caixa de ferramentas, widgets)

Camada de Integração de Serviços


(por exemplo, Dropbox, Git, IFTTT)

Camada de integração de dados


(por exemplo, planilhas, bancos de dados)

Camada de Implantação
(por exemplo, nuvem, infraestruturas locais)

Fig. 1. Arquitetura em camadas de plataformas de desenvolvimento de baixo código

A. Uma visão panorâmica das plataformas de baixo código

Do ponto de vista arquitetônico, os LCDPs consistem em quatro


camadas principais, conforme mostrado na Fig. 1. A camada superior
(consulte Camada de aplicação)consiste no ambiente gráfico com o qual os
usuários interagem diretamente para especificar seus aplicativos. As caixas
de ferramentas e widgets usados para construir a interface do usuário do
aplicativo especificado fazem parte dessa camada. Também define os
mecanismos de autenticação e autorização a serem aplicados aos artefatos
especificados. Por meio das construções de modelagem disponibilizadas Fig. 2. Principais componentes das plataformas de desenvolvimento low-code

nessa camada, o usuário pode especificar o comportamento da aplicação


que está sendo desenvolvida. Por exemplo, os usuários podem especificar
modeladores podem usar para definir aplicações, conforme mostrado na
como recuperar dados de fontes de dados externas (por exemplo,
parte central do ambiente. O lado esquerdo da figura mostra uma visão
planilhas, calendários, sensores e arquivos armazenados em serviços de
geral do sistema modelado em termos de, por exemplo, os elementos no
nuvem), como manipulá-los usando recursos da plataforma ou serviços
modelo de domínio e o modelo de navegação que liga todas as diferentes
externos, como agregar esses dados de acordo às regras definidas e como
páginas especificadas. O modelador de aplicativos também permite
analisá-las. Para tanto, oCamada de Integração de Serviçosé explorado
executar o sistema localmente antes de implantá-lo. Para tanto, conforme
para se conectar com diferentes serviços usando APIs e mecanismos de
mostrado na Fig. 2, a camada intermediária pega o modelo de aplicativo
autenticação correspondentes.
recebido do modelador de aplicativos e executa operações de
Uma camada de integração de dados dedicada permite operar e
gerenciamento de modelo, incluindo geração de código e otimizações,
manipular dados de forma homogênea, mesmo que fontes
considerando também os serviços envolvidos, incluindo sistemas de banco
heterogêneas estejam envolvidas. Para tanto, oCamada de integração
de dados, microsserviços, conectores de APIs, repositórios de modelos de
de dados preocupa-se com a integração de dados com diferentes
artefatos reutilizáveis e meios de colaboração [8].
fontes de dados. Dependendo do LCDP usado, o aplicativo
Relativoservidores de banco de dados, eles podem ser SQL e NoSQL. Em
desenvolvido pode ser implantado em infraestruturas de nuvem
qualquer caso, os usuários e desenvolvedores do aplicativo não estão
dedicadas ou ambientes locais (Camada de Implantação).Observe que
preocupados com o tipo de banco de dados empregado ou mecanismos
a conteinerização e a orquestração de aplicativos são tratadas nessa
que garantam a integridade dos dados ou otimizações de consulta. Mais
camada, juntamente com outras facilidades de integração e
em geral, o desenvolvedor não está preocupado com detalhes de
implantação contínuas que colaboram com oCamada de Integração
arquitetura de baixo nível do aplicativo desenvolvido. todo o necessário
de Serviços.
microsserviços são criados, orquestrados e gerenciados no back-end sem
B. Principais componentes das plataformas de desenvolvimento de baixo código intervenção do usuário. Embora o desenvolvedor tenha um ambiente onde
possa interagir comAPIs, existem conectores específicos encarregados de
Ao expandir a arquitetura em camadas mostrada na Fig. 1, os componentes
consumir essas APIs no back-end. Assim, os desenvolvedores ficam isentos
peculiares que constroem qualquer plataforma de desenvolvimento de baixo
da responsabilidade de gerenciar manualmente aspectos técnicos como
código são descritos na Fig. 2 e podem ser agrupados em três camadas. A
autenticação, balanceamento de carga, consistência da lógica de negócios,
primeira camada é composta pelo modelador de aplicações, a segunda camada
integridade e segurança dos dados.
diz respeito ao lado do servidor e suas diversas funcionalidades e a terceira
As plataformas de desenvolvimento de baixo código também podem
camada diz respeito aos serviços externos que estão integrados à plataforma.
fornecer aos desenvolvedores repositórios que podem armazenar artefatos de
As setas na Fig. 2 representam possíveis interações que podem ocorrer entre
modelagem reutilizáveis, cuidando das tarefas de controle de versão. Suportar
entidades pertencentes a diferentes níveis. As linhas mostradas na camada do
desenvolvimento colaborativoatividades, os LCDPs incluem instalações que
meio representam os principais componentes que constroem a infraestrutura
suportam metodologias de desenvolvimento como ágil, kanban e scrum. Assim,
da plataforma.
os modeladores podem visualizar facilmente o processo de desenvolvimento de
Como mencionado anteriormente, os modeladores recebem um
aplicativos, definir tarefas, sprints e lidar com mudanças assim que os clientes
modelador de aplicativospermitindo a especificação de aplicativos por
as solicitarem e colaborar com outras partes interessadas.
meio de construções e abstrações de modelagem fornecidas. Uma vez
finalizado o modelo do aplicativo, ele pode ser enviado ao back-end da
C. Processo de desenvolvimento em LCDPs
plataforma para análises e manipulações posteriores, incluindo a
geração do aplicativo completo, testado e pronto para ser implantado As fases típicas que são executadas ao desenvolver
na nuvem. aplicações por meio de LCDPs podem ser resumidas a seguir.
A Figura 3 mostra o modelador de aplicativos do Mendix [6] em 1)Modelagem de dados-geralmente, este é o primeiro passo dado; os
funcionamento. O lado direito do ambiente contém os widgets que usuários nos fazem interfaces visuais para configurar os dados
Fig. 3. O modelador de aplicativos do Mendix em funcionamento

Fig. 4. Um modelo de dados simples definido em Mendix

Fig. 5. Uma lógica simples definida em Mendix

esquema do aplicativo que está sendo desenvolvido criando entidades,


estabelecendo relacionamentos, definindo restrições e dependências III. AN VISÃO GERAL DO REPRESENTANTE BAIXO-CÓDIGO
PLATAFORMAS DE DESENVOLVIMENTO
geralmente por meio de recursos de arrastar e soltar. Um modelo de
dados simples definido no Mendix é mostrado na Fig. 4. Esta seção apresenta uma visão geral de oito plataformas de
2)Definição da interface do usuário-em segundo lugar, o usuário configura desenvolvimento de código baixo que foram consideradas líderes nos
formulários e páginas (por exemplo, consulte a Fig. 3) usados para definir as mercados relacionados a partir de relatórios recentes do Gartner [20] e do
visualizações do aplicativo e, posteriormente, definir e gerenciar funções de Forrester [18]. Essas oito plataformas de baixo código são consideradas
usuário e mecanismos de segurança em pelo menos entidades, componentes, plataformas representativas para o benefício de nossa análise, que
formulários e páginas. É aqui que os recursos de arrastar e soltar abrange diversos recursos de recursos mencionados na Tabela I.
desempenham um papel significativo para acelerar o desenvolvimento e
renderizar as diferentes visualizações rapidamente. OutSystem [8]é uma plataforma de desenvolvimento low-code que permite
3)Especificação de regras de lógica de negócios e fluxos de trabalho-Em terceiro desenvolver aplicações desktop e mobile, que podem rodar na nuvem ou
lugar, o usuário pode precisar gerenciar fluxos de trabalho entre vários em infraestruturas locais. Ele fornece recursos embutidos que permitem
formulários ou páginas que exigem diferentes operações nos componentes da publicar um aplicativo por meio de um URL com um único clique de botão.
interface. Tais operações podem ser implementadas em termos de fluxos de OutSystems tem duas componentes significativas. Primeiramente, possui
trabalho com base visual e, para esse fim, notações do tipo BPMN podem ser um Studio intermediário para conexão de banco de dados via . NET ou Java
empregadas como, por exemplo, mostrado na Fig. 5. e, em segundo lugar, possui um estúdio de serviço para especificar o
4)Integração de serviços externos via APIs de terceiros- Em quarto comportamento do aplicativo que está sendo desenvolvido. Alguns dos
lugar, os LCDPs podem fornecer meios para consumir serviços aplicativos suportados nesta plataforma são sistemas de faturamento,
externos por meio da integração de diferentes APIs. Investigar CRMs, ERPs, extensões de soluções ERP existentes, painéis operacionais e
a documentação é necessário para entender a forma e a inteligência de negócios.
estrutura dos dados que podem ser consumidos pela
Mendix [6]é uma plataforma de desenvolvimento de baixo código que não
plataforma adotada.
requer nenhuma escrita de código e todos os recursos podem ser acessados
5)Implantação de aplicativos-Na maioria das plataformas, é possível
por meio de recursos de arrastar e soltar enquanto colabora em tempo real com
visualizar rapidamente o aplicativo desenvolvido e implantá-lo com
colegas. Existe uma ferramenta de desenvolvimento visual que ajuda a reutilizar
poucos cliques.
vários componentes para agilizar o processo de desenvolvimento desde o
configuração do modelo de dados para a definição de interfaces de usuário. Os
usuários podem criar alguns aplicativos com reconhecimento de contexto com
conectores pré-construídos, incluindo aqueles para IoT, aprendizado de
máquina e serviços cognitivos. Mendix é compatível com Docker2e Kubernetes3,
e possui vários modelos de aplicativos que podem ser usados como pontos de
partida. Galeria de soluções da Mendix4é um recurso adicional que permite aos
usuários partir de soluções já desenvolvidas, e que já podem ser suficientes
para satisfazer os requisitos de interesse.

Criador Zoho [10]oferece recursos de arrastar e soltar para facilitar o


desenvolvimento de formulários, páginas e painéis. A interface de usuário
fornecida suporta web design onde o layout da página reflete a resolução
da tela do usuário (por exemplo, no caso de aplicativos móveis ou de
desktop). Ele também oferece integração com outros aplicativos Zoho e
outros aplicativos Salesforce5conectores. Fluxos de trabalho
Figura 6. Diagrama de recursos que representa as áreas de variação de nível superior para LCDPs
personalizados são recursos essenciais do Zoho Creator.

Microsoft PowerApps [7]oferece suporte a recursos de arrastar e soltar e 4. TAXONOMIA


fornece aos usuários uma coleção de modelos que permite a reutilização
Nesta seção, apresentamos termos preparatórios, que podem facilitar a
de artefatos já desenvolvidos. Um usuário pode seguir abordagens
seleção e comparação de diferentes LCDPs. Os recursos são derivados do
orientadas a modelo ou de tela enquanto cria aplicativos. O PowerApps se
exame dos requisitos na construção de um aplicativo, juntamente com os
integra a muitos serviços no ecossistema da Microsoft, como Excel, banco
recursos que uma plataforma de baixo código pode oferecer para alcançar
de dados do Azure6ou conectores semelhantes para sistemas legados.
a criação de um aplicativo. Em particular, analisando as plataformas de
desenvolvimento de baixo código descritas na seção anterior,
Google App Maker [3]permite que as organizações criem e publiquem
identificamos e modelamos suas variabilidades e semelhanças. Nossos
aplicativos empresariais personalizados na plataforma desenvolvida pelo G
resultados são documentados usando diagramas de recursos [13], que são
Suite7. Ele utiliza um ambiente de desenvolvimento baseado em nuvem com
uma notação comum em análise de domínio [14]. A Fig. 6 mostra o
recursos avançados, como modelos integrados, interfaces de usuário de
diagrama de recursos de nível superior, onde cada subnó representa um
arrastar e soltar, editores de banco de dados e recursos de gerenciamento de
ponto principal de variação. A Tabela I fornece detalhes sobre a taxonomia
arquivos usados durante a criação de um aplicativo. Para construir uma
descrita a seguir.
extensa experiência do usuário, ele usa linguagens padrão como HTML,
Javascript e CSS. • Interface gráfica do usuário:Este grupo de funcionalidades representa as
funcionalidades disponibilizadas no front-end da plataforma considerada
Kissflow [5]é uma plataforma de software de automação de fluxo de trabalho para suportar as interações com o cliente. Exemplos de recursos incluídos
baseada na nuvem para ajudar os usuários a criar e modificar aplicativos em tal grupo são ferramentas de arrastar e soltar, formulários e meios
corporativos automatizados. Seus principais alvos são aplicativos para pequenas avançados de geração de relatórios.
empresas com recursos funcionais completos essenciais para uso interno e • Suporte de interoperabilidade com serviços externos e fontes de
fluxos de trabalho centrados no ser humano, como consulta de vendas, dados: Este grupo de funcionalidades está relacionado com a
solicitação de compra, catálogo de compras, diretório de software e pipeline de possibilidade de interagir com serviços externos como Dropbox,
vendas. Suporta integrações com APIs de terceiros, incluindo Zapier8, Dropbox9, Zapier, Sharepoint e Office 365. Também estão incluídas neste grupo
IFTTT10e Office 36511. possibilidades de conexão com diferentes fontes de dados para a
construção de formulários e relatórios.
Aplicativo Salesforce Cloud [9]ajuda os desenvolvedores a criar e • Suporte de segurança: As funcionalidades deste grupo estão relacionadas
publicar aplicativos baseados em nuvem que são seguros e escaláveis aos aspectos de segurança das aplicações que são desenvolvidas por
sem considerar as pilhas tecnológicas subjacentes. Exibe ferramentas meio da plataforma empregada. Os recursos incluídos em tal grupo
e operações prontas para automação, integrando-as com serviços incluem mecanismos de autenticação, protocolos de segurança adotados
externos. Alguns dos recursos peculiares são o extenso mercado e infraestruturas de controle de acesso do usuário.
AppExchange12consistindo em aplicativos e componentes pré- • Apoio ao desenvolvimento colaborativo: tal grupo está relacionado
construídos, objetos e elementos reutilizáveis, construtor de processo aos modelos de colaboração (por exemplo, online e off-line) que são
de arrastar e soltar e quadros kanban embutidos. implementados para dar suporte à especificação colaborativa de
aplicativos entre desenvolvedores localizados em locais diferentes.
Appiano [1]é uma das plataformas low-code mais antigas, que permite
criar aplicativos móveis e Web por meio de uma ferramenta de
• Suporte à reutilização: Está relacionado aos mecanismos
personalização, meios integrados de colaboração em equipe,
empregados por cada plataforma para possibilitar o
gerenciamento de tarefas e intranet social. O Appian vem com um
reaproveitamento de artefatos já desenvolvidos. Exemplos de
mecanismo de decisão que é útil para modelar lógica complexa.
mecanismos de reutilização são modelos predefinidos, painéis
predefinidos e formulários ou relatórios integrados.
2https://www.docker.com/
• Suporte de escalabilidade: esse grupo de recursos permite que os desenvolvedores
3https://kubernetes.io/
expandam os aplicativos de acordo com diferentes dimensões, como o número de
4https://www.mendix.com/solutions/
5https://www.salesforce.com/it/
usuários ativos gerenciáveis, tráfego de dados e capacidade de armazenamento que

6https://azure.microsoft.com um determinado aplicativo pode manipular.


7https://gsuite.google.com/ • Mecanismos de especificação de lógica de negócios: Refere-se aos meios
8https://zapier.com
fornecidos para especificar a lógica de negócios do aplicativo que está
9https://www.dropbox.com/
sendo modelado. As possibilidades incluídas em tal grupo são mecanismo
10https://ifttt.com/

11https://products.office.com/it-it/home de regras de negócios, editor gráfico de fluxo de trabalho e suporte de


12https://appexchange.salesforce.com/ API que permite que um aplicativo se comunique com
outras aplicações). A lógica de negócios pode ser implementada usando B. Aspectos adicionais para comparação de LCDPs
uma ou mais chamadas de API.
A taxonomia discutida na seção anterior desempenha um papel
• Mecanismos de criação de aplicativos: Refere-se às formas como o
importante quando os usuários precisam comparar LCDPs candidatos e
aplicativo especificado é construído, ou seja, empregando técnicas de
selecionar uma entre as possíveis alternativas. Além das características
geração de código ou por meio de modelos em abordagens de tempo de
apresentadas anteriormente, identificamos aspectos adicionais que são
execução. No primeiro, o código-fonte do aplicativo modelado é gerado a
ortogonais à taxonomia apresentada e que podem ser levados em
partir dos modelos especificados e implantado posteriormente.
consideração quando os tomadores de decisão tiverem que decidir se uma
No último, os modelos especificados são interpretados e usados para
plataforma de desenvolvimento low-code deve ser adotada e qual.
gerenciar a execução em tempo de execução do aplicativo.
• Suporte de implantação: As funcionalidades incluídas em tal grupo estão Tipo de soluções a desenvolver:Existem dois tipos principais de aplicações
relacionadas aos mecanismos disponíveis para implantação da aplicação que podem ser desenvolvidas utilizando LCDPs, nomeadamente B2B
modelada. Por exemplo, uma vez que o sistema tenha sido especificado e (Business to Business) e B2C (Business to Customer Solution). As soluções
construído, ele pode ser publicado em diferentes lojas de aplicativos e B2B fornecem aos usuários funcionalidades de gerenciamento de
implantado em infraestruturas locais ou em nuvem. processos de negócios (BPM), como criação, otimização e automação de
atividades de processos de negócios. Exemplos de soluções B2B incluem
Além dos recursos de nível superior mostrados na Fig. 6, os LCDPs gerenciamento de hotéis, gerenciamento de estoque e gerenciamento de
podem ser classificados também com relação aoTipos de aplicativos recursos humanos. Vários aplicativos podem ser combinados em uma
suportados. Em particular, cada LCDP pode suportar especificamente o solução B2B. As soluções B2C fornecem respostas mais diretas para os
desenvolvimento de um ou mais tipos de aplicativos, incluindo portais da clientes finais. As soluções B2C são para o desenvolvimento de aplicativos
Web, sistemas de automação de processos de negócios e aplicativos de únicos, como sites e aplicativos de gerenciamento de relacionamento com
gerenciamento de qualidade. o cliente. Os aspectos de interatividade do B2C são muito mais cruciais do
que os do B2B.

V. CCOMPARAÇÃO DE RELEVANTELCDPS Tamanho da empresa/organização do usuário:outra dimensão a ser


considerada na seleção dos LCDPs, é o tamanho da empresa/
Nesta seção, usamos a taxonomia apresentada anteriormente para
organização que vai adotar o LCDP selecionado. As organizações se
comparar as oito plataformas de desenvolvimento low-code vistas na
enquadram em três categorias possíveis:pequeno(com menos de 50
Seção 1. III. A Tabela II mostra o resultado da comparação realizada
empregados),médio(se o número de funcionários estiver entre 50 a
mostrando os recursos suportados correspondentes para cada plataforma.
1000),grande(se o número de funcionários for superior a 1000). Assim,
Os dados apresentados na Tabela II são obtidos principalmente
o decisor deve ter em mente o tamanho da organização para
considerando os recursos oficiais de cada plataforma conforme
identificar a solução ótima de acordo com suas necessidades.
referenciado por [8], [6], [10], [7], [3], [5], [9], [1 ], e considerando a
Qualquer organização que deseja escalar sua empresa a um custo
experiência que ganhamos durante o desenvolvimento de um aplicativo de
ideal precisa selecionar um LCDP com base na força da empresa.
benchmark conforme discutido na próxima seção.
LCDPs, como nuvem de aplicativos Salesforce, Mendix e OutSystems,
oferecem suporte a grandes empresas e são usados para
A. Recursos e capacidades desenvolver aplicativos grandes e escaláveis. Google App Cloud,
Appian, Zoho Creator são principalmente para apoiar pequenas e
Os recursos e capacidades essenciais e distintivos das plataformas de baixo médias empresas e são relativamente mais baratos.
código analisadas podem ser resumidos da seguinte forma: OutSystemsfornece
aos desenvolvedores um mecanismo rápido para publicar aplicativos Custo e tempo gasto para aprender a plataforma:o tempo gasto no
desenvolvidos, a capacidade de conectar diferentes serviços, desenvolver desenvolvimento, teste e implantação de um aplicativo pode variar de uma

aplicativos móveis e web responsivos, mecanismos de segurança e painéis em plataforma de baixo código para outra. Para ser proficiente em tais processos,

tempo real.Mendixoferece suporte ao gerenciamento colaborativo de projetos e os usuários devem dedicar tempo para aprender todos os aspectos

desenvolvimento de ponta a ponta, modelos pré-construídos com lojas de relacionados a essa plataforma. Além disso, os tomadores de decisão devem

aplicativos e análises interativas de aplicativos. Zoho Creatortem um construtor considerar os possíveis custos de treinamento que devem ser enfrentados para

de formulários fácil de usar, interfaces de usuário amigáveis e compatíveis com aprender os conceitos e processos dessa plataforma específica de baixo código.

dispositivos móveis e a capacidade de integração de aplicativos entre diferentes


O preço da plataforma low-code:é um dos critérios mais críticos,
aplicativos Zoho CRM, Salesforce, etc. Ele também oferece suporte a modelos
especialmente para empresas de pequeno ou médio porte. O preço
pré-construídos e fluxos de trabalho personalizados. Microsoft Power App
da plataforma pode ser estimado como o preço de uso da plataforma
oferece suporte à integração com o Office 365, modelos pré-construídos, fácil
para um desenvolvedor por mês. Além disso, as dimensões que
conversão de aplicativos móveis e tablets e a capacidade de conectar-se a
contribuem para a definição do preço incluemeu)o número de
aplicativos de terceiros para desenvolvimento básico de aplicativos.Google App
aplicativos que precisam ser implantados eii)onde os dados serão
Makertem uma função de arrastar e soltar semelhante à maioria das
armazenados, ou seja, em bancos de dados no local, em ambientes de
plataformas de baixo código analisadas, visualização de aplicativos, modelos
nuvem ou em configurações híbridas.
reutilizáveis, configurações de implantação, meios para especificar funções de
acesso, tutoriais integrados e integração do Google Analytics.Kissflowsuporta Aumento da produtividade:As possibilidades de adoção de plataformas de
rastreamento de progresso, relatórios personalizados e pré-construídos, desenvolvimento low-code devem ser avaliadas considerando o número
recursos colaborativos e a possibilidade de usar serviços de terceiros, como potencial de aplicações desenvolvidas em relação ao tempo gasto para
Google Doc e documentos Dropbox. Ele também oferece suporte ao Zapier para aprender a plataforma, o preço incorrido em treinamento e para comprar
integrar diferentes sistemas. Nuvem de aplicativo Salesforcetem um amplo as licenças de uso da plataforma considerada.
mercado de aplicativos para aplicativos e componentes pré-construídos, objetos
VI. vocêCANTARLCDPS:UM BREVE RELATÓRIO DE EXPERIÊNCIA
e elementos reutilizáveis, quadros kanban embutidos e um construtor de
processos de arrastar e soltar.ápio oferece suporte a aplicativos móveis nativos, A criação de tais plataformas capazes de dar aos desenvolvedores cidadãos a
ferramentas de arrastar e soltar, gerenciamento de tarefas colaborativas e um capacidade de criar aplicativos completos com mais rapidez e eficiência tem um
mecanismo de decisão com lógica complexa habilitada para IA. custo. Decisões arquitetônicas críticas são tomadas para garantir o mínimo de
codificação, velocidade, flexibilidade, menos adiantado
TABELA I
TAXONOMIA PARAeuOW-CTRIBUTODDESENVOLVIMENTOPLATFORMS

Recurso Descrição
Interface gráfica do usuário
Designer de arrastar e soltar Esse recurso aprimora a experiência do usuário, permitindo arrastar todos os itens envolvidos na criação de um aplicativo, incluindo ações,
respostas, conexões etc.
Abordagem de apontar e clicar Isso é semelhante ao recurso de arrastar e soltar, exceto que envolve apontar para o item e clicar na interface, em vez de
arrastar e soltar o item.
Formulários/relatórios pré-construídos Estes são os formulários ou relatórios editáveis reutilizáveis disponíveis no mercado e mais comuns que um usuário pode usar ao desenvolver um aplicativo.
Painéis pré-construídos Esses são os painéis prontos para uso e os mais comuns que um usuário pode usar ao desenvolver um aplicativo.
Formulários Esse recurso ajuda a criar uma melhor interface e experiência do usuário ao desenvolver aplicativos. Um formulário inclui painéis, formulários personalizados,
pesquisas, listas de verificação etc. que podem ser úteis para aprimorar a usabilidade do aplicativo que está sendo desenvolvido.
Rastreamento de progresso Esse recurso ajuda os colaboradores a combinar seus trabalhos e acompanhar o andamento do desenvolvimento do aplicativo.
Relatórios Avançados Este recurso permite ao usuário obter um relatório gráfico do uso do aplicativo. O relatório gráfico inclui gráficos, tabelas,
gráficos, etc.
Fluxos de trabalho integrados Esse recurso ajuda a concentrar os fluxos de trabalho reutilizáveis mais comuns ao criar aplicativos.
Fluxos de trabalho configuráveis Além dos fluxos de trabalho integrados, o usuário deve ser capaz de personalizar os fluxos de trabalho de acordo com suas necessidades.
Suporte de interoperabilidade
Interoperabilidade com serviços externos Esta funcionalidade é uma das mais importantes para incorporar diferentes serviços e plataformas como Microsoft, Google,
etc. Inclui também as possibilidades de interoperabilidade entre diferentes plataformas low-code.
Conexão com fontes de dados Esse recurso conecta o aplicativo a fontes de dados como Microsoft Excel, Access e outros bancos de dados relacionais,
como Microsoft SQL, Azure e outros bancos de dados não relacionais, como MongoDB.
Suporte de segurança
Segurança do aplicativo Esse recurso habilita o mecanismo de segurança de um aplicativo que envolve confidencialidade, integridade e disponibilidade de um aplicativo, se e
quando necessário.
Segurança da plataforma A gestão de segurança e funções é parte fundamental no desenvolvimento de uma aplicação de forma a garantir a
confidencialidade, integridade e autenticação (CIA) ao nível da plataforma.
Apoio ao desenvolvimento colaborativo
Colaboração off-line Diferentes desenvolvedores podem colaborar na especificação do mesmo aplicativo. Eles trabalham off-line localmente e, em seguida, enviam para um servidor
remoto suas alterações, que precisam ser mescladas adequadamente.
Colaboração on-line Diferentes desenvolvedores colaboram simultaneamente na especificação do mesmo aplicativo. Os conflitos são gerenciados em tempo de execução.
Suporte à reutilização
Fluxos de trabalho integrados Esse recurso ajuda a concentrar os fluxos de trabalho reutilizáveis mais comuns na criação de um aplicativo.
Formulários/relatórios pré-construídos Estes são os formulários ou relatórios editáveis reutilizáveis disponíveis no mercado e mais comuns que um usuário pode querer empregar ao desenvolver um
aplicativo.
Painéis pré-construídos Esses são os painéis prontos para uso e os mais comuns que um usuário pode querer empregar ao desenvolver um aplicativo.
Escalabilidade
Escalabilidade no número de usuários Esses recursos permitem que o aplicativo seja dimensionado em relação ao número de usuários ativos que estão usando esse aplicativo ao mesmo
tempo.
Escalabilidade no tráfego de dados Esse recurso permite que o aplicativo seja dimensionado em relação ao volume de tráfego de dados permitido por esse aplicativo em um determinado
momento.
Escalabilidade no armazenamento de dados Esse recurso permite que o aplicativo seja dimensionado em relação à capacidade de armazenamento de dados desse aplicativo.
Mecanismos de especificação de lógica de negócios
Mecanismo de regras de negócios Este recurso auxilia na execução de uma ou mais regras de negócio que auxiliam no gerenciamento dos dados de acordo com os requisitos do usuário.
Editor de fluxo de trabalho gráfico Esse recurso ajuda a especificar uma ou mais regras de negócios de maneira gráfica.
Lógica de negócios habilitada para IA Esta é uma característica importante que usa Inteligência Artificial para aprender o comportamento de um atributo e replicar esses comportamentos
de acordo com os mecanismos de aprendizagem.
Mecanismos de criação de aplicativos
Geração de código De acordo com esta funcionalidade, o código fonte da aplicação modelada é gerado e posteriormente implantado antes de sua execução.
Modelos em tempo de execução O modelo da aplicação especificada é interpretado e utilizado em tempo de execução durante a execução da aplicação modelada sem
realizar nenhuma fase de geração de código.
Suporte de implantação
Implantação na nuvem Esses recursos permitem que um aplicativo seja implantado online em uma infraestrutura de nuvem quando o aplicativo estiver pronto para ser implantado e
usado.
Implantação em infraestruturas locais Esses recursos permitem que um aplicativo seja implantado localmente na infraestrutura da organização do usuário quando o aplicativo estiver pronto para
ser implantado e usado.
Tipos de aplicativos suportados
Monitoramento de eventos Esse tipo de aplicativo envolve o processo de coleta de dados, análise do evento que pode ser causado pelos dados e sinalização de quaisquer
eventos ocorridos nos dados para o usuário.
Automação do processo Esse tipo de aplicativo se concentra na automação de processos complexos, como fluxos de trabalho, que podem ocorrer com o mínimo de intervenção
humana.
Controle do processo de aprovação Este tipo de aplicações consiste em processos de criação e gestão de aprovações de obras dependentes da autorização do utilizador. Por exemplo,
tarefas de pagamento devem ser gerenciadas apenas com a aprovação de pessoal autorizado.
Gerenciamento de escalonamento Este tipo de aplicações situam-se no domínio do serviço ao cliente e centram-se na gestão dos pontos de vista do utilizador que filtram aspetos que não
são da competência do utilizador.
Gestão de inventário Este tipo de aplicação serve para monitorar a entrada e saída de mercadorias e gerenciar a quantidade certa de mercadorias a serem armazenadas.
Gestão da Qualidade Este tipo de aplicações é para gerenciar a qualidade de projetos de software, por exemplo, com foco no planejamento, garantia, controle e
melhorias dos fatores de qualidade.
Gestão de fluxo de trabalho Esse tipo de aplicativo é definido como sequências de tarefas a serem executadas e monitoradas durante sua execução, por exemplo, para
verificar o desempenho e a exatidão do fluxo de trabalho geral.

investimento e funcionalidades prontas para uso que entregam o para investigar como o código reutilizável e os artefatos desenvolvidos em uma
aplicativo completo mais rapidamente. No entanto, decisões que plataforma podem ser integrados em outras plataformas de baixo código,
normalmente são tomadas durante o uso de LCDPs podem dar lugar a facilitando assim o caminho para a descoberta e reutilização de artefatos já
alguns problemas que podem surgir posteriormente. Em particular, para comprovados em diferentes plataformas.
obter insights sobre LCDPs, desenvolvemos a mesma aplicação de A primeira atividade realizada para desenvolver o aplicativo de
benchmark empregando diferentes plataformas, nomeadamente Google benchmark foi a elicitação dos requisitos relacionados. Criamos os
App Maker, Mendix, Microsoft PowerApps e OutSystems. A aplicação casos de uso correspondentes e, portanto, os requisitos funcionais do
benchmark é um sistema de gestão de cursos que visa facilitar aos sistema. De acordo com a experiência realizada, aplicações de
formadores e formandos a gestão dos seus cursos, horários, inscrições e software podem ser construídas em LCDPs seguindo duas
assiduidade. Apesar da simplicidade do aplicativo, ele apresenta requisitos abordagens principais:
gerais do usuário que são comuns durante o desenvolvimento de • interface do usuário para dados-o desenvolvedor começa a construir o aplicativo
funcionalidades típicas como gerenciamento de dados, sua recuperação e criando uma interface de usuário e, em seguida, vinculando-a às fontes de dados
visualização. Além disso, tivemos a possibilidade de integrar serviços necessárias. Formulários e páginas são definidos primeiro, seguidos pela
externos via APIs de terceiros. Nós conseguimos especificação de regras de lógica de negócios e fluxos de trabalho,
TABELA II
CCOMPARAÇÃO DA BAIXA ANALISADA-PLATAFORMAS DE DESENVOLVIMENTO DE CÓDIGO

Recurso OutSystems Mendix Zoho Creator MS Power App Google App Maker Kissflow Nuvem de aplicativo Salesforce ápio
Interface gráfica do usuário
Designer de arrastar e soltar 3 3 3 3 3 3 3
Abordagem de apontar e clicar 3
Formulários/relatórios pré-construídos 3 3 3 3 3 3 3 3
Painéis pré-construídos 3 3 3 3 3
Formulários 3 3
Rastreamento de progresso 3 3 3 3 3 3 3 3
Relatórios avançados 3
Fluxos de trabalho integrados 3 3 3
Fluxos de trabalho configuráveis 3 3 3
Suporte de interoperabilidade
Interoperabilidade com serviço externo 3 3 3 3 3 3 3
Conexão com fontes de dados 3 3 3 3 3 3 3 3
Suporte de segurança
Segurança do aplicativo 3 3 3 3 3 3 3 3
Segurança da plataforma 3 3 3 3 3 3 3 3
Apoio ao desenvolvimento colaborativo
Colaboração off-line 3 3 3 3 3 3 3 3
Colaboração on-line 3 3 3 3 3 3
Suporte à reutilização
Fluxos de trabalho integrados 3 3 3
Formulários/relatórios pré-construídos 3 3 3 3 3 3 3 3
Painéis pré-construídos 3 3 3 3 3
Escalabilidade
Escalabilidade no número de usuários 3 3 3 3 3 3 3 3
Escalabilidade no tráfego de dados 3 3 3 3 3 3 3
Escalabilidade no armazenamento de dados 3 3 3 3 3 3 3
Mecanismos de especificação de lógica de negócios
Mecanismo de regras de negócios 3 3 3 3 3 3 3 3
Editor de fluxo de trabalho gráfico 3 3 3 3
Lógica de negócios habilitada para IA 3 3 3 3
Mecanismos de criação de aplicativos
Geração de código 3
Modelos em tempo de execução 3 3 3 3 3 3 3
Suporte de implantação
Implantação na nuvem 3 3 3 3 3 3 3 3
Implantação em infraestruturas locais 3 3 3 3
Tipos de aplicativos suportados
Monitoramento de eventos 3 3 3 3 3 3 3 3
Automação do processo 3 3 3 3 3 3
Controle do processo de aprovação 3
Gerenciamento de escalonamento 3
Gestão de inventário 3 3 3 3 3 3 3 3
Gestão da Qualidade 3 3 3 3 3 3 3
Gestão de fluxo de trabalho 3 3 3 3 3 3 3 3

que levam à integração de serviços externos antes da uma perspectiva mais ampla sobre os possíveis desafios que podem afetar
implantação do aplicativo. LCDPs como Mendix, Zoho os LCDPs.
Creator, Microsoft PowerApps e Kissflow podem seguir essa
abordagem. Interoperabilidade das plataformas Low-code:esta característica garante a
• Dados para IU-é uma abordagem orientada a dados que começa interação e troca de informações e artefatos entre diferentes plataformas
com a modelagem de dados e, em seguida, constrói a interface low-code, por exemplo, para compartilhar projeto arquitetônico,
do usuário do aplicativo seguida pela especificação de regras de implementação ou serviços desenvolvidos. Esse recurso também é
lógica de negócios e fluxos de trabalho. Posteriormente, leva à essencial para mitigar problemas relacionados a bloqueios de
integração de serviços externos, se necessário antes da fornecedores. Infelizmente, a maioria das plataformas de baixo código são
implantação do aplicativo. LCDPs como OutSystems, Mendix, fontes proprietárias e fechadas. Há uma falta de padrões neste domínio,
Zoho Creator, Microsoft PowerApps, Salesforce App Cloud e dificultando o desenvolvimento e a colaboração entre diferentes
Appian podem seguir essa abordagem. engenheiros e desenvolvedores. Assim, eles são incapazes de aprender
uns com os outros, e a reutilização de projetos arquitetônicos, artefatos e
Especificação de regras de lógica de negócios, fluxos de trabalho e
implementações já definidos ainda é dificultada.
integração de serviços externos podem ser trocados de acordo com o
estilo do desenvolvedor em ambas as abordagens mencionadas acima.
Extensibilidade:a capacidade de adicionar novas funcionalidades não
Ao desenvolver os aplicativos de referência considerados com os LCDPs oferecidas pela plataforma considerada é difícil em tais plataformas
considerados, conseguimos identificar alguns desafios que usuários e proprietárias ou mesmo impossível. Devido à falta de padrões, alguns
desenvolvedores provavelmente enfrentarão ao longo do desenvolvimento em deles exigem codificação extensa para adicionar novos recursos, que
LCDPs, como problemas de interoperabilidade entre diferentes plataformas de devem aderir às restrições de arquitetura e design da plataforma que está
baixo código, limitações de extensibilidade, curvas de aprendizado acentuadas, sendo estendida.
e problemas de escalabilidade [15] [19] [20]. Abaixo, discutimos esses desafios
que transcendem a maioria das plataformas de desenvolvimento de código Curva de aprendizado:a maioria das plataformas tem interfaces gráficas
baixo que pesquisamos. Não discutiremos possíveis desafios que também menos intuitivas. Para alguns deles, os recursos de arrastar e soltar são
podem ocorrer em relação à otimização de código ou riscos de segurança e limitados e não fornecem material didático suficiente, incluindo aplicativos
conformidade, porque não pudemos avaliar profundamente esses recursos de amostra e tutoriais on-line para aprender a plataforma.
devido à falta ou visibilidade limitada das plataformas consideradas de baixo Consequentemente, a adoção da plataforma pode ser afetada. A adoção
código. No entanto, reconhecemos que tais aspectos devem ser investigados no de algumas plataformas ainda exige conhecimento em desenvolvimento
futuro para dar de software, limitando assim sua adoção por cidadãos
desenvolvedores que deveriam ser o principal alvo dessas permitindo a interoperabilidade de diferentes plataformas de desenvolvimento de
plataformas e produtos. código baixo.

Escalabilidade:As plataformas de baixo código devem ser ACONHECIMENTO


preferencialmente baseadas na nuvem e devem ser capazes de lidar com
Este trabalho é financiado pelo programa de pesquisa e
cálculos intensivos e gerenciar big data, que são produzidos em alta
inovação Horizon 2020 da União Europeia sob o contrato de
velocidade, variedade e volume [17]. No entanto, devido à falta de padrões
concessão Marie Skłodowska-Curie – ITN nº 813884.
abertos para tais plataformas, é muito desafiador avaliar, pesquisar e
contribuir para a escalabilidade dessas plataformas. REFERÊNCIAS
[1] Visão geral da plataforma Appian. https://www.appian.com/. Acessado: 2020-03-
No geral, os LCDPs são adequados para organizações com recursos e
23.
orçamento de TI limitados porque podem fornecer produtos completos em https://www.g2.com/
[2] Melhor software de plataformas de desenvolvimento de código baixo. categorias/plataformas de

um curto espaço de tempo, como no caso de aplicativos de CRM. No desenvolvimento de baixo código. Acessado: 2020-05-26.
[3] Guia da plataforma do criador de aplicativos do Google. https://developers.google.com/
entanto, as possibilidades de desenvolvimento dependem das
appmaker/ visão geral. Acessado: 2020-03-23.
funcionalidades fornecidas pelos módulos disponíveis, e os usuários [4] Uma introdução à plataforma low-code. guia de https://www.mendix.com/
podem precisar acomodar seus requisitos iniciais dependendo das opções código baixo/. Acessado: 2020-03-23.
[5] Visão geral da plataforma Kissflow. https://kissflow.com/process-management/.
oferecidas pela plataforma empregada. A integração de terceiros e o
Acessado: 2020-03-23.
gerenciamento e manutenção dos aplicativos desenvolvidos podem ser [6] Recursos da plataforma Mendix. https://www.mendix.com/platform/. Acessado:
prejudicados dependendo das capacidades de extensibilidade dos LCDPs 2020-03-23.
[7] Visão geral da plataforma Microsoft powerapps. https://docs.microsoft.com/en-us/
empregados.
powerapps/criador/. Acessado: 2020-03-23.
[8] Recursos da plataforma Outsystem. https://www.outsystems.com/platform/. Ac-
VII. CONCLUSÃO E TRABALHO FUTURO acessado: 2020-03-23.
[9] Visão geral da plataforma de nuvem do aplicativo Salesforce. https://developer.salesforce.com/
Nos últimos anos, o interesse em torno dos LCDPs aumentou
plataforma. Acessado: 2020-03-23.
significativamente tanto na academia quanto na indústria. [10] Recursos da plataforma de criadores Zoho. https://www.zoho.com/creator/features.html.
Compreender e comparar centenas de plataformas de baixo código Acessado: 2020-03-23.
[11] Francesco Basciani, Juri Rocco, Davide Di Ruscio, Amleto Di Salle, Ludovico Iovino e
[2] pode ser uma tarefa árdua e desafiadora sem a disponibilidade de
Alfonso Pierantonio. Mdeforge: Uma plataforma de modelagem extensível
uma estrutura conceitual apropriada que sustente sua avaliação. baseada na web. volume 1242, 09 2014.
Neste artigo, analisamos oito plataformas low-code consideradas [12] Marco Brambilla, Jordi Cabot e Manuel Wimmer.Engenharia de software
líderes no mercado relacionado, para identificar seus pontos em orientada a modelos na prática, volume 1. 09 2012.
[13] Krzysztof Czarnecki.Programação generativa - princípios e técnicas de engenharia de
comum e variabilidade. Um conjunto organizado de características software baseados em configuração automatizada e modelos de componentes
distintivas foi definido e usado para comparar as plataformas baseados em fragmentos. Tese de doutorado, Technische Universität Illmenau,
Alemanha, 1999.
consideradas. Um breve relato de experiência também foi
[14] Krzysztof Czarnecki.Engenharia de domínio, páginas 433–444. Sociedade
apresentado para discutir alguns recursos essenciais de cada Americana de Câncer, 2002.
plataforma, limitações e desafios que identificamos durante o [15] Justiça Opara-Martins, R. Sahandi e Feng Tian. Implicações da integração e
interoperabilidade para aplicativos corporativos baseados em nuvem. páginas
desenvolvimento de nosso aplicativo de benchmark.
213–223, 10 2015.
No futuro, planejamos refinar a taxonomia proposta considerando [16] C. Richardson e JR Rymer. A onda forrester: plataformas de desenvolvimento Low-code,
LCDPs adicionais para obter um conjunto de recursos abrangente e segundo trimestre de 2016. tech. rep.Forrester Research, 2016.
[17] Juri Rocco, Davide Di Ruscio, Ludovico Iovino e Alfonso Pierantonio. Repositórios
totalmente validado. Esse processo de refinamento também pode envolver
colaborativos em engenharia orientada a modelos [tecnologia de software].
os diferentes provedores de LCDP para validar ainda mais a taxonomia Software IEEE, 32:28–34, 05 de 2015.
criada e compartilhar com eles os desafios e as lições que aprendemos [18] John R. Rymer. A onda forrester: plataformas de baixo código para desenvolvedores de negócios,
segundo trimestre de 2019.Forrester Research, 2019.
durante o desenvolvimento do aplicativo de benchmark discutido. Além
[19] Amandeep Singh, Pardeep Mittal e Neetu Jha. Foss: Um desafio para o
disso, planejamos nos concentrar mais nas facilidades de reutilização e software proprietário.IJCST, 4 de 2013.
interoperabilidade que são necessárias para as plataformas lowcode. Os [20] Paul Vincent, Kimihiko Iijima, Mark Driver, Jason Wong e Yefim Natis. Quadrante mágico
para plataformas de aplicativos empresariais de baixo código.Relatório do Gartner,
principais objetivos sãoeu)a concepção e desenvolvimento de um
2019.
repositório que suporta a reutilização de artefactos de baixo código já [21] Robert Waszkowski. Plataforma de baixo código para automatizar processos de
desenvolvidos,ii)e desenvolvimento de mecanismos genéricos negócios na manufatura.IFAC-PapersOnLine, 52(10):376–381, 2019.

Ver estatísticas de publicação

Você também pode gostar