Digging into UML models to remove performance antipatterns