Fonctionnalités et cycle de vie de l'application - Maxicours

#entraideCovid19

#entraideCovid19

#entraideCovid19

#entraideCovid19

Fonctionnalités et cycle de vie de l'application

Objectif :
Comment adopter une démarche prenant en compte la réalité du système d'information, pour l’intégrer dans le système informatique ?
1. Présentation des besoins de l'utilisateur à l'application informatique finalisée
Rappel : la vocation du système d'information est de mettre des informations utiles à la disposition des différents acteurs de l'organisation.

La direction du système d'information (DSI) se doit, dans le cadre d’un projet d'évolution du système d'information, d'intégrer une démarche méthodologique partant d'une approche abstraite (proximité de la réalité) pour atteindre la réalisation technique (démarche, méthode, outils) de façon à finaliser une application informatique répondant aux besoins des utilisateurs.
Il existe de nombreuses méthodes permettant de gérer le cycle de vie du logiciel.
2. Notions de logiciel et d'application informatique
Un logiciel (ou une application informatique) est constitué d'un ensemble de programmes. Ces programmes sont chargés d'automatiser des traitements de l'information ; ils respectent un ensemble de règles de gestion, correspondant aux besoins exprimés par les acteurs du système d'information lors de la formulation du projet, qui a amené le développement du logiciel.
3. Les fonctionnalités du logiciel
Un logiciel se doit de répondre aux spécifications correspondant à la résolution des besoins en termes d'évolution du système d'information ; besoins qui sont à l'origine du projet qui a permis son développement.

