Objectif
Requirementanalysisisanimportantactivityinthesoftwareplanningstage, andanimportantlinkinthesoftwarelifecycle.Thisstageistoanalyzewhatthesystemneedstoachieveinfunction, notConsiderhowto "realize" .Thegoalofrequirementanalysisistoanalyzeandsortoutthe "exigences" ou "besoins" putforwardbyusersforthesoftwaretobedeveloped, andformacomplete, clearandstandardizeddocumentafterconfirmation, todeterminewhichfunctionsthesoftwareneedstoachieveandwhichtaskstocomplete.Inaddition, somenon-functionalrequirementsofsoftware (suchassoftwareperformance, fiabilité, ResponseTime, évolutivité, etc.), Softwaredesignconstraints, andtherelationshipbetweenruntimeandothersoftwarearealsothegoalsofsoftwarerequirementsanalysis.
Des principes
Afin de promouvoir la standardisationetlascientificationdelarechercheetdudéveloppementdelogiciels,de nombreusesméthodesdedéveloppementetdedescriptiondelogicielsontétéproposéesdansledomainelogiciel,commedesméthodesstructurées,desméthodesdeprototypageetdesméthodesorientéesobjet.
(1)Concentrez-voussurledomainedesdonnéesetledomainefonctionnelduproblèmede compréhension.
(2) Le problème de la demande doit être décomposé et affiné, et la hiérarchie des problèmes doit être établie. Les problèmes compliqués peuvent être décomposés en fonction de fonctions, performances, etc.
(3)Établir un modèle d'analyse. Le modèle comprend divers diagrammes, qui constituent une forme importante d'expression des caractéristiques de cet objet de recherche. À travers la vue logique, la relation entre la fonction cible et le traitement de l'information peut être établie, plutôt que les détails de mise en œuvre. La vue physique est déterminée par le fonctionnement du système et l'environnement de traitement.
Contenu
Le contenu de l'analyse des exigences doit fournir des exigences complètes, claires et spécifiques pour le logiciel à développer, et déterminer quelles tâches le logiciel doit accomplir. Plus précisément, il est divisé en trois aspects : les exigences fonctionnelles, les exigences non fonctionnelles et les contraintes de conception.
1.Exigences fonctionnelles
Les exigences fonctionnelles se réfèrent à ce que le logiciel doit accomplir, quelles fonctions doivent être mises en œuvre et les actions requises pour fournir des fonctions utiles à ses utilisateurs.
2. Exigences non fonctionnelles
En complément des exigences fonctionnelles, le contenu de l'analyse des exigences logicielles doit également inclure certaines exigences non fonctionnelles. Il comprend principalement les exigences de performances et les exigences d'environnement d'exploitation lorsque le logiciel est utilisé.
3.Contraintes de conception
Généralement, elles sont également appelées contraintes de conception, qui sont généralement des contraintes liées à certains schémas de conception ou de mise en œuvre.
Traiter
Le travail de l'étape d'analyse des exigences peut être divisé en quatre aspects : identification du problème, analyse et synthèse, formulation des spécifications et examen.
Issueidentification: istounderstandthesoftwarefromasystemperspective, determinethecomprehensiverequirementsforthedevelopedsystem, andproposetherealizationconditionsoftheserequirementsandthestandardsthattherequirementsshouldmeet.Theserequirementsinclude: functionalrequirements (whattodo), performancerequirements (whatindicatorstoachieve), environmentalrequirements, reliabilityrequirements (probabilityofnofailure), securityandconfidentialityrequirements, userinterfacerequirements, Resourceusagerequirements (mémoire, processeur, etc.requiredforsoftwareoperation), (suchasmodel, operatingsystem, etc.) Besoins en termes de consommation et de calendrier de développement des logiciels, pré-estimer les objectifs possibles du système dans le futur.
Analyse et synthèse : affiner progressivement toutes les fonctions du logiciel, rechercher les connexions entre les différents éléments du système, les caractéristiques de l'interface et les contraintes de conception, analyser si elles répondent aux exigences et éliminer la partie déraisonnable, augmenter la partie requise.
Formuler les spécifications : c'est-à-dire compiler les documents, et les documents décrivant les exigences sont appelés spécifications des exigences logicielles.
Révision : pour évaluer l'exactitude, l'exhaustivité et la clarté de la fonction et d'autres exigences.
Méthodes
Actuellement, il existe de nombreuses méthodes d'analyse et de conception des exigences logicielles, dont certaines sont similaires, tandis que d'autres ont des bases très différentes comme.
À partir de l'analyse système, les méthodes d'analyse de la demande peuvent être grossièrement divisées en méthodes de décomposition fonctionnelle, méthodes d'analyse structurée, méthodes de modélisation de l'information et méthodes d'analyse orientées objet.
(1)Méthode de décomposition de fonction.
Le nouveau système est utilisé comme une combinaison de modules multifonctionnels. La signification de chaque fonction peut être décomposée en plusieurs sous-fonctions et interfaces, et les sous-fonctions continueront à se décomposer.
(2)Méthode d'analyse structurelle.
Thestructuredanalysismethodisamappingmethodfromtheproblemspacetoacertainrepresentation.Itisanimportantandgenerallyacceptedrepresentationsysteminthestructuredmethod.Itconsistsofadataflowdiagramandadatadictionary.Formandshow.Thisanalysismethodisalsocalledthedataflowmethod.Thebasicstrategyistotrackthedataflow, thatis, tostudythedataflowintheproblemdomainandtheprocessingineachlink, soastodiscoverthedataflowandprocessing.Structuredanalysiscanbedefinedasdataflow, dataprocessingorprocessing, Datastorage points d'extrémité, processingInstructions, anddatadictionaries.
(3)Méthode de modélisation de l'information.
Itbuildsamodeloftherealworldfromadataperspective.Large-scalesoftwareismorecomplicated; itisdifficulttodirectlyanalyzeanddesignit, andoftenrelyonmodels.Modelsarecommonlyusedtoolsindevelopment, andthesystemincludesdataprocessing, transactionmanagement, anddecisionsupport.Inessence, itcanalsobeseenasaseriesoforderedmodels.Theorderedmodelsareusuallyfunctionalmodels, informationmodels, datamodels, controlmodels, anddecisionmodels.Ordermeansthatthesemodelsareestablishedtogetheratdifferentdevelopmentstagesandlevelsofthesystem.ThebasictoolcommonlyusedtobuildasystemistheE-Rdiagram.Afterimprovement, itwascalledinformationmodelingmethod, andlaterdevelopedintosemanticdatamodelingmethod, andintroducedmanyobject-orientedfeatures.
La modélisation de l'information peut être définie comme des entités ou des objets, des attributs, des relations, des supertypes/sous-types et des objets associés.
(4)Méthode d'analyse orientée objet.
Thekeyoftheobject-orientedanalysismethodistoidentifytheobjectsintheproblemdomain, analyzetherelationshipbetweenthem, andestablishthreetypesofmodels, à savoir, theobjectmodel, thedynamicmodelandthefunctionalmodel.Object-orientedmainlyconsidersclassesorobjects, structureandconnection, inheritanceandencapsulation, andmessagecommunication.Itonlyrepresentsafewofthemostimportantfeaturesinobject-orientedanalysis.Theobjectoftheclassisacompletemappingofthingsintheproblemdomain, includingthedatacharacteristics (namelyattributes) andbehaviorcharacteristics (namelyservices) ofthings.
Caractéristiques
Les caractéristiques et les difficultés de l'analyse de la demande se reflètent principalement dans les aspects suivants.
(1)Il est difficile de déterminer le problème. Les principales raisons sont : d'abord, la complexité du domaine d'application et les changements commerciaux, qui sont difficiles à déterminer dans les détails ; la deuxième est due à de multiples facteurs liés aux besoins des utilisateurs, tels que l'environnement d'exploitation et les fonctions système, les performances, la fiabilité et les interfaces.
(2)Les demandes changent de temps en temps. Les exigences en matière de logiciels changeront souvent avec le temps et les activités tout au long du cycle de vie du logiciel.
(3)La communication est difficile pour parvenir à un consensus. L'analyse de la demande implique de nombreuses personnes, choses et facteurs connexes. Lors de la communication avec les utilisateurs, les experts métier, les ingénieurs de la demande et les chefs de projet, les différentes connaissances de base, les rôles et les perspectives rendent difficile la communication du consensus.
(4) L'exigence d'acquisition est difficile à atteindre l'exhaustivité et la cohérence. Étant donné que différentes personnes ont une compréhension différente des exigences du système, le problème n'est pas assez précis et il peut y avoir des contradictions dans diverses exigences. Il est difficile d'éliminer les contradictions et de former une définition complète et cohérente.
(5) Demandsaredifficulttoconductin-depthanalysisandimprovement.Needtounderstandincompleteandaccurateanalysis, changesincustomerenvironmentandbusinessprocesses.Changesinmarkettrends, etc.Itwillcontinuetoimprovewithanalysis, designandimplementation, andthesoftwarerequirementsmayberevisedattheend.Analystsshouldrecognizetheinevitabilityofdemandchangesandtakemeasurestoreducetheimpactofdemandchangesonthesoftware.Thenecessarychangescanonlybeimplementedaftercarefulreview, trackingandcomparativeanalysis.