1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn Études de l'approche d'ingénierie dirigée par les modèles pour le développement des applications mobiles

56 2 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Studies of Model-Driven Engineering Approach for Mobile Application Development
Tác giả Sirisang Jariya
Người hướng dẫn Ho Tuong Vinh, Ph.D.
Trường học Institut Francophone International [https://www.ifi.edu.vn]
Chuyên ngành Software Engineering
Thể loại Thesis
Năm xuất bản 2014
Thành phố Hanoi
Định dạng
Số trang 56
Dung lượng 1,85 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Institut Francophone International Sujet : Etudes de l’approche d’ingénierie dirigée par les modéles pour le développement des applications mobiles... Ce rapport se compose 5 chapitres

Trang 1

Institut Francophone International

Sujet : Etudes de l’approche d’ingénierie dirigée

par les modéles pour le développement des

applications mobiles

Trang 2

REMERCIEMENTS

Je voudrais VouL d?abord remereier Monsieur VicLor Moraru qui sua conseille ce

stage pour la fin de mes eludes

Je tiens & remercier Monsieur 1IQ "Mong, Vinh qui m’a proposé ce sujet intéressant

at eneadré pendant six mois de man stage Je le remarcie de son contact chalenrenx, ses comseils, ses sontiens et ses enconragements

Merci également Loutey les répouses de anes amis qui a'aident beaucoup de Gir

ce travail Merci enfin & mes parents pour leur souticn ct leur cnepuragement & tout

Vinstant.

Trang 3

on suit |’étape d'interroger des exigences, de faire I'analyse, ensuite on congoit a concep- tion et commence a coder, Ce processus prend beaucoup de temps et de cofits, Kit il aurait

un grand probléme lorsque le produit ne correspond pas aux exigences

Das fe cadre de ve stage, om propose une solulion qui upplique le principe de Fappeoche dingénierte dirigée par Jes maciéles ponr le développement des apptications

mobiles Celle-ci aiderait an développenr de rérnire le temps et le eoiit de développement: grare amt avantages des modéles Tidée de Papprache d’ingénierie dirigée par les modéles est que le développement de Papplication est guidé par fes modéles Lille est tres bien adaptée avec V'approche « Cross-platform 3 afin de réaliser les applications mobiles

ponr des différences systames d'explaitation Cela réduit le temps et des ressources pour

le développement Le cade est antomatiquement généré À partir des modéles qui sont définis par le développeur

Mot-clé : Ingénierie dirigée par les modéles, Application mobile, Multi-plateforme, DSL, Modélisation

Trang 4

Jn general, to develop an application, we follow the step of getting the require- ments, analyze the requirements and then designing and coding ‘his process takes many time and costs Aud it would be # big problem when te product dees sul correspond

to user requirements

We propnse a solution that applies Madel driven engineering approach for the development of mobiles applications, which will help to reduce the development’s time and costs through the advantages of models

The idea for the approach of model driven enginvetiag thal is Ge upplivalion development is guided by te models, TL is very well suited to Lhe "Crossplatlorm” approach to realize the mobile application for the differences in operating systems It reduces development’s time and resources, The source ende is automatically generated from the medels that are defined by the developer The generated application is truly

native and canses less of the problems of non-response recpiments

Keyword : Model Driven Engineering, Mobile Application, Crass- platform, DST:, Mo: delling

ili

Trang 5

Table des matiéres

Liidée et Vobjectif de FIDM viene

2.3 Les approches delIDM

Modéle-Integrated Computing (MIC)

Les usines logicielles (Software Factories)

2.3.3 Lispproche MDA : Model-Driven Architecture

La transformation de modéle Les outils de !'TDM

MetaEditt

2.2.5.3 EMF (Eelipse-EMF- website)

3⁄3 Intéret del'approehe d'ingénierie di

des applications mobiles

Trang 6

3.1 Mếthodologie et technique de Fapproche MDA . - 15

3.1.1 Méthodologie de Fapproche MDA 15

3.2.2.1 Conception pout: le xiểnloppetenk dt géndeatenr Ueivode: 21

3.2.2.2 Plateforme eible (Android) cà ee 32

B_ Modèle PIM de I'application de jeu <Sudoku> avec DSL 45

Trang 7

Table des figures

Le principe de processus de MDA

L’hiérarchie de modéles de MDA

Le plan du flux de MDA

La vue l'ensemble de solution:

Liétape de réalisation de PIM

Le concept de DSL

Liarchitecture de I'Acceleo

Le concept de la transformation pour la plateforme Android

La configuration de lexécution d’Acceleo

Trang 8

Liste des tableaux

La comparaison d’interface de Main

La comparaison d’interface de Second

La comparaison dinterface de Main .- eee ee

La eomparaison d'interface de Help

Trang 9

Chapitre 1

Introduction

Le premier chapitre concerne la présentation de la problématique du sujet « tude

de approche @’ingénierie dirigée par les modaies pour le développement des applications

mobiles at: aux besoins des ntilisatenrs

Copendant, des applicatious mobiles soul souveut fouruis pour plusicurs sysléues

@exploitation (Android, 108, WindewsPlone} Test essuliel de développer séparduicul pour chaque platefurine cu raison de détails différents duus la prograuumation des inker-

faces, des biblicthéques, et des langages de programmation

Dans l'industrie de développement du logiciel, on vrouve un grand besoin du développement C’est un effort de réaliser un logiciel complexe avec la courte durée

et moins de budget Cette situation existe aussi dans le développement des applica- ious pour les appareils mobiles Puisque l'utilisation des appazeils inubiles est de plus

en plus pupulaire, la compélition entre des suciélés d'applicatiou inobile est, plus forte, Strement, la sociélé qui peut recevoir fe plus de bénélils esl celle qui peut produire plus rapidement ct dépenser moins de ressouree du développement des applications pour la

sortic des nouveaux appareils mobiles ct pour les différences platcformes

Trang 10

— L’évitement de répétition de ende avec ume structnre généralisée nonr la rédue-

tion du temps de développement

— La probabilité de baisser d’erreur ou faciliter de la correction

— Le changement dans le code, I est moins compliqué de modifier si des fonction- nalités sont changées

La cupacilé de rédigor des funcviounalilés pour les différents Tangages, en les appeluuts une fois eb de réduire le temps de développemeut Par exemple, la, définivion dune culité cu Java, Objectif e ef peut dle faile par éerivant une

senle fois dans Ta langue spécifiqne A un domaine et de générer les différentes versions

— Généralement, la méthode de développement d'un logiciel commence par Pétape

de rénnir des reqnétes et puis on analyse ces reqnétes atin d’avoir la concep- tion chi produit In suite, la conception est prise A ’implémentation dụ logi- ciel Pareillement ponr celle de Fapplication mobile, & Vétape dimplémentation,

les développeurs devraient réaliser limpiémentation qui supporve les diflérences, plates-formes pour la raison mentionné ei-dessus En plus, cette méthode pour- rait aussi agrandir l'intervaile entre des requétes et ‘implémentation sila concep- tion n’est pas bien congue Cela provoque un grand probléme d’économique

y a des erreurs, il est facile et rapide de corriger en revoyant et modifiant des modéles

Liidée de Papproche d"ingéuierie dirigée par les inodiles est que le développement

de Tapplcation est guidé par les mudéles Ele ost ts bicw adaplée avec Fapproche

Trang 11

Chapler L Fulraduction 3

+ Cross-platform » atin de réaliser Fapplication mobile pour des différentes systemes

@exploitation, cela réduit le temps at des ressources de développement Le core est, antomatiqnement généré 4 partir des modéles qui sont définis par le dévelappeur |

code de Fapplication générée est de méme avec le code réalisé manueliement et améne

moins de probléme d’insatistaction des requétes

Co stage a Fobjectif d'étudicr Mapproche d'ingénicric dirigée ct découviir ses avan- tages pour le développement des applications mobiles Pour ce stage, jo dois avoir la compréhension snr eet: apprache en étndiant des travamx qui ant été fair et faire la camparaison, donner des point fort et des points fathles de Yapproche

Ce rapport se compose 5 chapitres qui sont le produit de étude de l'approche ingénierie dirigée par les modéles pour le développement des applications mobiles Dans le premier chapitre, on a présenté la problématique, la motivation et I'objectif de

we sujet du stage, Ou va préseuter dans le deuxidine chapitre sur la recherche de bibliv- gruphics qui coucernent noice travail, cl les Weavaux qui ont déja exislants, D’aillouss

ou représente aussi les descriplious de approche Uingéuicrie dirigée par les woidles

Dans le troisi¢me chapitre, on propose une solution pour Timplémentation de l'spproche Aingénierie dirigée par les modéles pour le développement des applications mobiles Le chapitre suivant est limplémentation de la solution propasé et Yexpérimentation En fin,

Je cinquiéme chapitre, on dome l'analyse sur le travail, la conclusion et les perspectives

Trang 12

Chapitre 2

Recherche bibliographique

Ce chapitre est une présentation de la recherche de bibliographie sur les tra-

vaux existants pour faciliter le développement des applications mobiles et sur lap-

ie dirigée par les Modéles(IDM) pour le développement des logiciels

proche d’

Commencant par la discussion sur les techniques qui nous permettent de développer

plus rapide et facilement une application mobile En suite, on va présenter approche

d'ingénicrie dirigée par les Modéles(IDM) qui est un autre choix pour le développement

des logiciels et & la fin, on vous parle des outils de cette approche

plications mobiles

Comme on a parlé dans le chapitre précédant de problématique dans le dévelop- pement des applications mobiles, les chercheurs font des efforts afin de trouver la solu- tion pour faciliter le développement des applications mobiles Et l'approche de multiple

A partir de 2011, il était clair qu'Adobe AIR{11] a été choisi comme la plateforme

au deuxiéme rang dans le développement des applications pour les appareils mobile

d’Android de Google et la premidre plateforme pour obtenir un soutien officiel afin de

développer des applications pour le Blackberry Playbook

Trang 13

«exploitation précités sans modifier l'application

Le moment oi Adobe AIR est populaire dans la section du développement de Vapplication de web, les produits chez Apple comme iPhone et iPad lance la nouvelle technologie du contréle des appareils indépendant de la sourire et le clavier C'est la raison pour laquelle chez Adobe trouve la popularité de cette nouvelle technologie et, améliore Adobe ATR afin de soutenir la nouvelle technologie d'écran tactile pour les appareils mobiles, Adobe AIR devient le premier choix qui est développé pour fonction- ner sur cette nouvelle technologie et consiste à travailler en étroite collaboration des

appareils mobiles et les tablettes de Google Android et RIM

Adobe AIR sur des appareils mobiles est adapté & consommer moins de ressources par rapport A celui sur un PC Ceci permet aux développeurs d'ignorer le problème du

manque de resource

Grace au concept de ne pas dépendre trop de langage de programmation, Adobe AIR peut développer dans deux fagons C'est la fagon de Putilisation d’Actionseript 3 et Adobe Flex framework, une autre facon est de l'utilisation HTML, CSS et Javascript

Toutefois tous les fagons sont implémentés par des outils d'Adobe par exemple Adobe

Flash Professionnel CS 5, Adobe Flash Builder 4.5 et Adobe Dreamweaver CS 5 Pour

développeurs, il faut avoir connaissance sur le langage de programmation orienté objet

(OOP)

Cependant Adobe ATR est développé pour la technologie de web, il a besoin de

I'Internet afin d’aceéder l’application comme le site web général

ADOBE AIR”

Fiaure 2.1: L’Adobe ATR

Trang 14

Chapter 2 Recherche bibliographique 6

2.1.2 jQuery Mobile Framwork

jQuery Mobile [15] nous permet de créer un site web mobile plus facilement Avec laquelle nous ne devons pas perdre le temps A la conception de l'interface de l'utilisateur

(UI), Cela nous permet aussi de construire une application mobile qui peut étre adapté

avec PhoneGap pour pouvoir soumis 4 I'App Store d’Apple ou Android ainsi

Les avantages de jQuery Mobile :

~ Une fois de la réalisation, il est possible de fonctionner sur tous les plateforme

tels que iOS, Android, BlackBer

des apparel

~ La collaboration avec le Framework PhoneGap, nous permet de réaliser facile- ment une application Il n’a pas besoin d’apprendre le langage du systéme tels que la plateforme iOS d’apprendre Objective-C langue et d’apprendre Java pour

la plateforme Android

~ Il peut étre utilisé avec le langage de programmation PHP et la base de données MySQL, il n'y a pas de différence de la programmation sur PHP et MySQL en général

ILy a beaucoup de beaux thémes choisir Nous ne devons pas perdre de temps

A Gerire CSS ou Javascript pour les interfaces, il permet aux développeurs de travailler plus rapidement

Les points faibles de jQuery Mobile : Le développement des sites web et des ap-

plications sur des appareils mobiles en utilisant jQuery Mobile, il faut admettre que

certaines capacités puisse commencer & utiliser um langage spécifique (langue mater-

App Mobile qui n'a pas besoin de trues, rien de plus Il fonetionne comme un site Web et

Comme interface matérielle de smartphon

dafficher une excellente sur les smartphones il est interdit dutiliser le {Query Mobile

est un excellent choix pour l'application des applications de développeur

SURE 2.2: Le jQuery Mobile Framwork

2.1.3 PhoneGap

PhoneGap [10] est un Framework basé sur le principe de Cross-Platform L'idée

par HTML, CSS, JavaScript dans une

de PhoneGap est d’envelopper le code qui est «

Trang 15

Chapter 2 Recherche bibliographique 7

de cette approche n’est que le Cross-Platform mais c'est aussi le cycle du développement

rapide grace A la propriété de réutilisable et de tragabilité,

Le développement des applications par MD2 est di 3 phrases : Tout d’abord,

le développeur décrit l'application par un modéle de textuelle, Deuxiémement, un généra-

teur de code pour chacune des plateformes supportées transforme le modéle vers le code

source de la plateforme respective avee des éléments structurels nécessaires tels que les fichiers de projet Pour le moment les générateurs de code pour Android et iOS sont disponibles A la troisième phase, le développeur doit compiler le code source généré

Le langage de MD2 est décrit sous le cadre de modéle Model-View-Controller (MVC)[16] Le modéle d'une application est séparé en partie de modéle, de vue, et

de contréleur Dans les applications générées, le contréleur est ba

d’événements, qui gére toutes les actions de l'utilisateur ainsi que des événements in-

ternes ou périphériques Les développeurs spécifient les actions dans le modéle, avant

détre prises si un événement se produit

2.2 IDM <Ingénierie Dirigée par les Modéles pour le développement des

logiciels

Dans le processus général pour développement de logiciel, il est difficile lorsqu’on

a besoin d’ajouter des fonctions ou de corriger des erreurs Cela peut aussi provoquer le

Trang 16

Ala suit

2.2.1 La définition de PIDM

L'Ingénierie Dirigée par les Modéles(IDM) [1, 12] utilisée sous le terme anglais de MDE (Model Driven Engineering) est une discipline du génie logiciel par laquelle tout ou partic dune application informatique est engendrée & partit de modéles Il est nécessaire

de fournir des outils flexibles et fiables pour la gestion automatique des modéles ainsi

que des langages dédiés pour leurs transformations, pour vocation lautomatisation du

développement de logici

en fournissant des outils et des langages de la transformation

2.2.2 L’idée et l'objectif de IDM

Un modéle est défini comme une abstraction d'un systéme Il est essentiel qu'un

modéle peut étre utilisé pour répondre & des questions sur le systéme moddélisé

On peut dire qu'un modéle est une forme simple pour représenter Pidée d'un

systéme, II permet aux intervenants de comprendre facilement et correctement le concept

de systéme Cela aide anx développeurs de réaliser le systéme satisfait aux besoins exacts

de Vutilisateur,

L'ingénierie Dirigée par les Modéles (IDM) releve ces avantages de modéle pour

le développement de logiciel L'IDM fournit des modèles afin d'exprimer séparément

est de rendre opérationnels les modéles pour génération de code exécutable

Pour formaliser et transformer des mod?les, ! IDM fournit des outils et des langages pour réaliser la transformation et formaliser des modéles On les appelle les langages de

modélisation et les langages de transformation dont on parlera plus tard,

Trang 17

Chapler 2 Recherche bibliographique 9

2.2.2 Les approches de PTOM

Nous avous préveuté daus la partie prévédaul le concept el Pidée de PIDM Pour auieux compreudre sou principe, on représeulera, les principales approches de développe-

ment logiciel basées sur 'IDM

2.2.3.1 Modéle-Integrated Computing (MIC)

Cette approche est: proparée an milieu des années 90 Au début Je MTC est concn ponr le développement des systemer emharqnés complexes Téidée de lapproche MIC est comme le principe de T'TDM, e'est qne considérer des madéles comme le centre

de processus de développement d'application Le MIC fournit une technologie pour la spécification et Putilisation de DSMLs, des outils de méta-programmation, des tech-

niques de vérification et de transformation đe modèles

Liarehilceture de MIC est cougue eu 3 uiveaux suivauts :

— Le nivean Meta, faumit des langages de méta-modélisation, des méta-modéles, des envirommements cle méta-modélisation et des méta-génératenrs panr créer des outils spécifignes 8 damaine, qni seront utilisés cans le nivean MTPS

(Model-Imegrated Program Synthes

— Le niveau (MLDS) est constitué de langages de modélisation spécifiques & un domaine, et de chaines d'outils pour la construction et fanalyse de modtes, la synthése d’applications

— Le niveau Application repeésente les applications logicielles adaptables Dans ce niveau, les programmes exécutables sont spécifiée en termes de composition de plateformes (CORBA, ete.)

2.2.3.2 Les usines logicielles (Software Factories)

Lidée des usines logiciclles ext d'adapter ees caractéristiques au développement de

de dumaines Wapplications prédéfinis

Trang 18

Chapter 2 Recherche bibliographique 10

fonctionnelles d'un systéme des détails đe son implémentation sur une plateforme donnée

Cela veut dire que des modéles sont spécifiés indépendant de plateforme, on appelle

<Platform Independent Model( PIM)» Les modéles de PIM sont utilisés pour exprimer

les fonctionnalités du systéme avant de définir la plateforme utilisée, Et un autre type

de modèle ost < Platform Specific Model (PSM)» Ce type de modéle est différent par rapport au PIM Le PSM est les modéles spécifiés la plateforme utilisée L’approche MDA permet de déployer un méme modéle de type PIM sur plusieurs plateformes grace

au principe de Ia transformation vers PSM

L’architecture de MDA est standardisée en 4 niveanx :

~ M0 ~ Le monde réel ou CIM est un niveau des fonetionnalités du systéme ou des exigences des utilisateurs

— M2 ~ Le méta-modéle est un modéle de model

Cvest un langage utilisé pour

décrire des modéles Par exemple UML, XML

~ MS - Le méta-métamodile permet de décrire un modile de méta-modeles Selon TOMG, le MOF est un exemple de description de méta-modéles,

EiGutu: 2.4: Liarchiteeture de MDA

Ref,(1)

Les transformations entre le CIM le PIM et les PSM sont souvent automatisés &

l'aide d'outils Ces transformations sont réalisées avec des outils plus ou moins compa- tibles avec le standard de !OMG nommé QVT.

Trang 19

Chapler 2 Recherche bibliographique 1

2.2.4 La transformation de modéle

La communaalé IDM (Bézivin, 2004}[3] consisle & dire qwuue transformation

de mudiles est Ja génératioa d'un ou de plusieurs modéley cibles @ partir d'un ou de plusieurs mudéles sources L’un des ebjectify d VIDM ust que YIDM cunsiste & pouvoir rendrc opératiounels les modéles & Vuide de Wwauslaruatious Dow ta transformation est

le caur de IDM Cette uution est bien représentée daus Pupproche de MDA

Lapproche MDA demande de créer d’abord un modéle indépendant de toute pla- teforme (PIM), en suite PIM est rafting en un ou plusieurs modates spécitique & une plateforme (PSM) La transformation joue Je réle de Vintermédiaire, détinit des régles

de transtormation entre PIM et PSM

Une transformation des entités du madéle sonrce met en jen deux érapes Ta

dexécution

2.2.5 Les outils de PTDM

Dans cette partie est ia présemation des outils qui permet de méta-modélisation

dans lexquels Ja (rausformation de muoddles cevieut & Vexécutiou d'un inéta-prograuuc

Ti cxiste anaintenant de aoinbreux des outils de anGla-moddlisation Ces qui soul préseutés suivauls, soul quclyncs excimpies souveut ulilists,

2.2.5.1 Kermceta

Kermeta ‘3| est un atelier de méta-moddlisation développé par Péquipe Triskell

de PIRISA Kermeta est utilisable sous forme d’un plugin Belipse Une description en

KEHMISTA est assimilable & om programme issu de la fnsion dun ensemble de méta-

JOV) et du méra-modaie d’action AS (Action Semantics} qui est mainte

> KERMA est done ume sarte

dans UML 2.0 Snperstructure Le langag:

de dénominateur commun des langages qui coexistent actueliement dans le paysage de LIDM Kermeta, peut étre vu comme étant composé d'un méta-méta-modéle (une ex- tension d’EMOF) auquel est associé un langage permettans de définir des actions sur les amélaemodiles, Ces actions peuvent servir par exeumple i vérilice Ia coliérence d'un

Trang 20

la um éditeur graphique de modéle & !UML

— Via un éditeur sons forme d’arbre en associant des instances du méta-élément

2.2.5.3 EMF (Eclipse-EMF-website)

EME (Eclipse Modeling Framework) a été développé pour simplifier le chargement,

la manipulation et le stockage des modéles dans l'environnement Eclipse EMF repose dans la famille d’Eclipse Modeling Framework Elle est une plateforme de modél

ion

et de génération de code qui facilite la construction d'outils et d'autres applications basées sur des modéles structurés EMF n'est pas spécifique & un méta-modéle, done il peut gérer tous les types de modéles I] est basé sur une norme de description de méta- modéle nommé “Ecore” Cette norme est um sous-ensemble de la norme MOF (MOF Essentiel), qui à son tour est un sous-ensemble de MOF2.EMF est composé des plug-ins qui sont :

— Le méta-modéle Ecore qui est un canevas de classes pour décrire les modéles

EMF et manipuler les référentiels de modéles

~ JavaEmitterTemplate qui est im moteur de template générique

~ JavaMerge qui est un outil de fusion de code Java,

Trang 21

Chapler 2 Recherche bibliographique 18

2.3 Intérét de I'approchec d’ingénicric dirigéc par les modéles

pour le développement des applications mobiles

Lorsque le marché des applications mobiles est de plus en plus élargi, les sociétéa

produetrices des applications mobiles osent de trouver des facons d’améliorer le processus

de développement d’applications mobiles Ve travail a le but d'obtenir une apptication auobile avec Ja boune qualité daus le Lempe de dồvelopporonk plus court possible eb pour faire face & Texpausion dia marché et I'wugineutatien de La consommation des ulilisateurs Lun des priucipaux problimes qui eutraine des sclards dias le développement d'appli- cations est des plateformes différentes des appareils mobiles L'application peut prendre

on charge plusicurs plateformes auront une moillcure commereialisation, Cependant, en raison du développement d'une application mobile pour les différentes plateformes doit

de

avoir besoin de conception individnelle pour accneillir me hibKothéqne différent

chaqne plareforme Ponr cela, le développenr consacra heanconp de temps A développer une application

Les chercheurs done font la recherche pour améliorer le processus de développe-

‘Néaumoius, les approches de cross-plauform, cles soul loujours coulrontées & des lanites fuudasuentales de foucliouncusenl dans un cavirunnement Web, Presque lous sont implémenté sur les langazes de web application, pas exactement semblable & une

Trang 22

Chapler 2 Recherche bibliographique 14

Les avantages mentionnés ci-dessus aideraient & résoudre je probleme de temps

utilisé at économique dans te développement: des applications mabiles anssi bien

Dans ce chapilre, ou a inureduit Ja vuc d’cascuible de Papproche U'img¢nivrie disigée par les modéles et Jes travaux qui sont cxistants pour Pamélicration du développement des applications mobiles Le travail suivant est de tronver des idécs des outils appropriés pour planificr postéricurement la solution d’implémentcr Papproche de đhìngónicric di- rigge par les modéles pont le développement: des applications mobiles Cala sera, présenté dans le chapitre suivant

Trang 23

Chapitre 3

Solution proposée

Dans cette partie du rapport représente la solution proposée pour limplémentation

de l'approche dingénierie dirigée par les modéles & partir de "étude théorique On présente deg techniques et dea outils utilisée

3.1 Méthodologie et technique de approche MDA

Paruui les upproches de l'ingGuierie dirigée par les wudéles, Papproche MDA cst la plus approprige vie appliqner le génératenr pour Eapplication mobile parce qne Vidée de hase duu MTA est la séparation cles spécifications fonctionnelles 1m systime des détails

de sem implémentation su ime plateforme donnée

Comme on va adopter approche MDA pour a solution, donc on va présenter en détail de vetle approche

3.1.1 Méthodologie de Vapprache MDA

Le MDA a mis en évidence Pintérét de s¢parer les spécifications fonctionnelles

@une application de son implémentation sur ave plateforine donnée

Tonr profiter lea avantaes commercianx de cette approche et: répandre ax proble matiqnes du développement des applications mobiles, le PTM doit survivre le changement:

de plateforme et étre réutilisable pour plusieurs plateformes Les conséquences aont Les suivantes :

— Lez modéles deviennent des objets de premiére classe dans le processus de développement, piutét que d’étre ignoré aprés : si vous modifies le PIM, la

fonctionualité du systdme lived va changer

Trang 24

Chapler 3 Selution propusée 16

— La génération de onde devient importante : la transformation de ia, PIM awe

PSMs mannellement est eofitense et risqué de source d'errenrs, alors que le

mappage antomatique de la PSM pent réduire considérablement le cofit de la

transformation vers une nouvelle plateforme ou mis a niveau

L'approche MDA demande de créer d’abord un modéte indépendant de toute pla- teforme (PIM), en suite PIM est rafting en un ou plusieurs modates spécifique & une plateforme (PSM) La transformation joue Je réle de lintermédiaire, détinit des réglea

de (ransformation cnlre PIM ot PSM La figure cidessous représente le processus de

— In suite, c'est le modéle @’analyse et de coneeption |e PIM (Platform Inde-

pendent Model} a été spécifié par wn langage de spécitication Ceci pent étre um langage textuel on graphique Le modéle abtem est indépendant des platefarmes

d'exécution Ce modéle sera transformé vers le PIM & la suite

— Le modéle PSM (Platiorm specific model) est transformé A partir de modele PIM Un PIM peut étre généré & plusieurs PSM pour plusieurs plaveformes par

Taide dex mécanismes de transformatiou de modéle

3.1.2 Techniques disponibles de approche MDA

Le MDA a un grand d’ensemble des technologies disponible permettant de la

réalivabion des logivicks basaut sur le cadre de MDA La figure ci-dessous copréseute des

lechnologies dispouibles dans chugues uivcaux de Vapproche sclow là norne,

Trang 25

Chapter 3 Solution proposte 17

H3 META OBJECT FACILITY

MOF

meta-mode! Profile Profile

UML Infrastructure : qui es

~ Meta Object Facility (MOF) : qui est la langue & l'aide de laquelle une

a la base de la spécification MOF

méta-modele est défini

Object Constraint Language (OCL) : permet de définir la formelle de

contraintes sur des éléments d‘un modéle

Query View Transformation Language (QVT) : permet de définit un modele & transformations

~ MOF Models to Text (MOFM2T) Transformation Langue : permet la

définition de mode

1 texte transformation

Dans la figure 3.3, c'est la présentation d'une carte de nombreux flux possibles

de la modélisation et de la transformation que on peut suivre lors de la définition d'un

processus MDA

Tout d’abord on doit choisir le langage de modélisation qu’on souhaite d’exploiter Cela peut étre UML, SysML, MARTE ou tout autre langage de modélisation défini par

Trang 26

le MOF ou la grammaire d'une DSL peut correspondre un méta-modéle équivalent,

comme il arrive dans Xtext

D'un modéle d’entrée on peut appliquer le MOFM2T (MOF Models to Text Trans- formation Language) afin de générer la documentation, le code et les artefacts textuels précieux

Pour notre solution, on va prendre le DSL comme le langage de modélisation et

appliquer le modéle au texte transformations (MOFM2T) afin de générer le code

Trang 27

Chapter 3 Solution proposée 19

Au niveau de M3, le méta-métamodele uti est suivi le standard MOF,

— On suppose que l'application de langage naturel est le CIM dans la figure 3.1

On doit transformer le CIM vers le PIM par l'aide d'un langage DSL

— On implémente la technologies du projet Eclipse distribué dans Eclipse Mo- deling Framework : Xtext(8] pour définir le langage DSL Ce Framework offre toutes les fonctionnalités pour créer son propre langage et la définition de régles

de génération de transformer de grammaire dans leurs programmes A un langage

dusage général comme Java, Objective C, C + +, ete

On implémente le Xtext pour définir le langage de meta-modéle (MobileApp-

Model) et puis on utilise ce langage pour spécifier le modéle correspond au PIM Ensuite, on développe le générateur de code pour les plateformes spécifiées en espérant d'obtenir le code de Vapplication mobile de la plateforme cible Pour

le fait, on applique la théorique de la transformation le modéle PIM vers les

modéles PSM pour chaque plateforme mobile

— Afin de définir la régle de la transformation, on utilise !Acceleo[18] qui est ume implémentation de Object Management Group (OMG) sur le norme de MOF.MOF Models to Text (MOFM2T)|19]

Les travaux de définir un DSL pour le PIM et de réaliser le générateur de code sont les travanx au niveau de méta-modéle (M2) dans le principe de approche de d'ingénierie dirigée par les modéles Et les modéles obtenus (PIM, PSM) sont dans le niveau de modéle (M1) qui est transformé pour 'objeetif d'obtenir le code exéeutable.

Trang 28

compréhension de la facon dont Varchitecture fonctionne Pour comprendre ce qui est

contenu dans un mode ainsi que les informations qu'il doit représenter, il faut d’abord s'entendre sur la définition de son contenu C'est le travail qui est visé lors de utilisation

Définir les concepts qui devraient étre modélisés ct la meilleure fagon de le faire Représenter ces concepts sous forme de MOF ou EMF diagrammes

Notre objectif principal est de réaliser le générateur de code pour les applications mobiles en appliquant l'approche €’ingénierie dirigée par les modéles done application

mobile sera le domaine considéré pour le DSL

3.2.1.1 Conception de la méta-modélisation,

Une fois défini notre domaine de langage, on doit décider sur le choix d’une syn- taxe de notre langage qui doit représenter toutes les composantes de notre domaine, Ce type particulier de langage est appelé < Domain Specific Language(DSL) » : un langage

spécifique & un domaine particulier Enfin, on va créer une grammaire de transforma-

Ngày đăng: 21/05/2025, 18:48

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm