It depends on your requirements. It might be a good candidate for refactoring to use the Command Pattern, but for simple cases this is probably overkill.
If you're talking about multiple times in the same scope and the system is unlikely to change within that scope, then you could just assign the result to a boolean and refer to that.
To explain the command pattern, what you would do is create a base class or interface with a method that does the actual work, and then call that:
interface ISystem
{
void DoSomething();
}
class SystemA : ISystem
{
public void DoSomething() { /* handle the system A case*/ }
}
class SystemB : ISystem
{
public void DoSomething() { /* handle the system B case */ }
}
Then in your class that needs the system to do something, you would refer to it as an IDoSomething, and just call the method DoSomething:
publc void MethodThatDoesSomething(ISystem system)
{
system.DoSomething();
}