Desarrollador de software

Ada Lovelace (1815-1852), considerada la primera programadora de ordenadores del mundo, después de que escribiera un algoritmo para la máquina analítica de Charles Babbage.
Dennis Ritchie en la ceremonia del llamado Premio Japón (otorgado anualmente por la ( Japan Prize Foundation), en mayo de 2011.
La cadena de producción de software tiene cinco pasos: (1) Conceptualización ; (2) Prueba de coherencia (interés, utilidad) ; (3) Desarrollo ; (4) Comercialización ; (5) Soporte y mejora del software (actualización y mantenimiento).
Infraestructura de clave pública
CA: Autoridad de Certificación ; VA: Autoridad de Validación ; RA: Autoridad de Registro.

La función del desarrollador de software recae en un programador o una compañía comercial que se dedica a uno o más aspectos del proceso de desarrollo de software. Se trata de un ámbito más amplio de la programación algorítmica.

En informática, un desarrollador[1]​(al que con frecuencia también se conoce como analista-programador), es un especialista en informática que es capaz de concebir y elaborar sistemas informáticos (paquetes de software), así como de implementarlos y ponerlos a punto, utilizando uno o varios lenguajes de programación.

El desarrollador puede contribuir a la visión general del proyecto más a nivel de aplicación que a nivel de componentes, así como en las tareas de programación individuales.

Conforme pasa el tiempo, la separación entre el diseño de sistemas informáticos, el desarrollo de software, y la programación, se van haciendo más claras y diferenciadas. En el mercado laboral suele encontrarse una diferenciación entre programadores y desarrolladores, siendo estos últimos los que diseñan la estructura o jerarquía de clases. Incluso esos desarrolladores se convierten en arquitectos de sistemas informáticos, o sea, aquellos que diseñan la arquitectura a varios niveles o las interacciones entre componentes de un proyecto de software grande.

El concepto de desarrollo de software incluye:

  • Trabajo en equipo: los proyectos son en general una colaboración entre varios desarrolladores, que tratan cada uno una parte específica del sistema que se desarrolla, y también de otros tipos de colaboradores, como los comerciales (que definen con el cliente la finalidad y las necesidades del producto), o como los diseñadores gráficos (que definen el aspecto de las pantallas y cuestiones relativas a la ergonomía), etc.
  • Concepción o diseño: a partir de un pliego de condiciones (user requirement specifications), se definen las especificaciones técnicas (estructura de datos, comunicación entre módulos, etcétera).
  • Pruebas: sirven para detectar las disconformidades de trabajadores y clientes, y los errores.
  • Mantenimiento: abarca la corrección de los errores después que comienza el uso comercial del programa informático, así como las mejoras que se revelen como necesarias para hacer evolucionar el producto.

Nota: Para que un programador se convierta en desarrollador, debe poseer experiencia y saber el manejo y la aplicación de metodologías de desarrollo; es sobre todo la experiencia y el conocimiento técnico, lo que ha impulsado la evolución del término 'programador' hacia el término 'desarrollador'.

Terminología

Según el diccionario de la lengua francesa 'Larousse'[5]​ así como los especializados en el sector de las Tecnologías de la información y la comunicación (TICS), grupos todos estos en los que se encuentran desarrolladores con las características que se indican seguidamente:

  • El desarrollador informático o desarrollador web[7]​ responsable de los códigos-fuente elaborados en diferentes lenguajes de programación web (programación con el propósito de hacer páginas web, lo que a menudo es llamado programación web o desarrollo web), utilizando entre otros lenguajes de marcas, el HyperText Markup Language –HTML– (en español: lenguaje de marcas de hipertexto), el Cascading StyleSheets –CSS– (en español: Hojas de estilo en cascada), y el Extensible Markup Language –XML– (en español: Lenguaje de Marcas Extensible), etc. des langages interprétés notamment composé des langages Plantilla:Abréviation Hypertext Preprocessor, Plantilla:Abréviation Active Server Pages, Pascal, Perl ou encore du JavaScript, ou des langages à objet Plantilla:Abréviation composée entre autres de C++, de Java, de Ruby, ou de Python.
  • Le développeur multimédia, designer graphique, chargée des graphismes (le WebArt, Web design), ou de l'encapsulation dynamique audio/vidéo.
  • Le développeur logiciel ou concepteur de logiciel, chargé de construire pour une entité ou pour une finalité un programme spécifique tel que les applications mobiles pour les environnement nomades, logiciels sur des systèmes embarqués ou la Domotique.
Other Languages