Desarrollador de software

Saltar a: navegación, búsqueda
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.
Un ingeniero de software mostrando el código en el que está trabajando.

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'[2]​ y la 'Office québécois de la langue française' (en español: 'Oficina quebecuense de la lengua francesa'),[3]​ y aunque esto no es reconocido por el Centre national de ressources textuelles et lexicales[4]​), el término «développeur»[1]​ (en español: «desarrollador») se aplica (en el dominio de la informática), a una persona que concibe y desarrolla aplicaciones informáticas, o una empresa organizada y orientada a desarrollar ese tipo de aplicaciones y su asociado software. Sin embargo, en el caso de las personas, es posible distinguir a los desarrolladores por especialidad y formación, o sea, diferenciar entre los expertos en el arte del manejo, uso, y creación de software, y los especializados particularmente en todo lo relativo a Internet y al manejo de ordenadores (sistemas operativos, programas utilitarios, etc),[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 [6][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.

Tareas específicas de un desarrollador

Para responder adecuadamente y en la mejor forma a las necesidades del cliente, conviene que en una primera etapa el desarrollador establezca un « cuaderno de carga », a efectos de determinar y especificar las necesidades del cliente en materia de automatización, informatización, y control, asunto por asunto. En esta etapa, conviene que se aclaren las siguientes cuestiones:

  • En cuanto a la informatización, convendrá aclarar las ventajas de la misma, ya que hay casos en los que las cosas pueden llegar a ser más eficientes y con mejores resultados económicos sin informatización que con ella. Esta cuestión es crucial y fundamental, y deberá ser analizada con visión de largo alcance, pues de lo que generalmente se trata, es de concebir un sistema informático que acompañe al clente en su evolución futura durante los próximos años.

l s'agit ici d'une phase cruciale puisqu'il faut non seulement répondre aux besoins présents du client, mais aussi, concevoir un système informatique qui accompagnera le client dans l'évolution de ses activités.

Dans un second temps il développe une solution technique (Hardware) et crée un modèle (analyse organique) du futur logiciel (software) gérant le futur système informatique (s'il n'existe pas).

Il écrit ensuite des lignes de code nécessaires au correct fonctionnement (programmation), participe aux phases d'essais, réalise la documentation technique, s'occupe du suivi et de la maintenance de son produit. Il peut également former les utilisateurs.

Ses responsabilité principales sont :

Le travail d’équipe
L'équipe projet travaille à la réalisation du logiciel correspondant aux besoins du client.
La conception (design)
À partir d’un cahier des charges (software requirement specifications – SRS ou user requirement specifications), le développeur doit définir les spécifications techniques du programme : structure des données, communication entre les modules…
Les tests
Les tests servent à détecter les non-conformités et les erreurs (bugs), et à la non-régression.
La maintenance 
Dans certaines situations, la maintenance est gérée à part du cycle initial de développement.

Plusieurs méthodes de développement existent, mais Plantilla:Refnec. De nos jours, de plus en plus d'entreprises adoptent toutefois un modèle de développement où l'humain est davantage placé au cœur du processus de production (on parle de Méthodes agiles ou parfois d'Agilité).

Véase también

Referencias

  • name="larlogiciel" -- Définition: logiciel, sitio digital 'Larousse, Dictionnaire de la Langue Française'.