Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Конец цикла разработки ПО

Архитектура взаимодействия

Некоторые системы спроектированы для усиления взаимодействия. Существует три способа создания большой БД. Первый - платить людям за ее составление (Yahoo!). Второй - набрать для той же задачи добровольцев (open-source-проекты). Третий путь открыл Napster. В клиенте Napster по умолчанию загруженная песня была доступна для скачивания другими пользователями сети. Таким образом, каждый пользователь Napster увеличивал ценность распределенной БД. Потом эта же схема была повторена в других P2P-сервисах.

Пользователи могут повысить ценность приложения, но лишь немногие будут делать это добровольно. Поэтому приложения следует проектировать так, чтобы обогащение проекта пользовательской информацией происходило автоматически. Этот момент должен быть частью архитектуры приложения.

Удачная архитектура, возможно, даже больше повлияла на успех открытого софта, чем упомянутые добровольцы. Архитектура Интернета и веба (как и архитектура открытых проектов) такова, что вынуждает нас автоматически повышать их ценность во время использования. У каждого из таких проектов - небольшое технологическое ядро, четкие механизмы расширения и подход, позволяющий любому человеку добавлять новые компоненты, наращивая новые слои "луковицы".

Другими словами, эти технологии демонстрируют сетевые эффекты, просто потому, что они так спроектированы.

Такую архитектуру взаимодействия можно назвать естественной. Но как показал пример Amazon, последовательные усилия (а равно и экономические стимулы - например, партнерская программа) могут создать подобную архитектуру и в системе, которой при обычных условиях это не свойственно.

Одной из главных характеристик современных интернет-приложений является то, что они распространяются в виде сервиса, а не товара. Это, в свою очередь, ведет к фундаментальным изменениям в бизнес-моделях компаний-разработчиков.

Компания должна уметь управлять процессами. Искусству разработки приложений должно сопутствовать умение организовать ежедневные операции для поддержки работы этих приложений. Разрыв между софтом-артефактом и софтом-сервисом так велик, что уже сейчас нельзя написать хороший продукт и забыть о нем - его нужно поддерживать ежедневно. Google каждый день прочесывает веб, чтобы обновлять свои индексы, отсекая поисковый спам. Google должен каждый день обслуживать сотни миллионов запросов, поставляя пользователю не только качественные результаты поиска, но и контекстную рекламу. И неслучайно информация о системном администрировании, обслуживании сетей, балансировке нагрузки и т. п. охраняется Google, пожалуй, даже лучше, чем сами поисковые алгоритмы. Google научился автоматизировать упомянутые процессы, а это - ключевая часть его ценового преимущества перед конкурентами.

Также не случайно, что скриптовые языки - Perl, Python, PHP, а теперь еще и Ruby - играют в жизни компаний Веба 2.0 столь важную роль. Первый вебмастер Sun Microsystems Хасан Шрёдер (Hassan Schroeder) как-то назвал Perl "скотчем интернета".

Скриптовые языки (презираемые программистами эры софтверных артефактов) - это естественный выбор для системных и сетевых администраторов, поскольку разработчики создают динамические системы, требующие постоянного изменения.

Пользователей нужно воспринимать как соразработчиков - как, например, принято при разработке открытого софта (даже если само ПО вряд ли будет выпущено под открытой лицензией). Максима открытого софта - "выпускай релизы раньше и чаще" - теперь формулируется еще жестче: "бесконечная бета-версия". Программы обновляются ежемесячно, еженедельно и даже ежедневно.

Не случайно на логотипах таких проектов, как Gmail, Google Maps, Flickr, del.icio.us и т. п., словечко "beta" может висеть годами.

Отслеживание поведения пользователей в реальном времени позволяет видеть, какие новые свойства используются и как они используются - и это еще одна ключевая составляющая успеха технологии. Веб-разработчик одного из раскрученных сетевых сервисов отмечает: "мы добавляем два-три новых свойства в разные части сайта каждый день, и если пользователям они не нравятся - мы отказываемся от этих нововведений. Если нравятся - внедряем на всем сайте".

Кэл Хендерсон (Cal Henderson), главный разработчик Flickr, недавно рассказал, что новый билд Flickr появляется каждые полчаса. Это совершенно другая модель разработки! И хотя пока не все веб-приложения разрабатываются с такой экстремальной скоростью, почти у всех цикл разработки радикально отличается от всего, что было в эпоху ПК или клиент-серверов. По этой причине редакторы Zdnet даже пришли к выводу, что Microsoft не удастся победить Google: "бизнес-модель Microsoft построена на предположении, что пользователь обновляет свое компьютерное окружение раз в два или три года. Google же зависит от того, что новенького обнаружит пользователь в своем компьютерном окружении сегодня".

Несмотря на то, что Microsoft уже продемонстрировала невероятную способность учиться и, в конце концов, превосходить своих конкурентов, нет сомнений, что конкуренция заставит Microsoft (и - шире - любую современную софтверную компанию) превратиться в компанию совершенно другого типа. Истинным компаниям Веба 2.0 будет проще, поскольку их не тянут назад старые подходы (а также сопутствующие бизнес-модели и источники прибыли).

<== предыдущая лекция | следующая лекция ==>
Блоги и мудрость масс | Упрощенные модели программирования
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 262; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.