Desarrollo del usuario final


El desarrollo del usuario final ( EUD ) o la programación del usuario final ( EUP ) se refiere a actividades y herramientas que permiten a los usuarios finales , personas que no son desarrolladores de software profesionales, programar computadoras . Las personas que no son desarrolladores profesionales pueden utilizar las herramientas de EUD para crear o modificar artefactos de software (descripciones de comportamiento automatizado) y objetos de datos complejos sin un conocimiento significativo de un lenguaje de programación . En 2005 se estimó (utilizando estadísticas de la Oficina de Estadísticas Laborales de EE. UU.) que para 2012 habría más de 55 millones de desarrolladores de usuarios finales en los Estados Unidos, en comparación con menos de 3 millones de programadores profesionales. [1] Existen varios enfoques de EUD, y es un tema de investigación activo dentro del campo de la informática y la interacción persona-computadora . Los ejemplos incluyen programación en lenguaje natural , [2] [3] hojas de cálculo , [4] lenguajes de scripting (particularmente en una suite ofimática o aplicación artística), programación visual , programación de acción de disparo y programación por ejemplo .

La herramienta EUD más popular es la hoja de cálculo . [4] [5] Debido a su naturaleza irrestricta, las hojas de cálculo permiten a los usuarios de computadoras relativamente poco sofisticados escribir programas que representan modelos de datos complejos, mientras los protegen de la necesidad de aprender lenguajes de programación de nivel inferior. [6] Debido a su uso común en los negocios, las habilidades de hoja de cálculo se encuentran entre las habilidades más beneficiosas que puede tener un empleado graduado y, por lo tanto, son las más solicitadas [7] Solo en los Estados Unidos de América, se estima que hay 13 millones de desarrolladores de usuarios finales que programan con hojas de cálculo [8]

El enfoque de programación por ejemplo ( PbE ) reduce la necesidad de que el usuario aprenda las abstracciones de un lenguaje de programación clásico. En cambio, el usuario introduce algunos ejemplos de los resultados deseados u operaciones que deben realizarse en los datos, y el sistema PbE infiere algunas abstracciones correspondientes a un programa que produce esta salida, que el usuario puede refinar. A continuación, se pueden introducir nuevos datos en el programa creado automáticamente, y el usuario puede corregir los errores cometidos por el programa para mejorar su definición. Las plataformas de desarrollo de bajo código también son un enfoque para EUD.

Una evolución en esta área ha considerado el uso de dispositivos móviles para respaldar las actividades de desarrollo del usuario final. En este caso, los enfoques anteriores para aplicaciones de escritorio no pueden simplemente volver a proponerse, dadas las características específicas de los dispositivos móviles. Los entornos de escritorio EUD carecen de las ventajas de permitir a los usuarios finales crear aplicaciones de forma oportunista mientras se desplazan. [9]

Más recientemente, ha aumentado el interés en cómo explotar EUD para respaldar el desarrollo de aplicaciones de Internet de las cosas. En este ámbito, la programación de acciones desencadenantes parece un enfoque prometedor. [10]

Las lecciones aprendidas de las soluciones EUD pueden influir significativamente en los ciclos de vida del software para productos de software comerciales , desarrollos internos de intranet / extranet y despliegues de aplicaciones empresariales .