Package edu.university.ecs.lab.detection.antipatterns


package edu.university.ecs.lab.detection.antipatterns
Provides classes and services for detecting various anti-patterns in microservices architecture. Includes detection of cyclic dependencies, greedy microservices, hub-like microservices, wrong cuts, service chains, wobbly service interactions, and absence of API gateway and health checks.

Classes: - AntipatternDetection: Main class for running anti-pattern detection routines using configuration and services.

Models Package: - CyclicDependency: Represents cyclic dependencies detected within a microservice network graph. - GreedyMicroservice: Represents microservices identified as greedy based on REST call thresholds. - HubLikeMicroservice: Represents microservices identified as hub-like based on REST call thresholds. - NoApiGateway: Represents the absence of an API Gateway, indicating potential issues with centralized routing and access control. - NoHealthcheck: Represents the absence of health check mechanisms, which are crucial for monitoring and maintaining the health of microservices. - ServiceChain: Represents a chain of services within a microservice network graph, potentially introducing latency and complexity. - WrongCuts: Represents clusters of services that are incorrectly segmented, leading to inefficiencies and increased coupling within the microservice network. - WobblyServiceInteraction: Represents service interactions characterized by unstable or inconsistent communication patterns within microservice classes and methods.

Services Package: - CyclicDependencyMethodLevelService: Service for detecting cyclic dependencies within a method network graph. - CyclicDependencyMSLevelService: Service for detecting cyclic dependencies within a microservice network graph. - GreedyService: Service for identifying and managing microservices identified as greedy based on REST call thresholds. - HubLikeService: Service for identifying and managing microservices identified as hub-like based on REST call thresholds. - ServiceChainMethodLevelService: Service for detecting and managing service chains within a method network graph. - ServiceChainMSLevelService: Service for detecting and managing service chains within a microservice network graph. - WrongCutsService: Service for identifying and reporting clusters of services that are incorrectly interconnected within a microservice network graph. - WobblyServiceInteractionService: Service for detecting wobbly service interactions within a microservice system based on specific annotations. - NoApiGatewayService: Service for checking the presence of an API gateway configuration in a YAML file. - NoHealthcheckService: Service for checking the presence of health check configurations in a YAML file.