Шрифт:
Интервал:
Закладка:
Поскольку программы постоянно усложнялись и включали уже не тысячи, а сотни тысяч, а то и миллионы строк машинного кода, обмена в рамках объединений пользователей было уже недостаточно. Большинство компаний просто не могли себе позволить содержать штат, необходимый для самостоятельной разработки программ. Вместо этого они начали заключать контракты на разработку ПО со специализированными фирмами, которые впервые появились в середине 1950-х и быстро размножились в 1960-е. Программисты, оставшиеся в штате компаний, постепенно перестали писать новые программы и начали заниматься их обслуживанием, совершенствованием и устранением ошибок.
По мере накопления опыта централизованного обслуживания самых разных клиентов новые фирмы смогли гораздо полнее использовать эффект масштаба, изначально присущего этой отрасли. В то же время их появление способствовало дальнейшей коммодитизации программного обеспечения для бизнеса, инициировав его трансформацию из внутреннего корпоративного ресурса в закупаемый извне. Хотя фирмы-контракторы разрабатывали для клиентов так называемые клиентские приложения, на самом деле эта тенденция кастомизации была скорее кажущейся, чем реальной. Чтобы иметь возможность неоднократно использовать большие фрагменты уже написанных единожды программ для выполнения разных заказов, подрядчики специализировались на конкретных отраслях или бизнес-процессах. Как поясняет специалист по истории программного обеспечения Мартин Кэмпбелл-Келли (Martin Campbell-Kelly), «по мере того как фирмы получали все больше и больше заказов из одной области применения, происходило накопление знаний в области программных средств и ресурсов, благодаря чему они могли и различных сочетаниях использоваться для выполнения заказов от самых разных клиентов»47. Только за счет такого многократного использования сложные программы оставались доступными для широкого круга компаний, а разработчики программ получали прибыль.
С появлением в 1970-1980-е годы миникомпьютеров, а затем и ПК произошли три важных изменения, которые сильно повлияли на процесс разработки программного обеспечения и усилили позиции поставщиков. Во-первых, компании смогли позволить себе покупать больше компьютеров. В результате количество пользователей увеличилось в несколько раз. Соответственно возросли и возможности экономии за счет эффекта масштаба при разработке ПО. Во-вторых, сотрудники нетехнических специальностей впервые начали непосредственно работать на компьютере, поэтому программы должны были быть простыми в использовании и стандартизованными. В-третьих, возросла роль компьютерных сетей, и компании были вынуждены заменить «закрытые» корпоративные приложения на «открытые». В результате этих изменений программы стали продаваться в виде прикладных пакетов.
Эволюция пакетов программ имеет поразительное, но вполне закономерное сходство с эволюцией компьютерной техники. Первые популярные приложения для массового рынка, такие как текстовые редакторы и программы для работы с электронными таблицами, использовались самой многочисленной и наименее технически подготовленной группой потребителей (то есть рядовыми сотрудниками компаний) и выполняли общие, периферийные задачи. Но постепенно пакеты приложений начинали играть все более важную роль в работе компаний и выполнять все более специализированные задачи. Рост производительности микропроцессоров и необходимость их функциональной совместимости, обусловливающие необходимость стандартизации даже самой сложной компьютерной техники, также диктовали потребность унификации самых сложных программ. К концу 1980-х компании не просто покупали одни и те же текстовые редакторы и программы для работы с электронными таблицами. Они приобретали типовые программы для управления базами данных, создания локальных сетей, бухгалтерского учета, биллинга, разработки производственных графиков, управления запасами и персоналом, компьютерного дизайна и проектирования и т. д. Раньше разработка специальных программ для выполнения всех этих технических и экономических задач была возможной, хотя и требовала больших затрат. Теперь любая компания могла купить все эти программы (или, по крайней мере, получить лицензию на их использование) всего за несколько сотен долларов.
Кульминацией развития пакетов программ для бизнеса в 1990-е годы стало введение систем планирования ресурсов предприятия (ERP). Пионером в этой области разработки стала немецкая фирма SAP. Программы, которые разрабатывала эта фирма, должны были решить (и иногда действительно решали) одну из самых болезненных и «дорогих» проблем, стоящих перед современными компаниями: проблему хаоса узкоспециализированных приложений. По мере того как компании, отдельные предприятия или подразделения компьютеризировали одну функцию за другой, возникала проблема, связанная с необходимостью синхронного управления огромным количеством несовместимых программ, написанных на разных языках и требующих разной техники и операционных систем. Несовместимое программное обеспечение не только обусловливало высокие затраты на обслуживание и устранение неполадок. Оно также требовало дополнительной работы и увеличивало количество ошибок, поскольку одни и те же данные приходилось вводить в разные программы в разных форматах. Из-за этого руководители компаний не могли получить целостного представления о работе компании. Они могли видеть только отдельные ее аспекты.
В программном обеспечении SAP и других систем планирования ресурсов, появившихся вслед за ним, основные приложения для управления предприятием (бухгалтерский учет, управление персоналом, планирование производства, ценообразование, продажи) служили модулями единой интегрированной системы. Использование всеми модулями единой базы данных устраняло необходимость в повторном вводе информации, снижало вероятность ошибок и позволяло менеджерам получить гораздо более точное представление о работе компании. Хотя изначально можно было создавать отдельные уникальные элементы системы планирования ресурсов для конкретной отрасли или компании, внешние консультанты при выполнении заказов обычно «подгоняли» стандартные программы к потребностям отдельных потребителей на основе использования стандартизованных средств изменения конфигурации. Таким образом, любая ценная модификация могла быть скопирована другими компаниями. К концу 1990-х годов стало ясно, что масштабная «подгонка» редко стоила затраченных усилий. Компании все чаще предпочитали готовую базовую конфигурацию, понимая, что изменение комплексных программ потребует значительных затрат времени и денег, но не приведет к значимой дифференциации48.
Более того, системы от разных поставщиков почти не имели функциональных различий. Вне зависимости от того, у кого вы покупали систему управления ресурсами - у SAP, Oracle, PeopleSoft или Вааn, вы получали одни и те же базовые функциональные возможности и одни и те же плюсы и минусы. Различия между программами продолжали стираться, так как поставщики быстро копировали друг у друга все более или менее значимые новшества и каждое новое поколение программ было все более унифицированным. К 1998 году Рей Лэйн (Ray Lane), занимавший тогда пост президента Oracle, признавался, что «потребители не могут обнаружить даже пятипроцентного отличия между продуктами SAP, PeopleSoft и нашей компании»49.