Alessandra Gorla, PhD

Homepage

Alessandra Gorla

I am an associate researcher professor at the IMDEA Software Institute in Madrid, Spain. Prior to that, I have been working as a postdoc with Andreas Zeller at the Software Engineering chair at Saarland University in Germany.
I obtained my PhD in the STAR group, led by Mauro Pezzè at the University of Lugano in Switzerland. My research interests are in malware detection for mobile applications, automatic software repair, software testing and analysis

This is my CV

INFO I am looking for motivated students interested in software engineering. Contact me for internship and PhD opportunities!

Mining Android App Behavior

After clustering Android apps by their description topics, we identify outliers in each cluster with respect to their API usage. Applied on a set of 22,500+ Android applications, our CHABADA prototype identified several anomalies; additionally, it flagged 56% of novel malware as such, without requiring any known malware patterns.
Get more information here!

Intrinsic Redundancy

We exploit the intrinsic redundancy of software to make Web and Java systems more resilient to failures. We exploited intrinsic software redundancy also to automatically produce test oracles. More recently, we developed a search-based technique to automatically identify intrisically redundant methods in Java classes.
More information on FSE2010, ICSE2013, ICSE2014, FSE2014.

Back to Top

Publications

2023
[59]
A Decade of Code Comment Quality Assessment: A Systematic Literature Review (Pooja Rani, Arianna Blasi, Nataliia Stulova, Sebastiano Panichella, Alessandra Gorla, Oscar Nierstrasz), In Journal of Systems and Software, volume 195, 2023. [pdf] [doi]
[58]
LibKit: Detecting Third-Party Libraries in iOS Apps (Daniel Domínguez-Álvarez, Alejandro de la Cruz, Alessandra Gorla, Juan Caballero), In Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2023, San Francisco, CA, USA, December 3-9, 2023, ACM, 2023. [pdf] [doi]
[57]
Precise Lazy Initialization for Programs with Complex Heap Inputs (Juan Manuel Copia, Facundo Molina, Nazareno Aguirre, Marcelo F. Frias, Alessandra Gorla, Pablo Ponzio), In 34th IEEE International Symposium on Software Reliability Engineering, ISSRE 2023, Florence, Italy, October 9-12, 2023, IEEE, 2023. [pdf] [doi]
2022
[56]
On the Usage of Programming Languages in the iOS Ecosystem (Daniel Domínguez-Álvarez, Alessandra Gorla, Juan Caballero), In SCAM 2022: Proceedings of the 22nd IEEE International Working Conference on Soource Code Analysis and Manipulation, 2022. [pdf]
[55]
LISSA: Lazy Initialization with Specialized Solver Aid (Juan Manuel Copia, Pablo Ponzio, Nazareno Aguirre, Alessandra Gorla, Marcelo Frias), In ASE 2022: Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering, 2022. [pdf]
[54]
Call Me Maybe: Using NLP to Automatically Generate Unit Test Cases Compliant with Temporal Constraints (Arianna Blasi, Alessandra Gorla, Michael D. Ernst, Mauro Pezzè), In ASE 2022: Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering, 2022. [pdf]
[53]
Use of Test Doubles in Android Testing: An In-Depth Investigation (Mattia Fazzini, Chase Choi, Juan Manuel Copia, Gabriel Lee, Yoshiki Kakehi, Alessandra Gorla, Alessandro Orso), In ICSE 2022: Proceedings of the 44th International Conference on Software Engineering, 2022. [pdf]
[52]
ReChan: An Automated Analysis of Android App Release Notes to Report Inconsistencies (Daniel Domínguez-Álvarez, Daniel Tomic, Alessandra Gorla), In MobileSoft 2019: Proceedings of the 9th IEEE/ACM International Conference on Mobile Software Engineering and Systems, 2022. [pdf]
2021
[51]
Replicomment: identifying clones in code comments (Arianna Blasi, Nataliia Stulova, Alessandra Gorla, Oscar Nierstrasz), In Journal of Systems and Software, volume 182, 2021. [pdf] [doi]
[50]
MeMo: Automatically identifying metamorphic relations in Javadoc comments for test automation (Arianna Blasi, Alessandra Gorla, Michael D. Ernst, Mauro Pezzè, Antonio Carzaniga), In Journal of Systems and Software, volume 181, 2021. [pdf] [doi]
[49]
An application of KLEE to aerospace industrial software (Juan Francisco García, Daniel Jurjo, Fernando Macías, José Francisco Morales, Alessandra Gorla), In 2nd International KLEE Workshop on Symbolic Execution, 2021. [pdf]
[48]
An application of KLEE to aerospace industrial software (Juan Francisco García, Daniel Jurjo, Fernando Macías, José Francisco Morales, Alessandra Gorla), In XX Jornadas de Programación y Lenguajes (PROLE 2021), 2021. [pdf]
2020
[47]
Towards Detecting Inconsistent Comments in Java Source Code Automatically (Nataliia Stulova, Arianna Blasi, Alessandra Gorla, Oscar Nierstrasz), In SCAM 2020: Proceedings of the 20th IEEE International Working Conference on Soource Code Analysis and Manipulation, 2020. [pdf]
[46]
A Framework for Automated Test Mocking of Mobile Apps (Mattia Fazzini, Alessandra Gorla, Alessandro Orso), In ASE 2020: Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering, 2020. [pdf]
[45]
Angel or Devil? A Privacy Study of Mobile Parental Control Apps (Alvaro Feal, Paolo Calciati, Narseo Vallina-Rodriguez, Carmela Troncoso, Alessandra Gorla), In The 20th Privacy Enhancing Technologies Symposium (PoPETs 2020.2), 2020. [pdf]
[44]
Automatically Granted Permissions in Android apps (Paolo Calciati, Konstantin Kuznetsov, Alessandra Gorla, Andreas Zeller), In MSR 2020: 17th International Conference on Mining Software Repositories, 2020. [pdf]
2019
[43]
Release Practices for iOS and Android Apps (Daniel Domínguez-Álvarez, Alessandra Gorla), In WAMA 2019: Proceedings of the 3rd International Workshop on App Market Analytics, 2019. [pdf]
[42]
Are you Sure They are the Same? Identifying Differences Between iOS and Android Implementations (Daniel Domínguez-Álvarez, Alessandra Gorla, Juan Caballero, Roberto Giacobazzi), In Actas de las V Jornadas Nacionales de Ciberseguridad, 2019.
2018
[41]
A Study on the Privacy Implications of Mobile Parental Control Apps (Alvaro Feal, Julien Gamba, Narseo Vallina-Rodriguez, Carmela Troncoso, Alessandra Gorla, Paolo Calciati), In Open Day for Privacy, Transparency and Decentralization (OPERANDI 2018), in conjunction with the 18th Privacy Enhancing Technologies Symposium (PETS 2018), 2018.
[40]
Translating Code Comments to Procedure Specifications (Arianna Blasi, Alberto Goffi, Konstantin Kuznetsov, Alessandra Gorla, Michael D. Ernst, Mauro Pezzè, Sergio Delgado Castellanos), In ISSTA 2018: Proceedings of the 27th International Symposium on Software Testing and Analysis, 2018. [pdf]
[39]
Analyzing the User Interface of Android Apps (Konstantin Kuznetsov, Vitalii Avdiienko, Alessandra Gorla, Andreas Zeller), In MobileSoft 2018: Proceedings of the 5th IEEE/ACM International Conference on Mobile Software Engineering and Systems, 2018. [pdf]
[38]
RepliComment: Identifying Clones in Code Comments (Arianna Blasi, Alessandra Gorla), In ICPC 2018: Proceedings of the 26th IEEE International Conference on Program Comprehension, 2018. [pdf]
[37]
What did Really Change with the new Release of the App? (Paolo Calciati, Konstantin Kuznetsov, Bai Xue, Alessandra Gorla), In MSR 2018: 15th International Conference on Mining Software Repositories, 2018. [pdf]
2017
[36]
Intrinsic Redundancy for Reliability and Beyond (Alberto Goffi, Alessandra Gorla, Andrea Mattavelli, Mauro Pezzè), Chapter in PAUSE: Present and Ulterior Software Engineering (Bertrand Meyer, Manuel Mazzara, eds.), Springer, 2017. [pdf] [doi]
[35]
Detecting Behavior Anomalies in Graphical User Interfaces (Vitalii Avdiienko, Konstantin Kuznetsov, Isabelle Rommelfanger, Andreas Rau, Alessandra Gorla, Andreas Zeller), In ICSE 2017: Proceedings of the 39th International Conference on Software Engineering Companion, 2017. [pdf] [doi]
[34]
How Do Apps Evolve in Their Permission Requests? A Preliminary Study (Paolo Calciati, Alessandra Gorla), In MSR 2017: 14th International Conference on Mining Software Repositories, IEEE Computer Society, 2017. [pdf] [doi]
[33]
O!Snap: Cost-Efficient Testing in the Cloud (Alessio Gambi, Alessandra Gorla, Andreas Zeller), In ICST 2017: 10th International Conference on Software Testing, Verification and Validation, IEEE Computer Society, 2017. [pdf] [doi]
[32]
Software engineering for self-adaptive systems: research challenges in the provision of assurances (Rogério de Lemos, David Garlan, Carlo Ghezzi, Holger Giese, Jesper Andersson, Marin Litoiu, Bradley Schmerl, Danny Weyns, Luciano Baresi, Nelly Bencomo, Yuriy Brun, Javier Camara, Radu Calinescu, Myra B. Cohen, Alessandra Gorla, Vincenzo Grassi, Lars Grunske, Paola Inverardi, Jean-Marc Jezequel, Sam Malek, Raffaela Mirandola, Marco Mori, Hausi A Müller, Romain Rouvoy, Cecilia MF Rubira, Eric Rutten, Mary Shaw, Giordano Tamburrelli, Gabriel Tamura, Norha M Villegas, Thomas Vogel, Franco Zambonelli), Chapter in Software Engineering for Self-Adaptive Systems III. Assurances, Springer-Verlag, volume 9640, 2017. [pdf] [doi]
2016
[31]
CALAPPA: a Toolchain for Mining Android Applications (Vitalii Avdiienko, Konstantin Kuznetsov, Paolo Calciati, Juan Carlos Caiza Román, Alessandra Gorla, Andreas Zeller), In WAMA 2016: Proceedings of the 1st International Workshop on App Market Analytics, ACM, 2016. [pdf] [doi]
[30]
Checking App User Interfaces Against App Descriptions (Konstantin Kuznetsov, Vitalii Avdiienko, Alessandra Gorla, Andreas Zeller), In WAMA 2016: Proceedings of the 1st International Workshop on App Market Analytics, ACM, 2016. [pdf] [doi]
[29]
Automatic Generation of Oracles for Exceptional Behaviors (Alberto Goffi, Alessandra Gorla, Michael D. Ernst, Mauro Pezzè), In ISSTA 2016: Proceedings of the 2016 International Symposium on Software Testing and Analysis, 2016. [pdf] [doi]
2015
[28]
Automated Test Input Generation for Android: Are We There Yet? (Shauvik Roy Choudhary, Alessandra Gorla, Alessandro Orso), In ASE 2015: Proceedings of the 30th Annual International Conference on Automated Software Engineering, IEEE Computer Society, 2015. [pdf] [doi]
[27]
Synthesis of Equivalent Method Calls in Guava (Andrea Mattavelli, Alberto Goffi, Alessandra Gorla), In SSBSE 2015: Proceedings of the 7th International Symposium on Search-Based Software Engineering, Springer, 2015. [pdf]
[26]
Mining Apps for Abnormal Usage of Sensitive Data (Vitalii Avdiienko, Konstantin Kuznetsov, Alessandra Gorla, Andreas Zeller, Steven Arzt, Siegfried Rasthofer, Eric Bodden), In ICSE 2015: Proceedings of the 37th International Conference on Software Engineering, IEEE Press, 2015. [pdf]
[25]
Intrinsic Software Redundancy for Self-healing Software Systems and Automated Oracle Generation (Antonio Carzaniga, Alberto Goffi, Alessandra Gorla, Andrea Mattavelli, Nicolò Perino, Mauro Pezzè, Paolo Tonella), In Software Engineering & Management 2015, GI, 2015. [pdf]
[24]
Mining Android Apps for Anomalies (Konstantin Kuznetsov, Alessandra Gorla, Ilaria Tavecchia, Florian Gross, Andreas Zeller), Chapter in The Art and Science of Analyzing Software Data, Morgan Kaufmann, 2015. [pdf]
[23]
Automatic Workarounds: Exploiting the Intrinsic Redundancy of Web Applications (Antonio Carzaniga, Alessandra Gorla, Nicolò Perino, Mauro Pezzè), In ACM Transactions on Software Engineering and Methodology, volume 24, 2015. [pdf] [doi]
2014
[22]
Search-Based Synthesis of Equivalent Method Sequences (Alberto Goffi, Alessandra Gorla, Andrea Mattavelli, Mauro Pezzè, Paolo Tonella), In FSE 2014: Proceedings of the ACM SIGSOFT 22nd Symposium on the Foundations of Software Engineering, 2014. [pdf] [doi]
[21]
Checking App Behavior Against App Descriptions (Alessandra Gorla, Ilaria Tavecchia, Florian Gross, Andreas Zeller), In ICSE 2014: Proceedings of the 36th International Conference on Software Engineering, 2014. [pdf] [doi]
[20]
Cross-checking Oracles from Intrinsic Software Redundancy (Antonio Carzaniga, Alberto Goffi, Alessandra Gorla, Andrea Mattavelli, Mauro Pezzè), In ICSE 2014: Proceedings of the 36th International Conference on Software Engineering, 2014. [pdf] [doi]
[19]
Search-based Security Testing of Web Applications (Julian Thomé, Alessandra Gorla, Andreas Zeller), In SBST 2014: Proceedings of the 7th International Workshop on Search-Based Software Testing, 2014. (BEST PAPER AWARD!) [pdf] [doi]
2013
[18]
Search-based data-flow test generation (Mattia Vivanti, Andre Mis, Alessandra Gorla, Gordon Fraser), In ISSRE 2013: 24th International Symposium on Software Reliability Engineering, 2013. [pdf] [doi]
[17]
Automatic Recovery from Runtime Failures (Antonio Carzaniga, Alessandra Gorla, Andrea Mattavelli, Nicolò Perino, Mauro Pezzè), In ICSE 2013: Proceedings of the 35th International Conference on Software Engineering, 2013. [pdf]
[16]
Software Engineering for Self-Adaptive Systems: A Second Research Roadmap (Rogério de Lemos, Holger Giese, Hausi A. Müller, Mary Shaw, Jesper Andersson, Luciano Baresi, Basil Becker, Nelly Bencomo, Yuriy Brun, Bojan Cukic, Ron Desmarais, Schahram Dustdar, Gregor Engels, Kurt Geihs, Karl M. Goeschka, Alessandra Gorla, Vincenzo Grassi, Paola Inverardi, Gabor Karsai, Jeff Kramer, Marin Litoiu, Antonia Lopes, Jeff Magee, Sam Malek, Serge Mankovskii, Raffaela Mirandola, John Mylopoulos, Oscar Nierstrasz, Mauro Pezzè, Christian Prehofer, Wilhelm Schäfer, Rick Schlichting, Bradley Schmerl, Dennis B. Smith, Joao P. Sousa, Gabriel Tamura, Ladan Tahvildari, Norha M. Villegas, Thomas Vogel, Danny Weyns, Kenny Wong, Jochen Wuttke), Chapter in Software Engineering for Self-Adaptive Systems II, Springer-Verlag, volume 7475, 2013. [pdf] [doi]
[15]
Software Engineering Processes for Self-adaptive Systems (Jesper Andersson, Luciano Baresi, Nelly Bencomo, Rogério de Lemos, Alessandra Gorla, Paola Inverardi, Thomas Vogel), Chapter in Software Engineering for Self-Adaptive Systems II, Springer-Verlag, volume 7475, 2013. [pdf] [doi]
2012
[14]
Traffic Routing for Evaluating Self-Adaptation (Jochen Wuttke, Yuriy Brun, Alessandra Gorla, Jonathan Ramaswamy), In SEAMS 2012: Proceedings of the 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, ACM, 2012. [pdf] [doi]
[13]
A self-healing technique for Java applications (Antonio Carzaniga, Alessandra Gorla, Andrea Mattavelli, Nicolò Perino), In ICSE 2017: Proceedings of the 34th International Conference on Software Engineering Companion, IEEE, 2012. [pdf] [doi]
2011
[12]
Automatic Workarounds: Exploiting the Intrinsic Redundancy of Software Systems (Alessandra Gorla), PhD thesis, Università della Svizzera italiana (USI), 2011. (FRITZ-KUTTER AWARD!) [pdf]
2010
[11]
Automatic Workarounds for Web Applications (Antonio Carzaniga, Alessandra Gorla, Nicolò Perino, Mauro Pezzè), In FSE 2010: Proceedings of the ACM SIGSOFT 18th Symposium on the Foundations of Software Engineering, 2010. [pdf]
[10]
RAW: runtime automatic workarounds (Antonio Carzaniga, Alessandra Gorla, Nicolò Perino, Mauro Pezzè), In ICSE 2010: Proceedings of the 32nd International Conference on Software Engineering Companion, 2010. [pdf] [doi]
[9]
Achieving Cost-Effective Software Reliability Through Self-Healing (Alessandra Gorla, Leonardo Mariani, Fabrizio Pastore, Mauro Pezzè, Jochen Wuttke), In Computing and Informatics, volume 29, 2010. [pdf]
2009
[8]
Handling Software Faults with Redundancy (Antonio Carzaniga, Alessandra Gorla, Mauro Pezzè), Chapter in Architecting Dependable Systems VI (R. de Lemos, J.-C. Fabre, C. Gacek, F. Gadducci, M. H. ter Beek, eds.), Springer, 2009. [pdf] [doi]
[7]
DaTeC: Dataflow Testing of Java Classes (Giovanni Denaro, Alessandra Gorla, Mauro Pezzè), In ICSE 2009: Proceedings of the 31st International Conference on Software Engineering Companion, ACM, 2009. [pdf] [doi]
2008
[6]
Healing Web applications through automatic workarounds (Antonio Carzaniga, Alessandra Gorla, Mauro Pezzè), In Software Tools for Technology Transfer, volume 10, 2008. [pdf] [doi]
[5]
Automatic Workarounds as Failure Recoveries (Alessandra Gorla), In FSEDS 2008: Proceedings of the ACM SIGSOFT 16th Symposium on the Foundations of Software Engineering Doctoral Symposium, ACM, 2008. (BEST STUDENT POSTER AWARD!) [pdf] [doi]
[4]
Self-Healing by Means of Automatic Workarounds (Antonio Carzaniga, Alessandra Gorla, Mauro Pezzè), In SEAMS 2008: Proceedings of the 2008 International Workshop on Software Engineering for Adaptive and Self-Managing Systems, ACM, 2008. [pdf] [doi]
[3]
Contextual Integration Testing of Classes (Giovanni Denaro, Alessandra Gorla, Mauro Pezzè), In FASE 2008: Fundamental Approaches to Software Engineering, 2008. [pdf]
2007
[2]
Towards Design for Self-Healing (Alessandra Gorla), In SOQUA 2007: Proceedings of the 4th International Workshop on Software Quality Assurance, ACM, 2007. [pdf] [doi]
[1]
An Empirical Evaluation of Data Flow Testing of Java Classes (Giovanni Denaro, Alessandra Gorla, Mauro Pezzè), Technical report, Università della Svizzera italiana (USI), 2007. [pdf]
Back to Top

