Speaking as one of those sad people who designs crew and aircraft roster management systems for a living, it really does depend on the size of your operation.
I suggest that you look very carefully at WHAT you want a computer based system to do first, and THEN look at which one - there are SO MANY proprietary (is that spelt right?) systems out there - llok at AIMS and the offerings from Lufthansa Systems for example.
What I mean by 'What do I want it to do?' is -
Do I want it to do the leg work for me and leave me the fun stuff to work out myself?
Do I want it to do EVERYTHING for me, leavng me with no scope for creativity?
Do I want it simply to find AN answer - not necessarily the best - which = cheaper and faster but not as bright...
Do I want it to find an answer and then optimise that answer = expensive and potentially slow?
Do I want to fit it into an existing portfolio?
Have a think about these before you go looking seriously and you may have a better yardstick by which to measure your product.
Also, look at constraint logic engines like ILOG Solver if you are thinking of tackling building a small constraint logic allocator in house (yeah, I know, out of most smaller operators leagues, but what the hellll.... Live a little)
May the winds carry you home safe..