SlideShare a Scribd company logo
AdaCore Directions
Who are we? Where are we going?
Cyrille Comar
Paris, October 1st
Agenda of the talk
- Mission
- Location & People
- Values
- Strategy: Strengthening & Opening
- Research Activities
- QGen
- Conclusion
We help
people build
software that
matters.
- Expertise on critical software development
- Maintain & evolve (Ada) compilation toolchain with pedigree
- Emphasis on customer support
Locations
Robert Dewar
(1945-2015)
Some of us in the US
Hristian, frontend
Ben, newsletterSteve, static analysisTucker, qgen
Nicolas, gps Doug, cross
We actively and creatively evolve our product
line, operations, and organization to help our
customers and teammates. We are passionate
about what we do and are committed to
learning, researching and creating.
We build long-term relationships with our
teammates, customers, and partners.
Acting as a team, we debate, cooperate,
and help each other grow.
We share our plans, practices and
technologies with our teammates, partners
and customers. This is strengthened by our
participation in relevant open-source and
professional communities, and the open-
source licensing of our products.
We organize our work to meet all our
commitments. We provide customers,
partners and teammates unrestricted
access to our expertise, making support
our number one priority. Our rigor ensures
that our products can be used to build the
most demanding software systems.
Strengthening & Opening
- Enhance our Ada offering (new targets, new tools, new optims…)
- Make SPARK+CodePeer « the » best game in town for
- complementing testing with static verifications
- industrial use of program proving
- higher level of reliability
- lower cost of verification
- stop (some) security attacks
Help people build software that matters… even more
Strengthening & Opening
- Unexplored markets
- Software that matters in C
- Code generation from “models” that matter
Help more people build software that matters…
Strengthening & Opening
Unexplored Markets
Software that matters in C
- Toolset that can be used for critical development:
- Manage pedigree of the C compiler (e.g. KP entries)
- Active long term maintenance (e.g. sustained branches)
- Set of verification tools (e.g. gnatcov)
- Better controlled build system (gprbuild)
Research Activites
- Dashboarding: AdaSquore (DGA-Rapid)
- Formal methods:
- ProofInUse (LabCom with INRIA): enhance proving capabilities
- Vecolib (ANR): loop invariants
- Soprano (ANR): improve SMT solvers
- CAP2018 (FUI) with Sogilis & Squadrone
- SPARK in legacy C for FFI
Code generation from “models” that matter
What is QGen?
A qualifiable and
customizable code
generator
from Simulink® and
Stateflow® to SPARK and
MISRA C
A formal model
verifier
for runtime errors and
functional properties
An open and
extensible
framework
to integrate heterogeneous
models
QGen Main Features
Support for a large subset of Simulink®
- Around 120 blocks, optional checks for MISRA Simulink®
- Stateflow® also supported, since early 2015
QGen Main Features
Support for a large subset of Simulink®
Code generation producing MISRA C and SPARK (formally provable
language)
- Readable and traceable code, no performance penalty
QGen Main Features
Support for a large subset of Simulink®
Code generation producing MISRA C and SPARK (formally provable
language)
Integrated with compilation and testing frameworks
- Integration with GNAT Pro compiler for qualified, end-to-end tool chain
- Integration with GNATemulator and GNATcoverage for structural coverage analysis (up
to MC/DC) without code instrumentation executing embedded object code
QGen Main Features
Support for a large subset of Simulink®
Code generation producing MISRA C and SPARK (formally provable
language)
Integrated with compilation and testing frameworks
Includes a static model verifier
- Focus on safety-critical systems
- Run-time errors (divisions by zero, overflows, …)
- Logical errors (dead execution paths)
- Functional/safety properties (Simulink® assertions blocks)
QGen Main Features
Support for a large subset of Simulink®
Code generation producing MISRA C and SPARK (formally provable
language)
Integrated with compilation and testing frameworks
Includes a static model verifier
Qualification material
- Including validation against Simulink® simulation
- DO-178C, EN 50128, ISO-26262 TCL3
QGen An open and extensible framework
QGen An open and extensible framework
“The gcc for modeling languages”
- QGen is designed to accept multiple languages in input, including in-house DSLs
- A single code generation style/strategy for all of your modeling languages
- XML-based model import at different abstraction levels
- Design model: blocks, signals, states, transitions, ….
- Code model: variables, statements
Selective model compilation
- QGen is composed of multiple model compilation steps
- It is possible to execute them selectively
- It is possible to import/export XML at any step
Roadmap
Feb 2015
QGen
commercial
availability
Spring 2015
Stateflow® support
2016
Tool Qualification
Planning
Documents
2017
QGen Debugger
2018
QGen TQL1
qualification
completed
Conclusion
- World of critical software development is evolving…
- You are the main source of AdaCore evolution
So let’s talk… even more

