Blogia
Ronny Estredo

Programación. Arte Vs. Ingeniería

Programación. Arte Vs. Ingeniería

La programación es un proceso mediante el cual, el “Programador”  se propone escribir un “Programa”   que será utilizado  en una computadora  bajo una arquitectura X. Ahora bien, el insumo básico para poder desarrollar cualquier software  es una herramienta de programación que puede ir desde un  lenguaje  de programación simple estándar, normalizado, un IDE o un Framework   de trabajo…

En el proceso de desarrollo de un software, es necesario definir la herramienta a utilizar, haciendo una justificación válida  del  porqué   fue seleccionada.

No existe ningún patrón  o receta que determine que o cual herramienta a utilizar, sin embargo  se presentan ciertas características comunes deseables por todo programador, tales como:

Conocimiento: Preferiblemente el programador debe conocer las funcionalidades y expresiones de la herramienta.

Curva de Aprendizaje Corta: En el caso de no conocer la herramienta de programación, el programador desea desde lo mas profundo que   la herramienta sea fácil de aprender en un tiempo denominado corto dentro de la planificación del proyecto.

Multiparadigma/Multitecnología: La herramienta de programación  a utilizar, preferiblemente debe aceptar  diferentes estilos  de programación o paradigmas ya que en la práctica sabemos que  un paradigma en particular no resuelve todos los problemas que se le presentan  de la manera mas  idónea (es decir,  con facilidad y eficiencia); sin embargo,  es necesario que  haga énfasis en las ultimas y mejores prácticas  paradigmáticas, tales como la Orientación  a Objetos,   Paradigma Visual, imperativo, Lógico, funcional,  modular con facilidad de manejo de componentes reutilizables  aplicables a diferentes tecnologías (Escritorio -  Cliente/Servidor -  CGI – WEB – RIA).

Multipropósito: Esta característica supone que la herramienta puede ser utilizada para desarrollar una aplicación de cualquier propósito y no que esté dedicada a la programación de aplicaciones en un área de conocimiento específica. A saber, la herramienta puede ser utilizada  para gestionar archivos de datos, base de datos, formulación científica, simulación de sistemas, aspectos financieros, control de procesos  e inclusive  debe permitir crear nuevas herramientas  como frameworks,  y  nuevos componentes.

Es posible que en los inicios de la programación, se pudiera considerar como un arte,   ya que, cada programador seguía sus instintos sobre que se necesitaba y le ponía un toque personal a las interfaces. Hoy día ,  se habla de desarrollo de software y no de fabricación  aunque la palabra construcción esté explícita en el proceso.

Un proyecto de software es una verdadera obra de ingeniería;  surge de una necesidad individual o colectiva,  se desarrolla con la participación  de  cierto número de actores que  varía de acuerdo al ámbito o alcance,  se rige por un proceso, modelaje y metodología  esencialmente probada que proponga   las mejores prácticas y en general, se ejecuta en fases.  Se requiere conocimientos obtenidos a través del estudio,   excelente planificación y la capacidad de “oir”  a los clientes  para conocer efectivamente los requerimientos. Por último se debe prestar suma importancia a la documentación.

Cita del Libro en desarrollo:

META-METODOLOGIA ECLECTICA PARA PROYECTOS  INFORMÁTICOS
CON ÉNFASIS EN LA INGENIERÍA DE SOFTWARE

Por Ronny Estredo.

0 comentarios