SlideShare une entreprise Scribd logo
1  sur  26
Télécharger pour lire hors ligne
Enabling Performance
Modeling for the Masses:
Initial Experiences
Abel Gómez, Connie U. Smith, Amy Spellmann, and Jordi Cabot
Internet Interdisciplinary Institute – Universitat Oberta de Catalunya, Spain
L&S Computer Technology, USA
1
• Performance problems are obvious to
users: sluggish response time, low
throughtput…
• Performace issues cause rejection of
new products, or event loss of life.
• Performance is a competitive edge…
… but performance problems are
typically tackled after they occur.
• Unplanned expense and time for
refactoring.
2
Software Performance Engineering
3
Software Performance Engineering
•SPE is a labor-intensive approach.
•Requires considerable expertise and effort.
•Performance engineers work side by side with system
designers.
4
Can system designers
do the analysis
themselves?
• C1 — We need model
specifications to express
performance-determining design
elements.
• C2 — We need transformation
tolos from system design models
to performance models
5
MDE
Automated Software Performance Engineering
6
Defining Performance Scenarios
and Requirements with
UML and MARTE
7
Deployment Diagrams
• Execution architecture of the
system
• Hardware elements providing
processing services.
8
Class Diagrams
• Logical entities of the system.
• Software elements,
communications and
synchonization entities (mutex).
9
Composite Structure Diagrams
• Describe how specific instances
participating in a system relate to
each other (from a static POV).
• Specify resources, workloads and
allocations.
10
Sequence Diagrams
• Describe key performance
scenarios.
• Typically include fine-grained
resource usage information (e.g.
in ExecutionSpecifications or in
Messages)
11
Automatic transformation to
Performance Models
12
QVT
S-PMIF+
13
Performance Modeling
for the Masses
The tool
14
15
16
17
About the project
• 2 months, led by two experts
• 200 correspondences
• 40 MARTE stereotypes and their S-PMIF+ counterparts
• 8 meetings
• 150 e-mails
• 118-pages report
18
Some thoughts
• Barrier to entry: the modeling languages
• UML and MARTE are extensive standards
• There are ambiguities in the standards (e.g. MARTE VSL expressions).
• There is a lack of online documentation with systematic modeling guidelines.
The report (1/3!) had to provide specific
recommendations and guidelines.
19
Some thoughts
• About the QVTo language
• Imperative transformation languages do not have specially good reputation, but…
… it facilitated the processing of ordered elements
• Good logging and assertions support
• Explicit support for libraries
• Helpers can contribute new properties and operations dynamically
• Intermediate clases can be defined (very useful to reify VSL expressions)
20
Some thoughts
• Repetitive transformation code:
• 4 files
• 2027 LOC
• More the 60% of the code deals with
auxiliary tasks
• This has an important impact in the
effort estimation
21
Stereotypes
12%
Strings
13%
VSL & NFP
22%
Helpers
15%
M2M
38%
LOC
Stereotypes
Strings
VSL & NFP
Helpers
M2M
Some thoughts
• Limitations of the modeling tools
• Papyrus is the most popular tool for UML modeling in the Eclipse ecosystem.
• It still has important and known limitiations, specially w.r.t Sequence Diagrams.
• Ordering is important…
… but it is easily lost.
• Papyrus models get corrupt very easily.
• Garbage elements are commonly left around.
22
Some related work
• Assessment of non-functional requirements, such as performance, is a
well stablished discipline.
• Different formalisms, techniques and levels of automation have been
achieved.
• PUMA, Palladio, Descartes Modeling Language, DICE framework, process
mining techniques…
23
Some related work
• Most of them are similar in concept, but:
• Some require performance-specific annotations from MARTE/PAM (closely related
to LQN), requiring performance expertise. E.g., PUMA.
• Some use specific DSLs (although similar to UML). E.g., PCM; DML.
• Some make use of their own profiles (although extending MARTE/DAM). E.g. DICE.
• Most of the transform to one specific tool, rather tan a MIF.
24
Conclusions
• Automated SPE processes are
posible.
• MDE techniques and MIFs are
valuable assets.
• We eliminate the need of
manually creating performance
models (laboriuos and error
prone task).
• We created a prototype
demonstrating the viability of the
approach.
25
Enabling Performance
Modeling for the Masses:
Initial Experiences
Abel Gómez, Connie U. Smith, Amy Spellmann, and Jordi Cabot
Internet Interdisciplinary Institute – Universitat Oberta de Catalunya, Spain
L&S Computer Technology, USA
26

Contenu connexe

Tendances (20)

The Software Engineering Discipline and Evolution of S/W Engineering Methodol...
The Software Engineering Discipline and Evolution of S/W Engineering Methodol...The Software Engineering Discipline and Evolution of S/W Engineering Methodol...
The Software Engineering Discipline and Evolution of S/W Engineering Methodol...
 
Tyronne Castillo - Resume MAY 2015
Tyronne Castillo - Resume MAY 2015Tyronne Castillo - Resume MAY 2015
Tyronne Castillo - Resume MAY 2015
 
Re ppt1
Re ppt1Re ppt1
Re ppt1
 
Amit Kumar_resume
Amit Kumar_resumeAmit Kumar_resume
Amit Kumar_resume
 
CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1
 
Sdlc
SdlcSdlc
Sdlc
 
Software engineering syllabus
Software engineering syllabusSoftware engineering syllabus
Software engineering syllabus
 
Uc14 chap13
Uc14 chap13Uc14 chap13
Uc14 chap13
 
Coding - SDLC Model
Coding - SDLC ModelCoding - SDLC Model
Coding - SDLC Model
 
OOAD - System Analysis and Design
OOAD - System Analysis and Design OOAD - System Analysis and Design
OOAD - System Analysis and Design
 
DISE - Introduction to Software Engineering
DISE - Introduction to Software EngineeringDISE - Introduction to Software Engineering
DISE - Introduction to Software Engineering
 
Function Points
Function PointsFunction Points
Function Points
 
Object Oriented System Design
Object Oriented System DesignObject Oriented System Design
Object Oriented System Design
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1
 
Embedded
EmbeddedEmbedded
Embedded
 
Il product development - 20 01 2011
Il  product development - 20 01 2011Il  product development - 20 01 2011
Il product development - 20 01 2011
 
Anirban_Resume
Anirban_ResumeAnirban_Resume
Anirban_Resume
 
Machine learning for software engineering
Machine learning for software engineeringMachine learning for software engineering
Machine learning for software engineering
 
Software design methodologies
Software design methodologiesSoftware design methodologies
Software design methodologies
 
Anirban_Resume
Anirban_ResumeAnirban_Resume
Anirban_Resume
 

Similaire à Enabling Performance Modeling for the Masses: Initial Experiences

Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringPiero Fraternali
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsNoor Ul Hudda Memon
 
The art of architecture
The art of architectureThe art of architecture
The art of architectureADDQ
 
Agile MDD
Agile MDDAgile MDD
Agile MDDfntnhd
 
Machine Learning in Software Engineering
Machine Learning in Software EngineeringMachine Learning in Software Engineering
Machine Learning in Software EngineeringAlaa Hamouda
 
PAC 2019 virtual Alexander Podelko
PAC 2019 virtual Alexander Podelko PAC 2019 virtual Alexander Podelko
PAC 2019 virtual Alexander Podelko Neotys
 
Year13_SystemModelsmypresentationTechnology.ppt
Year13_SystemModelsmypresentationTechnology.pptYear13_SystemModelsmypresentationTechnology.ppt
Year13_SystemModelsmypresentationTechnology.pptAbhishekaVidyalankar
 
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...Lola Burgueño
 
