Bring a large pot of well salted water to a boil and cook the pasta according to packet directions, until al dente. Drain the pasta, season it with half of the salt and pepper and add the olive oil and balsamic vinegar. Mix well and set aside to cool to room temperature.
While the pasta cools, chop the tomatoes and place them in a large serving bowl. Season with remaining salt and pepper. Add the haloumi, olives, mushrooms, parsley and basil. Mix well.
When the pasta is at room temperature, transfer it to the serving bowl, add the lemon zest and toss it well with the other ingredients.
Taste and re-season if necessary. Serve at room temperature.
You can use feta instead of haloumi if you like.
I don't chill this salad and it's best to eat the day it's made.