Academic Journal

Rétro ingénierie d'applications web javascript pour aider à la compréhension et à la documentation

Bibliographic Details
Title: Rétro ingénierie d'applications web javascript pour aider à la compréhension et à la documentation
Authors: Cloutier, Jonathan
Publisher Information: École de technologie supérieure
Publication Year: 2016
Collection: École de technologie supérieure, Montréal: Espace ÉTS
Subject Terms: Applications Web Développement, Rétro-ingénierie, JavaScript (Langage de programmation), Programme source (Informatique), Visualisation logicielle, analyse, classe, diagramme, dirige, force, statique, diagramme de structure, HTML
Description: Ce mémoire s’intéresse à la rétro-ingénierie comme solution pour aider les développeurs à comprendre, modifier et documenter la structure de leurs applications web. Pour retrouver la structure d’une application, il faut souvent recourir à de l’analyse statique du code source pour retrouver les différents éléments et les différentes relations qui composent l’application. Le développement web présente ici des défis particuliers puisqu’il fait intervenir plusieurs langages. Certains de ces langages, comme HTML et CSS sont relativement simples; d’autres le sont moins. En particulier, JavaScript, un langage clé de la technologie Web, présente des aspects dynamiques importants (p. ex.: typage dynamique, évaluation dynamique de chaines de caractères) qui pourraient rendre très inefficace une analyse statique du code source. En effet, la récupération des éléments constituant l’application et de leurs liens pourrait devoir nécessiter une analyse dite dynamique qui se ferait sur des scénarios d’exécution. Cependant, de telles analyses dynamiques ne garantissent pas une couverture complète de l’application et ne peuvent se faire que si le code est exécutable. Nous avons donc conduit une étude empirique sur la viabilité de l’analyse statique pour la rétro-ingénierie de JavaScript. Forts de ces résultats ainsi que des constats sur les techniques et outils existants, nous proposons nos propres pistes de solutions sous forme d’une nouvelle approche de rétro-ingénierie (Web application Viewer). Cet outil est subséquemment utilisé pour performer des expérimentations de visualisation de structure à l’aide de diagrammes de force dirigée et diagrammes de classes. L’outil de rétro-ingénierie créé permet d’extraire les principaux éléments de la structure d’une application web pour les langages JavaScript, Node.js, HTML et CSS. Les résultats sont satisfaisants et permettent au développeur de documenter leurs applications rapidement à l’aide de diagrammes.
Document Type: article in journal/newspaper
thesis
File Description: application/pdf
Language: French
Relation: https://espace.etsmtl.ca/id/eprint/1669/1/CLOUTIER_Jonathan.pdf; https://espace.etsmtl.ca/id/eprint/1669/2/CLOUTIER_Jonathan-web.pdf; Cloutier, Jonathan (2016). Rétro ingénierie d'applications web javascript pour aider à la compréhension et à la documentation. Mémoire de maîtrise électronique, Montréal, École de technologie supérieure.
Availability: https://espace.etsmtl.ca/id/eprint/1669/
https://espace.etsmtl.ca/id/eprint/1669/1/CLOUTIER_Jonathan.pdf
Accession Number: edsbas.78F02F9A
Database: BASE
FullText Text:
  Availability: 0
CustomLinks:
  – Url: https://espace.etsmtl.ca/id/eprint/1669/#
    Name: EDS - BASE (ns324271)
    Category: fullText
    Text: View record from BASE
Header DbId: edsbas
DbLabel: BASE
An: edsbas.78F02F9A
RelevancyScore: 787
AccessLevel: 3
PubType: Academic Journal
PubTypeId: academicJournal
PreciseRelevancyScore: 787.178283691406
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Rétro ingénierie d'applications web javascript pour aider à la compréhension et à la documentation
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Cloutier%2C+Jonathan%22">Cloutier, Jonathan</searchLink>
– Name: Publisher
  Label: Publisher Information
  Group: PubInfo
  Data: École de technologie supérieure
– Name: DatePubCY
  Label: Publication Year
  Group: Date
  Data: 2016
– Name: Subset
  Label: Collection
  Group: HoldingsInfo
  Data: École de technologie supérieure, Montréal: Espace ÉTS