Service

Organizing Committees

  • Tool Demonstrations co-chair, 24th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE 2016).
  • Artifact Evaluation co-chair, International Symposium on Engineering Secure Software and Systems (ESSoS 2016).
  • Artifact Evaluation co-chair, International Symposium on Software Testing and Analysis (ISSTA 2016).
  • Tool Demonstrations co-chair, IEEE and ACM International Conference on Automated Software Engineering (ASE 2015).
  • GI-Dagstuhl Seminar 14433 on Software Engineering for Self-Adaptive Systems, October 2014.

Program Committees

  • Program Committees Member, 23rd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2016)
  • Expert Review Panel Member , IEEE and ACM International Conference on Automated Software Engineering (ASE 2015).
  • Artifact Evaluation Committee Member, 10th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE 2015).
  • Program Committee Member, ACM International Symposium on Software Testing and Analysis (ISSTA 2015).
  • Program Committee Member, IEEE and ACM-SIGSOFT International Conference on Software Engineering (ICSE SEIP track 2015).
  • Program Committee Member, 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2015) co-located with the IEEE and ACM-SIGSOFT International Conference on Software Engineering (ICSE 2015)
  • Program Committee Member, Italian Student Contest on Software Engineering (SCORE-it 2015) co-located with the IEEE and ACM-SIGSOFT International Conference on Software Engineering (ICSE 2015).
  • Artifact Evaluation Committee Member, ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE 2014).
  • Artifact Evaluation Committee Member, ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2014).
  • Program Committee Member, IEEE and ACM-SIGSOFT International Conference on Software Engineering (ICSE Posters track 2014).
  • Artifact Evaluation Committee Member, ACM SIGPLAN Conference on Systems, Programming, Languages and Applications (OOPSLA 2013).
  • Expert Review Panel Member, IEEE and ACM International Conference on Automated Software Engineering (ASE 2013).
  • Program Committee Member, Student Contest on Software Engineering (SCORE 2013) co-located with the IEEE and ACM-SIGSOFT International Conference on Software Engineering (ICSE 2013).
