Présentation

Article

1 - CONTEXTES ÉCONOMIQUE ET TECHNIQUE

2 - MODÈLE DE DÉVELOPPEMENT ET CYCLE DE VIE

3 - OUTILS ET ATELIERS DE GÉNIE LOGICIEL

4 - CONCEPTION ET ARCHITECTURE DES LOGICIELS

5 - PROGRAMMATION ET TESTS

6 - MANAGEMENT DES PROJETS LOGICIELS

7 - MÉTHODES ÉMERGENTES

8 - CONCLUSION – L’AVENIR DU GÉNIE LOGICIEL

| Réf : H3208 v1

Conception et architecture des logiciels
Génie logiciel

Auteur(s) : Jacques PRINTZ

Date de publication : 10 févr. 1997

Pour explorer cet article
Télécharger l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !

Sommaire

Présentation

Auteur(s)

  • Jacques PRINTZ : Ancien élève de l’École centrale des arts et manufactures - Professeur titulaire de la chaire de Génie logiciel au Conservatoire national des arts et métiers

Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.

Lire l’article

INTRODUCTION

Le génie logiciel est une science de l’ingénieur dont la finalité est la fabrication de systèmes informatisés. Généralement complexes, ils prennent en charge des pans entiers du traitement de l’information nécessaires au bon fonctionnement de nos industries, des administrations, des communications, de notre défense et, pour résumer, de tout notre système socio-économique.

Un système informatisé est un ensemble d’ordinateurs, d’origine et de puissance diverses, reliés entre eux par des réseaux locaux (réseaux intra‐entreprises) et des réseaux distants (réseaux interentreprises), de périphériques très divers (une billetterie, un radar, un robot...) qui reçoivent et restituent de l’information dans leur environnement.

On distingue dans un tel système :

  • une partie matérielle (ordinateurs, terminaux, modems, commutateurs, capteurs, effecteurs...) dont le rôle est de fournir la puissance brute de traitement et de relier le système au monde extérieur ;

  • une partie logicielle qui assure les fonctions logiques nécessaires aux différents traitements et au stockage de l’information.

Ces logiciels sont de trois types :

  • des logiciels constructeurs, qui sont très dépendants du matériel ;

  • des progiciels développés par les éditeurs de logiciel, qui sont des boîtes noires, généralement paramétrables, assurant telles ou telles fonctions précises ;

  • des logiciels développés pour les besoins spécifiques de l’entreprise, soit par elle‐même, soit par l’intermédiaire de sociétés de services.

Le génie logiciel se préoccupe des procédés de fabrication de ces différents logiciels de façon à s’assurer que :

  • ce qui est fabriqué par le maître d’œuvre répond correctement aux besoins de celui qui les a formulés (le maître d’ouvrage, qui représente le client final) ;

  • les coûts et délais de réalisation restent dans les limites fixées au départ ;

  • le contrat de service sera effectivement respecté (performance, sûreté de fonctionnement, sécurité...) lors de l’exploitation future du logiciel.

Comme l’indique son appellation anglaise, « software », le logiciel est la partie « molle » du système, celle que l’on va pouvoir modifier à loisir en fonction des nouveaux besoins apparaissant tout au long de l’exploitation du système. Cette aptitude à l’évolution est une caractéristique spécifique du logiciel très importante, car c’est un élément déterminant de la durée de vie du système (flexibilité, souplesse et facilité d’emploi) et donc de son coût d’amortissement.

Le génie logiciel est une métadiscipline qui fixe des règles et des garde‐fous qui vont agir comme autant de conditions nécessaires au bon déroulement du processus de fabrication. Comme toute métadiscipline, il doit s’ancrer dans la pratique du développement des logiciels, rechercher en permanence les conditions de son efficacité et la pertinence des outils qu’il propose. Sous peine de stérilité, il doit tout particulièrement se défier des modes qui ne font souvent que passer, et du jargon qui cache souvent une vacuité de la pensée.

La présentation en quelques pages d’une discipline aussi foisonnante ne peut se faire que par une simplification drastique de la problématique en ne retenant que quelques caractéristiques essentielles et bien établies que l’on s’efforcera de présenter de façon intuitive.

Cet article est réservé aux abonnés.
Il vous reste 93% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

DOI (Digital Object Identifier)

https://doi.org/10.51257/a-v1-h3208


Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(240 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Présentation

4. Conception et architecture des logiciels

L’architecture, par la place centrale qu’elle occupe dans l’économie globale du cycle de vie logiciel, en est le régulateur principal (figure 11).

De l’architecture vont dépendre, non seulement les conditions de réalisation de la première version, mais également celles des versions successives, et finalement la durée de vie totale du système logiciel.

4.1 Nature de l’architecture

L’architecture est la résultante de trois ensembles de contraintes :

  • contraintes techniques, liées à la nature et aux missions du logiciel ;

  • contraintes technologiques, liées aux méthodes et outils de construction disponibles ;

  • contraintes humaines, liées à l’expérience des personnes et à la maturité des organisations de développement.

Ces contraintes et les compromis qui en découlent sont au cœur des phases d’expression des besoins et de conception.

Le problème auquel l’architecte est confronté existe indépendamment des technologies disponibles ou à inventer pour le résoudre. Mais l’un des dilemmes de l’architecte est :

  • peut-il, ou doit-il, imaginer le système en faisant totalement abstraction des contingences technologiques et humaines, au risque de déboucher sur un système infaisable ? ;

  • peut-il, ou doit-il, imaginer le système comme une conséquence des technologies disponibles, au risque de disparaître avec ces technologies ?

Un architecte de logiciel ne doit jamais oublier qu’une des vertus du logiciel est sa malléabilité. Il doit impérativement préserver cette caractéristique car c’est toujours le logiciel qui sera adapté en priorité lors des évolutions du système.

Dans une spécification d’architecture, il faut toujours bien séparer :

  • la description du système tel qu’il se présente dans la réalité physique, en y incluant toutes les activités tant manuelles qu’automatisées auxquelles le système donne lieu ; cette donnée première est le modèle conceptuel ;

  • la description logique du système telle qu’elle résulte des choix technologiques qui sont un compromis entre les exigences liées à la mission du logiciel, les coûts-délais d’acquisition et de...

Cet article est réservé aux abonnés.
Il vous reste 94% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(240 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Conception et architecture des logiciels
Sommaire
Sommaire

Cet article est réservé aux abonnés.
Il vous reste 93% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(240 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS