Introduction au génie logiciel (3) Conception d'ensemble du système

1. Aperçu de la conception du système

1.1 Vue d'ensemble de la conception du système

conception et abstraction

  • Le comportement du système détermine la conception
  • conception orientée objet
  • Données système pilotées pour compléter la conception

conception orientée opérations conception orientée données

La conception se décompose principalement en trois étapes :
Conception d'esquisse : recevoir les documents requis et terminer la décomposition des modules
Conception détaillée : concevoir ses détails internes (algorithmes, structures de données, variables, etc.) en fonction des modules décomposés

module

(Un module est une séquence lexicalement contiguë d'instructions de programme, délimitée par des éléments de délimitation, avec un identifiant agrégé)

La contiguïté sémantique est constituée d'instructions de programme.
Il y a des signes de début et de fin, c'est-à-dire qu'il y a une frontière.
Elle a un identifiant d'agrégation.

Cohésion élevée, faible couplage

1.2 Cohésion des modules

cohésion accidentelle

Un module exécute plusieurs fonctions complètement différentes sans aucune relation logique

Certaines réglementations imposent que chaque module doit avoir une certaine taille

Diminution de la maintenabilité
Difficile à réutiliser

le moins cohérent

résoudre:

division fonctionnelle complète

cohésion logique

Un module peut effectuer de nombreuses opérations connexes , la cohésion de la sélection est faite par le module appelant

Il y a un problème que l'interface est difficile à comprendre.
La modification du contenu d'un module peut facilement affecter d'autres modules

Difficile à réutiliser

Rassemblez-vous à temps

L'exécution de nombreuses opérations est liée au temps et illogique (les actions sont séquencées dans le temps, et non séquencées logiquement)

La corrélation interne du module est relativement faible, et la corrélation externe est relativement forte
Mauvaise réutilisabilité des modules logiciels

résoudre:

division fonctionnelle complète

Cohésion du processus (la cohésion est supérieure aux trois premiers)

De nombreuses opérations ont une séquence logique (si l'ordre est inversé, la fonction ne peut pas être réalisée)

La relation d'action n'est pas très forte
et la réutilisabilité est faible

correspondance

Effectuer une série d'opérations, liées à l'ordre dans lequel le produit doit être exécuté, et opérer sur les mêmes données

mauvaise réutilisabilité

cohésion fonctionnelle

Exécuter une seule opération ou compléter une seule fonction

La possibilité de réutilisation est la plus grande,
il est relativement facile d'effectuer une maintenance corrective et
il est facile de réaliser une extension de produit.

Cohésion de l'information (cohésion idéale la plus élevée)

De nombreuses opérations, chacune avec sa propre entrée. Chaque opération a son propre code, et chaque opération est basée sur les mêmes données

insérez la description de l'image ici

 1.3 Couplage des modules

couplage de contenu

Dans deux modules, le contenu d'un module fait directement référence au contenu de l'autre module

La modification d'un module entraînera des changements de deux modules, ce qui augmentera les coûts de maintenance

couplage public

Deux modules accèdent aux mêmes données globales en même temps

question

  • Impact limite, impact simultané et impact de contrôle, difficile à maintenir
  • Lors de la maintenance des variables globales d'un module, cela affectera les autres modules
  • Difficile à réutiliser dans de nouveaux systèmes cibles
  • rendre les effets de frontière peu clairs
  • conduire à la criminalité informatique

couplage de contrôle

Deux modules, un module transmet des éléments de contrôle (informations simples ou informations de contrôle-instructions d'action) à l'autre module

Les deux modules se restreignent et s'influencent mutuellement et leur indépendance est faible
Un module doit avoir une cohésion logique

couplage de balises

Une structure de données est transmise entre deux modules, et le module appelant n'opère que sur une partie de la structure de données

Peu clair, le nom de la structure de données transmise ne peut pas déterminer quelles informations sont utilisées
Difficile à maintenir
et faible possibilité de réutilisation
Données transmises en excès

couplage de données (idéal)

Tous les paramètres des deux modules sont les mêmes éléments de données (tous les éléments de données dans le paramètre simple transmis ou la structure de données transmise sont utilisés)

1.4 Conception axée sur les opérations

Le premier diagramme de flux de données doit pouvoir décrire l'opération en détail

  • Type de transformation (juger les deux points d'abstraction les plus élevés du diagramme de flux de données pour obtenir une entrée logique, une sortie logique et un traitement logique)
  • Transactionnel (décomposé en analyseur de transactions et répartiteur de transactions)

1.5 Conception orientée données

Déterminez d'abord la structure des données, puis déterminez la structure du produit

Jackson

  • Représentation de la structure des données (à la manière du graphe de Jackson)
  • Découvrez la relation entre la structure des données d'entrée et la structure des données de sortie (il existe une relation causale directe, qui peut être traitée en même temps || Pour les données répétées, l'ordre et le nombre de répétitions doivent être les mêmes pour avoir un correspondant relation)
  • Dessinez le cadre de traitement en fonction de la structure des données d'entrée et de sortie (si les niveaux sont différents, suivez la conception du niveau inférieur)
  • Lister toutes les opérations et conditions,
  • Et marquez l'emplacement du diagramme de structure du programme
  • Décrit en pseudo-code

2. Conception détaillée du système

Déterminer l'algorithme et la structure de données utilisés dans chaque module,
concevoir l'interface externe et l'interface utilisateur,
exprimer en détail avec un certain outil d'expression

Diagramme NS

Diagramme PAD (diagramme d'analyse des problèmes)

insérez la description de l'image ici

 Tableau de jugement

Arbre de décision insérez la description de l'image ici Diagramme H, diagramme IPO, diagramme HIPO

insérez la description de l'image ici

insérez la description de l'image ici Modélisation analytique orientée objet

  • modélisation de la demande
  • modélisation analytique
  • modélisation de conception

Conception orientée opération

 

Je suppose que tu aimes

Origine blog.csdn.net/qq_62377885/article/details/131023221
conseillé
Classement