SlideShare a Scribd company logo
1 of 26
Download to read offline
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

More Related Content

What's hot (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
 

Similar to 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
 
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
 

Similar to 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
 
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?
 
01_IT4557.pptx
01_IT4557.pptx01_IT4557.pptx
01_IT4557.pptx
 

More from 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
 

More from 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
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 

Recently uploaded (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 

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