– Name: Subject
  Label: Subject Terms
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Applications+Web+Développement%22">Applications Web Développement</searchLink><br /><searchLink fieldCode="DE" term="%22Rétro-ingénierie%22">Rétro-ingénierie</searchLink><br /><searchLink fieldCode="DE" term="%22JavaScript+%28Langage+de+programmation%29%22">JavaScript (Langage de programmation)</searchLink><br /><searchLink fieldCode="DE" term="%22Programme+source+%28Informatique%29%22">Programme source (Informatique)</searchLink><br /><searchLink fieldCode="DE" term="%22Visualisation+logicielle%22">Visualisation logicielle</searchLink><br /><searchLink fieldCode="DE" term="%22analyse%22">analyse</searchLink><br /><searchLink fieldCode="DE" term="%22classe%22">classe</searchLink><br /><searchLink fieldCode="DE" term="%22diagramme%22">diagramme</searchLink><br /><searchLink fieldCode="DE" term="%22dirige%22">dirige</searchLink><br /><searchLink fieldCode="DE" term="%22force%22">force</searchLink><br /><searchLink fieldCode="DE" term="%22statique%22">statique</searchLink><br /><searchLink fieldCode="DE" term="%22diagramme+de+structure%22">diagramme de structure</searchLink><br /><searchLink fieldCode="DE" term="%22HTML%22">HTML</searchLink>
– Name: Abstract
  Label: Description
  Group: Ab
  Data: Ce mémoire s’intéresse à la rétro-ingénierie comme solution pour aider les développeurs à comprendre, modifier et documenter la structure de leurs applications web. Pour retrouver la structure d’une application, il faut souvent recourir à de l’analyse statique du code source pour retrouver les différents éléments et les différentes relations qui composent l’application. Le développement web présente ici des défis particuliers puisqu’il fait intervenir plusieurs langages. Certains de ces langages, comme HTML et CSS sont relativement simples; d’autres le sont moins. En particulier, JavaScript, un langage clé de la technologie Web, présente des aspects dynamiques importants (p. ex.: typage dynamique, évaluation dynamique de chaines de caractères) qui pourraient rendre très inefficace une analyse statique du code source. En effet, la récupération des éléments constituant l’application et de leurs liens pourrait devoir nécessiter une analyse dite dynamique qui se ferait sur des scénarios d’exécution. Cependant, de telles analyses dynamiques ne garantissent pas une couverture complète de l’application et ne peuvent se faire que si le code est exécutable. Nous avons donc conduit une étude empirique sur la viabilité de l’analyse statique pour la rétro-ingénierie de JavaScript. Forts de ces résultats ainsi que des constats sur les techniques et outils existants, nous proposons nos propres pistes de solutions sous forme d’une nouvelle approche de rétro-ingénierie (Web application Viewer). Cet outil est subséquemment utilisé pour performer des expérimentations de visualisation de structure à l’aide de diagrammes de force dirigée et diagrammes de classes. L’outil de rétro-ingénierie créé permet d’extraire les principaux éléments de la structure d’une application web pour les langages JavaScript, Node.js, HTML et CSS. Les résultats sont satisfaisants et permettent au développeur de documenter leurs applications rapidement à l’aide de diagrammes.
– Name: TypeDocument
  Label: Document Type
  Group: TypDoc
  Data: article in journal/newspaper<br />thesis
– Name: Format
  Label: File Description
  Group: SrcInfo
  Data: application/pdf
– Name: Language
  Label: Language
  Group: Lang
  Data: French
– Name: NoteTitleSource
  Label: Relation
  Group: SrcInfo
  Data: https://espace.etsmtl.ca/id/eprint/1669/1/CLOUTIER_Jonathan.pdf; https://espace.etsmtl.ca/id/eprint/1669/2/CLOUTIER_Jonathan-web.pdf; Cloutier, Jonathan (2016). Rétro ingénierie d'applications web javascript pour aider à la compréhension et à la documentation. Mémoire de maîtrise électronique, Montréal, École de technologie supérieure.
– Name: URL
  Label: Availability
  Group: URL
  Data: https://espace.etsmtl.ca/id/eprint/1669/<br />https://espace.etsmtl.ca/id/eprint/1669/1/CLOUTIER_Jonathan.pdf
– Name: AN
  Label: Accession Number
  Group: ID
  Data: edsbas.78F02F9A
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsbas&AN=edsbas.78F02F9A
RecordInfo BibRecord:
  BibEntity:
    Languages:
      – Text: French
    Subjects:
      – SubjectFull: Applications Web Développement
        Type: general
      – SubjectFull: Rétro-ingénierie
        Type: general
      – SubjectFull: JavaScript (Langage de programmation)
        Type: general
      – SubjectFull: Programme source (Informatique)
        Type: general
      – SubjectFull: Visualisation logicielle
        Type: general
      – SubjectFull: analyse
        Type: general
      – SubjectFull: classe
        Type: general
      – SubjectFull: diagramme
        Type: general
      – SubjectFull: dirige
        Type: general
      – SubjectFull: force
        Type: general
      – SubjectFull: statique
        Type: general
      – SubjectFull: diagramme de structure
        Type: general
      – SubjectFull: HTML
        Type: general
    Titles:
      – TitleFull: Rétro ingénierie d'applications web javascript pour aider à la compréhension et à la documentation
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Cloutier, Jonathan
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 01
              Type: published
              Y: 2016
          Identifiers:
            – Type: issn-locals
              Value: edsbas
ResultId 1