diff --git a/modules/workflow_access/src/Form/WorkflowAccessRoleForm.php b/modules/workflow_access/src/Form/WorkflowAccessRoleForm.php
index 103685d..4926483 100644
--- a/modules/workflow_access/src/Form/WorkflowAccessRoleForm.php
+++ b/modules/workflow_access/src/Form/WorkflowAccessRoleForm.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\workflow_access\Form;
 
+use Drupal\Component\Utility\DeprecationHelper;
+use Drupal\node\NodeAccessRebuild;
 use Drupal\Core\Entity\EntityInterface;
 use Drupal\Core\Form\FormStateInterface;
 use Drupal\Core\Session\AccountInterface;
@@ -135,7 +137,7 @@ class WorkflowAccessRoleForm extends WorkflowConfigTransitionFormBase {
       $access_state->insertAccess($data);
 
       // Update all nodes to reflect new settings.
-      node_access_needs_rebuild(TRUE);
+      DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.4.0', fn() => \Drupal::service(NodeAccessRebuild::class)->setNeedsRebuild(TRUE), fn() => node_access_needs_rebuild(TRUE));
     }
 
     parent::submitForm($form, $form_state);
diff --git a/modules/workflow_access/src/Form/WorkflowAccessSettingsForm.php b/modules/workflow_access/src/Form/WorkflowAccessSettingsForm.php
index d5d4ced..ea866f8 100644
--- a/modules/workflow_access/src/Form/WorkflowAccessSettingsForm.php
+++ b/modules/workflow_access/src/Form/WorkflowAccessSettingsForm.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\workflow_access\Form;
 
+use Drupal\Component\Utility\DeprecationHelper;
+use Drupal\node\NodeAccessRebuild;
 use Drupal\Core\Form\ConfigFormBase;
 use Drupal\Core\Form\FormStateInterface;
 
@@ -61,7 +63,7 @@ class WorkflowAccessSettingsForm extends ConfigFormBase {
     $this->setSetting('workflow_access_priority', $weight);
 
     // Module's weight has changed.
-    node_access_needs_rebuild(TRUE);
+    DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.4.0', fn() => \Drupal::service(NodeAccessRebuild::class)->setNeedsRebuild(TRUE), fn() => node_access_needs_rebuild(TRUE));
 
     parent::submitForm($form, $form_state);
   }
diff --git a/modules/workflow_access/src/Hook/WorkflowAccessHooks.php b/modules/workflow_access/src/Hook/WorkflowAccessHooks.php
index 0c8bc5d..914e245 100644
--- a/modules/workflow_access/src/Hook/WorkflowAccessHooks.php
+++ b/modules/workflow_access/src/Hook/WorkflowAccessHooks.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\workflow_access\Hook;
 
+use Drupal\Component\Utility\DeprecationHelper;
+use Drupal\node\NodeAccessRebuild;
 use Drupal\Core\Entity\EntityInterface;
 use Drupal\Core\Hook\Attribute\Hook;
 use Drupal\Core\Routing\RouteMatchInterface;
@@ -194,7 +196,7 @@ class WorkflowAccessHooks {
     // Attend user to Rebuild data, because the weight of a role
     // is the key for workflow_Access.
     /** @var \Drupal\user\RoleInterface $entity */
-    node_access_needs_rebuild(TRUE);
+    DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.4.0', fn() => \Drupal::service(NodeAccessRebuild::class)->setNeedsRebuild(TRUE), fn() => node_access_needs_rebuild(TRUE));
   }
 
   /**
@@ -212,7 +214,7 @@ class WorkflowAccessHooks {
     }
     if ($entity->getWeight() != $original_entity->getWeight()) {
       // Role's weight has changed.
-      node_access_needs_rebuild(TRUE);
+      DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.4.0', fn() => \Drupal::service(NodeAccessRebuild::class)->setNeedsRebuild(TRUE), fn() => node_access_needs_rebuild(TRUE));
     }
   }
 
diff --git a/modules/workflow_access/workflow_access.install b/modules/workflow_access/workflow_access.install
index 19f8aed..4b97270 100644
--- a/modules/workflow_access/workflow_access.install
+++ b/modules/workflow_access/workflow_access.install
@@ -5,13 +5,15 @@
  * Workflow access installation.
  */
 
