In the following you can find the main software (open-source) projects implemented and maintained by us. Refer to our GitHub profile for a complete overview of all our projects/tools.
ORIS
ORIS is a tool for quantitative modeling of non-Markovian systems as Stochastic Time Petri Nets (STPNs) and for their quantitative evaluation through the method of stochastic state classes.
Website: https://www.oris-tool.org
CLAIM
CLAIM is a lightweight static source code analysis approach that analyzes configuration files to identify microservices in Dockerized environments. CLAIM is specifically designed with scalability in mind, analyzing a software product comprising 417k SLOC in 266 milliseconds.
GitHub: https://github.com/STLab-UniFI/CLAIM_rep-pkg
Publication: PDF
ATDx
ATDx is an approach designed to provide a data-driven, intuitive, and actionable overview of the Architectural Technical Debt present in a portfolio of software projects. ATDx is based on third-party source code analysis tools, architectural issue severity calculation via clustering, and aggregation of measurements into different architectural technical debt dimensions. The ATDx tool allows users to automatically run the ATDx analysis, generate reports containing the ATDx analysis results, and is integrated with GitHub.
GitHub: https://github.com/S2-group/ATDx
SIRIO
SIRIO is a Java library implementing the modeling and evaluation features of ORIS, in particular the symbolic calculus of stochastic state classes and the analysis methods for STPNs.
Website: https://www.oris-tool.org
EULERO
EULERO is a Java library implementing a compositional approach to safe approximation of the end-to-end response time Probability Density Function (PDF) of complex workflows, made of activities with general (i.e., non-Exponential) duration possibly with bounded support, composed through sequence, choice/merge, and split/join blocks, with unbalanced split and join constructs that may break the structure of well-formed nesting.
Website: https://github.com/oris-tool/eulero
PYRAMIS
PYRAMIS is a Java library implementing a compositional approach for quantitative modeling and analysis of non-Markovian systems specified as an extension of UML statecharts.
Website: https://github.com/oris-tool/pyramis
Android Architectural Guidelines
To efficiently develop and mantain Android apps, a paramount factor is how well apps are architected. Based on a mixed-method empirical study, we derived 42 guidelines for architecting Android apps. The guidelines cover SOLID principles, design patterns, dependency injection tools like Dagger, and many more. The guidelines are organized around 4 themes: MVVM, MVP, Clean, and Generic guidelines.