From science to engineering, the process to build a machine learning product
From science to engineering, the process to build a machine learning productFrom science to engineering, the process to build a machine learning product
From science to engineering, the process to build a machine learning productBruce Kuo
 
Developing Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusDeveloping Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusObeo
 
Survey on Software Defect Prediction
Survey on Software Defect PredictionSurvey on Software Defect Prediction
Survey on Software Defect Predictionlifove
 
session on pattern oriented software architecture
session on pattern oriented software architecturesession on pattern oriented software architecture
session on pattern oriented software architectureSUJOY SETT
 
CIS110 Computer Programming Design Chapter (2)
CIS110 Computer Programming Design Chapter  (2)CIS110 Computer Programming Design Chapter  (2)
CIS110 Computer Programming Design Chapter (2)Dr. Ahmed Al Zaidy
 
Survey on Software Defect Prediction
Survey on Software Defect PredictionSurvey on Software Defect Prediction
Survey on Software Defect PredictionSung Kim
 
Oracle Forms Modernization Roadmap
Oracle Forms Modernization RoadmapOracle Forms Modernization Roadmap
Oracle Forms Modernization RoadmapKai-Uwe Möller
 
Is your ABAP Code Ready for the Cloud?
Is your ABAP Code Ready for the Cloud?Is your ABAP Code Ready for the Cloud?
Is your ABAP Code Ready for the Cloud?Tobias Trapp
 

Similaire à Enabling Performance Modeling for the Masses: Initial Experiences (20)

Unit 1b
Unit 1bUnit 1b
Unit 1b
 
Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven Engineering
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
 
The art of architecture
The art of architectureThe art of architecture
The art of architecture
 
Agile MDD
Agile MDDAgile MDD
Agile MDD
 
Machine Learning in Software Engineering
Machine Learning in Software EngineeringMachine Learning in Software Engineering
Machine Learning in Software Engineering
 
PAC 2019 virtual Alexander Podelko
PAC 2019 virtual Alexander Podelko PAC 2019 virtual Alexander Podelko
PAC 2019 virtual Alexander Podelko
 
Year13_SystemModelsmypresentationTechnology.ppt
Year13_SystemModelsmypresentationTechnology.pptYear13_SystemModelsmypresentationTechnology.ppt
Year13_SystemModelsmypresentationTechnology.ppt
 
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
A Generic Neural Network Architecture to Infer Heterogeneous Model Transforma...
 
From science to engineering, the process to build a machine learning product
From science to engineering, the process to build a machine learning productFrom science to engineering, the process to build a machine learning product
From science to engineering, the process to build a machine learning product
 
Developing Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusDeveloping Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse Sirius
 
Uml basics
Uml basicsUml basics
Uml basics
 
Survey on Software Defect Prediction
Survey on Software Defect PredictionSurvey on Software Defect Prediction
Survey on Software Defect Prediction
 
session on pattern oriented software architecture
session on pattern oriented software architecturesession on pattern oriented software architecture
session on pattern oriented software architecture
 
CIS110 Computer Programming Design Chapter (2)
CIS110 Computer Programming Design Chapter  (2)CIS110 Computer Programming Design Chapter  (2)
CIS110 Computer Programming Design Chapter (2)
 
Survey on Software Defect Prediction
Survey on Software Defect PredictionSurvey on Software Defect Prediction
Survey on Software Defect Prediction
 
Oracle Forms Modernization Roadmap
Oracle Forms Modernization RoadmapOracle Forms Modernization Roadmap
Oracle Forms Modernization Roadmap
 
Scope of software engineering
Scope of software engineeringScope of software engineering
Scope of software engineering
 
Mg6088 spm unit-2
Mg6088 spm unit-2Mg6088 spm unit-2
Mg6088 spm unit-2
 
Is your ABAP Code Ready for the Cloud?
Is your ABAP Code Ready for the Cloud?Is your ABAP Code Ready for the Cloud?
Is your ABAP Code Ready for the Cloud?
 

