SlideShare a Scribd company logo
Jython for Embedded Software ValidationRaniero VirgilioIAG/ECG/PPD SW Pycon Quattro, 8/5/2010
Raniero VirgilioMy Job Software Engineer in Intel Shannon, IrelandResponsible for Test Automation infrastructureMy TeamPPD (Performance Product Division)Embedded SoftwareComplete SOCs for security, communications, storage and embedded designshttp://www.intel.com/embedded/index.htm
AgendaValidation in embedded systemsRuntime Plug-in modelRuntime Plug-in model with JythonJython and EclipseResults
Validation in embedded systemsA challenging environmentTypical scenarioRequirements and solutions
A challenging environmentMultiple hw/sw deploymentsConfiguration set up needs to be fast and reliableSupport for different OS types and versionsConsistent cooperationSeveral teams working on the same infrastructureSynchronization with overseas groups
Test Automation scenarioTest CodeXML-RPC sessionServer1 (Windows)Traffic Generator 1XML-RPC sessionTraffic Generator 2Server2 (Windows)Telnet sessionTest DriverDUT1 (Linux/Windows/FreeBSD)Test ExecutionReportsXML-RPC sessionTelnet sessionTest SuitesDUT2(Linux/Windows/FreeBSD)Telnet sessionDUT3(Linux/Windows/FreeBSD)
Test Automation requirementsProgramming languagePlatform-independentLibraries for connectivity and string manipulationTest Framework designOOP to maximize reusability of test codePlatform runtime extendibilitySustainable implementationAn effective interface between test execution (local to DUT) and test reporting (distributed)Customizable open source solution
Proposed solutionProgramming languagePythontelnetlib, xmlrpclib, SimpleXMLRPCServerre,xml.dom.minidomTest Framework designRuntime plug-in modelSustainable implementationJython embedded in EclipseJython is a Python interpreter written in 100% pure Java
Runtime plug-in modelDefinitionDesign Pattern
Runtime Plug-in ModelThe term plug-in refers to a type of program that contributes code to the system and adds a special capability to it.The plug-in is unknown at compile-time of the application for which the plug-in is designed.Plug-ins are dynamically plugged into the application they are designed for at runtimeThe key for this model is Dynamic Code Loading
Design PatternExtendibility
Application capabilities are defined by the supported Plug-in
Plug-in can be loaded and unloaded at runtime
Plug-in development
Each Plug-in shall implement a specified interface
The plug-in delegates the Application for high-level services
Parallel life-cycle
Application and Plug-ins can be developed independently Runtime Plug-in Model with JythonDynamic code loading in Java and JythonMultithreading
Dynamic code loading in JavaRuntime source compilation
StandardJavaFileManager handles the source code
JavaCompiler executes the compilation and creates a class file
DiagnosticCollector gathers compilation information
Class file deployment
A new Classloader has to be defined
It need to extend the previous one with the new class fileClient
Dynamic code loading in JythonOne step task

More Related Content

PPT
Unit Tests? It is Very Simple and Easy!
PPT
RPG Program for Unit Testing RPG
PDF
System verilog important
PDF
Upgrading to System Verilog for FPGA Designs, Srinivasan Venkataramanan, CVC
PPT
Unit Testing RPG with JUnit
PPT
AAA Automated Testing
PPTX
How to Connect SystemVerilog with Octave
PPTX
System verilog control flow
Unit Tests? It is Very Simple and Easy!
RPG Program for Unit Testing RPG
System verilog important
Upgrading to System Verilog for FPGA Designs, Srinivasan Venkataramanan, CVC
Unit Testing RPG with JUnit
AAA Automated Testing
How to Connect SystemVerilog with Octave
System verilog control flow

What's hot (20)

PPT
Automation testing by Durgasoft in Hyderabad
PDF
Unit Testing
PDF
An Introduction to JUnit 5 and how to use it with Spring boot tests and Mockito
PPT
[ENGLISH] TDC 2015 - PHP Trail - Tests and PHP Continuous Integration Enviro...
PDF
Uvm cookbook-systemverilog-guidelines-verification-academy
DOCX
Test driven development and unit testing with examples in C++
PPT
Automating Software Communications Architecture (SCA) Testing with Spectra CX
PDF
Apache maven, a software project management tool
PDF
JUnit 5 - The Next Generation
PPTX
Practical unit testing in c & c++
PPTX
Testes? Mas isso não aumenta o tempo de projecto? Não quero...
PPTX
Test driven development in .Net - 2010 + Eclipse
PDF
Introduction tojavaandxml lc-slides01-fp2005-ver 1.0
PDF
A Better Python for the JVM
PDF
Unit testing (eng)
PDF
Session 9 advance_verification_features
PPTX
TDD with Visual Studio 2010
DOCX
The Seven Pillars Of Asp.Net
Automation testing by Durgasoft in Hyderabad
Unit Testing
An Introduction to JUnit 5 and how to use it with Spring boot tests and Mockito
[ENGLISH] TDC 2015 - PHP Trail - Tests and PHP Continuous Integration Enviro...
Uvm cookbook-systemverilog-guidelines-verification-academy
Test driven development and unit testing with examples in C++
Automating Software Communications Architecture (SCA) Testing with Spectra CX
Apache maven, a software project management tool
JUnit 5 - The Next Generation
Practical unit testing in c & c++
Testes? Mas isso não aumenta o tempo de projecto? Não quero...
Test driven development in .Net - 2010 + Eclipse
Introduction tojavaandxml lc-slides01-fp2005-ver 1.0
A Better Python for the JVM
Unit testing (eng)
Session 9 advance_verification_features
TDD with Visual Studio 2010
The Seven Pillars Of Asp.Net
Ad