Les développeurs du logiciel vont intégrer :
les fonctionnalités « métier » qui permettent à l'utilisateur d'effectuer son travail,
• et des fonctionnalités « support » qui vont permettre au logiciel de s'adapter à l'environnement de la composante technologique du système information (à l'exemple de la connexion à un réseau, les sauvegardes automatiques, les transferts de données au travers du réseau, les mises à jour automatiques, la gestion des paramètres utilisateurs…) et ceci de la façon la plus transparente possible pour l'utilisateur.
4. Le cycle de vie du logiciel
a. Concepts de base du « génie logiciel »
La réalisation d'un projet informatique répondant à l'évolution du système d'information d'une organisation, repose sur les concepts fondamentaux du « génie logiciel » soit :

• la production d'application réellement adaptée aux besoins des utilisateurs,
• la réduction des coûts de production et de maintenance,
• l'augmentation de la fiabilité, de la performance et de l'interopérabilité,
• l'optimisation de la gestion du temps de production du logiciel,
• l'augmentation du temps de vie du logiciel par l’intégration de l'adaptabilité et du paramétrage.

On retrouve les 3 contraintes de gestion d'un projet : qualité, coût et délai, qui seront intégrées au cycle de vie du logiciel.
Rappel : le cycle de vie du projet ou du logiciel est la synthèse de la vision de l'utilisateur et de celle de l'informaticien, dans le cadre de la gestion du projet : de la phase d'étude de l'existant jusqu'à la mise à disposition du logiciel en production aux utilisateurs.
b. Les étapes du cycle de vie d'un logiciel
L’étude préalable consiste à identifier les besoins, en élaborant une version de base du cahier des charges (document contractuel entre le maître d'ouvrage est le maître d'œuvre). Pour réaliser ce document, le maître d’ouvrage (le plus souvent associé au maître d’œuvre) va mener une étude de l'existant du système d'information ; dont une enquête précise auprès des utilisateurs de la future application résultant du projet.
À cette étape le cahier des charges intégrera la décision de faisabilité, ainsi qu'un plan général du projet, et une estimation approchée du coût et des délais.

La spécification a pour but la description du modèle fonctionnel de l'évolution du système d'information (Comment fonctionnera le logiciel ? Quels sont les modules constitutifs ?), l'estimation des ressources nécessaires (humaines et techniques), et une première version de la planification de la phase de développement. La démarche de spécification s'appuie sur les collectes d'informations, obtenues lors de l'étude préalable ; avec pour but final de définir un cahier des charges détaillées (fonctionnalités, contraintes, coût, planning, ressources…) qui servira de contrats entre le maître d'œuvre et le maître d'ouvrage.

La conception générale doit définir la description de l’architecture du logiciel, correspondant au domaine d'étude du système d'information, en un ensemble de modules fonctionnels, de maquettes, et de structures de données. On définira pour chaque module son rôle et son interaction avec les autres modules.
On mettra en œuvre une analyse conceptuelle et organisationnelle de façon à effectuer les choix de l'infrastructure technologique (le matériel) et des outils et méthodes de développement (les logiciels).
On est en présence d'une vision globale du logiciel.

La conception détaillée consiste à définir l'organisation humaine et technique ; ainsi qu'à répartir les modules à des équipes de développement du maître d'œuvre, qui mettront en œuvre des techniques et éventuellement des outils logiciels (à l'exemple d'ateliers de génie logiciel) pour préparer l'approche technologique du développement.

La codification correspond à l'étape de l'implémentation des modules constituant le projet par les équipes de développements du maître d'œuvre. Les équipes de développements seront amenées à utiliser des outils de développement (à l'exemple des langages de programmation, des systèmes de gestion de bases de données ou encore d'environnement de développement intégré - EDI), leurs permettant de développer rapidement et à moindre coût. Cette étape comprend la rédaction de la documentation technique.

Les tests unitaires consistent à vérifier le bon fonctionnement individuel des modules du logiciel, ceci à partir de jeux d'essai correspondant à un sous-ensemble représentatif d’informations du domaine d'étude concernée par le projet d'évolution du système d'information.

Les tests systèmes correspondent à la phase de tests des différents modules en interaction les uns avec les autres, et permettent ainsi de déterminer que le logiciel correspond aux besoins exprimés par le cahier des charges. Cette étape correspond aussi à la rédaction de la documentation utilisateur.
À cette étape des prototypes (version bêta) peuvent être proposé aux utilisateurs, ce qui permettra une base de formation au logiciel, et la correction d’erreurs résiduelles.

Le déploiement et l'exploitation
doivent permettre au maître d'œuvre d'installer le logiciel au sein de la composante technologique du système d'information du maître d'ouvrage ; ainsi que d'en assurer la formation aux utilisateurs, ceux-ci pourront alors en assurer l'exploitation dans le cadre de leur activité dans l'organisation.

La maintenance est une étape particulière, qui doit permettre la correction, mais aussi l'évolution du logiciel en fonction des contraintes rencontrées par les acteurs du système d'information. La maintenance donc intervenir à différentes étapes du cycle de vie du logiciel.
Il existe plusieurs types de maintenance :
- la maintenance corrective qui permet de corriger les erreurs qui n'ont pas été détectées lors des précédentes phases de tests,
- la maintenance adaptative qui doit permettre l'adaptation et l'évolution du logiciel à l'apparition de nouvelles contraintes du système d'information,
- la maintenance perfective qui a pour objectif l'optimisation des performances du logiciel.
c. Les types d'utilisation du cycle de vie d'un logiciel
Cycle de vie linéaire


Cycle de vie en V

Le cycle de vie en V conserve l'approche du modèle linéaire, en y ajoutant une réactivité par niveau (représenté par les flèches en pointillés verts). L'objectif est de permettre d'établir à chaque niveau des phases de validation conçues au départ du projet, qui vont fiabiliser le développement en ciblant précisément les problèmes qui pourront alors être corrigés.

Cycle de vie en spirale
Le cycle de vie en spirale consiste en un processus itératif de développement du projet, à partir des phases successives : spécification, conception, codification, tests de validation, qui vont s'enchaîner à un nouveau cycle reprenant par un complément de la phase de spécification et qui détermine un nouveau cycle …
Cette approche peut être particulièrement redondante en particulier par la validation successive et progressive de chaque cycle. Elle peut toutefois être utilisée dans le cadre de développement rapide d'application, où l'on va pouvoir livrer en exploitation aux utilisateurs une application développée progressivement module par module, qui viendront constituer au fur et à mesure le logiciel.
L'essentiel
Un logiciel ou une application informatique est un ensemble de programmes, ayant la vocation de répondre aux besoins des acteurs du système d'information de l'organisation, en fournissant à celui-ci des fonctionnalités « métier » et « support ».

Le cycle de vie d'un logiciel ou d'une application informatique est composé de différentes étapes, qui partent de l'abstraction du système d'information, jusqu'à l'exploitation du logiciel par ses utilisateurs :
phase de formalisation des besoins : étude préalable et spécification,
phase de développement : conception générale et détaillée, codification, tests unitaires et systèmes,
déploiement et exploitation du logiciel,
maintenance (corrective, adaptative et perfective).

Vous avez déjà mis une note à ce cours.

Découvrez les autres cours offerts par Maxicours !

Découvrez Maxicours

Comment as-tu trouvé ce cours ?

Évalue ce cours !

 

Découvrez
Maxicours

Des profs en ligne

Géographie

Des profs en ligne

  • 6j/7 de 17h à 20h
  • Par chat, audio, vidéo
  • Sur les 10 matières principales

Des ressources riches

  • Fiches, vidéos de cours
  • Exercices & corrigés
  • Modules de révisions Bac et Brevet

Des outils ludiques

  • Coach virtuel
  • Quiz interactifs
  • Planning de révision

Des tableaux de bord

  • Suivi de la progression
  • Score d’assiduité
  • Une interface Parents

En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de Cookies ou autres traceurs pour améliorer et personnaliser votre navigation sur le site, réaliser des statistiques et mesures d'audiences, vous proposer des produits et services ciblés et adaptés à vos centres d'intérêt et vous offrir des fonctionnalités relatives aux réseaux et médias sociaux.