this method is still big, what about using a protected method `runProcess` for example ?