Облачное программное обеспечение как услуга (SaaS)
Концепция "программное обеспечение как сервис" (Рис.27) предусматривает предоставление доступа по сети к коммерческому программному обеспечению. Возможно, вы уже используете SaaS, даже не подозревая об этом. Примерами SaaS являются Netflix,Photoshop.com, Acrobat.com, Intuit QuickBooks Online, Gmail и Google Docs. Другой, возможно, менее очевидной, реализацией SaaS является значительная часть растущего рынка мобильных приложений. Рис.27 Облачное программное обеспечение как услуга. SaaS предоставляет дешевый способ использования программного обеспечения – использование по требованию вместо покупки лицензии на каждый компьютер, особенно когда большинство компьютеров не используется почти 70% времени. В отличие от покупки нескольких лицензий для одного пользователя, чем ближе время использования лицензии компанией к 100%, тем больше денег компания экономит. Четыре фактора повышения окупаемости инвестиций для SaaS: SaaS открывает новые возможности поставщикам программного обеспечения. В частности, поставщики SaaS-приложений называют четыре основных фактора повышения окупаемости инвестиций (ROI): Рис.28 ROI. · Увеличение скорости развертывания. · Улучшение принятия пользователями. · Уменьшение требований к поддержке. · Снижение стоимости реализации и обновлений. - Скорость развертывания. При развертывании традиционных настольных приложений традиционно возникают значительные трудности. Я лично несколько раз слышал, как разработчики настольных приложений называли обновление своих приложений "кошмаром развертывания". Как отмечает Тарик Ахмед (Tariq Ahmed) в первой главе своей книги "Flex 4 в действии" (Manning Press), "трудности логистики при попытке заставить тысячи, если не сотни тысяч, клиентов перейти на строго определенную версию вашей программы в строго определенное время поистине безграничны".
Далее Ахмед говорит, что эти трудности настолько огромны, что большинство компаний, разрабатывающих настольное программное обеспечение, вообще не считают такое обновление рациональным и даже осуществимым. Разработчики, столкнувшиеся с этим в прошлом, являются хорошими кандидатами для развертывания SaaS-версий своего программного обеспечения. Однако самый большой барьер для выхода на рынок SaaS, который нужно преодолеть разработчикам традиционного программного обеспечения, – возможность выполнения настольных приложений как SaaS-приложений. Во многих случаях сделать это можно только путем переписывания программы на определенном уровне, что некоторые компании находят очень дорогостоящим. Это одна из основных причин того, что переход к облачным вычислениям – медленный и постепенный процесс. В большинстве случаев наиболее логичным решением является поэтапный перенос программного обеспечения в облако, начиная с предоставления на условиях SaaS очень упрощенной версии оригинального приложения. Это имеет очевидный смысл, учитывая ограниченность возможностей разработчика с точки зрения управления версиями. Кроме того, именно здесь важную роль играет специфическая анатомия SaaS. Можно заметить много общего между облачными вычислениями и вычислениями в локальной сети. Типичная архитектура локальной сети состояла из ряда рабочих станций, часто называемых клиентскими терминалами, выполняющих приложения путем подключения к мощному мейнфрейму, обычно IBM, как показано на рисунке 29. Рисунок 29. Простая схема взаимоотношений клиентских терминалов и мейнфрейма в простой локальной сети. Такой тип архитектуры прекрасно работал на предприятиях, поскольку ИТ-отделы имели неограниченный уровень контроля над управлением версиями, а обновления можно было разворачивать итеративно и плавно. Точно так же и в облаке устраняются логистические барьеры, мешавшие разработчикам настольных приложений в плане управления версиями, поскольку программное обеспечение выполняется в инфраструктуре, к которой компания-разработчик имеет мгновенный доступ.
Разумеется, размер и масштаб инфраструктуры SaaS по сравнению с локальной сетью огромны, учитывая количество клиентов, которых нужно обслужить. Но основополагающие концепции остаются теми же. На рисунке 1 показан один мейнфрейм, способный поддерживать достаточное количество экземпляров программного обеспечения для обслуживания всех клиентов, подключающихся в пределах локальной сети. На рисунке 30 показано облако, состоящее из разных вычислительных ресурсов, которые создают общую вычислительную мощность, способную выполнять большое количество экземпляров программного обеспечения, необходимого для обслуживания клиентов по всему миру. Рисунок 30. Простая схема взаимоотношений клиентских устройств и облака в SaaS
- Улучшение освоения пользователями. Если ненадолго отвлечься от бизнеса и посмотреть, что SaaS дает обычному потребителю, можно увидеть, что SaaS делает доступным программное обеспечение, лицензии на использование которого прежде были слишком дороги для обычного потребителя. Хорошим примером являются инициативы Adobe по предоставлению в виде SaaS доступа к Adobe® Photoshop®. Хотя работы еще не завершены и эксперименты продолжаются, уже достигнут определенный прогресс. Например, я обнаружил, что все больше моих друзей и членов семьи предпочитают использовать для базового редактирования фотографий сайт Photoshop.com (Рис.31), а не загружать полную версию, когда необходимо выполнить только элементарные задачи редактирования. Здесь важно то, что люди, которым не нужна вся функциональность полной версии, теперь будут экономить деньги. В то же время Photoshop.com используют те пользователи, которые иначе и не пытались бы это делать, т.е. у Adobe появляется возможность получить в долгосрочной перспективе клиентов, к которым ранее не было доступа. Рис.31 Photoshop.com
Наличие различных бизнес-моделей является особенно интересным аспектом SaaS. Например, Intuit предлагает сервисы QuickBooks Online в виде SaaS с помесячной оплатой. Как владелец бизнеса, вынужденный много путешествовать, я считаю эту модель очень полезной, особенно учитывая, что мой партнер живет за 400 миль в другом штате. В свою очередь, Adobe использует возможности SaaS в Photoshop.com и Acrobat.com, предлагая программное обеспечение как freemium-сервис – термин, придуманный для описания специфичной бизнес-модели, основанной на предложении в виде SaaS упрощенной версии лицензируемого программного продукта. Freemium SaaS основана на модели получения дохода, которая предполагает, что определенный процент бесплатно обслуживаемых пользователей в конечном итоге посчитает полезным либо перейти на платную SaaS-версию, имеющую дополнительные функциональные возможности, либо приобрести лицензированную копию настольного приложения, содержащую все доступные дополнительные функции. Такой метод пробного использования программного обеспечения в демонстрационном режиме становится все более предпочтительным по сравнению с установкой приложения на настольный компьютер, которая может и не завершиться покупкой. Кроме того, такая модель может быть дополнена рекламой, если процент бесплатно обслуживаемых пользователей, переходящих на платные версии, меньше ожидаемого. Это общепринятый метод, который используют традиционные поставщики настольного программного обеспечения для адаптации к меняющемуся рынку по мере развития облачных вычислений. - Уменьшение требований к поддержке. Стоимость больших систем технической поддержки пользователей и сложность проблем поддержки, возникающих в результате необходимости работы с несколькими платформами, значительно уменьшаются при использовании SaaS. Простота развертывания позволяет разработчикам начинающих компаний исправлять ошибки сразу после их обнаружения, что означает возможность исправления ошибок до того, как с ними столкнется подавляющее большинство пользователей. В результате уменьшается количество звонков в службу поддержки, а также значительно повышается вероятность удовлетворения и удержания клиентов.
Кроме того, производители традиционного настольного программного обеспечения часто вынуждены поддерживать более одной платформы. Например, для разработчика, который должен поддерживать операционные системы Windows® 7 и Apple Mac OS X version 10.6, стоимость разработки практически удваивается, и это еще без учета проблем, которые возникают при поддержке нескольких версий операционной системы. Кроме того, поддержка нескольких версий операционной системы накладывает дополнительные ограничения. Например, если вы создаете программу для Windows 7, которая должна быть совместима с Windows XP, необходимо быть очень внимательным, чтобы все функциональные возможности могли работать на обеих версиях; в противном случае придется делать ветку исходного кода для каждой версии, что неминуемо снизит производительность и эффективность, а также увеличит время разработки. Один из самых простых способов вызвать у начальства сердечный приступ – сообщить ему (или ей), что для соблюдения сроков стоимость работ на два следующих года должна быть удвоена. Если добавить сюда увеличение бюджета на поддержку различных операционных систем и различных их версий, то становится ясно, почему в настоящее время так высока доля неудачных проектов разработки программного обеспечения. - Снижение стоимости реализации и обновлений. Четвертый движущий фактор ROI для SaaS немного похож на первый. Однако скорость развертывания касается преимуществ, получаемых за счет способности быстро и безболезненно развертывать обновления приложений. Напротив, снижение стоимости реализации и обновлений описывает финансовые преимущества, получаемые компанией-разработчиком в результате контроля над управлением версиями и над инфраструктурой, выполняющей программное обеспечение. Источником существенной экономии средств разработчика является отсутствие дополнительных расходов на тестирование и развертывание пакетов исправлений ошибок и новых функциональных возможностей на нескольких платформах, поскольку разработчик может управлять платформой, на которой работает программное обеспечение, обычно совершенно прозрачно для пользователя. Это уменьшает стоимость обновления SaaS-приложений. Дополнительный косвенный финансовый результат связан с удовлетворенностью и удержанием клиентов, поскольку существенная экономия времени и средств позволяет разработчику лучше реагировать на запросы по созданию новых функций и повышению удобства эксплуатации.
- SaaS и проектирование взаимодействия с пользователем. SaaS-приложения представляют новый подход к дизайну приложений. Хотя это, кажется, не обсуждалось явно ни в одном из документов, которые я видел до настоящего времени, мне кажется, что в SaaS-программах применяется современный подход к дизайну пользовательского интерфейса, больше согласующийся с процессом проектирования изделия в большинстве других отраслей. Такой подход включает в себя процесс, называемый проектированием взаимодействия с пользователем (User Experience Design – UXD) (Рис.32), в котором графический пользовательский интерфейс разрабатывается отделом разработки продукта, а не отделом разработки ПО. Рис.32 User Experience Design
Главная задача UXD – определить, что сделает приложение наиболее полезным для целевой группы пользователей, и включить это знание в дизайн. Хотя логически понятно, что это необходимо учитывать при разработке любого программного обеспечения, больше всего, по-видимому, этот принцип применяется к разработке SaaS-приложений. Причина, возможно, кроется в необходимости работы с бизнес-моделями SaaS, отличающимися от бизнес-моделей для традиционного программного обеспечения, а также в значительной экономии, получаемой от разработки на принципах SaaS. Итак, полнофункциональные облачные вычисления являются большим шагом вперед как для бизнеса, так и для потребителей, но предстоит преодолеть еще много препятствий. В результате процесс потребует времени и будет проходить через несколько этапов постепенных изменений. Во время этой эволюции вычислений разработчикам программного обеспечения очень важно уметь адаптироваться к меняющейся среде, чтобы соответствовать требованиям бизнеса и потребителей.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|