Plus de abgolla

A model based approach for developing event-driven architectures with AsyncAPI
A model based approach for developing event-driven architectures with AsyncAPIA model based approach for developing event-driven architectures with AsyncAPI
A model based approach for developing event-driven architectures with AsyncAPIabgolla
 
A Modeling Editor and Code Generator for AsyncAPI
A Modeling Editor and Code Generator for AsyncAPIA Modeling Editor and Code Generator for AsyncAPI
A Modeling Editor and Code Generator for AsyncAPIabgolla
 
TemporalEMF: A Temporal Metamodeling Framework
TemporalEMF: A Temporal Metamodeling FrameworkTemporalEMF: A Temporal Metamodeling Framework
TemporalEMF: A Temporal Metamodeling Frameworkabgolla
 
On the Opportunities of Scalable Modeling Technologies: An Experience Report ...
On the Opportunities of Scalable Modeling Technologies: An Experience Report ...On the Opportunities of Scalable Modeling Technologies: An Experience Report ...
On the Opportunities of Scalable Modeling Technologies: An Experience Report ...abgolla
 
Una herramienta para evaluar el rendimiento de aplicaciones intensivas en datos
Una herramienta para evaluar el rendimiento de aplicaciones intensivas en datosUna herramienta para evaluar el rendimiento de aplicaciones intensivas en datos
Una herramienta para evaluar el rendimiento de aplicaciones intensivas en datosabgolla
 
Fase 2015 - Map-based Transparent Persistence for Very Large Models
Fase 2015 - Map-based Transparent Persistence for Very Large ModelsFase 2015 - Map-based Transparent Persistence for Very Large Models
Fase 2015 - Map-based Transparent Persistence for Very Large Modelsabgolla
 

Plus de abgolla (6)

A model based approach for developing event-driven architectures with AsyncAPI
A model based approach for developing event-driven architectures with AsyncAPIA model based approach for developing event-driven architectures with AsyncAPI
A model based approach for developing event-driven architectures with AsyncAPI
 
A Modeling Editor and Code Generator for AsyncAPI
A Modeling Editor and Code Generator for AsyncAPIA Modeling Editor and Code Generator for AsyncAPI
A Modeling Editor and Code Generator for AsyncAPI
 
TemporalEMF: A Temporal Metamodeling Framework
TemporalEMF: A Temporal Metamodeling FrameworkTemporalEMF: A Temporal Metamodeling Framework
TemporalEMF: A Temporal Metamodeling Framework
 
On the Opportunities of Scalable Modeling Technologies: An Experience Report ...
On the Opportunities of Scalable Modeling Technologies: An Experience Report ...On the Opportunities of Scalable Modeling Technologies: An Experience Report ...
On the Opportunities of Scalable Modeling Technologies: An Experience Report ...
 
Una herramienta para evaluar el rendimiento de aplicaciones intensivas en datos
Una herramienta para evaluar el rendimiento de aplicaciones intensivas en datosUna herramienta para evaluar el rendimiento de aplicaciones intensivas en datos
Una herramienta para evaluar el rendimiento de aplicaciones intensivas en datos
 
Fase 2015 - Map-based Transparent Persistence for Very Large Models
Fase 2015 - Map-based Transparent Persistence for Very Large ModelsFase 2015 - Map-based Transparent Persistence for Very Large Models
Fase 2015 - Map-based Transparent Persistence for Very Large Models
 

Dernier

Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 

Dernier (20)

Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 

