SlideShare ist ein Scribd-Unternehmen logo
1 von 58
Downloaden Sie, um offline zu lesen
Detecting and Visualizing
Inter-worksheet Smells in Spreadsheets
Felienne Hermans (@felienne)
Code smells
How did we get this idea?
By studying what business does in
practice
Excel is running companies!
50% of spreadsheets form the basis for
decisions
Spreadsheet users lack great tool
support
We did not start coding!
We performed 27 interviews
We asked them:
What annoys you?
And what makes you happy?
We found that especially support for
understanding spreadsheets was missing
Then we started coding
Published at ICSE 2011
Users started diagnosing with the dfd’s
This led us to the idea of smells
We took Fowler’s smells and adapted
them to be applicable on spreadsheets
Inappropriate Intimacy
Inappropriate Intimacy
Inappropriate Intimacy
= number of couples between A and B
Feature Envy
Feature Envy
Feature Envy (calculated on a cell)
=number of external connections
Middle man
Middle man
Middle man
Middle man
= number of MMFs on a worksheet
Shotgun surgery
Shotgun surgery
Shotgun surgery
=number of changing sheets and formulas
Then we set thresholds for the metrics
Using the EUSES corpus as a bench mark
And
implemented
it into our
visualization
toolkit Breviz
We validated our implementation with a
case study
“Are those worksheets really that
connected?”
“Are you sure that arrow is correct?”
“this formula annoys me, I have to go
back to the other sheet so many times to
look up the references, it makes me dizzy”
Interesting fact about Middle Man:
Our definition was ‘wrong’
We had not anticipated Middle Men
within worksheets
The most extreme case was a worksheet
on which 220 formulas depended, spread
over 10 worksheets
The owner immediately recognized the
risk
Conclusion: principles from software
engineering transfer well to spreadsheets
Detecting and Visualizing
Inter-worksheet Smells in Spreadsheets
Felienne Hermans (@felienne)

Weitere ähnliche Inhalte

Ähnlich wie Detecting and Visualizing Inter-worksheet Smells in Spreadsheets

The Challenges of Affect Detection in the Social Programmer Ecosystem
The Challenges of Affect Detection in the Social Programmer EcosystemThe Challenges of Affect Detection in the Social Programmer Ecosystem
The Challenges of Affect Detection in the Social Programmer EcosystemNicole Novielli
 
26 Nonverbal Communication In The Workplace
26 Nonverbal Communication In The Workplace26 Nonverbal Communication In The Workplace
26 Nonverbal Communication In The WorkplaceSamantha Martinez
 
Silent Interaction: Healthcare UX,지금 우리가 질문해야 할 몇 가지
 Silent Interaction: Healthcare UX,지금 우리가 질문해야 할 몇 가지 Silent Interaction: Healthcare UX,지금 우리가 질문해야 할 몇 가지
Silent Interaction: Healthcare UX,지금 우리가 질문해야 할 몇 가지Billy Choi
 
Demystifying Comps
Demystifying CompsDemystifying Comps
Demystifying CompsXue Xing
 
To Label or Not? Advances and Open Challenges in SE-specific Sentiment Analysis
To Label or Not? Advances and Open Challenges in SE-specific Sentiment AnalysisTo Label or Not? Advances and Open Challenges in SE-specific Sentiment Analysis
To Label or Not? Advances and Open Challenges in SE-specific Sentiment AnalysisNicole Novielli
 
Outline & Research Design RoadmapThis exercise will help you bui.docx
Outline & Research Design RoadmapThis exercise will help you bui.docxOutline & Research Design RoadmapThis exercise will help you bui.docx
Outline & Research Design RoadmapThis exercise will help you bui.docxalfred4lewis58146
 
Analysis on techniques used to recognize and identifying the Human emotions
Analysis on techniques used to recognize and identifying  the Human emotions Analysis on techniques used to recognize and identifying  the Human emotions
Analysis on techniques used to recognize and identifying the Human emotions IJECEIAES
 
