Notes d'étude "Modélisation et conception de logiciels" (3) - Modèle et processus du cycle de vie du logiciel

Notes d'étude "Modélisation et conception de logiciels" (3) - modèle et processus du cycle de vie du logiciel
1. Le modèle en cascade est le premier modèle de cycle de vie du logiciel largement utilisé.

1.1. Modèle de cycle de vie en cascade

Le modèle en cascade est un modèle de processus idéalisé, qui stipule que l'étape suivante ne peut être démarrée qu'après l'achèvement de chaque étape.De plus, un projet passe d'une étape à l'autre sans itération ni répétition.

1.2 Limites du modèle en cascade

(1) En tant que facteur clé dans un projet de développement logiciel, les exigences logicielles ne peuvent pas être testées tant qu'un système fonctionnel n'est pas développé et démontré aux utilisateurs finaux.

(2) Vous ne pouvez obtenir un système fonctionnel que plus tard dans le cycle de vie.

1.3. Prototype jetable

Aide à clarifier les besoins des utilisateurs. Peut être utilisé pour déterminer si des algorithmes particuliers sont logiquement corrects ou pour déterminer s'ils répondent aux objectifs de performances.

1.4 Prototype évolutif par développement incrémental

Il s'agit d'une forme de développement incrémental dans laquelle le prototype évolue progressivement d'un système exécutable en plusieurs étapes intermédiaires vers un système livrable. Cette méthode peut être utilisée pour déterminer si le système répond aux objectifs de performance et est utilisée pour tester les composants critiques couverts dans la conception. De plus, le risque de développement est réduit en étalant la mise en œuvre sur une plus longue période de temps.

1.5. Combinaison d'un prototype jetable et d'un développement incrémental

Un système fonctionnel sous la forme d'un prototype évolutif peut être obtenu plus tôt.

Remarque : La qualité du logiciel doit être prise en compte dès le départ, et non ajoutée après coup. En particulier, l'architecture logicielle doit être soigneusement conçue et toutes les interfaces spécifiées.

1.6. Modèle en spirale

est un modèle de processus axé sur les risques. Destiné à couvrir d'autres modèles de cycle de vie.

Contient 4 quadrants :

(1) Définir les objectifs, les méthodes candidates et les contraintes . Un plan détaillé pour ce cycle : identification des objectifs et des différentes méthodes candidates pour les atteindre.

(2) Analyser les risques . Procéder à une évaluation détaillée des risques actuels du projet ; planifier les activités à exécuter afin d'atténuer les risques.

(3) Développer des produits . Effectuer le développement de produits, comme l'analyse des exigences, la conception ou le codage.

(4) Planifiez le prochain cycle . Évaluez les résultats de ce cycle et commencez à planifier le cycle suivant.

1.7. Processus de développement logiciel unifié

Un processus logiciel basé sur des cas d'utilisation utilisant la notation UML. USDP/RUP est un processus de développement logiciel basé sur UML.

1.7.1 USDP

Contient 5 workflows principaux et 4 étapes. USDP est itérable.

Les artefacts sont définis comme des informations produites, modifiées ou utilisées par un processus.

Un flux de travail est défini comme une séquence d'activités qui produit un résultat observable.

Une étape est définie comme la période de temps entre deux jalons au cours de laquelle un ensemble d'objectifs de développement prédéfinis sont atteints, certains artefacts sont terminés et une décision est prise de passer ou non à l'étape suivante.

Chaque workflow et ses produits :

(1) Demande . Le produit du workflow des exigences est le modèle de cas d'utilisation.

(2) Analyse . Le produit du workflow d'analyse est le modèle d'analyse.

(3) Conception . Les produits du workflow de conception sont le modèle de conception et le modèle de déploiement.

(4) Réalisez . Le produit du workflow de mise en œuvre est le modèle de mise en œuvre.

(5) ESSAI . Le produit du workflow de test est le modèle de test.

Les étapes du cycle de vie de l'USDP sont les suivantes :

(1) Initiale . Dans la phase de démarrage, les idées initiales sont développées à un niveau suffisant pour démontrer la capacité de passer à la phase d'élaboration.

(2) Raffinement . Dans la phase d'élaboration, l'architecture logicielle est définie.

(3) Structure . Au cours de la phase de construction, un produit logiciel est développé et peut être mis à la disposition des utilisateurs.

(4) LIVRAISON . Pendant la phase de livraison, le logiciel est livré à l'utilisateur.

2. Vérification et validation de la conception

Vérification du logiciel . L'objectif est de s'assurer que l'équipe de développement logiciel "construit le bon système".

Validation du logiciel . L'objectif est de s'assurer que l'équipe de développement logiciel "construit le système correctement".