More Related Content

Similar to Tech Days 2015: AdaCore Directions

RESUME_AdjunctFaculty
RESUME_AdjunctFacultyRESUME_AdjunctFaculty
RESUME_AdjunctFacultyJames Fink
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor rout
Bikram Rout
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor rout
Bikram Rout
 
Balaji Resume
Balaji ResumeBalaji Resume
Balaji Resume
Balaji Ommudali
 
PrashantSoni_exp_embeddedSwDevelopment_latest
PrashantSoni_exp_embeddedSwDevelopment_latestPrashantSoni_exp_embeddedSwDevelopment_latest
PrashantSoni_exp_embeddedSwDevelopment_latestPrashant Soni
 
David Robinson's On Line CV
David Robinson's On Line CVDavid Robinson's On Line CV
David Robinson's On Line CV
davered
 
Tech Days 2015: Model Based Development with QGen
Tech Days 2015: Model Based Development with QGenTech Days 2015: Model Based Development with QGen
Tech Days 2015: Model Based Development with QGen
AdaCore
 
Utsha guha cocoa-exp5.9yr
Utsha guha cocoa-exp5.9yrUtsha guha cocoa-exp5.9yr
Utsha guha cocoa-exp5.9yr
Utsha Guha
 
Utsha guha cocoa-exp5.9yr
Utsha guha cocoa-exp5.9yrUtsha guha cocoa-exp5.9yr
Utsha guha cocoa-exp5.9yr
Utsha Guha
 
Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...
Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...
Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...
CEE-SEC(R)
 
Ramesh gupta cv
Ramesh gupta cvRamesh gupta cv
Ramesh gupta cv
Ramesh Gupta
 
Lads Tech Company Profile V4.0
Lads Tech Company Profile V4.0Lads Tech Company Profile V4.0
Lads Tech Company Profile V4.0
Resident Meer
 
Google cloud Study Jam 2023.pptx
Google cloud Study Jam 2023.pptxGoogle cloud Study Jam 2023.pptx
Google cloud Study Jam 2023.pptx
GDSCNiT
 
Uday singh resume
Uday singh resumeUday singh resume
Uday singh resume
UDAY SINGH
 
AdaCore Paris Tech Day 2016: Cyrille Comar - Looking Ahead
AdaCore Paris Tech Day 2016: Cyrille Comar - Looking AheadAdaCore Paris Tech Day 2016: Cyrille Comar - Looking Ahead
AdaCore Paris Tech Day 2016: Cyrille Comar - Looking Ahead
jamieayre
 
Developex_presentation_v2
Developex_presentation_v2Developex_presentation_v2
Developex_presentation_v2Olga Rusu
 

Similar to Tech Days 2015: AdaCore Directions (20)

RESUME_AdjunctFaculty
RESUME_AdjunctFacultyRESUME_AdjunctFaculty
RESUME_AdjunctFaculty
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor rout
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor rout
 
Balaji Resume
Balaji ResumeBalaji Resume
Balaji Resume
 