+use Drupal\Component\Utility\DeprecationHelper;
+use Drupal\node\NodeAccessRebuild;
 use Drupal\Core\Database\Database;
 
 /**
  * Force rebuild of node access.
  */
 function workflow_access_uninstall() {
-  node_access_needs_rebuild(TRUE);
+  DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.4.0', fn() => \Drupal::service(NodeAccessRebuild::class)->setNeedsRebuild(TRUE), fn() => node_access_needs_rebuild(TRUE));
 }
 
 /**
@@ -22,5 +24,5 @@ function workflow_access_update_8002(&$sandbox) {
   $schema = Database::getConnection()->schema();
   $schema->dropTable('workflow_access');
   // Force rebuild of node access.
-  node_access_needs_rebuild(TRUE);
+  DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.4.0', fn() => \Drupal::service(NodeAccessRebuild::class)->setNeedsRebuild(TRUE), fn() => node_access_needs_rebuild(TRUE));
 }
diff --git a/src/Entity/WorkflowManager.php b/src/Entity/WorkflowManager.php
index d3b25b3..c3f1436 100644
--- a/src/Entity/WorkflowManager.php
+++ b/src/Entity/WorkflowManager.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\workflow\Entity;
 
+use Drupal\Component\Utility\DeprecationHelper;
 use Drupal\comment\CommentInterface;
 use Drupal\Core\Config\ConfigFactoryInterface;
 use Drupal\Core\Entity\EntityFieldManagerInterface;
@@ -219,7 +220,7 @@ class WorkflowManager implements WorkflowManagerInterface {
     // @todo Remove when D12 is min. version. getOriginal() introduced in D11.2.
     return method_exists($entity, 'getOriginal')
       ? $entity->getOriginal()
-      : $entity->original ?? NULL;
+      : DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => $entity->getOriginal(), fn() => $entity->original) ?? NULL;
   }
 
   /**
diff --git a/src/Hook/WorkflowMigrateHooks.php b/src/Hook/WorkflowMigrateHooks.php
index 2438904..a0b2470 100644
--- a/src/Hook/WorkflowMigrateHooks.php
+++ b/src/Hook/WorkflowMigrateHooks.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\workflow\Hook;
 
+use Drupal\migrate\Plugin\MigrationPluginManagerInterface;
 use Drupal\Core\Hook\Attribute\Hook;
 use Drupal\migrate\Plugin\MigrateSourceInterface;
 use Drupal\migrate\Plugin\MigrationInterface;
@@ -27,7 +28,7 @@ class WorkflowMigrateHooks {
   /**
    * Constructor.
    */
