Интегрированные инструменты для управления жизненным циклом приложений
Современные бизнес-процессы становятся всё более интегрированными друг с другом - разработка, изготовление и финансовый учёт работают вместе на одну цель - увеличить ценность бизнеса и снизить затраты потребителя. За последние 40 лет автоматизация позволила бизнес-процессам выстроиться в непрерывную всеобъемлющую цепочку по созданию добавочной стоимости за счет интеграции в неё специализированных инструментов и практик. Клиенты хотят предоставить информацию о себе и своём заказе один раз. После этого предполагается, что ваша служба поддержки должна знать всё о клиенте и его продукте, а маркетинг от вас ожидается адресный и персональный.
Однако, процессы, используемые для создания и поддержания этих автоматизированных систем намного более фрагментированны и разобщены, чем системы, которые они поддерживают. Типичный проект по разработке программного комплекса требует ввода исходных требований несколько раз, описывает тестирование в разных местах, не различает особенностей конкретной сборки, и часто требует большого объема работ по анализу для того, чтобы определить, кто в данный момент занимается чем и почему он этим занимается. Бизнес-процесс под названием "управление жизненным циклом приложений" (Application Lifecycle Management - ALM) намного менее разработан на настоящий момент, чем те процессы, которые он поддерживает. Бизнес-процедуры при разработке программного продукта когда-то имели вспомогательное значение. Теперь они критически важны, ведь от компаний-разработчиков ПО требуется предоставлять в короткие сроки непосредственно своим клиентам продукт более высокого качества. Это означает, что организации и группы разработчиков ПО должны начать думать над тем, как наилучшим образом интегрировать дисциплины разработки, применяя целостный интегрированный ALM-подход.
Важность интеграции непросто оценить, но без неё у вас нет перспективСколько раз вам приходилось присутствовать на собрании, где все были в легком замешательстве, говоря об одном и том же, но в то же время немного о разном? Или на собрании, где первые 30 минут тратились на выяснении того, по поводу чего собственно собрание? Проблема усугубляется, когда на собрании присутствуют люди из разных отделов, географических точек, организаций.
Реальность современной разработки ПО такова, что группы разработчиков зачастую состоят из людей из множества различных мест; разработчики, отдел руководства проектом, начальство, аутсорсинговые тестеры. Каждая из этих групп использует в работе свои инструменты, практики, процессные методы, оптимизированные скорее под работу в своей конкретной группе, чем под конечный результат. Организация сотрудничества между группами всегда становится обязанностью группы, отвечающей за текущую стадию проекта. Например, они берут на себя ответственность за доведение до сведения остальных участников проекта задач и проблем, над которыми они работают. Когда начинается стадия тестирования, дефекты и баги становятся темой для дискуссий.
Из-за того что одна команда задаёт тон работе, возникает тенденция к ингорированию всей предыдущей работы и даже исключения изменений, внесенных другими участниками проекта, оставляя заполнение пробелов специальным процессам, электронным таблицам и вики-страницам. Результат - непродуктивные, бесполезные совещания; но, что более важно, проблемы, которые следует исправлять, часто пропускаются, что приводит к снижению качества ПО, увеличению числа дефектов, удорожанию проектов и срыву сроков.
"Всеобщая интеграция" отвергается из-за следующих причин:
Организация рабочего процесса и соблюдение требований требуют комплексного подходаДля организаций любого размера исключительно важно знать, что случилось, с кем, когда, и кто был задействован, для того, чтобы сохранять контролируемость и соблюдать все требования. По мере того как рабочие задачи проходят через отдела, программные продукты, процессы, людей, становится исключительно проблематично согласовать изменения того или иного действия или набора действий. Например, требования, связанные с безопасностью, в системе касаются кода, тестирования, рабочих элементов, дефектов, работающего программного обеспечения и рабочих тикетов. Если эти требования меняются в процессе, часто бывает трудно оценить или установить, где и когда это произошло, а также какой был от этого эффект. Если изменения были локализованы только в коде, могут возникнуть проблемы соответствия требованиям. Даже организации, от которых не требуется соответствия конкретному правительственному мандату, должны иметь ясную картину результатов вносимых изменений, должна быть обеспечена их трассируемость и контроль за процессом в целом.
Для хорошей трассируемости существуют следующие препятствия:
Всё дело в числахЧасто цитируемое исследование компании IDC сообщает нам, что поиск информации и неспособность её найти стоит компаниям приблизительно 3300 долларов на одного сотрудника каждый год. Само собой, на эту цифру сильно влияет тип информации и совокупные затраты на конкретного сотрудника. Например, руководитель высшего звена в поисках ключевых данных для отчёта обходится гораздо дороже, чем временный сотрудник, который пытается найти электронное письмо. Исследование компании IDC рассматривает вопрос поиска необходимой информации и влиянии этого поиска на общую продуктивность, но игнорирует мощную дополнительную выгоду сотрудничества двух групп, которые обычно не видят информацию, находящуюся в распоряжении друг друга.
Например, за счёт связи разработчика с тестером, существующие требования могут быть пересмотрены, что дает потенциальную возможность найти более изящное решение. Дэниел Муди (Daniel Moody) и Питер Уолш (Peter Walsh), исследователи, работавшие над этим вопросом, обсуждают возросшее значение информации в своей работе "Оценка значимости информации: подход оценки активов". Они говорят о том, что распространение информации приводит к увеличению её ценности – чем больше людей её используют, тем больше экономических преимуществ можно получить. IDC также не учитывает юридические требования и требования на соответствие, наложенные на информацию в некоторых организациях. Например, изменение в системе, которое привело к уязвимости в безопасности ПО и случаям мошенничества, но при этом не было должным образом задокументировано, приведёт к судебным разбирательствам и большим штрафам.
В общих чертах, затраты из-за неинтегрированных данных можно разделить на несколько категорий:
Почему настало время для интегрированного подходаОчевидно, что проекты по разработке ПО создают большие массивы данных. У каждой дисциплины свои инструменты и методы при создании этих данных. А в случае комплескных программных продуктов, когда каждое отдельное приложение используется другими приложениями, ценность и сложность информации только растёт. Потери из-за неинтегрированных данных огромны, не только вследствие снижения продуктивности, но и из-за потенциальной угрозы судебных претензий в случае с критичными системами безопасности, ошибки в работе которых могут повлечь материальный ущерб. Для лучшего управления интегрированными данными вашего приложения, специалисты по разработке ПО должны:
ЗаключениеБольшинство ключевых бизнес-процессов внутри различных компаний усовершенствованы и автоматизированы.Оптимизация привела к созданию корпоративных моделей данных, складов, интеграционных технологий и промежуточных платформ. Разработка программного обеспечения становится всё более важным бизнес-процессом, но по сравнению со стандартными процессами, такими, как транспортировка, управление взаимодействием с клиентами и финансовый учёт, связанная с этим процессом инфраструктура и дисциплина его выполнения ещё не до конца сформировались. Нетрудно осуществить интеграцию клиентских данных и финансового учёта. Но интеграцию требований к продукту и процесса его тестирования осуществить гораздо труднее, чем по старинке положиться на ручное управление и негласное доверие команде. С увеличением значимости программного обеспечения и сложности систем, продуктивность и качество приложений снижается при наличии неинтегрированных данных, а ценность бизнеса неуклонно снижается. Настало время для внедрения интегрированного управления жизненным циклом приложений - это важно для долговременного успеха программных продуктов, проектов и бизнеса.
Об автореDave West является главным продуктоводом в компании Tasktop. В данной роли он формиует roadmap по продуктам компании и их позиционирование на рынке, в тесном сотрудничестве с клиентами и партнерами.
|
Сертифицированные курсыАндрей Плетенев. Онлайн курс Agile. SCRUM. Курс включает более 20 уроков с практическими заданиями, которые индивидуально проверяются и комментируются тренером.
Еще интересные статьи на эту тему:
|