Développer des composants métier
Description de la compétence – processus de mise en œuvre
À partir des diagrammes de classes et des diagrammes de composants du dossier de conception, coder et tester les composants de la couche métier d’une application informatique dans une architecture multicouche répartie conformément aux règles métier et avec les cas d’exception, dans le respect des bonnes pratiques du développement objet et des principes du développement sécurisé.
Pratiquer une veille technologique, y compris en anglais, pour résoudre un problème technique ou mettre en oeuvre une nouvelle fonctionnalité ainsi que pour s’informer sur la sécurité informatique et les vulnérabilités connues.
Partager le résultat de sa veille avec ses pairs.
Contexte(s) professionnel(s) de mise en œuvre
Le développement des composants s’effectue à partir d’un environnement de développement intégré supportant un langage objet ainsi que les cadres d’applications (framework) et les bibliothèques associés à l’architecture choisie.
Critères de performance
- Les bonnes pratiques de conception objet sont appliquées.
- Les composants métier sont écrits dans un style défensif et toutes les entrées sont validées.
- Les composants métier sont conformes aux diagrammes de classes et de composants.
- Les règles métier sont implémentées dans les classes métier avec les cas d’exception.
- Les tests unitaires des composants métier sont prévus (approche fonctionnelle, structurelle et sécurité).
- L’objet de la recherche est exprimé de manière précise en langue française ou anglaise.
- La démarche de recherche permet de résoudre un problème technique ou de mettre en œuvre une nouvelle fonctionnalité.
- La veille sur les vulnérabilités connues permet d’identifier et corriger des failles potentielles.
- La documentation technique liée aux technologies associées, en français ou en anglais, est comprise (sans contre-sens, …).
- Le partage du résultat de veille est effectué oralement ou par écrit avec ses pairs.
Savoir-faire techniques, savoir-faire organisationnels, savoir-faire relationnels, savoirs
- Utiliser les fonctionnalités de génération de code de l’outil de modélisation UML.
- Coder des composants dans un langage objet, avec un style de programmation défensif.
- Valider la sécurité et utiliser des composants issus d’un cadre d’applications (framework) ou d’une bibliothèque.
- Utiliser les moyens de gestion des identités et des certificats numériques.
- Utiliser un outil collaboratif de partage de ressources.
- Produire les tests unitaires, avec une double approche fonctionnelle et sécurité.
- Utiliser les outils d’analyses statiques (par exemple, ceux intégrés au compilateur) et dynamiques (par exemple déboggeur) de code.
- Corriger les erreurs et remédier aux vulnérabilités détectées.
- Planifier et suivre les tâches de développement.
- Rechercher une réponse pertinente à une difficulté technique de développement ou à une vulnérabilité.
- Rechercher des informations sur des sites Internet, des forums et des FAQ francophones ou anglophones.
- Contribuer à la mise à jour des bases de connaissances francophones ou anglophones accessibles par Internet.
- Documenter les composants.
- Connaissance du vocabulaire anglais professionnel associé au développement de composants métier.
- Connaissance des concepts et d’un langage de développement objet.
- Connaissance des principes et des règles du développement sécurisé.
- Connaissance du formalisme des diagrammes du langage de modélisation unifié UML.
- Connaissance de l’architecture applicative multicouche répartie et des différents types de serveurs.
- Connaissance des architectures logicielles multicouches réparties.
- Connaissance du rôle de la couche métier dans la sécurité d’une application multicouche répartie.
- Connaissance de techniques de communication applicative telles que les services Web.
- Connaissance des bases de la cryptographie.
- Connaissance des bonnes pratiques de conception et de sécurisation des composants dans une architecture logicielle multicouche répartie.