When any airline/airport is faced which a near complete suspension of its flying programme, not least at the busiest time of year, it is never going to be pretty. Airports are not designed to contain the seizure of the flow of passengers and no airline can afford to have hundreds of staff standing by in call centres and in airports just in case of severe disruption.
I would wager that BA has done a better job of handling this disruption than disruptions of previous years. Although ba.com did come under pressure, its functionality did allow affected passengers to cancel/rebook online (don’t think that could be done on Virgin’s site). Plus there are the mobile apps, and the valiant efforts of BA’s Twitter team in fielding queries. I have also heard many complimentary comments about BA staff on the ground and in call centres.
BA also added call centre capacity using volunteers, volunteer cabin crew are being used to support the operation, there is now a dedicated facility at LHR for repatriating mishandled baggage. The situation in Terminal 5 did not seem to be as bad as in other terminals.
No doubt lessons can be learned and more can be done (particularly around maximising the use of smartphone/mobile technology) to assist passengers affected by disruption, but BA seems to be getting better at mobilising the whole organisation, rather than different departments seeming to operate in silos.
Compare to previous years where in the winder of 2008 the company allowed BASSA to deny the activation of the disruption agreement when aircraft were diverted away from LHR , or the Christmas fog of four years ago with marquees outside Terminal 4 and luggage being sent to Milan to be returned to their owners etc.