Q6) Do you have ability to control your feeling while trying to so.docx
Q6) Do you have ability to control your feeling while trying to so.docxQ6) Do you have ability to control your feeling while trying to so.docx
Q6) Do you have ability to control your feeling while trying to so.docxmakdul
 
EMOTIONS AND MOODS.ppt
EMOTIONS AND MOODS.pptEMOTIONS AND MOODS.ppt
EMOTIONS AND MOODS.pptRajjaRashad1
 
Experience and evidence
Experience and evidenceExperience and evidence
Experience and evidenceIsobel Dunbar
 
Running head REFLECTION 1REFLECTIO.docx
Running head REFLECTION              1REFLECTIO.docxRunning head REFLECTION              1REFLECTIO.docx
Running head REFLECTION 1REFLECTIO.docxcharisellington63520
 
With 4 sentences 75% of the people will hear and understand you with 8 - 10...
With 4 sentences 75% of the people will hear and understand you   with 8 - 10...With 4 sentences 75% of the people will hear and understand you   with 8 - 10...
With 4 sentences 75% of the people will hear and understand you with 8 - 10...Steve Sulkowski
 

Ähnlich wie Detecting and Visualizing Inter-worksheet Smells in Spreadsheets (17)

The Challenges of Affect Detection in the Social Programmer Ecosystem
The Challenges of Affect Detection in the Social Programmer EcosystemThe Challenges of Affect Detection in the Social Programmer Ecosystem
The Challenges of Affect Detection in the Social Programmer Ecosystem
 
Opponents' questions from doctoral defense of Yue Dai
Opponents' questions from doctoral defense of Yue DaiOpponents' questions from doctoral defense of Yue Dai
Opponents' questions from doctoral defense of Yue Dai
 
26 Nonverbal Communication In The Workplace
26 Nonverbal Communication In The Workplace26 Nonverbal Communication In The Workplace
26 Nonverbal Communication In The Workplace
 
Silent Interaction: Healthcare UX,지금 우리가 질문해야 할 몇 가지
 Silent Interaction: Healthcare UX,지금 우리가 질문해야 할 몇 가지 Silent Interaction: Healthcare UX,지금 우리가 질문해야 할 몇 가지
Silent Interaction: Healthcare UX,지금 우리가 질문해야 할 몇 가지
 
Manual stella ist
Manual stella istManual stella ist
Manual stella ist
 
Demystifying Comps
Demystifying CompsDemystifying Comps
Demystifying Comps
 
Presentation CEBMa EBM Case example: Novartis
Presentation CEBMa EBM Case example: NovartisPresentation CEBMa EBM Case example: Novartis
Presentation CEBMa EBM Case example: Novartis
 
To Label or Not? Advances and Open Challenges in SE-specific Sentiment Analysis
To Label or Not? Advances and Open Challenges in SE-specific Sentiment AnalysisTo Label or Not? Advances and Open Challenges in SE-specific Sentiment Analysis
To Label or Not? Advances and Open Challenges in SE-specific Sentiment Analysis
 
Outline & Research Design RoadmapThis exercise will help you bui.docx
Outline & Research Design RoadmapThis exercise will help you bui.docxOutline & Research Design RoadmapThis exercise will help you bui.docx
Outline & Research Design RoadmapThis exercise will help you bui.docx
 
Analysis on techniques used to recognize and identifying the Human emotions
Analysis on techniques used to recognize and identifying  the Human emotions Analysis on techniques used to recognize and identifying  the Human emotions
Analysis on techniques used to recognize and identifying the Human emotions
 
Q6) Do you have ability to control your feeling while trying to so.docx
Q6) Do you have ability to control your feeling while trying to so.docxQ6) Do you have ability to control your feeling while trying to so.docx
Q6) Do you have ability to control your feeling while trying to so.docx
 
EMOTIONS AND MOODS.ppt
EMOTIONS AND MOODS.pptEMOTIONS AND MOODS.ppt
EMOTIONS AND MOODS.ppt
 