PrashantSoni_exp_embeddedSwDevelopment_latest
PrashantSoni_exp_embeddedSwDevelopment_latestPrashantSoni_exp_embeddedSwDevelopment_latest
PrashantSoni_exp_embeddedSwDevelopment_latest
 
David Robinson's On Line CV
David Robinson's On Line CVDavid Robinson's On Line CV
David Robinson's On Line CV
 
Tech Days 2015: Model Based Development with QGen
Tech Days 2015: Model Based Development with QGenTech Days 2015: Model Based Development with QGen
Tech Days 2015: Model Based Development with QGen
 
Neha_Maggu
Neha_MagguNeha_Maggu
Neha_Maggu
 
Utsha guha cocoa-exp5.9yr
Utsha guha cocoa-exp5.9yrUtsha guha cocoa-exp5.9yr
Utsha guha cocoa-exp5.9yr
 
Utsha guha cocoa-exp5.9yr
Utsha guha cocoa-exp5.9yrUtsha guha cocoa-exp5.9yr
Utsha guha cocoa-exp5.9yr
 
Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...
Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...
Массовый параллелизм для гетерогенных вычислений на C++ для беспилотных автом...
 
Rashmi_Resume
Rashmi_ResumeRashmi_Resume
Rashmi_Resume
 
Ramesh gupta cv
Ramesh gupta cvRamesh gupta cv
Ramesh gupta cv
 
Lads Tech Company Profile V4.0
Lads Tech Company Profile V4.0Lads Tech Company Profile V4.0
Lads Tech Company Profile V4.0
 
Satish_Vishwa
Satish_VishwaSatish_Vishwa
Satish_Vishwa
 
Google cloud Study Jam 2023.pptx
Google cloud Study Jam 2023.pptxGoogle cloud Study Jam 2023.pptx
Google cloud Study Jam 2023.pptx
 
Harvinder Singh-Resume
Harvinder Singh-ResumeHarvinder Singh-Resume
Harvinder Singh-Resume
 
Uday singh resume
Uday singh resumeUday singh resume
Uday singh resume
 
AdaCore Paris Tech Day 2016: Cyrille Comar - Looking Ahead
AdaCore Paris Tech Day 2016: Cyrille Comar - Looking AheadAdaCore Paris Tech Day 2016: Cyrille Comar - Looking Ahead
AdaCore Paris Tech Day 2016: Cyrille Comar - Looking Ahead
 
Developex_presentation_v2
Developex_presentation_v2Developex_presentation_v2
Developex_presentation_v2
 

More from AdaCore

RCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standardsRCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standards
AdaCore
 
Have we a Human Ecosystem?
Have we a Human Ecosystem?Have we a Human Ecosystem?
Have we a Human Ecosystem?
AdaCore
 
Rust and the coming age of high integrity languages
Rust and the coming age of high integrity languagesRust and the coming age of high integrity languages
Rust and the coming age of high integrity languages
AdaCore
 
SPARKNaCl: A verified, fast cryptographic library
SPARKNaCl: A verified, fast cryptographic librarySPARKNaCl: A verified, fast cryptographic library
SPARKNaCl: A verified, fast cryptographic library
AdaCore
 
Developing Future High Integrity Processing Solutions
Developing Future High Integrity Processing SolutionsDeveloping Future High Integrity Processing Solutions
Developing Future High Integrity Processing Solutions
AdaCore
 
Taming event-driven software via formal verification
Taming event-driven software via formal verificationTaming event-driven software via formal verification
Taming event-driven software via formal verification
AdaCore
 
Pushing the Boundary of Mostly Automatic Program Proof
Pushing the Boundary of Mostly Automatic Program ProofPushing the Boundary of Mostly Automatic Program Proof
Pushing the Boundary of Mostly Automatic Program Proof
AdaCore
 
RCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standardsRCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standards
AdaCore
 
Product Lines and Ecosystems: from customization to configuration
Product Lines and Ecosystems: from customization to configurationProduct Lines and Ecosystems: from customization to configuration
Product Lines and Ecosystems: from customization to configuration
AdaCore
 
