Durée : 455 heures

Définition, description de l’activité type et conditions d’exercice

L’activité consiste à automatiser des processus d’entreprise dans une architecture technique et applicative n-tiers, à partir de composants fonctionnant sur des serveurs distincts et coopérant au travers d’un réseau.
A partir du cahier des charges de l’application, le concepteur développeur conçoit la solution puis développe ou adapte des composants afin de construire une application sécurisée dans cette architecture applicative n-tiers.

Les productions attendues sont la conception de la solution, incluant les cas d’utilisation et les diagrammes de classes, ainsi que le développement de la solution sous la forme d’une architecture applicative n-tiers s’appuyant sur les technologies objet.
Le concepteur développeur informatique fournit les sources des composants réalisés, les jeux d’essai fonctionnels et les jeux d’essai utilisés pour les tests d’intégration, le planning de suivi des tâches à réaliser, l’application opérationnelle et la documentation associée. Il contribue à l’élaboration du scénario de déploiement.

Dans l’étape d’analyse, le concepteur développeur informatique recueille ou utilise le cahier des charges de l’application pour établir les cas d’utilisation avec les scénarios, et les diagrammes de classes.

Dans l’étape de conception technique, le concepteur développeur informatique définit l’architecture physique et logicielle dans le respect des bonnes pratiques, puis la formalise en diagrammes de séquence détaillés, en diagrammes de collaboration, en diagrammes de classes et de composants et en diagramme de déploiement.
Il identifie les composants nécessaires, définit leur implantation dans l’architecture choisie et établit la documentation technique.

Dans l’étape de réalisation, le concepteur développeur informatique développe, intègre et teste les composants des couches métier, présentation et persistance des données, en tenant compte de la conception établie et dans le respect des bonnes pratiques.

Dans l’étape de déploiement, le concepteur développeur informatique participe à l’élaboration de la stratégie de déploiement et de sécurité de l’application. Il déploie les composants réalisés sur les serveurs de test de l’architecture prévue.

Le concepteur développeur a la responsabilité de l’élaboration des différents schémas de conception, du développement des composants qui en sont issus, et de leur intégration. Il respecte les contraintes de sécurité telles que l’accessibilité, la confidentialité et l’intégrité.

Il a en charge la définition des environnements de tests et de développement.
Il dispose de la démarche à suivre, issue du plan qualité et d’un outil de modélisation.
Il utilise un outil collaboratif de gestion des itérations de développement et des versions, afin de faciliter le développement parallèle des différents composants d’une même application.

Il prend connaissance des spécificités du domaine d’application et, dans le cadre d’opérations de maintenance évolutive, il prend en compte l’architecture applicative existante.

Il contribue à la mise à jour permanente du planning du projet, participe aux réunions de fin d’itération et aux ateliers de présentations utilisateurs, et prend en compte les enseignements tirés des incidents résolus. Il rend compte de l’avancement des travaux, des difficultés rencontrées et indique le reste à faire.
Dans le cas de la maintenance logicielle, il analyse les problèmes détectés par le client ou ses demandes de modifications contractualisées.

Certains composants sont embarqués sur des appareils mobiles, ce qui nécessite une approche spécifique en termes d’ergonomie, de sécurité et de performances.
Le concepteur développeur utilise couramment des cadres d’applications (frameworks), ainsi que des patrons de conception (design patterns) et des gabarits de mise en page (templates).

L’usage de la langue anglaise est requis pour la lecture des documentations techniques, l’utilisation de logiciels non francisés et les échanges au moyen de courriers électroniques et de forums.

Le concepteur développeur travaille en équipe pluridisciplinaire comprenant d’autres développeurs mais également des experts techniques. Il peut jouer un rôle d’animateur dans les méthodologies de développement agile, voire encadrer des développeurs juniors.
Il sollicite l’expertise de communautés de développeurs, d’éditeurs de logiciels, de responsables sécurité ou qualité, d’architectes ou d’urbanistes en systèmes d’information, afin de trouver des solutions aux problèmes techniques rencontrés.

Liste des compétences professionnelles de l’activité type

Activité type précédente : Développer la persistance des données175 heures