Does anyone remember the days of the Integrated Software packages? In the beginning, we used separate word processors, spreadsheets and databases on our IBM PCs. And they all came with their own user interfaces, keyboard combinations and other peculiarities. Then someone had the idea to combine these three functions (and sometimes a few additional ones) into a single application - an integrated package. They haven't completely disappeared, but they clearly occupy but a niche in the market. Which begs the question: why?
At first sight, it seemed like a good idea: you get all the functionality you need without having to install, maintain and learn at least three different programs. What the model did not take account of, however, was the concept of trade-offs - which should be rather familiar to any software architect.
Simply put, it means you can't have it all – there are no silver bullets. Lotus Symphony gave a great spreadsheet experience (it was built around the then dominant Lotus 123 program), but doing word processing on a spreadsheet based front end was a less than happy practice and the limitations of the row/column model restricted the database capabilities rather infelicitously. It was so much better to have WordPerfect to write your documents, manage your data in dBase III and, yes, continue to model your accounts in Lotus 123. That is because all these programs made the right trade-offs, focusing on their core trade.
This law of computer programming applies everywhere by the way: platform-independent software development means sacrificing performance, as an absolute rule (meaning it is as certain and intransigent as the second law of thermodynamics). Complexity increases failure rates. Security creates access barriers and support issues.
In contrast with their integrated brethren, office suites have persisted in popularity. That is because they compromise, rather than seek to have it all. You still have separate applications, all of which can focus on doing best what they are designed for. At the same time, file formats and connectivity is designed to give a united feel and user experience.
At the moment, under financial pressure and in a climate of austerity, many businesses want to have it all when it comes to their ICT investments: pay little, do it fast, get a robust, utterly secure and fully future-proof system. Sooner or later they are going to discover the fallacy of that approach.