SlideShare a Scribd company logo
1 of 14
Download to read offline
DEveloper COmpanion for Documented and annotatEd code Reference
The DECODER project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 824231.
DECODER Project Overview
Virgile Prevosto
with DECODER's partners
Advisory Board Meeting
2019-07-11
Outline
Project Objectives
Initial Results
Roadmap and Conclusion
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
2
DEveloper COmpanion for Documented on annotatEd
code Reference
Persistent Knowledge Monitor
Database storing all relevant
documents for a software project
documentation (manuals,
comments, bug tracker, ...)
formal specifications
source code
analysis and testing results
and evolutions (e.g. commits)
Tools for feeding the database
Tools for querying the database
Common schema to ease interactions
PKM
Testar
Frama-C
OpenJML
Specification
synthesis
Moskitt
Documentation
generation
NLP
knowledge
formalizer
NLP
knowledge
extractor
Syntactic
analyses
Augmented
IDE
ASFMmodels
inferred
properties
analysis results
infer properties
UM
L
m
odels
Inferredproperties
M
odels, Properties
Code, documentation
raw code information
Advancedqueriesoncode
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
3
Encompassing the Whole Development Lifecycle
Requirements
Preliminary Design
Detailed Design
Implementation
Unit Checking
Integration Checking
System Validation
Maintenance
Evolution
NLP
spec generation
Modeling
ASFM
doc generation
IDE queries
invariant
generation
PKM
traceability
doc generation
PKM
Impact analysis
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
4
From Informal to Formal Documents
Natural Language Processing
Knowledge extraction from informal documents and correspondance with relevant
code pieces
Knowledge extraction from code and semi-automated documentation generation
Abstract Semi-Formal Models (ASFM)
Graphical language to describe effects of a function on the data structures involved
Semi-automated generation of ASFM diagrams
Animation of the diagrams (graphical debugging)
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
5
Use Cases
Evaluation and Improvement of DECODER toolset
Linux Drivers Quickly and accurately assess the quality of an external Linux driver for
inclusion in embedded systems
OpenCV Build a better knowledge of OpenCV API and its usage in some
applications
MyThaiStar UI/UX design and verification
Java Usage of Decoder toolset on selected Open Source Java projects
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
6
PKM Meta Model
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
7
PKM Server Design
Json as main interchange format
Start working on a Json Schema
Take advantage of existing
proposals:
SARIF
JCDB
Others?
Back-end: Document-oriented DB
MongoDB: licence issues
CouchDB
OrientDB: graph model used by
Testar
Others?
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
8
Information Extraction
Dataset Gathering
Collect existing datasets (code and documents) outside Decoder
Start looking at use cases (MyThaiStar and OpenCV)
DeepAPI training corpus for natural language/call sequences correspondance
Initial experiments
Code to NL:
features extraction and grouping tokens
NL to Code:
Consider programming language as a foreign language
Neural Machine Translation
Objective: compute semantic similarity between source code and informal description
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
9
UX Workshop
Held at F2F meeting in Valencia on
June, 26th
Prepare design of PKM client(s)
Define core roles
Define usage scenarios
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
10
Dissemination Activities
Public website at
https://decoder-project.eu
Present on LinkedIn and Twitter
Decoder poster, presented at OW2 Conf
Contact with other projects
https://openreq.eu/
https://www.chariotproject.eu/
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
11
Current Roadmap
Progress according to plan
PKM implementation still the main challenge
Schema design to start as soon as possible
DB engine final choice less stringent
NLP and code processing in good shape
Work on ASFM starting this month
Use cases investigation and methodology discussions ramping up
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
12
Open Questions
What should fit in the schema?
Suggestion on a particular document DB implementation?
Projects with which we could interact?
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
13
Thank You!
The DECODER project has received funding from the European Union’s Horizon 2020 research and innovation programme under
grant agreement number 824231.
If you need further information, please contact the coordinator: TECHNIKON Forschungs- und Planungsgesellschaft mbH, Burgplatz
3a, 9500 Villach, AUSTRIA, Tel: +43 4242 233 55, Fax: +43 4242 233 55 77, E-Mail: coordination@DECODER.eu
The information in this document is provided “as is”, and no guarantee or warranty is given that the information is fit for any particular purpose. The content of
this document reflects only the author`s view – the European Commission is not responsible for any use that may be made of the information it contains.
The users use the information at their sole risk and liability.
2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11
14

More Related Content

Similar to DECODER Project Presentation to the Advisory Board

DECODER MyThaiStar Use Case
DECODER MyThaiStar Use CaseDECODER MyThaiStar Use Case
DECODER MyThaiStar Use CaseDecoder Project
 
Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?Polyxer Systems
 
Unlocking Engineering Observability with advanced IT analytics
Unlocking Engineering Observability with advanced IT analyticsUnlocking Engineering Observability with advanced IT analytics
Unlocking Engineering Observability with advanced IT analyticssource{d}
 
Dot net coaching Coimbatore
Dot net coaching CoimbatoreDot net coaching Coimbatore
Dot net coaching Coimbatoresathyancegon
 
Dot net institutes Coimbatore
Dot net institutes CoimbatoreDot net institutes Coimbatore
Dot net institutes Coimbatoresathyancegon
 
Dot net education Coimbatore
Dot net education CoimbatoreDot net education Coimbatore
Dot net education Coimbatoresathyancegon
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compilerijtsrd
 
The Architecture Of Software Defined Radios Essay
The Architecture Of Software Defined Radios EssayThe Architecture Of Software Defined Radios Essay
The Architecture Of Software Defined Radios EssayDivya Watson
 
PIACERE project overview, summary of objectives v2
PIACERE project overview, summary of objectives v2PIACERE project overview, summary of objectives v2
PIACERE project overview, summary of objectives v2PIACERE
 
Open Data Hub - Markus Garnitz - Bavarian Tourism Cloud Open Source Strategy
Open Data Hub - Markus Garnitz - Bavarian Tourism Cloud Open Source StrategyOpen Data Hub - Markus Garnitz - Bavarian Tourism Cloud Open Source Strategy
Open Data Hub - Markus Garnitz - Bavarian Tourism Cloud Open Source StrategySouth Tyrol Free Software Conference
 
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. MolinaACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. MolinaPedro J. Molina
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentIJERD Editor
 
Low Code Development Platform California
Low Code Development Platform CaliforniaLow Code Development Platform California
Low Code Development Platform CaliforniaDewStudio
 
Can ChatGPT Replace Developers?
Can ChatGPT Replace Developers?Can ChatGPT Replace Developers?
Can ChatGPT Replace Developers?DewStudio
 
Interim Report.docx - vsiogap3d.googlecode.com
Interim Report.docx - vsiogap3d.googlecode.comInterim Report.docx - vsiogap3d.googlecode.com
Interim Report.docx - vsiogap3d.googlecode.combutest
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdfTasnim Jahan
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdfTasnim Jahan
 
Sagar_Ware_Resume
Sagar_Ware_ResumeSagar_Ware_Resume
Sagar_Ware_ResumeSagar Ware
 

Similar to DECODER Project Presentation to the Advisory Board (20)

DECODER MyThaiStar Use Case
DECODER MyThaiStar Use CaseDECODER MyThaiStar Use Case
DECODER MyThaiStar Use Case
 
Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?
 
Rushabh_Doshi_1_
Rushabh_Doshi_1_Rushabh_Doshi_1_
Rushabh_Doshi_1_
 
Unlocking Engineering Observability with advanced IT analytics
Unlocking Engineering Observability with advanced IT analyticsUnlocking Engineering Observability with advanced IT analytics
Unlocking Engineering Observability with advanced IT analytics
 
Dot net coaching Coimbatore
Dot net coaching CoimbatoreDot net coaching Coimbatore
Dot net coaching Coimbatore
 
Dot net institutes Coimbatore
Dot net institutes CoimbatoreDot net institutes Coimbatore
Dot net institutes Coimbatore
 
Dot net education Coimbatore
Dot net education CoimbatoreDot net education Coimbatore
Dot net education Coimbatore
 
Brunel ICT
Brunel ICTBrunel ICT
Brunel ICT
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compiler
 
The Architecture Of Software Defined Radios Essay
The Architecture Of Software Defined Radios EssayThe Architecture Of Software Defined Radios Essay
The Architecture Of Software Defined Radios Essay
 
PIACERE project overview, summary of objectives v2
PIACERE project overview, summary of objectives v2PIACERE project overview, summary of objectives v2
PIACERE project overview, summary of objectives v2
 
Open Data Hub - Markus Garnitz - Bavarian Tourism Cloud Open Source Strategy
Open Data Hub - Markus Garnitz - Bavarian Tourism Cloud Open Source StrategyOpen Data Hub - Markus Garnitz - Bavarian Tourism Cloud Open Source Strategy
Open Data Hub - Markus Garnitz - Bavarian Tourism Cloud Open Source Strategy
 
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. MolinaACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
Low Code Development Platform California
Low Code Development Platform CaliforniaLow Code Development Platform California
Low Code Development Platform California
 
Can ChatGPT Replace Developers?
Can ChatGPT Replace Developers?Can ChatGPT Replace Developers?
Can ChatGPT Replace Developers?
 
Interim Report.docx - vsiogap3d.googlecode.com
Interim Report.docx - vsiogap3d.googlecode.comInterim Report.docx - vsiogap3d.googlecode.com
Interim Report.docx - vsiogap3d.googlecode.com
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdf
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdf
 
Sagar_Ware_Resume
Sagar_Ware_ResumeSagar_Ware_Resume
Sagar_Ware_Resume
 

Recently uploaded

Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxRTS corp
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 

Recently uploaded (20)

Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 

DECODER Project Presentation to the Advisory Board

  • 1. DEveloper COmpanion for Documented and annotatEd code Reference The DECODER project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 824231. DECODER Project Overview Virgile Prevosto with DECODER's partners Advisory Board Meeting 2019-07-11
  • 2. Outline Project Objectives Initial Results Roadmap and Conclusion 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 2
  • 3. DEveloper COmpanion for Documented on annotatEd code Reference Persistent Knowledge Monitor Database storing all relevant documents for a software project documentation (manuals, comments, bug tracker, ...) formal specifications source code analysis and testing results and evolutions (e.g. commits) Tools for feeding the database Tools for querying the database Common schema to ease interactions PKM Testar Frama-C OpenJML Specification synthesis Moskitt Documentation generation NLP knowledge formalizer NLP knowledge extractor Syntactic analyses Augmented IDE ASFMmodels inferred properties analysis results infer properties UM L m odels Inferredproperties M odels, Properties Code, documentation raw code information Advancedqueriesoncode 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 3
  • 4. Encompassing the Whole Development Lifecycle Requirements Preliminary Design Detailed Design Implementation Unit Checking Integration Checking System Validation Maintenance Evolution NLP spec generation Modeling ASFM doc generation IDE queries invariant generation PKM traceability doc generation PKM Impact analysis 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 4
  • 5. From Informal to Formal Documents Natural Language Processing Knowledge extraction from informal documents and correspondance with relevant code pieces Knowledge extraction from code and semi-automated documentation generation Abstract Semi-Formal Models (ASFM) Graphical language to describe effects of a function on the data structures involved Semi-automated generation of ASFM diagrams Animation of the diagrams (graphical debugging) 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 5
  • 6. Use Cases Evaluation and Improvement of DECODER toolset Linux Drivers Quickly and accurately assess the quality of an external Linux driver for inclusion in embedded systems OpenCV Build a better knowledge of OpenCV API and its usage in some applications MyThaiStar UI/UX design and verification Java Usage of Decoder toolset on selected Open Source Java projects 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 6
  • 7. PKM Meta Model 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 7
  • 8. PKM Server Design Json as main interchange format Start working on a Json Schema Take advantage of existing proposals: SARIF JCDB Others? Back-end: Document-oriented DB MongoDB: licence issues CouchDB OrientDB: graph model used by Testar Others? 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 8
  • 9. Information Extraction Dataset Gathering Collect existing datasets (code and documents) outside Decoder Start looking at use cases (MyThaiStar and OpenCV) DeepAPI training corpus for natural language/call sequences correspondance Initial experiments Code to NL: features extraction and grouping tokens NL to Code: Consider programming language as a foreign language Neural Machine Translation Objective: compute semantic similarity between source code and informal description 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 9
  • 10. UX Workshop Held at F2F meeting in Valencia on June, 26th Prepare design of PKM client(s) Define core roles Define usage scenarios 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 10
  • 11. Dissemination Activities Public website at https://decoder-project.eu Present on LinkedIn and Twitter Decoder poster, presented at OW2 Conf Contact with other projects https://openreq.eu/ https://www.chariotproject.eu/ 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 11
  • 12. Current Roadmap Progress according to plan PKM implementation still the main challenge Schema design to start as soon as possible DB engine final choice less stringent NLP and code processing in good shape Work on ASFM starting this month Use cases investigation and methodology discussions ramping up 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 12
  • 13. Open Questions What should fit in the schema? Suggestion on a particular document DB implementation? Projects with which we could interact? 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 13
  • 14. Thank You! The DECODER project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement number 824231. If you need further information, please contact the coordinator: TECHNIKON Forschungs- und Planungsgesellschaft mbH, Burgplatz 3a, 9500 Villach, AUSTRIA, Tel: +43 4242 233 55, Fax: +43 4242 233 55 77, E-Mail: coordination@DECODER.eu The information in this document is provided “as is”, and no guarantee or warranty is given that the information is fit for any particular purpose. The content of this document reflects only the author`s view – the European Commission is not responsible for any use that may be made of the information it contains. The users use the information at their sole risk and liability. 2019 DEveloper COmpanion for Documented and annotatEd code Reference 2019-07-11 14