GL-Chapitre1-Introduction Au Génie Logiciel
GL-Chapitre1-Introduction Au Génie Logiciel
GL-Chapitre1-Introduction Au Génie Logiciel
Chapitre 1:
version 2018-2019
boudaa.boudjemaa@gmail.com
Cours GL – version 2018/2019 1
Objectifs
1
10/18/2018
Thèmes couverts
2
10/18/2018
3
10/18/2018
4
10/18/2018
5
10/18/2018
Chapitre 1 Introduction
Chapitre 1: Introduction au Génie Logiciel 11
6
10/18/2018
7
10/18/2018
8
10/18/2018
tools
methods
process model
a “quality” focus
9
10/18/2018
10
10/18/2018
Question Réponse
Question Réponse
Quels sont les principaux défis de Faire face à la diversité croissante, les demandes de délais de
l'ingénierie logicielle? livraison réduits et le développement de logiciels fiables.
Quels sont les coûts de génie logiciel? Environ 60% des coûts liés aux logiciels sont les coûts de
développement, 40% sont des coûts des essais. Pour les logiciels
personnalisés, les coûts d'évolution dépassent souvent les coûts
de développement.
Quelles sont les meilleures techniques et Bien que tous les projets de logiciels doivent être gérés et
méthodes de génie logiciel? développés professionnellement, différentes techniques sont
appropriés pour différents types de système. Par exemple, les
jeux doivent toujours être développées en utilisant une série de
prototypes alors que les systèmes de contrôle critiques à la
sûreté exigent une spécification complète et analysable pour
être développé. Vous ne pouvez pas, par conséquent, dire qu'une
méthode est meilleure qu'une autre.
Quelles sont les avantages apportés par le Le Web a conduit à la disponibilité de services de logiciels et à la
Web au génie logiciel? possibilité de développer des systèmes à base de services
hautement distribués. Le développement de systèmes basés sur
le Web a conduit à des progrès importants dans les langages de
programmation et dans la réutilisation des logiciels.
11
10/18/2018
Spécification du produit
12
10/18/2018
Efficacité ou performance Le logiciel ne doit pas faire de gaspillage des ressources du système,
(Efficiency or tels que les cycles de processeur et la mémoire. L’efficacité consiste à
performance) un bon usage des ressources.
Acceptabilité ou Le logiciel doit être acceptable par les utilisateurs pour lesquels il est
utilisabilité (acceptability conçu. Cela signifie qu'il doit être documenté, compréhensible,
or usability) utilisable et compatible avec d'autres systèmes qu'ils utilisent.
Génie logiciel
13
10/18/2018
14
10/18/2018
Hétérogénéité
De plus en plus, les systèmes doivent fonctionner comme des
systèmes distribués dans des réseaux qui regroupent différents
types d’ordinateurs et d’appareils mobiles.
Economie et changement social
L’économie et la société se changent incroyablement vite avec
l’émergence de nouvelles technologies. Ils doivent être capables
de changer leur logiciels existants et de développer rapidement
de nouveaux logiciels.
Sécurité et confiance
Comme le logiciel est intimement lié à tous les aspects de nos
vies, il est essentiel que nous puissions faire confiance à ce
logiciel.
Echelle
Le logiciel doit être développé dans une très large gamme
d'échelles, à partir de très petits systèmes embarqués dans des
appareils mettables (wearable) ou portables, jusqu'à des
systèmes basés sur l'Internet, basés sur le cloud, qui desservent
une communauté mondiale.
15
10/18/2018
Types d'applications
1) Applications autonomes
Ce sont des systèmes d'application s'exécutant sur un ordinateur
local, tel qu'un PC. Elles comprennent toutes les fonctionnalités
nécessaires et n'ont pas besoin d'être connecté à un réseau.
2) Applications basés sur les transactions interactives
Les applications qui s'exécutent sur un ordinateur distant et qui sont
accessibles par les utilisateurs à partir de leurs propres ordinateurs
ou terminaux. Il s'agit notamment des applications Web telles que les
applications de e-commerce.
3) Systèmes de contrôle embarqués
Ce sont des systèmes de contrôle des logiciels qui contrôlent et
gèrent les périphériques matériels. Numériquement, il y a
probablement plus de systèmes embarqués que n'importe quel autre
type de système.
16
10/18/2018
Types d'applications
Types d'application
17
10/18/2018
18
10/18/2018
19
10/18/2018
20
10/18/2018
Confidentialité
Les ingénieurs devraient normalement respecter la
confidentialité de leurs employeurs ou clients, indépendamment
de si oui ou non un accord formel de confidentialité a été signé.
Compétence
Les ingénieurs devraient pas dénaturer leur niveau de
compétence. Ils ne doivent pas accepter le travail qui est en
dehors de leur compétence.
21
10/18/2018
22
10/18/2018
Étude de Cas
23
10/18/2018
24
10/18/2018
25
10/18/2018
Mentcare
26
10/18/2018
Buts de Mentcare
L'organisation de Mentcare
27
10/18/2018
Préoccupations Mentcare
Vie privée
Il est essentiel que l'information du patient est confidentielle et
n'est jamais divulguée à personne en dehors de personnel
médical autorisé et le patient lui-même.
Sécurité
Certaines maladies mentales provoquent les patients à devenir
suicidaire ou un danger pour d'autres personnes. Chaque fois
que possible, le système doit avertir le personnel médical sur les
patients potentiellement suicidaires ou dangereux.
Le système doit être disponible en cas de besoin par ailleurs, la
sécurité peut être compromise et il peut être impossible de
prescrire le bon médicament aux patients.
28
10/18/2018
29
10/18/2018
30
10/18/2018
31
10/18/2018
Services d’iLearn
Architecture d’iLearn
32
10/18/2018
33
10/18/2018
34
10/18/2018
Références
35