Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Utkarsh Desai

dblp:258/0786 · DBLP profile ↗
← Back
3ranked-venue papers
1as first author
3since 2021 · last 2022
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Artificial intelligence and machine learning · 2 · 1 first-author · 2 since 2021Graphics, computer vision, multimedia, augmented reality and games · 2 · 1 first-author · 2 since 2021Software engineering, systems software and programming languages · 1 · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Services computing and microservices · 41% Software maintenance and evolution · 41% Requirements engineering and software design · 19%

Topics — the 5 heaviest of 5, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Services computing and microservices
microservice architecture
0.612022
Monolith to Microservices: Representing Application Software through Heterogeneous Graph Neural Network · IJCAI 2022
Software maintenance and evolution › software reengineering › software modernization
software migration
0.612022
Monolith to Microservices: Representing Application Software through Heterogeneous Graph Neural Network · IJCAI 2022
Services computing and microservices › microservice architecture
microservice decomposition
0.512021
Graph Neural Network to Dilute Outliers for Refactoring Monolith Application · AAAI 2021
Requirements engineering and software design
software architecture
0.512021
Graph Neural Network to Dilute Outliers for Refactoring Monolith Application · AAAI 2021
Software maintenance and evolution › software modularization
software clustering
0.512021
Graph Neural Network to Dilute Outliers for Refactoring Monolith Application · AAAI 2021

Methods — techniques the papers use, named apart from their topics

representation learning · 0.6heterogeneous graph neural network · 0.6constraint-based clustering · 0.6graph representation learning · 0.5graph neural network · 0.5
YearPublicationVenuePosition
2022 Monolith to Microservices: Representing Application Software through Heterogeneous Graph Neural Network
abstract
Monolithic software encapsulates all functional capabilities into a single deployable unit. But managing it becomes harder as the demand for new functionalities grow. Microservice architecture is seen as an alternative as it advocates building an application through a set of loosely coupled small services wherein each service owns a single functional responsibility. But the challenges associated with the separation of functional modules, slows down the migration of a monolithic code into microservices. In this work, we propose a representation learning based solution to tackle this problem. We use a heterogeneous graph to jointly represent software artifacts (like programs and resources) and the different relationships they share (function calls, inheritance, etc.), and perform a constraint-based clustering through a novel heterogeneous graph neural network. Experimental studies show that our approach is effective on monoliths of different types.
Alex Mathai, Sambaran Bandyopadhyay, Utkarsh Desai, Srikanth Tamilselvam
IJCAI3
2021 Graph Neural Network to Dilute Outliers for Refactoring Monolith Application
abstract
Microservices are becoming the defacto design choice for software architecture. It involves partitioning the software components into finer modules such that the development can happen independently. It also provides natural benefits when deployed on the cloud since resources can be allocated dynamically to necessary components based on demand. Therefore, enterprises as part of their journey to cloud, are increasingly looking to refactor their monolith application into one or more candidate microservices; wherein each service contains a group of software entities (e.g., classes) that are responsible for a common functionality. Graphs are a natural choice to represent a software system. Each software entity can be represented as nodes and its dependencies with other entities as links. Therefore, this problem of refactoring can be viewed as a graph based clustering task. In this work, we propose a novel method to adapt the recent advancements in graph neural networks in the context of code to better understand the software and apply them in the clustering task. In that process, we also identify the outliers in the graph which can be directly mapped to top refactor candidates in the software. Our solution is able to improve state-of-the-art performance compared to works from both software engineering and existing graph representation based techniques.
Utkarsh Desai, Sambaran Bandyopadhyay, Srikanth Tamilselvam
AAAI1
2021 Monolith to Microservice Candidates using Business Functionality Inference
abstract
In this paper, we propose a novel approach for monolith decomposition, that maps the implementation structure of a monolith application to a functional structure that in turn can be mapped to business functionality. First, we infer the classes in the monolith application that are distinctively representative of the business functionality in the application domain. This is done using formal concept analysis on statically determined code flow structures in a completely automated manner. Then, we apply a clustering technique, guided by the inferred representatives, on the classes belonging to the monolith to group them into different types of partitions, mainly: 1) functional groups representing microservice candidates, 2) a utility class group, and 3) a group of classes that require significant refactoring to enable a clean microservice architecture. This results in microservice candidates that are naturally aligned with the different business functions exposed by the application. A detailed evaluation on four publicly available applications show that our approach is able to determine better quality microservice candidates when compared to other existing state of the art techniques. We also conclusively show that clustering quality metrics like modularity are not reliable indicators of microservice candidate goodness.
Shivali Agarwal, Raunak Sinha, Giriprasad Sridhara, Pratap Das, Utkarsh Desai, Srikanth Tamilselvam, Amith Singhee, Hiroaki Nakamuro
ICWS5