Back to Top

Teaching

Lecturer

  • Challenges and Opportunities in Mobile Testing, 11th International Summer School on Training And Research On Testing, Cadiz, Spain, 29th June - 2nd July 2015
  • Static and Dynamic Analysis Techniques for Mobile Security, ECI Winter School, University of Buenos Aires, Argentina, 28th July - 2nd August 2014
  • Software Engineering (guest lectures in Prof. Andreas Zeller’s course), Saarland University, Winter 2013/2014.
  • Mobile Testing and Analysis (seminar course, with Prof. Andreas Zeller), Saarland University, Summer 2013. Ranked as the best seminar course of the semester.
  • Automated Testing and Verification (advanced course, with Dr. Juan Pablo Galeotti), Saarland Uni- versity, Winter 2012/2013.
  • Self-healing Systems (seminar course, with Prof. Andreas Zeller), Saarland University, Summer 2012.
  • iPhone Programming (special course to undergraduates), University of Lugano, Summer 2009.

Teaching Assistant

  • Software Quality + LAB (Master course), University of Lugano, Spring 2010. Instructor: Prof. Mauro Pezzè, Prof. Carlo Ghezzi.
  • Software Quality + LAB (Master course), University of Lugano, Spring 2009. Instructor: Prof. Mauro Pezzè.
  • Software Atelier I (Bachelor course), University of Lugano, Fall 2008. Instructor: Prof. Mauro Pezzè.
  • Software Quality + LAB (Master course), University of Lugano, Spring 2008. Instructors: Prof. Mauro Pezzè, Prof. Michal Young.
  • Software Design (Bachelor course), University of Lugano, Spring 2007. Instructor: Prof. Walter Binder.
  • Software Atelier II (Bachelor course), University of Lugano, Spring 2007. Instructor: Prof. Alex Repenning.
  • Technology Lab III: Testing (Bachelor course), University of Lugano, Fall 2006. Instructor: Prof. Mauro Pezzè.
Back to Top