Case 1: Development Tools
I sometimes have a nasty habit of cynicism and complaint. For a period of my life (college, to be precise), I considered this habit as a skill to be honed on a daily basis. Now, if I sound too negative for too long, I get really tired of hearing myself talk. As a result, I would like to start with an example of refactoring and integration that has made the lives of countless developers much easier. Of course, I'm referring to the integrated development environment (IDE). While the IDE concept has plenty of curmudgeonly detractors, a large base of adopters determines the success of technologies, and nothing brings that like ease of use.
I dare not speculate on what specifically would be considered the first IDE (I would most certainly be corrected, repeatedly), but in my mind it seems that the first time a text editor possessed the ability to launch a compiler is as good a place as any to start. Prior to that point, many people had strategies for imitating this behavior, such as breaking out to command line or building an AREXX script that could manage both programs, but they all involved either a two-step process or two separate processes. Once the file could be changed, the compiler run, and the output captured for review all in the same window, it just made life a little easier.
Generations have passed, and due to both intense creativity and an intense desire to make life easier, developers continue to create strategies that tool makers incorporate. One of the primary keys to the success of this integration has been the continued availability of "old-school" methods. This turns the IDE into a manager of tasks rather than a replacement. In turn, this improves customer acceptance by satisfying a broader array of customers, reduces complexity by leveraging existing applications, and allows the developer to maintain a fluid context. If all you need is to build a Makefile, all that's executed is the compiler. If more features are needed, the full IDE is launched.
The latest Visual Studio from the teams in Redmond is a perfect example. Not only does it have perennial favorites such as integrated source control, it has also integrated the debugging of stored procedures and general database server management. The final important step was to make the ability to build a third-party tool as painless as possible. Anyone who has seen Rational's XDE modeling tool knows that it integrates so completely that it looks like it was made by Microsoft.
A complete analysis of the various methods and benefits of refactoring and integration available in Visual Studioand others like itwould be far too long and boring, but this is essentially a case where a large number of motivated individuals have taken full advantage of virtually limitless resources to bring about incredible time-saving devices. While some may quibble that the installation or execution footprints beg truly valid questions about scale, there is little complaint about the speed with which quality software can now be developed.