SlideShare a Scribd company logo
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.
Software Knowledge Representation to
Understand Software Systems
Victoria Torres, Miriam Gil and Vicente Pelechano
PROFES
Barcelona, 27-29 November, 2019
2019 DEveloper COmpanion for Documented and annotatEd code Reference
1. Introduction
2. Knowledge Sources to Populate the PKM
3. Meta-models for Software Knowledge Representation
4. The PKM Meta-model
5. Conclusions and Further Work
2019 DEveloper COmpanion for Documented and annotatEd code Reference
Introduction
Too much time wasted during software
development projects
Wrong decisions taken
Amount of information for stakeholders
Lack of proper documentation
Lack of effective tools to support software
production
Lack of systematic approach for the
development and reuse of components
Lack of knowledge about components
Required interactions between different
stakeholders
Each one at different level of abstraction
Dealing with ambiguous and incomplete
documents
Software engineers need help. They
need software project intelligence!!!
2019 DEveloper COmpanion for Documented and annotatEd code Reference
Introduction :: PKM and Tools Interaction to extract Knowledge
2019 DEveloper COmpanion for Documented and annotatEd code Reference
Introducction :: Encompassing the whole Development Lifecycle
Requirements
Preliminary Design
Detailed
Design
Unit
Checking
Integration
Checking
System
Validation
NLP
Spec generation
Modeling
Doc generation
IDE queries
Invariant
generation
Doc generation
PKM
Impact analysis
Maintenance/Evolution
Implementation
2019 DEveloper COmpanion for Documented and annotatEd code Reference
PKM exploited along the whole Development Lifecycle
2019 DEveloper COmpanion for Documented and annotatEd code Reference
KDM
ASTM
FAMIX
LLVM
IL
SARIF
SMM PADL
DMM
Cha-Q
Meta-models for Software Knowledge Representation
KDM
ASTM
FAMIX
LLVM
IL
SARIF
SMM PADL
DMM
Cha-Q
High Medium Low
Abstraction level
2019 DEveloper COmpanion for Documented and annotatEd code Reference
Meta-models for Software Knowledge Representation
KDM
ASTM
FAMIX
LLVM
IL
SARIF
SMM PADL
DMM
Cha-Q
Source code SW system artefacts Changes
Targeted to represent
Analysis Motifs
2019 DEveloper COmpanion for Documented and annotatEd code Reference
The PKM Meta-model
Formal specification describing, by
means of pre, post and invariants, the
behavior of an associated source
code.
Artefacts that list human-readable
instructions written by a
programmer with the objective of
being executed in a computing
device.
abstract representations of a specific
aspect from a given domain (e.g., a
uml class model)
artefacts that store data structures
and that are usually used as
interchange format.
Information produced by static source
code analysis, by optimization passes
of compilers, by natural language
processing or by machine learning
techniques.
Artefacts containing a structured
content in natural language,
related to some particular chunk of
source code or of a global nature.
Artefacts describing, in plain text,
the parameters that define or
execute a specific software
program.
Represents the concept of artefact
and its related concepts:
• Project use case
• Tools
• Development phases
• Stakeholders
2019 DEveloper COmpanion for Documented and annotatEd code Reference
The PKM Meta-model (excerpt)
2019 DEveloper COmpanion for Documented and annotatEd code Reference
The PKM Meta-model (excerpt)
2019 DEveloper COmpanion for Documented and annotatEd code Reference
How to exploit the PKM Meta-model
API offering Post, Put, and Get operations to:
Store artefacts (code, documentation,
models, annotations, tests, verification, etc.)
Update/restore artefacts
Retrieve artefacts for analysis or
visualization
2019 DEveloper COmpanion for Documented and annotatEd code Reference
Conclusions and Further Work
PKM Meta-model inspired from common representations found in the literature
PKM organized in packages to be easily extensible
Living repository that can be queried and enriched by the actors and tools
Maintains consistency and the most updated and precise information about the project
It should support stakeholders along the whole development lifecycle
2019 DEveloper COmpanion for Documented and annotatEd code Reference
Conclusions and Further Work
Implement the PKM as a non-relational DB
Validate the PKM with use cases developed by industrial partners of DECODER
Linux Drivers: Quickly and accurately assess the quality of an external Linux driver for inclusion in
embedded systems (SYSGO, Germany)
OpenCV: Build a better knowledge of OpenCV API and its usage in some applications (Tree, Spain)
MyThaiStar: UI/UX design and verification (CAPGEMINI, Spain)
Java: Usage of Decoder toolset on selected Open Source Java projects (OW2, France)
2019 DEveloper COmpanion for Documented and annotatEd code Reference
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.