Viewers also liked (20)

PPTX
Mobile Apps Validation: Facing the Challenge
PPTX
Installing application in ubuntu [autosaved]
PPTX
Publishing and delivery of mobile application
PPTX
Publishing and delivery of mobile application ios
PPTX
2016 Chataqua - CAG Children Pavilion
PPTX
In memory of a wonderful mom, Betty Sue Pitman
DOCX
Reflections
PPT
Taiseer
PPT
CCTM CLTrack Presentation
PDF
People & Performance UK
PPT
Sean Starwars Greatest Hits 1996 2009 Powerpoint 2009
PPT
Special Econamy Zone
PPT
Taiseer
PPT
COMMSEN Unlimited connection
PPTX
Chewelah Chamber - Think Local First!
RTF
Word scribd
PPSX
Market and business drivers for mobile application
PPTX
Au Psy492 M7 A3 E Portf Hill A
PPT
PPTX
Collaborative and Workflow Tools
Mobile Apps Validation: Facing the Challenge
Installing application in ubuntu [autosaved]
Publishing and delivery of mobile application
Publishing and delivery of mobile application ios
2016 Chataqua - CAG Children Pavilion
In memory of a wonderful mom, Betty Sue Pitman
Reflections
Taiseer
CCTM CLTrack Presentation
People & Performance UK
Sean Starwars Greatest Hits 1996 2009 Powerpoint 2009
Special Econamy Zone
Taiseer
COMMSEN Unlimited connection
Chewelah Chamber - Think Local First!
Word scribd
Market and business drivers for mobile application
Au Psy492 M7 A3 E Portf Hill A
Collaborative and Workflow Tools
Ad

Similar to Jython for Embedded Software Validation (20)

PDF
Jython for embedded software validation
PPT
Comparative Development Methodologies
PPT
What is Java Technology (An introduction with comparision of .net coding)
PPTX
Build, logging, and unit test tools
PDF
Creation of a Test Bed Environment for Core Java Applications using White Box...
ODP
eXo Platform SEA - Play Framework Introduction
PDF
NVIDIA Triton Inference Server, a game-changing platform for deploying AI mod...
PPTX
Play framework : A Walkthrough
PPTX
Java/Servlet/JSP/JDBC
PDF
Software testing: an introduction - 2017
PPTX
Making the Strategic Shift to Open Source at Fujitsu Network Communication
PPTX
Dalvik Vm & Jit
PPTX
Dalvik Vm & Jit
PPT
'Acceptance Test Driven Development Using Robot Framework' by Pekka Klarch & ...
PDF
ATDD Using Robot Framework
PPT
Managing Your Runtime With P2
ODP
Software testing tools
PDF
TechWiseTV Workshop: Catalyst Switching Programmability
PDF
Java Performance & Profiling
PDF
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
Jython for embedded software validation
Comparative Development Methodologies
What is Java Technology (An introduction with comparision of .net coding)
Build, logging, and unit test tools
Creation of a Test Bed Environment for Core Java Applications using White Box...
eXo Platform SEA - Play Framework Introduction
NVIDIA Triton Inference Server, a game-changing platform for deploying AI mod...
Play framework : A Walkthrough
Java/Servlet/JSP/JDBC
Software testing: an introduction - 2017
Making the Strategic Shift to Open Source at Fujitsu Network Communication
Dalvik Vm & Jit
Dalvik Vm & Jit
'Acceptance Test Driven Development Using Robot Framework' by Pekka Klarch & ...
ATDD Using Robot Framework
Managing Your Runtime With P2
Software testing tools
TechWiseTV Workshop: Catalyst Switching Programmability
Java Performance & Profiling
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPT
Teaching material agriculture food technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
NewMind AI Weekly Chronicles - August'25 Week I
Dropbox Q2 2025 Financial Results & Investor Presentation
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
sap open course for s4hana steps from ECC to s4
Unlocking AI with Model Context Protocol (MCP)
MYSQL Presentation for SQL database connectivity
Reach Out and Touch Someone: Haptics and Empathic Computing
Teaching material agriculture food technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Big Data Technologies - Introduction.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Spectral efficient network and resource selection model in 5G networks
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Empathic Computing: Creating Shared Understanding
Building Integrated photovoltaic BIPV_UPV.pdf

Jython for Embedded Software Validation