История создания компьютерных информационных систем насчитывает несколько десятилетий. За это время были созданы системы по автоматизации деятельности банков, статистических бюро, промышленных предприятий, контор, агентств по бронированию и продаже билетов и т. д. Однако бурная деятельность по созданию новых систем автоматизации не только не утихает, но и переживает в последнее время заметное оживление. Эта ситуация связана с все возрастающим значением систем обработки информации для выживания компаний в условиях высокой конкуренции, уменьшением удельной стоимости таких систем, с развитием технологий обработки и хранения информации, а также качественным изменением ситуации с развитием технологий передачи данных, в частности Internet.
Если успехи в области аппаратной части компьютеров известны всем, то прогресс программных технологий, лежащих в основе функционирования и создания ИС не столь очевиден. Первые ИС создавались для больших ЭВМ и имели унитарную структуру, т. е. представляли собой по сути одну программу, включающую в себя все функции по хранению данных, их обработке и представлению, а также по контролю доступа к данным со стороны пользователей системы. Такая организация ИС имеет ряд достоинств. Это, в частности, централизованное хранение и обработка информации, простота администрирования системы, а также очень эффективное использование вычислительных ресурсов — для выполнения важных задач может быть выделена вся мощь вычислительной системы.
С ростом мощности компьютеров росла и сложность ПО, появилась необходимость структурировать программы — выделить отдельные части, отвечающие за работу с данными, бизнес-логику и интерфейс с пользователем. Это были все еще части одной программы, однако они становились все более независимыми и универсальными. Логическое развитие этой тенденции в наши дни и привело к появлению архитектуры клиент-сервер. В сущности, практически все «новейшие» технологии как-то: трехслойная архитектура, мониторы транзакций, «сверхтонкие клиенты» впервые появились и получили развитие тридцать лет назад на компьютерах класса mainframe.
Казалось бы, если еще в 60-е годы было найдено магистральное направление, по которому пойдет развитие информационных технологий, все должны были бы работать на «сверхтонких клиентах», используя трехслойную архитектуру клиент-сервер. Однако компьютерная отрасль развивалась отнюдь не равномерно и прямолинейно — с появлением дешевых персональных компьютеров и локальных сетей возникли многочисленные информационные системы, использующие распределенную обработку информации. Серьезным препятствием к использованию этих систем в масштабах предприятия явился принципиальный недостаток распределенных систем — неэффективность управления раздельно хранящимися данными. Одним из основных условий нормальной работы ИС является возможность доступа ко всем ее данным. Однако, попытки построить ИС на основе сети ПК, участвующих в совместном хранении и обработке данных не увенчались успехом в связи с чрезвычайной ненадежностью такой схемы. Любая неполадка всего одного компонента — компьютера, линии связи или сбой одной из программ приводил к неработоспособности всей системы.