In general, why should you strive for three to five members per interface?
And then, what's wrong with something like this?
interface IRetrieveClient
{
Client Execute(string clientId);
}
interface ISaveClient
{
bool Execute(Client client);
}
interface IDeleteClient
{
bool Execute(string clientId);
}
When I see the this, it screams "Antipattern!" because the interface isn't accomplishing anything, especially when the designer of the application intends for each interface to have a one-to-one relationship with the class that implements it.
Read: Once an interface is implemented, it is never reimplemented again. Now, I didn't design this system and it seems to me like what they wanted to do was implement some version of the command pattern, but when speaking to the developers, they don't seem to get it.