Systèmes embarqués et mobilité
Ministère de l’enseignement supérieur et de la recherche scientifique
El HadaïK, Skikda
Master 2 Ingénierie des systèmes distribués
Master 2 Génie logiciel et applications avancées
Bourrich Hanene
2
Les avancées technologiques dans le domaine de l'information et des
communications ont sans aucun doute modifié le paysage de
l'informatique. Aujourd'hui, les systèmes informatiques ne sont plus
seulement constitués d'ordinateurs connectés à des serveurs, ils
intègrent également une grande variété de dispositifs embarqués.
Cette nouvelle vision, où le traitement de l'information est intégré aux
objets, vient de la rencontre entre l'informatique traditionnelle et
l'électronique, et conduit au concept de systèmes informatiques
ubiquitaires.
Introduction Approches de développement Conclusion
INTRODUCTION
3
Le concept d’informatique ubiquitaire a été introduit par Marc Weiser
[Wei91] pour désigner sa vision futuriste de l’informatique du XXIe
siècle. Il imaginait un monde abondamment peuplé d’objets
informatiques et numériques qui seraient reliés en réseaux à très
grande échelle et interagiraient de manière autonome et transparente
afin d’accomplir diverses tâches de la vie quotidienne.
Introduction Approches de développement Conclusion
INTRODUCTION
INTRODUCTION
4
L’idée novatrice de cette vision réside dans le fait de mettre les
nouvelles technologies (e.g., les technologies de l’information et de la
communication) au service des utilisateurs, et non l’inverse. En
particulier, il s’agit de permettre aux utilisateurs d’accéder aux
différents services offerts par ces objets communicants, le plus
naturellement possible, n’importe où, à tout instant et à partir de
divers dispositifs.
Introduction Approches de développement Conclusion
INTRODUCTION
5
Introduction Approches de développement Conclusion
DEFINITION
6
Un système d’informatique ubiquitaire permet d’automatiser certaines
tâches quotidiennes grâce aux différents objets communicants
disponibles [SM03]
Introduction Approches de développement Conclusion
DEFINITION
7
Introduction Approches de développement Conclusion
contrairement à la réalité virtuelle qui définit un monde dans lequel
nous pouvons évoluer, l’informatique ubiquitaire fait entrer les
ordinateurs dans le nôtre.
Fonctionnement d’un système d’informatique
ubiquitaire
8
Introduction
Approches de
développement Conclusion
DEFINITION
9
Les systèmes d’informatiques ubiquitaires reposent sur deux notions
centrales : le contexte à partir duquel ils réagissent et s’adaptent aux
différents changements de l’environnement, et la découverte de
services pour trouver quels objets communicants sont disponibles
dans l’environnement.
Introduction Approches de développement Conclusion
DEFINITION
10
Contexte:
«toutes les informations qui peuvent être utilisées pour caractériser la
situation d’une entité (i.e., une personne, un lieu ou encore un objet)
qui est considérée pertinente pour l’interaction entre un utilisateur et
une application, y compris l’utilisateur et l’application eux-mêmes»
Introduction Approches de développement Conclusion
DEFINITION
11
Découverte de services:
Les systèmes d’informatique ubiquitaire nécessitent d’accéder aux
différentes capacités offertes par les objets communicants disponibles.
Pour cela, ils utilisent les mécanismes de découverte de services
[ZMN05] afin de localiser dynamiquement les objets communicants
dont ils ont besoin. La découverte de services permet aux
développeurs de ne pas avoir à connaître où sont physiquement
localisés les objets communicants. Ainsi, les systèmes ne sont pas
statiquement liés à des objets communicants particuliers, ce qui leur
permet de s’adapter plus facilement aux changements de
l’environnement physique, puisque de nouveaux objets communicants
peuvent apparaître et d’autres disparaître.
Introduction Approches de développement Conclusion
CARACTERISTIQUES DES SYSTEMES UBIQUITAIRES
12
Hétérogénéité :
Les systèmes d’informatique ubiquitaire sont fortement hétérogènes à
plusieurs niveaux.
Tout d’abord, ils sont déployés dans de nombreux et divers domaines
d’application, tels que la domotique , la gestion des catastrophes
routières , l’armée ou encore les soins hospitaliers [Jou06]. La diversité
de ces domaines d’application implique toutes sortes d’objets
communicants, aussi bien matériels (e.g., téléphones portables,
caméras vidéo, capteurs) que logiciels (e.g., bases de données,
agendas en ligne, clients de messagerie instantanée).
Toutefois, l’interopérabilité de toutes ces technologies n’est
aujourd’hui pas assurée. L’enjeu consiste donc ici à abstraire toute la
complexité et l’hétérogénéité technologiques afin de faciliter le
développement des systèmes d’informatique ubiquitaire.
Introduction Approches de développement Conclusion
13
Caractère dynamique
Dans un système d’informatique ubiquitaire, la disponibilité des objets
communicants peut varier au cours du temps. En effet, ces derniers
peuvent être dynamiquement ajoutés ou retirés du système, de
manière intentionnelle ou non. Par exemple, la portée limitée des
technologies réseaux sans fil, associée à la mobilité des utilisateurs,
peut placer hors de portée certains objets communicants. De plus, ces
objets communicants ont généralement des ressources limitées en
énergie et sont sujets à des défaillances matérielles et logicielles, ce
qui peut les rendre indisponibles pour un temps indéfini. Le système
doit alors s’adapter (e.g., en découvrant de nouveaux objets
communicants) afin de poursuivre son exécution et potentiellement
reprendre certaines tâches interrompues. L’enjeu consiste donc ici à
fournir un support de programmation pour découvrir les objets
communicants disponibles dans l’environnement et pour coordonner
leurs interactions malgré leur volatilité.
Introduction Approches de développement Conclusion
14
Caractère dynamique
L’utilisateur est au centre des systèmes d’informatique ubiquitaire. De
ce fait, la fiabilité des systèmes avec lesquels il cohabite est essentielle.
En effet, un mauvais fonctionnement pourrait entraîner des
conséquences néfastes sur les activités de l’utilisateur. Par exemple,
dans le cas d’un système d’aide à la personne, si un capteur (e.g., de
chute) venait à tomber en panne, la sécurité de la personne pourrait
être compromise. De plus, chaque domaine d’application possède des
propriétés critiques spécifiques, qu’il est essentiel que le système
déployé garantisse. Par exemple, une propriété évidente du domaine
de l’aide à la personne est qu’en présence d’une situation anormale, le
système alerte automatiquement le personnel médical le plus
rapidement possible.
Introduction Approches de développement Conclusion
DEVLOPPEMENT DES SYSTEMES UBIQUITAIRES
15
Intergiciels distribués et frameworks de programmation
Une approche classique pour le développement de systèmes
d’informatique ubiquitaire est d’utiliser des intergiciels distribués
standardisés. Ces derniers facilitent le développement de systèmes
distribués traditionnels, en masquant la complexité du réseau et en
offrant divers mécanismes génériques (e.g., annuaire de services,
notification d’événements) pour supporter les interactions entre les
différents objets communicants déployés.
Introduction Approches de développement Conclusion
DEVLOPPEMENT DES SYSTEMES UBIQUITAIRES
16
Langages dédiés distribués
Plusieurs langages dédiés au développement de systèmes
d’informatique ubiquitaire ont été proposés, parmi lesquels nous
pouvons citer AmbientTalk, YABS. Ces langages sont fondés sur
différents paradigmes de communication (e.g., le modèle des acteurs
et de notation textuelle ou graphique.
Introduction Approches de développement Conclusion
Exemples des systèmes ubiquitaires
17
Introduction Approches de développement Conclusion
SIXTH SENSE- MIT FLUID LAB
18
'SixthSense' is a wearable gestural interface that augments the physical
world around us with digital information and lets us use natural hand
gestures to interact with that information. By using a camera and a tiny
projector mounted in a pendant like wearable device, 'SixthSense' sees
what you see and visually augments any surfaces or objects we are
interacting with. It projects information onto surfaces, walls, and
physical objects around us, and lets us interact with the projected
information through natural hand gestures, arm movements, or our
interaction with the object itself. 'SixthSense' attempts to free
information from its confines by seamlessly integrating it with reality,
and thus making the entire world your computer.
Introduction Approches de développement Conclusion
SIXTH SENSE- MIT FLUID LAB
19
Le principe de ce projet est l’utilisation des gestes les plus naturels
possible pour apporter de l’information virtuelle dans le monde réel.
Pour faire simple, le dispositif est composé d’un capteur et d’un
projecteur, couplé à un ordinateur et une liaison Internet. Le tout est
portable ! Cela permet de piloter très simplement l’appareil avec les
doigts et de projeter des informations dans le monde réel. On s’éloigne
ici des appareils encombrants comme les ordinateurs et les téléphones
mobiles puisque, à l’extrême, tout est concentré dans un collier ou
dans des vêtements !
Introduction Approches de développement Conclusion
20
Introduction Approches de développement Conclusion
Projet U-SHOPPING
21
Introduction Approches de développement Conclusion
Le projet U-Shopping est un projet qui s’intéresse au shopping
Ubiquitaire. L’idée princeps est de développer des services innovants
accessibles sur smartphone pour faciliter les activités des usagers au
sein des parcs d’activités commerciales. Dans le cadre de ce projet, le
site pilote est le PAC d’Englos (Nord).
Evalab a été sollicité dans le but de faire émerger les besoins des
usagers en termes de services innovants et de dégager les
spécifications fonctionnelles des nouveaux services. Afin d’assurer
l’adaptation des services à l’environnement d’usage, Evalab
accompagne le développement tout au long du cycle de conception
(évaluations expertes et tests utilisateurs)
Merci pour votre
Attention …
22

3-Systèmes ubiquitaires.pptx cour en système informatique

  • 1.
    Systèmes embarqués etmobilité Ministère de l’enseignement supérieur et de la recherche scientifique El HadaïK, Skikda Master 2 Ingénierie des systèmes distribués Master 2 Génie logiciel et applications avancées Bourrich Hanene
  • 2.
    2 Les avancées technologiquesdans le domaine de l'information et des communications ont sans aucun doute modifié le paysage de l'informatique. Aujourd'hui, les systèmes informatiques ne sont plus seulement constitués d'ordinateurs connectés à des serveurs, ils intègrent également une grande variété de dispositifs embarqués. Cette nouvelle vision, où le traitement de l'information est intégré aux objets, vient de la rencontre entre l'informatique traditionnelle et l'électronique, et conduit au concept de systèmes informatiques ubiquitaires. Introduction Approches de développement Conclusion INTRODUCTION
  • 3.
    3 Le concept d’informatiqueubiquitaire a été introduit par Marc Weiser [Wei91] pour désigner sa vision futuriste de l’informatique du XXIe siècle. Il imaginait un monde abondamment peuplé d’objets informatiques et numériques qui seraient reliés en réseaux à très grande échelle et interagiraient de manière autonome et transparente afin d’accomplir diverses tâches de la vie quotidienne. Introduction Approches de développement Conclusion INTRODUCTION
  • 4.
    INTRODUCTION 4 L’idée novatrice decette vision réside dans le fait de mettre les nouvelles technologies (e.g., les technologies de l’information et de la communication) au service des utilisateurs, et non l’inverse. En particulier, il s’agit de permettre aux utilisateurs d’accéder aux différents services offerts par ces objets communicants, le plus naturellement possible, n’importe où, à tout instant et à partir de divers dispositifs. Introduction Approches de développement Conclusion
  • 5.
  • 6.
    DEFINITION 6 Un système d’informatiqueubiquitaire permet d’automatiser certaines tâches quotidiennes grâce aux différents objets communicants disponibles [SM03] Introduction Approches de développement Conclusion
  • 7.
    DEFINITION 7 Introduction Approches dedéveloppement Conclusion contrairement à la réalité virtuelle qui définit un monde dans lequel nous pouvons évoluer, l’informatique ubiquitaire fait entrer les ordinateurs dans le nôtre.
  • 8.
    Fonctionnement d’un systèmed’informatique ubiquitaire 8 Introduction Approches de développement Conclusion
  • 9.
    DEFINITION 9 Les systèmes d’informatiquesubiquitaires reposent sur deux notions centrales : le contexte à partir duquel ils réagissent et s’adaptent aux différents changements de l’environnement, et la découverte de services pour trouver quels objets communicants sont disponibles dans l’environnement. Introduction Approches de développement Conclusion
  • 10.
    DEFINITION 10 Contexte: «toutes les informationsqui peuvent être utilisées pour caractériser la situation d’une entité (i.e., une personne, un lieu ou encore un objet) qui est considérée pertinente pour l’interaction entre un utilisateur et une application, y compris l’utilisateur et l’application eux-mêmes» Introduction Approches de développement Conclusion
  • 11.
    DEFINITION 11 Découverte de services: Lessystèmes d’informatique ubiquitaire nécessitent d’accéder aux différentes capacités offertes par les objets communicants disponibles. Pour cela, ils utilisent les mécanismes de découverte de services [ZMN05] afin de localiser dynamiquement les objets communicants dont ils ont besoin. La découverte de services permet aux développeurs de ne pas avoir à connaître où sont physiquement localisés les objets communicants. Ainsi, les systèmes ne sont pas statiquement liés à des objets communicants particuliers, ce qui leur permet de s’adapter plus facilement aux changements de l’environnement physique, puisque de nouveaux objets communicants peuvent apparaître et d’autres disparaître. Introduction Approches de développement Conclusion
  • 12.
    CARACTERISTIQUES DES SYSTEMESUBIQUITAIRES 12 Hétérogénéité : Les systèmes d’informatique ubiquitaire sont fortement hétérogènes à plusieurs niveaux. Tout d’abord, ils sont déployés dans de nombreux et divers domaines d’application, tels que la domotique , la gestion des catastrophes routières , l’armée ou encore les soins hospitaliers [Jou06]. La diversité de ces domaines d’application implique toutes sortes d’objets communicants, aussi bien matériels (e.g., téléphones portables, caméras vidéo, capteurs) que logiciels (e.g., bases de données, agendas en ligne, clients de messagerie instantanée). Toutefois, l’interopérabilité de toutes ces technologies n’est aujourd’hui pas assurée. L’enjeu consiste donc ici à abstraire toute la complexité et l’hétérogénéité technologiques afin de faciliter le développement des systèmes d’informatique ubiquitaire. Introduction Approches de développement Conclusion
  • 13.
    13 Caractère dynamique Dans unsystème d’informatique ubiquitaire, la disponibilité des objets communicants peut varier au cours du temps. En effet, ces derniers peuvent être dynamiquement ajoutés ou retirés du système, de manière intentionnelle ou non. Par exemple, la portée limitée des technologies réseaux sans fil, associée à la mobilité des utilisateurs, peut placer hors de portée certains objets communicants. De plus, ces objets communicants ont généralement des ressources limitées en énergie et sont sujets à des défaillances matérielles et logicielles, ce qui peut les rendre indisponibles pour un temps indéfini. Le système doit alors s’adapter (e.g., en découvrant de nouveaux objets communicants) afin de poursuivre son exécution et potentiellement reprendre certaines tâches interrompues. L’enjeu consiste donc ici à fournir un support de programmation pour découvrir les objets communicants disponibles dans l’environnement et pour coordonner leurs interactions malgré leur volatilité. Introduction Approches de développement Conclusion
  • 14.
    14 Caractère dynamique L’utilisateur estau centre des systèmes d’informatique ubiquitaire. De ce fait, la fiabilité des systèmes avec lesquels il cohabite est essentielle. En effet, un mauvais fonctionnement pourrait entraîner des conséquences néfastes sur les activités de l’utilisateur. Par exemple, dans le cas d’un système d’aide à la personne, si un capteur (e.g., de chute) venait à tomber en panne, la sécurité de la personne pourrait être compromise. De plus, chaque domaine d’application possède des propriétés critiques spécifiques, qu’il est essentiel que le système déployé garantisse. Par exemple, une propriété évidente du domaine de l’aide à la personne est qu’en présence d’une situation anormale, le système alerte automatiquement le personnel médical le plus rapidement possible. Introduction Approches de développement Conclusion
  • 15.
    DEVLOPPEMENT DES SYSTEMESUBIQUITAIRES 15 Intergiciels distribués et frameworks de programmation Une approche classique pour le développement de systèmes d’informatique ubiquitaire est d’utiliser des intergiciels distribués standardisés. Ces derniers facilitent le développement de systèmes distribués traditionnels, en masquant la complexité du réseau et en offrant divers mécanismes génériques (e.g., annuaire de services, notification d’événements) pour supporter les interactions entre les différents objets communicants déployés. Introduction Approches de développement Conclusion
  • 16.
    DEVLOPPEMENT DES SYSTEMESUBIQUITAIRES 16 Langages dédiés distribués Plusieurs langages dédiés au développement de systèmes d’informatique ubiquitaire ont été proposés, parmi lesquels nous pouvons citer AmbientTalk, YABS. Ces langages sont fondés sur différents paradigmes de communication (e.g., le modèle des acteurs et de notation textuelle ou graphique. Introduction Approches de développement Conclusion
  • 17.
    Exemples des systèmesubiquitaires 17 Introduction Approches de développement Conclusion
  • 18.
    SIXTH SENSE- MITFLUID LAB 18 'SixthSense' is a wearable gestural interface that augments the physical world around us with digital information and lets us use natural hand gestures to interact with that information. By using a camera and a tiny projector mounted in a pendant like wearable device, 'SixthSense' sees what you see and visually augments any surfaces or objects we are interacting with. It projects information onto surfaces, walls, and physical objects around us, and lets us interact with the projected information through natural hand gestures, arm movements, or our interaction with the object itself. 'SixthSense' attempts to free information from its confines by seamlessly integrating it with reality, and thus making the entire world your computer. Introduction Approches de développement Conclusion
  • 19.
    SIXTH SENSE- MITFLUID LAB 19 Le principe de ce projet est l’utilisation des gestes les plus naturels possible pour apporter de l’information virtuelle dans le monde réel. Pour faire simple, le dispositif est composé d’un capteur et d’un projecteur, couplé à un ordinateur et une liaison Internet. Le tout est portable ! Cela permet de piloter très simplement l’appareil avec les doigts et de projeter des informations dans le monde réel. On s’éloigne ici des appareils encombrants comme les ordinateurs et les téléphones mobiles puisque, à l’extrême, tout est concentré dans un collier ou dans des vêtements ! Introduction Approches de développement Conclusion
  • 20.
    20 Introduction Approches dedéveloppement Conclusion
  • 21.
    Projet U-SHOPPING 21 Introduction Approchesde développement Conclusion Le projet U-Shopping est un projet qui s’intéresse au shopping Ubiquitaire. L’idée princeps est de développer des services innovants accessibles sur smartphone pour faciliter les activités des usagers au sein des parcs d’activités commerciales. Dans le cadre de ce projet, le site pilote est le PAC d’Englos (Nord). Evalab a été sollicité dans le but de faire émerger les besoins des usagers en termes de services innovants et de dégager les spécifications fonctionnelles des nouveaux services. Afin d’assurer l’adaptation des services à l’environnement d’usage, Evalab accompagne le développement tout au long du cycle de conception (évaluations expertes et tests utilisateurs)
  • 22.

Notes de l'éditeur

  • #17 Si on veut définir un système embarqué on pourrait le définir comme suit:
  • #20 Si on veut définir un système embarqué on pourrait le définir comme suit: