SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
Prototyping	
	So,ware	product	lines	
	with	Pharo	
Abdelghani	Alidra	
Badji	Mokhtar	university-	Algeria
About	me	and	this	project	
•  I	am	doing	Phd	on	So,ware	run@me	adapta@on	
–  based	on	So,ware	Product	Lines	(SPL)	
–  prototype	new	algorithms	for	SPL-based	
adapta@on	planning	
–  focus	on	scalability	issues	
–  enlarge	the	project	to	reasoning	on	features	
model	using	dependencies	between	features.		
	
→	A	simple	API	to	do	complex	reasoning	algos		
2
So,ware	Product	Lines	
•  Is	another	step	towards	the	industrializa@on	of	
so,ware	development.	
•  Addresses	a	par@cular	market	segment	or	domain	
•  Automo@ve	(Renault)	
•  SmartPhones	(Nokia)	
•  ….	
•  Can	have	impressive	impact	on	costs	and	delays	
•  If	there	are	a	lot	of	products	that	vary	by	some	
aspects	but	that	share	many	components
clients	
So,ware	Factory	
4	
All	phones	most	havea	batery,	
asceen	,	a	mic		…	
BaQery	life	exclude		large	screen	Videogames	requires	up	to	i5	
processor	
Products	
Core	assets	
Variability	info	
HD	camera	requires	HD	screen	
Selec2on	policies	
camera	can	be	either	HD	or	SD
Feature	modeling	
Smart	
Phone	
Screen	CPU	 Camera	 Audio	I/O	 Storage	
HD	SD	
BaQery	
internal	external	HD	SD	Double	
capacity	
Simple	
capacity	
Mandatory	 Op@onal	 Parent	feature	
Sub	features	Xor	 Or	
Allows	some	kind	of	reasoning		
Require
Some	reasoning	algorithms	
Smart	
Phone	
Screen	CPU	 Camera	 Audio	I/O	 Storage	
HD	SD	
BaQery	
internal	external	HD	SD	Double	
capacity	
Simple	
capacity	
Dead	Features	
SPL	validity	 Is	a	valid	
derivable	
product?
Reasoning	on	variability:	exis@ng	approaches	
•  Mainly	SAT/CSP	solvers	
•  Drawback		
– Consider	direct	dependencies	only.	
– Example:	
7	
I	want	a	phone	with	
an	HD	camera.	
PLEASE…
Exis@ng	approaches	:	cri@sism	
Smart	
Phone	
Screen	CPU	 Camera	 Audio	I/O	 Storage	
HD	SD	
BaQery	
internal	external	HD	SD	Double	
capacity	
Simple	
capacity	
Step1:	include	parent	and	required	
features.		
Exclude	alterna@ve	feature	Step2:	include	parent	of	
Camera	Step3:	include	all	
mandatory	features	
Step4:	include	mandatory	
features	of	BaQery	
Step5:	include	Parent	of	
external	
Step6:	include	required	
feature	of	HD	sceern	
Step7:	exclude	
alterna@ve	of	Screen-HD	
RECURSIVE	
Many	minutes	
Feature	knows	all	its	
dependencies
Our	proposal	:	transi@ve	dependencies	
•  We	pre-compute	all	the	dependencies	of	every	feature.	
–  A	Dijkstra	like	algorithm	
•  Every	feature	knows	all	the	features	that	it	directly	or	
indirectly:	
–  requires	
–  excludes	
–  Is	required	by	
•  When	a	feature	is	set,	it	sets	all	the	dependent	ones	in	
one	step.	
9
Our	solu@on	
Smart	
Phone	
Screen	CPU	 Camera	 Audio	I/O	 Storage	
HD	SD	
BaQery	
internal	external	HD	SD	Double	
capacity	
Simple	
capacity	
Camera-HD	transi@vely	requires:	Camera,	SmartPhone,Audio	I/O,	Screen,	CPU,	BaQery,	
SimpleCapacity,	DoubleCapaciQy,	SceenHD,	External,	Strorage.	
Camera-HD	transi@vely	excludes:	Screen-SD	
One	step	instead	of	7	steps
An	infrastrucute	for	reasoning	of	large	
feature	models	
11	
X-FAMILIAR:	Our	large	SPLs	analysis	pladorm
The	Moose	agile	reengineering	pladorm
FAMILIAR	Project
FM	Meta	model
Internal/external	
constraints	visualiza@ons
Extended	FM	Meta	model
Transi@ve	Selec@on	operator
Dependencies	generatorTransi@ve	Features	Dependencies	
Random	FMs	
generator
Dead	Features	
Detec@on
…
Sa@sfiability
Op@miza@on	
(GA)	
Visualiza@on
Visualiza@on
External	parser/
reverse	
engineering	
engine
XML	Descriptor
Visual		
FM	Editor
False	op@onals	
Detec@on
Decision	
Propaga@on
Product	
valida@on
Evalua@on	of	the	proposal	
•  Do	algorithms	based	on	transi@ve	dependency	
perform	beQer	(faster)	than	exis@ng	ones?	
•  The	op@mal	features	selec@on	problem	(very	
complex)	
•  Two	algorithms	are	compared:	
– GA	of	Guo	et	al	
– GA	based	on	transi@ve	dependency	
12
Experimental	results	
0.00	
500.00	
1000.00	
1500.00	
2000.00	
2500.00	
100	 200	 500	 800	 1000	 2000	
13	
99%	gain	of	
@me	
Number	Of	
features	
Execu@on	@me	
Gene@c	
Algorithm	of	
GUO	et	al
Some	issues	though	
•  Not	able	to	create	FM	larger	than	5000	features	
because	memory	availability	problems	
–  Spur	will	bring	a	solu@on?	
•  The	gene@c	algorithm	of	Guo	et	al	is	rather	slow	
compared	to	one	implemented	in	other	languages	
(order	of	minutes/seconds)	
–  LiQle	code	op@miza@on	
–  The	meta	model	is	perhaps	a	bit	complex	
–  maybe	the	Moose	image	and	the	VM	compared	to	
compiled	languages	
14
Future	works	
•  Implement	the	other	tools		
–  Agile	Visualiza@ons	
–  Importer/exporter	
–  Visual	editor	
–  Reverse	engineering	
–  …	
•  Extend	the	meta	model	
–  AQributes	
–  Complex	crosstree	constraints	
•  More	comparisons	
–  Other	reasoning	algorithms	
–  SAT/CSP	algorithms	
–  May	be	try	some	hybridiza@ons	(SAT	solver	based	on	feature	dependencies)	
•  Finish	and	Document	the	Gene@c	Algorithms	framwork	
–  Available	at:	hQp://smalltalkhub.com/#!/~Alidra/Gene@cAlgorithmsFramework	
–  Please	use	it/contribute	
15
16	
Thank	you

Weitere ähnliche Inhalte

Andere mochten auch

Test Selection with Moose In Industry - Impact of Granularity
Test Selection with Moose In Industry - Impact of GranularityTest Selection with Moose In Industry - Impact of Granularity
Test Selection with Moose In Industry - Impact of GranularityESUG
 
Bloc: a Modern Core for Highly Dynamic Graphics
Bloc: a Modern Core for Highly Dynamic Graphics Bloc: a Modern Core for Highly Dynamic Graphics
Bloc: a Modern Core for Highly Dynamic Graphics ESUG
 
New Native Windows UI possibilities in Cincom Smalltalk ObjectStudio
New Native Windows UI possibilities in Cincom Smalltalk ObjectStudioNew Native Windows UI possibilities in Cincom Smalltalk ObjectStudio
New Native Windows UI possibilities in Cincom Smalltalk ObjectStudioESUG
 
Tugrik: A new persistence option for Pharo
Tugrik: A new persistence option for PharoTugrik: A new persistence option for Pharo
Tugrik: A new persistence option for PharoESUG
 
Pillar: one language for all supports
Pillar: one language for all supportsPillar: one language for all supports
Pillar: one language for all supportsESUG
 
The Glamorous Toolkit: Towards a novel live IDE
The Glamorous Toolkit: Towards a novel live IDEThe Glamorous Toolkit: Towards a novel live IDE
The Glamorous Toolkit: Towards a novel live IDEESUG
 
seamless – Object Oriented CMS System
seamless – Object Oriented CMS Systemseamless – Object Oriented CMS System
seamless – Object Oriented CMS SystemESUG
 
Lub: a DSL for Dynamic Context Oriented Programming
Lub: a DSL for Dynamic Context Oriented ProgrammingLub: a DSL for Dynamic Context Oriented Programming
Lub: a DSL for Dynamic Context Oriented ProgrammingESUG
 

Andere mochten auch (8)

Test Selection with Moose In Industry - Impact of Granularity
Test Selection with Moose In Industry - Impact of GranularityTest Selection with Moose In Industry - Impact of Granularity
Test Selection with Moose In Industry - Impact of Granularity
 
Bloc: a Modern Core for Highly Dynamic Graphics
Bloc: a Modern Core for Highly Dynamic Graphics Bloc: a Modern Core for Highly Dynamic Graphics
Bloc: a Modern Core for Highly Dynamic Graphics
 
New Native Windows UI possibilities in Cincom Smalltalk ObjectStudio
New Native Windows UI possibilities in Cincom Smalltalk ObjectStudioNew Native Windows UI possibilities in Cincom Smalltalk ObjectStudio
New Native Windows UI possibilities in Cincom Smalltalk ObjectStudio
 
Tugrik: A new persistence option for Pharo
Tugrik: A new persistence option for PharoTugrik: A new persistence option for Pharo
Tugrik: A new persistence option for Pharo
 
Pillar: one language for all supports
Pillar: one language for all supportsPillar: one language for all supports
Pillar: one language for all supports
 
The Glamorous Toolkit: Towards a novel live IDE
The Glamorous Toolkit: Towards a novel live IDEThe Glamorous Toolkit: Towards a novel live IDE
The Glamorous Toolkit: Towards a novel live IDE
 
seamless – Object Oriented CMS System
seamless – Object Oriented CMS Systemseamless – Object Oriented CMS System
seamless – Object Oriented CMS System
 
Lub: a DSL for Dynamic Context Oriented Programming
Lub: a DSL for Dynamic Context Oriented ProgrammingLub: a DSL for Dynamic Context Oriented Programming
Lub: a DSL for Dynamic Context Oriented Programming
 

Ähnlich wie Prototyping Software Product Lines analysis with Pharo

Mohamed thalha senior mes consultant Resume
Mohamed thalha  senior mes consultant ResumeMohamed thalha  senior mes consultant Resume
Mohamed thalha senior mes consultant ResumeMohamed Thalha
 
Increased Developer Productivity for IoT with Java and Reactive Blocks (Oracl...
Increased Developer Productivity for IoT with Java and Reactive Blocks (Oracl...Increased Developer Productivity for IoT with Java and Reactive Blocks (Oracl...
Increased Developer Productivity for IoT with Java and Reactive Blocks (Oracl...Bart Jonkers
 
Augmented and Virtual Reality applied in Industry 4.0
Augmented and Virtual Reality applied in Industry 4.0Augmented and Virtual Reality applied in Industry 4.0
Augmented and Virtual Reality applied in Industry 4.0IGS
 
SAP CMMS Software Productoo 2018 | Smart Factory
SAP CMMS Software Productoo 2018 | Smart FactorySAP CMMS Software Productoo 2018 | Smart Factory
SAP CMMS Software Productoo 2018 | Smart FactoryProductoo Software
 
CV_SAP Abap Technical Consultant_Mayank Malpani
CV_SAP Abap Technical Consultant_Mayank MalpaniCV_SAP Abap Technical Consultant_Mayank Malpani
CV_SAP Abap Technical Consultant_Mayank MalpaniMayank Malpani
 
Psi ip phone_case_study_v10
Psi ip phone_case_study_v10Psi ip phone_case_study_v10
Psi ip phone_case_study_v10Primesoftinc
 
I/O Frog: Not another Sigfox platform?
I/O Frog: Not another Sigfox platform?I/O Frog: Not another Sigfox platform?
I/O Frog: Not another Sigfox platform?Simple Hardware
 
Beyond the Oracle Forms Horizon: from Forms to ADF in minutes
Beyond the Oracle Forms Horizon: from Forms to ADF in minutes  Beyond the Oracle Forms Horizon: from Forms to ADF in minutes
Beyond the Oracle Forms Horizon: from Forms to ADF in minutes infoqafe
 
Oracle Forms Conversion "An automated Approach"
Oracle Forms Conversion "An automated Approach"Oracle Forms Conversion "An automated Approach"
Oracle Forms Conversion "An automated Approach"Rokesh Jankie
 
“Smarter Manufacturing with Intel’s Deep Learning-Based Machine Vision,” a Pr...
“Smarter Manufacturing with Intel’s Deep Learning-Based Machine Vision,” a Pr...“Smarter Manufacturing with Intel’s Deep Learning-Based Machine Vision,” a Pr...
“Smarter Manufacturing with Intel’s Deep Learning-Based Machine Vision,” a Pr...Edge AI and Vision Alliance
 
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...mfrancis
 
Enabling the Enterprise with Next-Generation Mobile Architectures - Mark Vand...
Enabling the Enterprise with Next-Generation Mobile Architectures - Mark Vand...Enabling the Enterprise with Next-Generation Mobile Architectures - Mark Vand...
Enabling the Enterprise with Next-Generation Mobile Architectures - Mark Vand...mfrancis
 
Smart Guard Systems Corporate
Smart Guard Systems CorporateSmart Guard Systems Corporate
Smart Guard Systems CorporateGURUDAS
 
Technology and Digital Platform | 2019 partner summit
Technology and Digital Platform | 2019 partner summitTechnology and Digital Platform | 2019 partner summit
Technology and Digital Platform | 2019 partner summitAndrew Kumar
 

Ähnlich wie Prototyping Software Product Lines analysis with Pharo (20)

Odoo erp or sap erp
Odoo erp or sap erpOdoo erp or sap erp
Odoo erp or sap erp
 
Mohamed thalha senior mes consultant Resume
Mohamed thalha  senior mes consultant ResumeMohamed thalha  senior mes consultant Resume
Mohamed thalha senior mes consultant Resume
 
Increased Developer Productivity for IoT with Java and Reactive Blocks (Oracl...
Increased Developer Productivity for IoT with Java and Reactive Blocks (Oracl...Increased Developer Productivity for IoT with Java and Reactive Blocks (Oracl...
Increased Developer Productivity for IoT with Java and Reactive Blocks (Oracl...
 
Augmented and Virtual Reality applied in Industry 4.0
Augmented and Virtual Reality applied in Industry 4.0Augmented and Virtual Reality applied in Industry 4.0
Augmented and Virtual Reality applied in Industry 4.0
 
INTEL - Workshop HTML5
INTEL - Workshop HTML5 INTEL - Workshop HTML5
INTEL - Workshop HTML5
 
SMP_MC_prathima_Chenna
SMP_MC_prathima_ChennaSMP_MC_prathima_Chenna
SMP_MC_prathima_Chenna
 
Siruna
SirunaSiruna
Siruna
 
SAP CMMS Software Productoo 2018 | Smart Factory
SAP CMMS Software Productoo 2018 | Smart FactorySAP CMMS Software Productoo 2018 | Smart Factory
SAP CMMS Software Productoo 2018 | Smart Factory
 
CV_SAP Abap Technical Consultant_Mayank Malpani
CV_SAP Abap Technical Consultant_Mayank MalpaniCV_SAP Abap Technical Consultant_Mayank Malpani
CV_SAP Abap Technical Consultant_Mayank Malpani
 
Psi ip phone_case_study_v10
Psi ip phone_case_study_v10Psi ip phone_case_study_v10
Psi ip phone_case_study_v10
 
The Future of PLM
The Future of PLMThe Future of PLM
The Future of PLM
 
I/O Frog: Not another Sigfox platform?
I/O Frog: Not another Sigfox platform?I/O Frog: Not another Sigfox platform?
I/O Frog: Not another Sigfox platform?
 
Beyond the Oracle Forms Horizon: from Forms to ADF in minutes
Beyond the Oracle Forms Horizon: from Forms to ADF in minutes  Beyond the Oracle Forms Horizon: from Forms to ADF in minutes
Beyond the Oracle Forms Horizon: from Forms to ADF in minutes
 
Oracle Forms Conversion "An automated Approach"
Oracle Forms Conversion "An automated Approach"Oracle Forms Conversion "An automated Approach"
Oracle Forms Conversion "An automated Approach"
 
Sundance's presentation at B:RAI 2020
Sundance's presentation at B:RAI 2020Sundance's presentation at B:RAI 2020
Sundance's presentation at B:RAI 2020
 
“Smarter Manufacturing with Intel’s Deep Learning-Based Machine Vision,” a Pr...
“Smarter Manufacturing with Intel’s Deep Learning-Based Machine Vision,” a Pr...“Smarter Manufacturing with Intel’s Deep Learning-Based Machine Vision,” a Pr...
“Smarter Manufacturing with Intel’s Deep Learning-Based Machine Vision,” a Pr...
 
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
OSGi Alliance Community Event 2007 - Business Session#2 - Abdallah Bushnaq, A...
 
Enabling the Enterprise with Next-Generation Mobile Architectures - Mark Vand...
Enabling the Enterprise with Next-Generation Mobile Architectures - Mark Vand...Enabling the Enterprise with Next-Generation Mobile Architectures - Mark Vand...
Enabling the Enterprise with Next-Generation Mobile Architectures - Mark Vand...
 
Smart Guard Systems Corporate
Smart Guard Systems CorporateSmart Guard Systems Corporate
Smart Guard Systems Corporate
 
Technology and Digital Platform | 2019 partner summit
Technology and Digital Platform | 2019 partner summitTechnology and Digital Platform | 2019 partner summit
Technology and Digital Platform | 2019 partner summit
 

Mehr von ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingESUG
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in PharoESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapESUG
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsESUG
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector TuningESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FutureESUG
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the DebuggerESUG
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing ScoreESUG
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptESUG
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsESUG
 

Mehr von ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Kürzlich hochgeladen

Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
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
 
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
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
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
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
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
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
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
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 

Kürzlich hochgeladen (20)

Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
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
 
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
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
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
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
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
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
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)
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 

Prototyping Software Product Lines analysis with Pharo