29
Soutenance du Travail d’Etude et de Recherches Master 1 STIC Année 2005 Plugin Eclipse pour la composition des préoccupations dans le langage Java

Soutenance du Travail d’Etude et de Recherches Master 1 STIC Année 2005

  • Upload
    fruma

  • View
    26

  • Download
    1

Embed Size (px)

DESCRIPTION

Soutenance du Travail d’Etude et de Recherches Master 1 STIC Année 2005. Plugin Eclipse pour la composition des préoccupations dans le langage Java. Participants. Bonfils David Férut Térence Julien Nicolas Leroy Sébastien Encadrés par : Lahire Philippe Crescenzo Pierre. Plan général. - PowerPoint PPT Presentation

Citation preview

Page 1: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Soutenance du Travail d’Etude et de Recherches

Master 1 STIC Année 2005Plugin Eclipse pour la

composition des préoccupations dans le

langage Java

Page 2: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

2

Participants

Bonfils David Férut Térence Julien Nicolas Leroy SébastienEncadrés par :

Lahire Philippe Crescenzo Pierre

Page 3: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

3

Plan général

1. Rappels2. Déroulement du TER –

Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références bibliographiques

Page 4: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

4

1. Rappels

Introduction Travail prévu Organisation du travail Planning

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 5: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

5

Introduction

Sujet de notre TER Plugin Eclipse pour la composition

de préoccupations dans le langage Java

Contexte JAdapt de Laurent Quintian

Période Début Mars au 20 juin 2005Plan :

1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 6: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

6

Travail prévu

Portage du plugin vers Eclipse 3 Refonte de l’architecture de

l’application et du moteur Création d’un éditeur pour la saisie

des adaptations Documentation très détaillée

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 7: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

7

Organisation du travail

Découpage du travail en sous-parties

Réunions de validation hebdomadaires

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 8: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

8

Planning prévisionnel

Page 9: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

9

2. Déroulement et Organisation

Modifications apportées au CdC. Rôle prépondérant des réunions

dans la gestion du risque Réorganisation et nouvelle

répartition du travail État d'avancement

Plan :1. Rappels2. Déroulement

Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 10: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

10

Modifications dans le CdC Avant :

Réaliser un portage de JAdapt d’Eclipse 2.1 à Eclipse 3.X. Refondre le moteur et l’application

Après : Repartir à zéro, avec un nouveau modèle de conception sous Eclipse 3.X Implémenter un modèle d’application inédit, très différent de celui de Laurent Quintian, construit à partir du plugin EMF

Plan :1. Rappels2. Déroulement

Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 11: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

11

Intérêt des réunions Nécessaires pour :

analyser, recadrer, valider, discuter du travail de chacun.

Plusieurs avec M. Lahire, pour parfaire la compréhension.

Profiter de l’avis des autres pour mieux cerner les besoins.Plan :

1. Rappels2. Déroulement

Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 12: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

12

Réorganisation et nouvelle répartition du travail

Exploration de l'apport du modèle EMF

Nouvelles tâches Packages core, language et

adaptations Beaucoup plus de travail que prévu

initialement Dans l’ensemble, pas de

réorganisation profonde.Plan :1. Rappels2. Déroulement

Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 13: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

13

État d'avancement

Objectifs complètement réalisés Création du nouveau plugin Intégration de l’éditeur Documentation bilingue (français –

anglais) Manuel de maintenance Code très commenté Création de 2 tutoriels HTMLPlan :

1. Rappels2. Déroulement

Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 14: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

14

État d'avancement (suite)

Objectifs partiellement atteints Architecture de l’application

Architecture reprise à zéro et pas tout à fait recodée à 100%

Ajouts d’adaptations (non prioritaire)

Nouvelles adaptations ajoutées, mais pas forcément implémentées complètement)Plan :

1. Rappels2. Déroulement

Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 15: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

15

État d'avancement (suite)

Non traités Ajout d’une vue textuelle à l’éditeur

(non prioritaire) Compatibilité avec JAdapt 1 (non

prioritaire) Incorporation de la Composition

Incrémentale (non prioritaire)Plan :1. Rappels2. Déroulement

Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 16: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

16

3. Travail Effectué

a. Environnement de travailb. Pluginc. Éditeurd. Réification du langagee. Adaptationsf. Moteur

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 17: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