Emotions of Facebook Data
Emotions of Facebook DataEmotions of Facebook Data
Emotions of Facebook Data
 
Lab 01 report
Lab 01 reportLab 01 report
Lab 01 report
 
Experience and evidence
Experience and evidenceExperience and evidence
Experience and evidence
 
Running head REFLECTION 1REFLECTIO.docx
Running head REFLECTION              1REFLECTIO.docxRunning head REFLECTION              1REFLECTIO.docx
Running head REFLECTION 1REFLECTIO.docx
 
With 4 sentences 75% of the people will hear and understand you with 8 - 10...
With 4 sentences 75% of the people will hear and understand you   with 8 - 10...With 4 sentences 75% of the people will hear and understand you   with 8 - 10...
With 4 sentences 75% of the people will hear and understand you with 8 - 10...
 

Mehr von Felienne Hermans

Using F# and genetic programming to play computer bridge
Using F# and genetic programming to play computer bridgeUsing F# and genetic programming to play computer bridge
Using F# and genetic programming to play computer bridgeFelienne Hermans
 
Programming is logical reasoning?
Programming is logical reasoning?Programming is logical reasoning?
Programming is logical reasoning?Felienne Hermans
 
Do Code Smell Hamper Novice Programmers?
Do Code Smell Hamper Novice Programmers?Do Code Smell Hamper Novice Programmers?
Do Code Smell Hamper Novice Programmers?Felienne Hermans
 
Programming by Calculation
Programming by CalculationProgramming by Calculation
Programming by CalculationFelienne Hermans
 
A board game night with geeks: attacking Quarto ties with SAT solvers
A board game night with geeks: attacking Quarto ties with SAT solversA board game night with geeks: attacking Quarto ties with SAT solvers
A board game night with geeks: attacking Quarto ties with SAT solversFelienne Hermans
 
Presenting: structure story and support
Presenting: structure story and supportPresenting: structure story and support
Presenting: structure story and supportFelienne Hermans
 
Social media for the busy scientist
Social media for the busy scientistSocial media for the busy scientist
Social media for the busy scientistFelienne Hermans
 

Mehr von Felienne Hermans (11)

Using F# and genetic programming to play computer bridge
Using F# and genetic programming to play computer bridgeUsing F# and genetic programming to play computer bridge
Using F# and genetic programming to play computer bridge
 
How does code sound?
How does code sound?How does code sound?
How does code sound?
 
Programming is logical reasoning?
Programming is logical reasoning?Programming is logical reasoning?
Programming is logical reasoning?
 
Do Code Smell Hamper Novice Programmers?
Do Code Smell Hamper Novice Programmers?Do Code Smell Hamper Novice Programmers?
Do Code Smell Hamper Novice Programmers?
 
Programming by Calculation
Programming by CalculationProgramming by Calculation
Programming by Calculation
 
A board game night with geeks: attacking Quarto ties with SAT solvers
A board game night with geeks: attacking Quarto ties with SAT solversA board game night with geeks: attacking Quarto ties with SAT solvers
A board game night with geeks: attacking Quarto ties with SAT solvers
 
Presenting: structure story and support
Presenting: structure story and supportPresenting: structure story and support
Presenting: structure story and support
 
Social media for the busy scientist
Social media for the busy scientistSocial media for the busy scientist
Social media for the busy scientist
 
Spreadsheet Testing
Spreadsheet TestingSpreadsheet Testing
Spreadsheet Testing
 
TEDxDelft
TEDxDelftTEDxDelft
TEDxDelft
 
The power of symmetry
The power of symmetryThe power of symmetry
The power of symmetry
 

Kürzlich hochgeladen

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
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
 
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
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
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
 
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
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 

Kürzlich hochgeladen (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
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...
 
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
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
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
 
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
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
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...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 

Detecting and Visualizing Inter-worksheet Smells in Spreadsheets