Frappé5 ProgQuery6 Software artifacts Java code PLC programs Java code, build, config files, MAVEN POM files, XML C/C++ code Java code Software size 500,000 LOC 742,000 LOC 44 MLOC 11.4 MLOC 55,700 LOC Factbase schema (element types) 46 entity 91 relationship 24 entity 15 relationship 83 entity 88 relationship 21 entity 30 relationship 76 entity 147 relationship Analyses • Program comprehension • Source-code queries • Design compliance • Dependency analyses • Metrics • Locate declarations • Method’s call graph • Dependency analyses • Program comprehension • Source-code queries • Bad smells • Coding practices • Security vulnerabilities 1 Urma, R-G, Mycroft, A. “Source-code queries with graph databases—with application to programming language usage and evolution,” Science of Computer Programming, 2015. 2 Ramler, R. et al. ”Benefits and Drawbacks of Representing and Analyzing Source Code and Software Engineering Artifacts with Graph Databases”, SWQD, 2019. 3 Prähofer, H. et al., "Static Code Analysis of IEC 61131-3 Programs: Comprehensive Tool Support and Experiences from Large-Scale Industrial Application," IEEE Trans. Ind. Informatics, 2017. 4 Buchgeher, G., “A Platform for the Automated Provisioning of Architecture Information for Large-Scale Service-Oriented Software Systems.” ECSA, 2018. 5 Hawes, N., Barham, B., Cifuentes, C. “Frappé: Querying the Linux kernel dependency graph” GRADES, 2015. 6O. Rodriguez-Prieto, et al. "An Efficient and Scalable Platform for Java Source Code Analysis Using Overlaid Graph Representations," in IEEE Access, 2020. Rudolf Ramler, Software Competence Center Hagenberg Rainer Weinreich, Johannes Kepler University Heinz Huber, Raiffeisen Software GmbH Software artifacts: heterogeneous languages, variability (SPL) Software size:1.5 MLOC (goal of 100 MLOC) Analyses: interaction analyses