-  public function __construct(?\Drupal\migrate\Plugin\MigrationPluginManagerInterface $migration_plugin_manager = NULL) {
+  public function __construct(?MigrationPluginManagerInterface $migration_plugin_manager = NULL) {
     $this->migrationPluginManager = $migration_plugin_manager;
   }
 
diff --git a/src/Hook/WorkflowViewsHooks.php b/src/Hook/WorkflowViewsHooks.php
index 2072fc9..eb4054e 100644
--- a/src/Hook/WorkflowViewsHooks.php
+++ b/src/Hook/WorkflowViewsHooks.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\workflow\Hook;
 
+use Drupal\Component\Utility\DeprecationHelper;
 use Drupal\Core\Entity\ContentEntityInterface;
 use Drupal\Core\Entity\EntityTypeManagerInterface;
 use Drupal\Core\Hook\Attribute\Hook;
@@ -15,7 +16,6 @@ use Drupal\workflow\Entity\WorkflowManager;
  *
  * @see https://drupalize.me/blog/drupal-111-adds-hooks-classes-history-how-and-tutorials-weve-updated
  */
-
 class WorkflowViewsHooks {
 
   /**
@@ -30,7 +30,7 @@ class WorkflowViewsHooks {
    *
    * @var object|null
    */
-  protected $viewsFieldDataProvider = null;
+  protected $viewsFieldDataProvider = NULL;
 
   /**
    * Constructor.
@@ -51,7 +51,7 @@ class WorkflowViewsHooks {
       && method_exists($this->viewsFieldDataProvider, 'defaultFieldImplementation'))
       ? $this->viewsFieldDataProvider->defaultFieldImplementation($field_storage)
       // @phpstan-ignore-next-line
-      : views_field_default_views_data($field_storage);
+      : DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => \Drupal::service('views.field_data_provider')->defaultFieldImplementation($field_storage), fn() => views_field_default_views_data($field_storage));
     $settings = $field_storage->getSettings();
 
     foreach ($data as $table_name => $table_data) {
diff --git a/src/Plugin/Validation/Constraint/WorkflowFieldConstraintValidator.php b/src/Plugin/Validation/Constraint/WorkflowFieldConstraintValidator.php
index 763db0d..a4293a2 100644
--- a/src/Plugin/Validation/Constraint/WorkflowFieldConstraintValidator.php
+++ b/src/Plugin/Validation/Constraint/WorkflowFieldConstraintValidator.php
@@ -44,7 +44,7 @@ class WorkflowFieldConstraintValidator extends ConstraintValidator implements Co
   /**
    * {@inheritdoc}
    */
-  public function validate($entity, Constraint $constraint): void {
+  public function validate(mixed $entity, Constraint $constraint): void {
     // CommentWithWorkflow has special requirements.
     /** @var \Drupal\field\Entity\FieldStorageConfig $field_storage */
     $field_storage = $entity->getFieldDefinition()->getFieldStorageDefinition();
diff --git a/tests/src/Functional/WorkflowNodeScheduledTransitionFunctionalTest.php b/tests/src/Functional/WorkflowNodeScheduledTransitionFunctionalTest.php
index cba0e4a..1cbdcc6 100644
--- a/tests/src/Functional/WorkflowNodeScheduledTransitionFunctionalTest.php
+++ b/tests/src/Functional/WorkflowNodeScheduledTransitionFunctionalTest.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\Tests\workflow\Functional;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\node\Entity\Node;
 use Drupal\Tests\BrowserTestBase;
 use Drupal\workflow\Entity\WorkflowScheduledTransition;
@@ -14,6 +16,8 @@ use Drupal\Tests\workflow\Traits\WorkflowTestTrait;
  *
  * @group workflow
  */
+#[Group('workflow')]
+#[RunTestsInSeparateProcesses]
 class WorkflowNodeScheduledTransitionFunctionalTest extends BrowserTestBase {
 
   use WorkflowTestTrait;
@@ -104,10 +108,10 @@ class WorkflowNodeScheduledTransitionFunctionalTest extends BrowserTestBase {
     $edit = [
       "title[0][value]" => $title,
      // $field_name . '[to_sid][0][value]' => $state1,
-//      "{$field_name}[0][to_sid][0][value]" => $state1,
+    //      "{$field_name}[0][to_sid][0][value]" => $state1,
       "{$field_name}[0][to_sid][value]" => $state1,
-      // default value $field_name . '[0][target_id]' => $state1,
-   // default value $field_name . '[0][target_id]' => $state1,
+      // Default value $field_name . '[0][target_id]' => $state1,
+    // default value $field_name . '[0][target_id]' => $state1,.
       // @todo Add other value state2.
     ];
     $this->submitForm($edit, 'Save');
diff --git a/tests/src/Functional/WorkflowTypeFunctionalTest.php b/tests/src/Functional/WorkflowTypeFunctionalTest.php
index 6a32f71..e43882b 100644
--- a/tests/src/Functional/WorkflowTypeFunctionalTest.php
+++ b/tests/src/Functional/WorkflowTypeFunctionalTest.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\Tests\workflow\Functional;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Tests\BrowserTestBase;
 use Drupal\Tests\workflow\Traits\WorkflowTestTrait;
 use Drupal\workflow\Entity\Workflow;
@@ -11,6 +13,8 @@ use Drupal\workflow\Entity\Workflow;
  *
  * @group workflow
  */
+#[Group('workflow')]
+#[RunTestsInSeparateProcesses]
 class WorkflowTypeFunctionalTest extends BrowserTestBase {
 
   use WorkflowTestTrait;
diff --git a/tests/src/Kernel/WorkflowNodeScheduledTransitionKernelTest.php b/tests/src/Kernel/WorkflowNodeScheduledTransitionKernelTest.php
index bd10071..dddd9d3 100644
--- a/tests/src/Kernel/WorkflowNodeScheduledTransitionKernelTest.php
+++ b/tests/src/Kernel/WorkflowNodeScheduledTransitionKernelTest.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\Tests\workflow\Kernel;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\KernelTests\Core\Entity\EntityKernelTestBase;
 use Drupal\node\Entity\Node;
 use Drupal\user\Entity\User;
@@ -15,6 +17,8 @@ use Drupal\Tests\workflow\Traits\WorkflowTestTrait;
  *
  * @group workflow
  */
+#[Group('workflow')]
+#[RunTestsInSeparateProcesses]
 class WorkflowNodeScheduledTransitionKernelTest extends EntityKernelTestBase {
 
   use WorkflowTestTrait;
diff --git a/tests/src/Kernel/WorkflowNodeTransitionKernelTest.php b/tests/src/Kernel/WorkflowNodeTransitionKernelTest.php
index 85eb84c..92bcaa9 100644
--- a/tests/src/Kernel/WorkflowNodeTransitionKernelTest.php
+++ b/tests/src/Kernel/WorkflowNodeTransitionKernelTest.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\Tests\workflow\Kernel;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\KernelTests\Core\Entity\EntityKernelTestBase;
 use Drupal\node\Entity\Node;
 use Drupal\user\Entity\User;
@@ -14,6 +16,8 @@ use Drupal\Tests\workflow\Traits\WorkflowTestTrait;
  *
  * @group workflow
  */
+#[Group('workflow')]
+#[RunTestsInSeparateProcesses]
 class WorkflowNodeTransitionKernelTest extends EntityKernelTestBase {
 
   use WorkflowTestTrait;
@@ -140,7 +144,7 @@ class WorkflowNodeTransitionKernelTest extends EntityKernelTestBase {
       'from_sid' => $node->{$field_name}->getCurrentStateId(),
       'entity' => $node,
       'field_name' => $field_name,
-      //'wid' => $this->getWorkflowId(),
+      // 'wid' => $this->getWorkflowId(),
       'to_sid' => WorkflowManager::getNextStateId($node, $field_name),
     ]);
     $sid = $node->{$field_name}->setValue($transition);
diff --git a/tests/src/Kernel/WorkflowTypeKernelTest.php b/tests/src/Kernel/WorkflowTypeKernelTest.php
index 6c82e8f..fcc2dde 100644
--- a/tests/src/Kernel/WorkflowTypeKernelTest.php
+++ b/tests/src/Kernel/WorkflowTypeKernelTest.php
@@ -2,6 +2,8 @@
 
 namespace Drupal\Tests\workflow\Kernel;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\KernelTests\Core\Entity\EntityKernelTestBase;
 use Drupal\Tests\workflow\Traits\WorkflowTestTrait;
 use Drupal\workflow\Entity\Workflow;
@@ -12,6 +14,8 @@ use Drupal\workflow\Entity\WorkflowConfigTransition;
  *
  * @group workflow
  */
+#[Group('workflow')]
+#[RunTestsInSeparateProcesses]
 class WorkflowTypeKernelTest extends EntityKernelTestBase {
 
   use WorkflowTestTrait;
diff --git a/tests/src/Unit/WorkflowPermissionsTest.php b/tests/src/Unit/WorkflowPermissionsTest.php
index 9b4a712..8eea46f 100644
--- a/tests/src/Unit/WorkflowPermissionsTest.php
+++ b/tests/src/Unit/WorkflowPermissionsTest.php
@@ -53,7 +53,6 @@ class WorkflowPermissionsTest extends UnitTestCase {
     // Use reflection to access the protected buildPermissions method.
     $reflection = new \ReflectionClass($this->workflowPermissions);
     $method = $reflection->getMethod('buildPermissions');
-    $method->setAccessible(TRUE);
     $permissions = $method->invokeArgs($this->workflowPermissions, [$mock_workflow]);
 
     // Check that the misspelled permission exists for "own" access.
@@ -88,7 +87,6 @@ class WorkflowPermissionsTest extends UnitTestCase {
     // Use reflection to access the protected buildPermissions method.
     $reflection = new \ReflectionClass($this->workflowPermissions);
     $method = $reflection->getMethod('buildPermissions');
-    $method->setAccessible(TRUE);
     $permissions = $method->invokeArgs($this->workflowPermissions, [$mock_workflow]);
 
     // Check misspelled versions (workflow_transion) -
@@ -116,7 +114,6 @@ class WorkflowPermissionsTest extends UnitTestCase {
     // Use reflection to access the protected buildPermissions method.
     $reflection = new \ReflectionClass($this->workflowPermissions);
     $method = $reflection->getMethod('buildPermissions');
-    $method->setAccessible(TRUE);
     $permissions = $method->invokeArgs($this->workflowPermissions, [$mock_workflow]);
 
     $permission_key = 'access own content_review workflow_transion overview';
@@ -158,7 +155,6 @@ class WorkflowPermissionsTest extends UnitTestCase {
       // Use reflection to access the protected buildPermissions method.
       $reflection = new \ReflectionClass($this->workflowPermissions);
       $method = $reflection->getMethod('buildPermissions');
-      $method->setAccessible(TRUE);
       $permissions = $method->invokeArgs($this->workflowPermissions, [$mock_workflow]);
 
       // Check that permissions exist for this workflow.
