6.5.Architecture logiciel Flashcards
(23 cards)
Quelle est la définition de l’architecture logicielle ?
Description symbolique et schématique des éléments d’un système informatique, leurs interrelations et interactions.
Quels sont les deux objectifs principaux d’une architecture logicielle ?
Réduction des coûts et augmentation de la qualité du logiciel.
Qu’est-ce que l’architecture fonctionnelle ?
L’architecture fonctionnelle repose sur un processus de raffinement graduel où une fonctionnalité est divisée en sous-fonctionnalités, qui sont elles-mêmes subdivisées, créant une hiérarchie d’appels et de retours.
Quelle est la caractéristique principale d’une architecture centrée sur les données ?
Un composant central gère les données et répond aux requêtes des composants clients. Le serveur de données est responsable de la gestion centralisée des données, incluant leur conservation, ajout, retrait, mise à jour et synchronisation, répondant aux requêtes des clients
Qu’est-ce qu’une architecture Client-Serveur ?
Architecture où les composants clients accèdent à un serveur central de données pour obtenir les informations nécessaires.
Décris brièvement une architecture en couches.
Architecture où les composants sont empilés, Chaque couche utilise les services de la couche inférieure et offre des services à la couche supérieure, communiquant via des interfaces bien définies
Qu’est-ce que l’interopérabilité extrinsèque selon la norme ISO 9126 ?
Capacité du logiciel à communiquer et utiliser les ressources d’autres logiciels.
Qu’est-ce que l’interopérabilité intrinsèque selon la norme ISO 9126 ?
Degré de cohérence interne entre commandes et modules d’un logiciel.
Quelle est la définition de la portabilité selon la norme ISO 9126 ?
Capacité du logiciel à fonctionner sur des plates-formes variées.
Qu’entend-on par compatibilité descendante et ascendante selon ISO 9126 ?
Capacité du logiciel à fonctionner avec des environnements anciens (descendante) et récents (ascendante).
Définis la maintenabilité selon la norme ISO 9126.
Facilité de correction, modification et adaptation d’un logiciel.
Qu’est-ce que la réutilisabilité selon la norme ISO 9126 ?
Capacité à concevoir des logiciels avec des composants réutilisables.
Que signifie l’extensibilité selon la norme ISO 9126 ?
Possibilité d’étendre facilement les fonctionnalités d’un logiciel.
Quelle est la définition de l’efficacité selon la norme ISO 9126 ?
Capacité d’un logiciel à utiliser au mieux les ressources matérielles disponibles.
Qu’entend-on par convivialité selon la norme ISO 9126 ?
Facilité d’apprentissage et d’utilisation du logiciel pour les utilisateurs.
Quel est l’intérêt d’utiliser des DFD pour l’architecture fonctionnelle ?
Permettre un raffinement détaillé et naturel de l’architecture du système informatisé.
Qu’est-ce que l’intégrité selon la norme ISO 9126 ?
Capacité d’un logiciel à protéger ses données et fonctions contre les accès non autorisés.
Quel est le rôle d’une couche dans une architecture en couches ?
Fournir des services à la couche supérieure et utiliser ceux de la couche inférieure, tout en cachant les détails internes.
Décrivez brièvement l’objectif principal de l’approche modulaire dans la conception de logiciels
décomposer un système complexe en unités plus petites et indépendantes (modules), ce qui facilite la conception, le développement, le test et la maintenance du logiciel.
deux types d’architectures logicielles?
=L’architecture fonctionnelle: basée sur la décomposition d’une fonctionnalité en sous-fonctionnalités, formant une hiérarchie. = L’architecture centrée sur les données (ou client-serveur) : repose sur un composant central gérant les données et des clients y accédant.
Expliquez en quoi la réutilisation de composants logiciels contribue à la réduction des coûts
permet d’éviter de développer des fonctionnalités identiques à plusieurs reprises, ce qui réduit le temps et les ressources nécessaires au développement initial
Décrivez le modèle conventionnel d’architecture logicielle
impose une séparation claire entre les données, les traitements (logique métier) et la présentation (interfaces utilisateur), organisés potentiellement en couches successives.
Quel est l’avantage d’étendre la modularité de l’architecture système à la couche logicielle pour les tests automatiques ?
Étendre la modularité à la couche logicielle apporte plus de flexibilité et fournit un cadre pour des stratégies de développement qui réduisent les temps de réalisation du logiciel et facilitent l’utilisation d’outils spécifiques pour chaque domaine.