More Related Content

What's hot

DECODER MyThaiStar Use Case
DECODER MyThaiStar Use CaseDECODER MyThaiStar Use Case
DECODER MyThaiStar Use CaseDecoder Project
 
Applied Data Science with Python Specialization 2017 Certificate
Applied Data Science with Python Specialization 2017 CertificateApplied Data Science with Python Specialization 2017 Certificate
Applied Data Science with Python Specialization 2017 CertificateRicardo Praelli
 
Quaero Technology Catalog
Quaero Technology CatalogQuaero Technology Catalog
Quaero Technology CatalogNabil Bouzerna
 
Deep Learning Specialization Certificate
Deep Learning Specialization CertificateDeep Learning Specialization Certificate
Deep Learning Specialization CertificateRicardo Praelli
 
Call for papers - 6th International Conference on Software Engineering (SOENG...
Call for papers - 6th International Conference on Software Engineering (SOENG...Call for papers - 6th International Conference on Software Engineering (SOENG...
Call for papers - 6th International Conference on Software Engineering (SOENG...ijcsa
 
The RoTechnology official presentation
The RoTechnology official presentationThe RoTechnology official presentation
The RoTechnology official presentationRo Technology
 
3rd International conference on Advanced Natural Language Processing (AdNLP 2...
3rd International conference on Advanced Natural Language Processing (AdNLP 2...3rd International conference on Advanced Natural Language Processing (AdNLP 2...
3rd International conference on Advanced Natural Language Processing (AdNLP 2...kevig
 

What's hot (11)

DECODER MyThaiStar Use Case
DECODER MyThaiStar Use CaseDECODER MyThaiStar Use Case
DECODER MyThaiStar Use Case
 
Applied Data Science with Python Specialization 2017 Certificate
Applied Data Science with Python Specialization 2017 CertificateApplied Data Science with Python Specialization 2017 Certificate
Applied Data Science with Python Specialization 2017 Certificate
 
Quaero Technology Catalog
Quaero Technology CatalogQuaero Technology Catalog
Quaero Technology Catalog
 
Deep Learning Specialization Certificate
Deep Learning Specialization CertificateDeep Learning Specialization Certificate
Deep Learning Specialization Certificate
 
cv_francisco.ruiz_en
cv_francisco.ruiz_encv_francisco.ruiz_en
cv_francisco.ruiz_en
 
Call for papers - 6th International Conference on Software Engineering (SOENG...
Call for papers - 6th International Conference on Software Engineering (SOENG...Call for papers - 6th International Conference on Software Engineering (SOENG...
Call for papers - 6th International Conference on Software Engineering (SOENG...
 
Nlpcl 2021
Nlpcl 2021Nlpcl 2021
Nlpcl 2021
 
The RoTechnology official presentation
The RoTechnology official presentationThe RoTechnology official presentation
The RoTechnology official presentation
 
Python-EMU-PCAP
Python-EMU-PCAPPython-EMU-PCAP
Python-EMU-PCAP
 
Ibm
IbmIbm
Ibm
 
3rd International conference on Advanced Natural Language Processing (AdNLP 2...
3rd International conference on Advanced Natural Language Processing (AdNLP 2...3rd International conference on Advanced Natural Language Processing (AdNLP 2...
3rd International conference on Advanced Natural Language Processing (AdNLP 2...
 

Similar to Profes'19 Software Knowledge Representation

IRJET - Survey Paper on Tools Used to Enhance User's Experience with Cons...
IRJET -  	  Survey Paper on Tools Used to Enhance User's Experience with Cons...IRJET -  	  Survey Paper on Tools Used to Enhance User's Experience with Cons...
IRJET - Survey Paper on Tools Used to Enhance User's Experience with Cons...IRJET Journal
 
Barcode Verification Dct.docx
Barcode Verification Dct.docxBarcode Verification Dct.docx
Barcode Verification Dct.docxhrutikaghodke1
 
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
 
Atmel - Next-Generation IDE: Maximizing IP Reuse [WHITE PAPER]
Atmel - Next-Generation IDE: Maximizing IP Reuse [WHITE PAPER]Atmel - Next-Generation IDE: Maximizing IP Reuse [WHITE PAPER]
Atmel - Next-Generation IDE: Maximizing IP Reuse [WHITE PAPER]Atmel Corporation
 
Programmer Productivity Enhancement Through Controlled Natural Language Input
Programmer Productivity Enhancement Through Controlled Natural Language InputProgrammer Productivity Enhancement Through Controlled Natural Language Input
Programmer Productivity Enhancement Through Controlled Natural Language Inputijseajournal
 
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptxGEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptxGeetha982072
 
QURATOR: A Flexible AI Platform for the Adaptive Analysis and Creative Genera...
QURATOR: A Flexible AI Platform for the Adaptive Analysis and Creative Genera...QURATOR: A Flexible AI Platform for the Adaptive Analysis and Creative Genera...
QURATOR: A Flexible AI Platform for the Adaptive Analysis and Creative Genera...Georg Rehm
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compilerijtsrd
 
internship ijrmfijemdpiwomdijemfoiemd.pptx
internship ijrmfijemdpiwomdijemfoiemd.pptxinternship ijrmfijemdpiwomdijemfoiemd.pptx
internship ijrmfijemdpiwomdijemfoiemd.pptxVenuVenupk1431
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTijdpsjournal
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTijdpsjournal
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTijdpsjournal
 
Project findings paper TMForum catalyst 2014 B2B service bundling 1.0
Project findings paper TMForum catalyst 2014 B2B service bundling 1.0Project findings paper TMForum catalyst 2014 B2B service bundling 1.0
Project findings paper TMForum catalyst 2014 B2B service bundling 1.0gtilton
 
1rst ARCADIA project newsletter
1rst ARCADIA project newsletter1rst ARCADIA project newsletter
1rst ARCADIA project newsletterEU ARCADIA PROJECT
 
Final project report format
Final project report formatFinal project report format
Final project report formatMasud Sarkar
 
IRJET- Online Programming Environment
IRJET- Online Programming EnvironmentIRJET- Online Programming Environment
IRJET- Online Programming EnvironmentIRJET Journal
 
Data Security String Manipulation by Random Value in Hypertext Preprocessor
Data Security String Manipulation by Random Value in Hypertext PreprocessorData Security String Manipulation by Random Value in Hypertext Preprocessor
Data Security String Manipulation by Random Value in Hypertext Preprocessorijtsrd
 

Similar to Profes'19 Software Knowledge Representation (20)

IRJET - Survey Paper on Tools Used to Enhance User's Experience with Cons...
IRJET -  	  Survey Paper on Tools Used to Enhance User's Experience with Cons...IRJET -  	  Survey Paper on Tools Used to Enhance User's Experience with Cons...
IRJET - Survey Paper on Tools Used to Enhance User's Experience with Cons...
 
Barcode Verification Dct.docx
Barcode Verification Dct.docxBarcode Verification Dct.docx
Barcode Verification Dct.docx
 
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?
 
Atmel - Next-Generation IDE: Maximizing IP Reuse [WHITE PAPER]
Atmel - Next-Generation IDE: Maximizing IP Reuse [WHITE PAPER]Atmel - Next-Generation IDE: Maximizing IP Reuse [WHITE PAPER]
Atmel - Next-Generation IDE: Maximizing IP Reuse [WHITE PAPER]
 
Programmer Productivity Enhancement Through Controlled Natural Language Input
Programmer Productivity Enhancement Through Controlled Natural Language InputProgrammer Productivity Enhancement Through Controlled Natural Language Input
Programmer Productivity Enhancement Through Controlled Natural Language Input
 
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptxGEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
GEETHAhshansbbsbsbhshnsnsn_INTERNSHIP.pptx
 
QURATOR: A Flexible AI Platform for the Adaptive Analysis and Creative Genera...
QURATOR: A Flexible AI Platform for the Adaptive Analysis and Creative Genera...QURATOR: A Flexible AI Platform for the Adaptive Analysis and Creative Genera...
QURATOR: A Flexible AI Platform for the Adaptive Analysis and Creative Genera...
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compiler
 
internship ijrmfijemdpiwomdijemfoiemd.pptx
internship ijrmfijemdpiwomdijemfoiemd.pptxinternship ijrmfijemdpiwomdijemfoiemd.pptx
internship ijrmfijemdpiwomdijemfoiemd.pptx
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
 
Project findings paper TMForum catalyst 2014 B2B service bundling 1.0
Project findings paper TMForum catalyst 2014 B2B service bundling 1.0Project findings paper TMForum catalyst 2014 B2B service bundling 1.0
Project findings paper TMForum catalyst 2014 B2B service bundling 1.0
 
IT6511 Networks Laboratory
IT6511 Networks LaboratoryIT6511 Networks Laboratory
IT6511 Networks Laboratory
 
1rst ARCADIA project newsletter
1rst ARCADIA project newsletter1rst ARCADIA project newsletter
1rst ARCADIA project newsletter
 
Final project report format
Final project report formatFinal project report format
Final project report format
 
DSC - info session 2022.pptx
DSC - info session 2022.pptxDSC - info session 2022.pptx
DSC - info session 2022.pptx
 
IRJET- Online Programming Environment
IRJET- Online Programming EnvironmentIRJET- Online Programming Environment
IRJET- Online Programming Environment
 
Data Security String Manipulation by Random Value in Hypertext Preprocessor
Data Security String Manipulation by Random Value in Hypertext PreprocessorData Security String Manipulation by Random Value in Hypertext Preprocessor
Data Security String Manipulation by Random Value in Hypertext Preprocessor
 
IBM Think Milano
IBM Think MilanoIBM Think Milano
IBM Think Milano
 

Recently uploaded

Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion Clinic
 
Crafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationCrafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationWave PLM
 
The Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion ProductionThe Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion ProductionWave PLM
 
Breaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdfBreaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdfMeon Technology
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...Alluxio, Inc.
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Andrea Goulet
 
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with StrimziStrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzisteffenkarlsson2
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignNeo4j
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesNeo4j
 
iGaming Platform & Lottery Solutions by Skilrock
iGaming Platform & Lottery Solutions by SkilrockiGaming Platform & Lottery Solutions by Skilrock
iGaming Platform & Lottery Solutions by SkilrockSkilrock Technologies
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfMehmet Akar
 
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdfImplementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdfVictor Lopez
 
IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024vaibhav130304
 
10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdfkalichargn70th171
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
KLARNA -  Language Models and Knowledge Graphs: A Systems ApproachKLARNA -  Language Models and Knowledge Graphs: A Systems Approach
KLARNA - Language Models and Knowledge Graphs: A Systems ApproachNeo4j
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfFurqanuddin10
 
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityAPVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityamy56318795
 
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfMicrosoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfQ-Advise
 

Recently uploaded (20)

Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
Crafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationCrafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM Integration
 
The Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion ProductionThe Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion Production
 
Breaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdfBreaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdf
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
 
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with StrimziStrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 
iGaming Platform & Lottery Solutions by Skilrock
iGaming Platform & Lottery Solutions by SkilrockiGaming Platform & Lottery Solutions by Skilrock
iGaming Platform & Lottery Solutions by Skilrock
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdf
 
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdfImplementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
 
IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024
 
10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
KLARNA -  Language Models and Knowledge Graphs: A Systems ApproachKLARNA -  Language Models and Knowledge Graphs: A Systems Approach
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdf
 
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityAPVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
 
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfMicrosoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
 

Profes'19 Software Knowledge Representation

  • 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. Software Knowledge Representation to Understand Software Systems Victoria Torres, Miriam Gil and Vicente Pelechano PROFES Barcelona, 27-29 November, 2019
  • 2. 2019 DEveloper COmpanion for Documented and annotatEd code Reference 1. Introduction 2. Knowledge Sources to Populate the PKM 3. Meta-models for Software Knowledge Representation 4. The PKM Meta-model 5. Conclusions and Further Work
  • 3. 2019 DEveloper COmpanion for Documented and annotatEd code Reference Introduction Too much time wasted during software development projects Wrong decisions taken Amount of information for stakeholders Lack of proper documentation Lack of effective tools to support software production Lack of systematic approach for the development and reuse of components Lack of knowledge about components Required interactions between different stakeholders Each one at different level of abstraction Dealing with ambiguous and incomplete documents Software engineers need help. They need software project intelligence!!!
  • 4. 2019 DEveloper COmpanion for Documented and annotatEd code Reference Introduction :: PKM and Tools Interaction to extract Knowledge
  • 5. 2019 DEveloper COmpanion for Documented and annotatEd code Reference Introducction :: Encompassing the whole Development Lifecycle Requirements Preliminary Design Detailed Design Unit Checking Integration Checking System Validation NLP Spec generation Modeling Doc generation IDE queries Invariant generation Doc generation PKM Impact analysis Maintenance/Evolution Implementation
  • 6. 2019 DEveloper COmpanion for Documented and annotatEd code Reference PKM exploited along the whole Development Lifecycle
  • 7. 2019 DEveloper COmpanion for Documented and annotatEd code Reference KDM ASTM FAMIX LLVM IL SARIF SMM PADL DMM Cha-Q Meta-models for Software Knowledge Representation KDM ASTM FAMIX LLVM IL SARIF SMM PADL DMM Cha-Q High Medium Low Abstraction level
  • 8. 2019 DEveloper COmpanion for Documented and annotatEd code Reference Meta-models for Software Knowledge Representation KDM ASTM FAMIX LLVM IL SARIF SMM PADL DMM Cha-Q Source code SW system artefacts Changes Targeted to represent Analysis Motifs
  • 9. 2019 DEveloper COmpanion for Documented and annotatEd code Reference The PKM Meta-model Formal specification describing, by means of pre, post and invariants, the behavior of an associated source code. Artefacts that list human-readable instructions written by a programmer with the objective of being executed in a computing device. abstract representations of a specific aspect from a given domain (e.g., a uml class model) artefacts that store data structures and that are usually used as interchange format. Information produced by static source code analysis, by optimization passes of compilers, by natural language processing or by machine learning techniques. Artefacts containing a structured content in natural language, related to some particular chunk of source code or of a global nature. Artefacts describing, in plain text, the parameters that define or execute a specific software program. Represents the concept of artefact and its related concepts: • Project use case • Tools • Development phases • Stakeholders
  • 10. 2019 DEveloper COmpanion for Documented and annotatEd code Reference The PKM Meta-model (excerpt)
  • 11. 2019 DEveloper COmpanion for Documented and annotatEd code Reference The PKM Meta-model (excerpt)
  • 12. 2019 DEveloper COmpanion for Documented and annotatEd code Reference How to exploit the PKM Meta-model API offering Post, Put, and Get operations to: Store artefacts (code, documentation, models, annotations, tests, verification, etc.) Update/restore artefacts Retrieve artefacts for analysis or visualization
  • 13. 2019 DEveloper COmpanion for Documented and annotatEd code Reference Conclusions and Further Work PKM Meta-model inspired from common representations found in the literature PKM organized in packages to be easily extensible Living repository that can be queried and enriched by the actors and tools Maintains consistency and the most updated and precise information about the project It should support stakeholders along the whole development lifecycle
  • 14. 2019 DEveloper COmpanion for Documented and annotatEd code Reference Conclusions and Further Work Implement the PKM as a non-relational DB Validate the PKM with use cases developed by industrial partners of DECODER Linux Drivers: Quickly and accurately assess the quality of an external Linux driver for inclusion in embedded systems (SYSGO, Germany) OpenCV: Build a better knowledge of OpenCV API and its usage in some applications (Tree, Spain) MyThaiStar: UI/UX design and verification (CAPGEMINI, Spain) Java: Usage of Decoder toolset on selected Open Source Java projects (OW2, France)
  • 15. 2019 DEveloper COmpanion for Documented and annotatEd code Reference 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.