17

a. L’Environnement de travail

Eclipse 3.1 M6 Java 1.5.0_02 EMF 2.0.0

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 18: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

18

b. Le Plugin

Nouveau plugin pour la version 3.1 d’Eclipse. Bien plus abouti que celui développé

par Laurent Quintian. En parfaite adéquation avec les

exigences.

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 19: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

19

b. Le Plugin (suite)

Présence d’un « wizard » pour lancer l’éditeur.

Ajout d’une « nature » permettant d’utiliser, ou non, notre précompilateur.

Évolution et adaptation constantes, tout au long du développement.

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 20: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

20

c. L’Éditeur

Ajouts Nouveaux filtres pour le menu

contextuel Nouveau filtre pour le « wizard »

Modifications Modification des filtres pour les

extensions des fichiersPlan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 21: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

21

d. La Réification du langage

But : pouvoir manipuler les objets du

langage (packages, classes, attributs, méthodes …)

Abstraire le langage à manipuler Faciliter le travail sur les adaptations Accroître l’extensibilité et la lisibilité

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 22: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

22

d. La Réification du langage (suite)

Comment : Utilisation des API JDT et AST

d’Eclipse Création de classes qui encapsulent

les éléments du JDT et proposent les principales opérations

Création d’un plugin de tests (voir logs en annexe)Plan :

1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 23: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

23

e. Les Adaptations Les adaptations:

Opérations élémentaires pour la composition

Se basent sur le paquetage language Nécessitent un long travail de réflexion

Travail effectué Recherche des cibles Test spécifique à chaque adaptation Réalisation de l’adaptation Souvent besoin de modifier les

« Descriptor »Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 24: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

24

f. Le Moteur

Une nouvelle architecture D’abord intégrée à JAdapt 1

Pour pouvoir tester Pour valider le travail

Puis intégrée à notre version Simplifications apportées

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 25: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

25

f. Le Moteur - implémentation

Le nouveau moteur (packages engines + core) project.retrieveInterestingConcerns(); List<FlattenedAdapter> adapters = project.getFlattenedAdapters(); for(Iterator<FlattenedAdapter> iter = adapters.iterator(); iter.hasNext();)

for(Iterator<ConcreteAdaptation> iter2 = iter.next().getAdaptations().iterator(); iter2.hasNext();) if (! iter2.next().performChecks()) return;

for(Iterator<FlattenedAdapter> iter = adapters.iterator(); iter.hasNext();)iter.next().executeAdaptations();

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 26: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

26

4. Évaluation et travail restant

Plugin très complet Éditeur permettant de saisir toutes les

adaptations du modèle actuel Code de l’application

Fonctions non utilisées pas forcément implémentées

Adaptations : Interceptions d’attributs à finir Certaines non testéesPlan :

1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail

restant5. Conclusion6. Références

Bibliographiques

Page 27: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

27

Évaluation et travail restant (suite)

Langage : Expressivité partielle Certaines entités moins implémentées

que d’autres

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail

restant5. Conclusion6. Références

Bibliographiques

Page 28: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

28

5. Conclusion et remerciements

Nous tenons à remercier nos encadreurs

Philippe LahirePierre Crescenzo

Pour leur aide au quotidien, et nous avoir supporté tout au long de ce TER.

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques

Page 29: Soutenance du  Travail d’Etude et de Recherches Master 1 STIC Année 2005

Travail d'étude et de recherches - soutenance finale

29

6. Références bibliographiques [LQ04a] P. Lahire and L. Quintian. New perspectives to

improve reusability in object-oriented languages. Research Report I3S/RR–2004-XX–FR, I3S laboratory (UNSA/CNRS), Sophia-Antipolis France, September 2004. pages 20.

L. Quintian. JAdapt : Un modèle pour améliorer la reutilisation des preoccupations dans le paradigme objet. Ph.D thesis in Computer Science, University of Nice – Sophia Antipolis, Sophia Antipolis, France, July 2004.

T. Férut and S. Leroy : Travail d’étude – La programmation orientée aspects. University of Nice – Sophia Antipolis, Nice, June 2004.

Plan :1. Rappels2. Déroulement Organisation3. Travail effectué4. Évaluation – travail restant5. Conclusion6. Références

Bibliographiques