Securing the Future of Safety and Security of Embedded Software
Securing the Future of Safety and Security of Embedded SoftwareSecuring the Future of Safety and Security of Embedded Software
Securing the Future of Safety and Security of Embedded Software
AdaCore
 
Spark / Ada for Safe and Secure Firmware Development
Spark / Ada for Safe and Secure Firmware DevelopmentSpark / Ada for Safe and Secure Firmware Development
Spark / Ada for Safe and Secure Firmware Development
AdaCore
 
Introducing the HICLASS Research Programme - Enabling Development of Complex ...
Introducing the HICLASS Research Programme - Enabling Development of Complex ...Introducing the HICLASS Research Programme - Enabling Development of Complex ...
Introducing the HICLASS Research Programme - Enabling Development of Complex ...
AdaCore
 
The Future of Aerospace – More Software Please!
The Future of Aerospace – More Software Please!The Future of Aerospace – More Software Please!
The Future of Aerospace – More Software Please!
AdaCore
 
Adaptive AUTOSAR - The New AUTOSAR Architecture
Adaptive AUTOSAR - The New AUTOSAR ArchitectureAdaptive AUTOSAR - The New AUTOSAR Architecture
Adaptive AUTOSAR - The New AUTOSAR Architecture
AdaCore
 
Using Tiers of Assurance Evidence to Reduce the Tears! Adopting the “Wheel of...
Using Tiers of Assurance Evidence to Reduce the Tears! Adopting the “Wheel of...Using Tiers of Assurance Evidence to Reduce the Tears! Adopting the “Wheel of...
Using Tiers of Assurance Evidence to Reduce the Tears! Adopting the “Wheel of...
AdaCore
 
Software Engineering for Robotics - The RoboStar Technology
Software Engineering for Robotics - The RoboStar TechnologySoftware Engineering for Robotics - The RoboStar Technology
Software Engineering for Robotics - The RoboStar Technology
AdaCore
 
MISRA C in an ISO 26262 context
MISRA C in an ISO 26262 contextMISRA C in an ISO 26262 context
MISRA C in an ISO 26262 context
AdaCore
 
Application of theorem proving for safety-critical vehicle software
Application of theorem proving for safety-critical vehicle softwareApplication of theorem proving for safety-critical vehicle software
Application of theorem proving for safety-critical vehicle software
AdaCore
 
The Application of Formal Methods to Railway Signalling Software
The Application of Formal Methods to Railway Signalling SoftwareThe Application of Formal Methods to Railway Signalling Software
The Application of Formal Methods to Railway Signalling Software
AdaCore
 
Bounded Model Checking for C Programs in an Enterprise Environment
Bounded Model Checking for C Programs in an Enterprise EnvironmentBounded Model Checking for C Programs in an Enterprise Environment
Bounded Model Checking for C Programs in an Enterprise Environment
AdaCore
 

More from AdaCore (20)

RCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standardsRCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standards
 
Have we a Human Ecosystem?
Have we a Human Ecosystem?Have we a Human Ecosystem?
Have we a Human Ecosystem?
 
Rust and the coming age of high integrity languages
Rust and the coming age of high integrity languagesRust and the coming age of high integrity languages
Rust and the coming age of high integrity languages
 
SPARKNaCl: A verified, fast cryptographic library
SPARKNaCl: A verified, fast cryptographic librarySPARKNaCl: A verified, fast cryptographic library
SPARKNaCl: A verified, fast cryptographic library
 
Developing Future High Integrity Processing Solutions
Developing Future High Integrity Processing SolutionsDeveloping Future High Integrity Processing Solutions
Developing Future High Integrity Processing Solutions
 
Taming event-driven software via formal verification
Taming event-driven software via formal verificationTaming event-driven software via formal verification
Taming event-driven software via formal verification
 