2.1. Assurance qualité du logiciel

Fait référence à une série d'activités visant à assurer la qualité des produits logiciels. Un objectif important est la vérification et la validation des logiciels.

L'examen technique des logiciels peut apporter une aide précieuse à la vérification et à la validation des logiciels.

2.2. Analyse des performances de la conception logicielle

Il est nécessaire d'analyser les performances de la conception du logiciel pour évaluer si la conception répond aux objectifs de performance avant la mise en œuvre du système.

Les méthodes d'évaluation des conceptions de logiciels utilisent des modèles de mise en file d'attente et des modèles de simulation.

Pour les systèmes parallèles , les réseaux de Petri peuvent être utilisés pour modéliser et analyser des conceptions parallèles.

Une approche décrite dans (Gomaa 2000) consiste à analyser les performances des conceptions en temps réel en utilisant la théorie de l'ordonnancement en temps réel .

3. Activités dans le cycle de vie du logiciel

Les activités de génie logiciel effectueront les étapes suivantes :

3.1. Analyse et spécification des besoins

Identifier et analyser les besoins des utilisateurs.

3.2 Conception architecturale

Une architecture logicielle sépare la structure globale du système des détails de mise en œuvre interne des composants individuels en décrivant les composants et la façon dont ils sont connectés.

3.3. Conception détaillée

Définissez les détails algorithmiques de chaque composant du système.

3.4, codage

Coder chaque composant en utilisant le langage de programmation choisi pour le projet.

4. Tests logiciels

Les tests logiciels se déroulent en plusieurs phases.

Les tests unitaires et les tests d'intégration sont des méthodes de test " boîte blanche " qui nécessitent une connaissance interne du logiciel.

Le test système est une méthode de test " boîte noire " basée sur la spécification des exigences logicielles et n'a pas besoin de comprendre la structure interne du logiciel.

4.1. Tests unitaires

Indique que les composants individuels sont testés individuellement avant d'être combinés avec d'autres composants.

méthode . Directives sur la couverture des tests.

Les critères de couverture des tests incluent la couverture des relevés et la couverture des succursales .

4.2. Tests d'intégration

Les composants individuels qui ont été testés sont progressivement combinés en groupes de construction plus complexes, puis ces composants sont testés jusqu'à ce qu'ils soient combinés en un système logiciel complet, et les interfaces entre les composants ont été testées.

4.3. Test du système

Processus de test d'un système matériel et logiciel intégré pour vérifier que le système répond aux exigences spécifiées.

Plusieurs caractéristiques d'un système logiciel doivent être testées :

tests fonctionnels . Déterminer que le système exécute les fonctions décrites dans la spécification des exigences.

Test de charge (contrainte) . Déterminez si le système sera capable de gérer la charge importante et variable prévue lorsqu'il est en cours d'exécution.

Tests de performances . Le système de test répond aux exigences de réponse aux événements.

4.4. Test d'acceptation

Les tests d'acceptation sont effectués par l'organisation utilisatrice ou ses représentants avant l'acceptation du système, généralement pendant la phase d'installation de l'utilisateur.

5. Résumé

Le développement logiciel est décrit du point de vue du cycle de vie logiciel, où différents types de modèles de cycle de vie logiciel, également appelés modèles de processus logiciel, sont brièvement décrits et comparés. Les rôles de la vérification et de la validation de la conception et des tests logiciels sont également abordés.

6. Pratique

( 1 ) Quel est le cycle de vie du logiciel - une approche progressive du développement de logiciels

(2) Qu'est-ce que le modèle de cycle de vie en cascade - un modèle de processus dans lequel chaque phase est terminée avant que la phase suivante ne commence

( 3 ) Lequel des éléments suivants représente une limitation du modèle de cycle de vie en cascade - à moins qu'un système utilisable ne soit développé, il ne convient pas pour tester les exigences logicielles

( 4 ) Laquelle des méthodes suivantes peut surmonter les limitations soulignées dans la question précédente - jeter le prototype

( 5 ) Qu'est-ce que le prototypage évolutif - Développement logiciel par phases

(6) Quelle est la méthode mise en avant par le modèle en spirale - développement axé sur les risques

(7) Quel est l'objectif de la validation logicielle - construire un système correct

(8) Quel est l'objectif de la vérification logicielle - construire correctement le système

(9) Qu'est-ce qu'un test "boîte blanche" - un test qui utilise la connaissance interne du système

( 10 ) Qu'est-ce qu'un test "boîte noire" - un test qui n'utilise pas la connaissance interne du système

Je suppose que tu aimes

Origine blog.csdn.net/weixin_47819574/article/details/120025251
conseillé
Classement