La evolución de la ingeniería del software a buscado desde el comienzo incrementar el nivel de abstracción con el objeto de permitir concentrarse en el area del problema y no de la aplicación.
Esto a producido no solo herramientas cada vez más versatiles de desarrollo sino sistemas operativos cada vez más complejos incrementando el nivel de productividad de los desarrolladores y decrementar el nivel de conocimientos necesarios para abordar problemas cada vez de de mayor tamaño y complejidad.
El siguiente paso en este proceso evolutivo se encuentra en convertir las notaciones clasicas de definición de lso problemas en herramientas ontologicas capaces de obtener el codigo resultante.
Esto elimina en un alto grado el nivel de interpretación que un programador puede alcanzar sobre un análisis pero también elimina las fuentes principales causantes de las principales catástrofes en los proyectos de desarrollo.
En la actualidad existen una gran cantidad de herramientas plataformas frameworks prometiendo de forma total o parcial el solucionar la eterna crisis del desarrollo de software.
Pero este sigue siendo un proyecto de una evergadura ingente para una sola empresa o para una sola herramienta.
Entre las iniciativas mas interesantes se encuentras varias opciones con mejores o peores resultados.
La iniciativa de MDA con la OMG al frente proporcionado especificaciones de cómo deberían funcionar las cosas pero sin llegar a marcar un camino claro de cómo alcanzarlos.
Dentro de esta iniciativa cientos de empresa se han adherido con propuestas de herramientas cuyos periodos de evaluación pueden ser inviables.
La iniciativa de Microsoft con sus DSL por un lado un salto adicional al propio MDA pero obviando la necesida promulgada por la omg de independencia de la plataforma.
Constituye un enfoque muy práctico pero todavía excesivamente primigenio en el conjunto de posibilidades a ofrecer.
Por ultimo lo enfoques RAD buscando herramientas que delimitan el contexto de aplicación y que tienden a centrarse mejor en determinadas capas de la aplicación en detrimento de las restantes.
Con grande ventajas para los programadores noveles con poca experiencia pero que suponen siempre entornos muy cerrados de trabajo y la utilización de runtimes y elementos inaccesibles.
Suelen generar toda una serie de productos a su alrededor para cubrir de forma constante sus propias carencias.>
En este contexto ABIsolutions cuenta con una estrategia y un criterio de evaluación depurado a través de muchas horas de dedicación y estudio para determinar una cadena de montaje especifica para cada plataforma pero intentando que la definición de los modelos pueda ser finalmente trasladable entre dichas plataformas.
Esta cadena de montaje busca no solo el incremento de productividad de los recursos de programación tambien busca de forma incesante la industrialización del proceso de desarrollo de software