Pushing the Boundary of Mostly Automatic Program Proof
Pushing the Boundary of Mostly Automatic Program ProofPushing the Boundary of Mostly Automatic Program Proof
Pushing the Boundary of Mostly Automatic Program Proof
 
RCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standardsRCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standards
 
Product Lines and Ecosystems: from customization to configuration
Product Lines and Ecosystems: from customization to configurationProduct Lines and Ecosystems: from customization to configuration
Product Lines and Ecosystems: from customization to configuration
 
Securing the Future of Safety and Security of Embedded Software
Securing the Future of Safety and Security of Embedded SoftwareSecuring the Future of Safety and Security of Embedded Software
Securing the Future of Safety and Security of Embedded Software
 
Spark / Ada for Safe and Secure Firmware Development
Spark / Ada for Safe and Secure Firmware DevelopmentSpark / Ada for Safe and Secure Firmware Development
Spark / Ada for Safe and Secure Firmware Development
 
Introducing the HICLASS Research Programme - Enabling Development of Complex ...
Introducing the HICLASS Research Programme - Enabling Development of Complex ...Introducing the HICLASS Research Programme - Enabling Development of Complex ...
Introducing the HICLASS Research Programme - Enabling Development of Complex ...
 
The Future of Aerospace – More Software Please!
The Future of Aerospace – More Software Please!The Future of Aerospace – More Software Please!
The Future of Aerospace – More Software Please!
 
Adaptive AUTOSAR - The New AUTOSAR Architecture
Adaptive AUTOSAR - The New AUTOSAR ArchitectureAdaptive AUTOSAR - The New AUTOSAR Architecture
Adaptive AUTOSAR - The New AUTOSAR Architecture
 
Using Tiers of Assurance Evidence to Reduce the Tears! Adopting the “Wheel of...
Using Tiers of Assurance Evidence to Reduce the Tears! Adopting the “Wheel of...Using Tiers of Assurance Evidence to Reduce the Tears! Adopting the “Wheel of...
Using Tiers of Assurance Evidence to Reduce the Tears! Adopting the “Wheel of...
 
Software Engineering for Robotics - The RoboStar Technology
Software Engineering for Robotics - The RoboStar TechnologySoftware Engineering for Robotics - The RoboStar Technology
Software Engineering for Robotics - The RoboStar Technology
 
MISRA C in an ISO 26262 context
MISRA C in an ISO 26262 contextMISRA C in an ISO 26262 context
MISRA C in an ISO 26262 context
 
Application of theorem proving for safety-critical vehicle software
Application of theorem proving for safety-critical vehicle softwareApplication of theorem proving for safety-critical vehicle software
Application of theorem proving for safety-critical vehicle software
 
The Application of Formal Methods to Railway Signalling Software
The Application of Formal Methods to Railway Signalling SoftwareThe Application of Formal Methods to Railway Signalling Software
The Application of Formal Methods to Railway Signalling Software
 
Bounded Model Checking for C Programs in an Enterprise Environment
Bounded Model Checking for C Programs in an Enterprise EnvironmentBounded Model Checking for C Programs in an Enterprise Environment
Bounded Model Checking for C Programs in an Enterprise Environment
 

Recently uploaded

Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 

Recently uploaded (20)

Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 