Enabling Performance Modeling for the Masses: Initial Experiences

  • 1. Enabling Performance Modeling for the Masses: Initial Experiences Abel Gómez, Connie U. Smith, Amy Spellmann, and Jordi Cabot Internet Interdisciplinary Institute – Universitat Oberta de Catalunya, Spain L&S Computer Technology, USA 1
  • 2. • Performance problems are obvious to users: sluggish response time, low throughtput… • Performace issues cause rejection of new products, or event loss of life. • Performance is a competitive edge… … but performance problems are typically tackled after they occur. • Unplanned expense and time for refactoring. 2
  • 4. Software Performance Engineering •SPE is a labor-intensive approach. •Requires considerable expertise and effort. •Performance engineers work side by side with system designers. 4
  • 5. Can system designers do the analysis themselves? • C1 — We need model specifications to express performance-determining design elements. • C2 — We need transformation tolos from system design models to performance models 5 MDE
  • 7. Defining Performance Scenarios and Requirements with UML and MARTE 7
  • 8. Deployment Diagrams • Execution architecture of the system • Hardware elements providing processing services. 8
  • 9. Class Diagrams • Logical entities of the system. • Software elements, communications and synchonization entities (mutex). 9
  • 10. Composite Structure Diagrams • Describe how specific instances participating in a system relate to each other (from a static POV). • Specify resources, workloads and allocations. 10
  • 11. Sequence Diagrams • Describe key performance scenarios. • Typically include fine-grained resource usage information (e.g. in ExecutionSpecifications or in Messages) 11
  • 13. 13
  • 14. Performance Modeling for the Masses The tool 14
  • 15. 15
  • 16. 16
  • 17. 17
  • 18. About the project • 2 months, led by two experts • 200 correspondences • 40 MARTE stereotypes and their S-PMIF+ counterparts • 8 meetings • 150 e-mails • 118-pages report 18
  • 19. Some thoughts • Barrier to entry: the modeling languages • UML and MARTE are extensive standards • There are ambiguities in the standards (e.g. MARTE VSL expressions). • There is a lack of online documentation with systematic modeling guidelines. The report (1/3!) had to provide specific recommendations and guidelines. 19
  • 20. Some thoughts • About the QVTo language • Imperative transformation languages do not have specially good reputation, but… … it facilitated the processing of ordered elements • Good logging and assertions support • Explicit support for libraries • Helpers can contribute new properties and operations dynamically • Intermediate clases can be defined (very useful to reify VSL expressions) 20
  • 21. Some thoughts • Repetitive transformation code: • 4 files • 2027 LOC • More the 60% of the code deals with auxiliary tasks • This has an important impact in the effort estimation 21 Stereotypes 12% Strings 13% VSL & NFP 22% Helpers 15% M2M 38% LOC Stereotypes Strings VSL & NFP Helpers M2M
  • 22. Some thoughts • Limitations of the modeling tools • Papyrus is the most popular tool for UML modeling in the Eclipse ecosystem. • It still has important and known limitiations, specially w.r.t Sequence Diagrams. • Ordering is important… … but it is easily lost. • Papyrus models get corrupt very easily. • Garbage elements are commonly left around. 22
  • 23. Some related work • Assessment of non-functional requirements, such as performance, is a well stablished discipline. • Different formalisms, techniques and levels of automation have been achieved. • PUMA, Palladio, Descartes Modeling Language, DICE framework, process mining techniques… 23
  • 24. Some related work • Most of them are similar in concept, but: • Some require performance-specific annotations from MARTE/PAM (closely related to LQN), requiring performance expertise. E.g., PUMA. • Some use specific DSLs (although similar to UML). E.g., PCM; DML. • Some make use of their own profiles (although extending MARTE/DAM). E.g. DICE. • Most of the transform to one specific tool, rather tan a MIF. 24
  • 25. Conclusions • Automated SPE processes are posible. • MDE techniques and MIFs are valuable assets. • We eliminate the need of manually creating performance models (laboriuos and error prone task). • We created a prototype demonstrating the viability of the approach. 25
  • 26. Enabling Performance Modeling for the Masses: Initial Experiences Abel Gómez, Connie U. Smith, Amy Spellmann, and Jordi Cabot Internet Interdisciplinary Institute – Universitat Oberta de Catalunya, Spain L&S Computer Technology, USA 26