Distributed Systems
Modeling and optimization of distributed systems quality attributes. Monitoring, analysis and auto-scaling of Microservice and P2P systems. Performance simulations under dynamic topologies and workloads.
ML/AI
Predictive models in revenue management on transactional and time-series data. Developing white-box model appoximations for deeper human intuition.
ElaClo: A Framework for Optimizing Software Application Topology in the Cloud Environment
Software architecture
Cloud computing
Evolutionary optimization
Application architectures in the cloud employ elastic components, and achieve lower operating costs without sacrificing quality. Software architects strive to provide efficient services by deciding on software topology: a set of structural architectural decisions. For a given application, there can be numerous software topology alternatives creating the need for automated optimization methods. Current optimization approaches rely on experts providing application performance models built upfront, based on their experience and the requirements provided. While such techniques are effective and valuable, they require additional maintenance effort as the software evolves.
Dynamic topology
Exploration of different service topologies through elastic service group that auto-scale.
Topology customization
Usage of heterogeneous cloud resources.
Optimization and analysis
Explore different pareto-optimal solutions. Tune SLA parameters accordingly.