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 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.
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.
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.
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.
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.
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.