Ecole Numérique Ardéchoise

Définir l’architecture logicielle d’une application

Description de la compétence – processus de mise en œuvre

En tenant compte des besoins des utilisateurs, en amont de tout développement, définir l’architecture
logicielle multicouche répartie en vue du développement d’une application sécurisée.
Définir le rôle de chaque couche en tenant compte de la stratégie de sécurité.
Identifier les besoins d’éco-conception.

Contexte(s) professionnel(s) de mise en œuvre

Cette compétence s’exerce seul ou au sein d’une équipe.

Critères de performance

L’architecture logicielle est conforme aux bonnes pratiques d’une architecture multicouche répartie
sécurisée
Le rôle de chaque couche est bien défini en tenant compte de la stratégie de sécurité
Les besoins d’éco-conception de l’application sont identifiés

Savoir-faire techniques, savoir-faire organisationnels, savoir-faire relationnels, savoirs

Définir l’architecture logicielle en identifiant les Framework et ORM à utiliser
Adapter l’architecture logicielle aux besoins des utilisateurs et à la stratégie de sécurité selon les
recommandations de l’ANSSI
Utiliser les patrons de conception (design patterns) et les patrons de sécurité (Security pattern)
Rédiger un dossier technique d’architecture logicielle, y compris en anglais (niveau B1 CECRL pour
l’anglais)
Animer des réunions de projet, y compris en anglais (niveau B1 compréhension A2 expression CECRL
pour l’anglais)
Connaissance des architectures logicielles multicouches réparties sécurisées y compris avec des microservices
Connaissance des indicateurs de sécurité des systèmes d’information : disponibilité, intégrité,
confidentialité, preuve (DICP)
Connaissance du formalisme des diagrammes de modélisation
Connaissance des principaux outils de conception et de réalisation du marché
Connaissance des principaux langages, Framework et ORM du marché
Connaissance des principales vulnérabilités et attaques contre les architectures multicouches réparties
Connaissance des principes et des patrons de sécurité applicables à l’architecture multicouche répartie
Connaissance des principes d’éco-conception des services numériques
Connaissance des architectures Software as a Service (SaaS)