Tech Days 2015: AdaCore Directions

  • 1. AdaCore Directions Who are we? Where are we going? Cyrille Comar Paris, October 1st
  • 2. Agenda of the talk - Mission - Location & People - Values - Strategy: Strengthening & Opening - Research Activities - QGen - Conclusion
  • 4. - Expertise on critical software development - Maintain & evolve (Ada) compilation toolchain with pedigree - Emphasis on customer support
  • 6.
  • 8.
  • 9. Some of us in the US Hristian, frontend Ben, newsletterSteve, static analysisTucker, qgen Nicolas, gps Doug, cross
  • 10.
  • 11.
  • 12. We actively and creatively evolve our product line, operations, and organization to help our customers and teammates. We are passionate about what we do and are committed to learning, researching and creating.
  • 13. We build long-term relationships with our teammates, customers, and partners. Acting as a team, we debate, cooperate, and help each other grow.
  • 14. We share our plans, practices and technologies with our teammates, partners and customers. This is strengthened by our participation in relevant open-source and professional communities, and the open- source licensing of our products.
  • 15. We organize our work to meet all our commitments. We provide customers, partners and teammates unrestricted access to our expertise, making support our number one priority. Our rigor ensures that our products can be used to build the most demanding software systems.
  • 17. - Enhance our Ada offering (new targets, new tools, new optims…) - Make SPARK+CodePeer « the » best game in town for - complementing testing with static verifications - industrial use of program proving - higher level of reliability - lower cost of verification - stop (some) security attacks Help people build software that matters… even more Strengthening & Opening
  • 18. - Unexplored markets - Software that matters in C - Code generation from “models” that matter Help more people build software that matters… Strengthening & Opening
  • 20. Software that matters in C - Toolset that can be used for critical development: - Manage pedigree of the C compiler (e.g. KP entries) - Active long term maintenance (e.g. sustained branches) - Set of verification tools (e.g. gnatcov) - Better controlled build system (gprbuild)
  • 21. Research Activites - Dashboarding: AdaSquore (DGA-Rapid) - Formal methods: - ProofInUse (LabCom with INRIA): enhance proving capabilities - Vecolib (ANR): loop invariants - Soprano (ANR): improve SMT solvers - CAP2018 (FUI) with Sogilis & Squadrone - SPARK in legacy C for FFI
  • 22. Code generation from “models” that matter
  • 23. What is QGen? A qualifiable and customizable code generator from Simulink® and Stateflow® to SPARK and MISRA C A formal model verifier for runtime errors and functional properties An open and extensible framework to integrate heterogeneous models
  • 24. QGen Main Features Support for a large subset of Simulink® - Around 120 blocks, optional checks for MISRA Simulink® - Stateflow® also supported, since early 2015
  • 25. QGen Main Features Support for a large subset of Simulink® Code generation producing MISRA C and SPARK (formally provable language) - Readable and traceable code, no performance penalty
  • 26. QGen Main Features Support for a large subset of Simulink® Code generation producing MISRA C and SPARK (formally provable language) Integrated with compilation and testing frameworks - Integration with GNAT Pro compiler for qualified, end-to-end tool chain - Integration with GNATemulator and GNATcoverage for structural coverage analysis (up to MC/DC) without code instrumentation executing embedded object code
  • 27. QGen Main Features Support for a large subset of Simulink® Code generation producing MISRA C and SPARK (formally provable language) Integrated with compilation and testing frameworks Includes a static model verifier - Focus on safety-critical systems - Run-time errors (divisions by zero, overflows, …) - Logical errors (dead execution paths) - Functional/safety properties (Simulink® assertions blocks)
  • 28. QGen Main Features Support for a large subset of Simulink® Code generation producing MISRA C and SPARK (formally provable language) Integrated with compilation and testing frameworks Includes a static model verifier Qualification material - Including validation against Simulink® simulation - DO-178C, EN 50128, ISO-26262 TCL3
  • 29. QGen An open and extensible framework
  • 30. QGen An open and extensible framework “The gcc for modeling languages” - QGen is designed to accept multiple languages in input, including in-house DSLs - A single code generation style/strategy for all of your modeling languages - XML-based model import at different abstraction levels - Design model: blocks, signals, states, transitions, …. - Code model: variables, statements Selective model compilation - QGen is composed of multiple model compilation steps - It is possible to execute them selectively - It is possible to import/export XML at any step
  • 31. Roadmap Feb 2015 QGen commercial availability Spring 2015 Stateflow® support 2016 Tool Qualification Planning Documents 2017 QGen Debugger 2018 QGen TQL1 qualification completed
  • 32. Conclusion - World of critical software development is evolving… - You are the main source of AdaCore evolution So let’s talk… even more