Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

n1

.pdf
Скачиваний:
12
Добавлен:
17.02.2016
Размер:
14.05 Mб
Скачать

Технологии создания программного обеспечения

351

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

5.3. ВНЕДРЕНИЕ ТС ПО В ОРГАНИЗАЦИИ

5.3.1. ОБЩИЕ СВЕДЕНИЯ

Термин «внедрение» используется в широком смысле и вклю­ чает все действия — от оценки первоначальных потребностей до полномасштабного использования ТС ПО в различных подразде­ лениях организации. Процесс внедрения ТС ПО состоит из сле­ дующих этапов.

1. Определение потребностей в ТС ПО, характеристики объ­ екта внедрения и проектов создания ПО.

2.Определение требований, предъявляемых к ТС ПО (анализ характеристик объекта внедрения и проектов, обоснование тре­ бований к ТС ПО, определение приоритетов требований).

3.Оценка вариантов ТС ПО. Предварительная экспертная оценка заключается в анализе доступных ТС ПО на предмет соот­ ветствия требованиям, неудовлетворительные варианты (с точки зрения реализации наиболее приоритетных требований) отверга­ ются, формируется список претендентов. При детализированной оценке для каждой ТС ПО-претендента формируется ее деталь­ ное описание, основанное на общей модели (см. рис. 5.1). Источ­ ники информации для описания — техническая документация поставщика, доступные данные о реальных внедрениях, резуль­ таты выполнения пилотных проектов.

352

Глава 5

4.Выбор ТС ПО. Производится сравнительный анализ техно­ логий и окончательный выбор ТС ПО с помощью экспертной оценки.

5.Адаптация ТС ПО к условиям применения. Производится формирование конкретной рабочей конфигурации ТС ПО, адап­ тированной к условиям объекта внедрения.

В процессе внедрения ТС ПО собирается статистика и оцени­ вается эффективность ее внедрения с точки зрения ряда критери­ ев (минимум трудоемкости сопровождения ПО, минимум затрат на сопровождение ПО и др.). При изменении условий объекта внедрения и по результатам анализа эффективности внедрения ТС ПО принимается решение: а) о внесении изменений в рабо­ чую конфигурацию ТС ПО; б) о переходе на новую ТС ПО. В слу­ чае перехода повторяются пп. 3, 4, 5.

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

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

Несмотря на все потенциальные возможности ТС ПО, суще­ ствует множество примеров их неудачного внедрения. В связи с этим необходимо отметить следующее:

ТС ПО не обязательно дают немедленный эффект; он может быть получен только спустя какое-то время;

реальные затраты на внедрение ТС ПО обычно намного превышают затраты на ее приобретение;

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

Ввиду разнообразной природы технологий было бы ошибоч­ но делать безоговорочные утверждения относительно реального

Технологии создания программного обеспечения

353

удовлетворения тех или иных ожиданий от их внедрения. Отме­ тим факторы, усложняющие определение возможного эффекта от использования ТС ПО:

широкое разнообразие качества и возможностей ТС ПО;

относительно небольшое время использования ТС ПО в различных организациях и недостаток опыта их примене­ ния;

разнообразие практики внедрения ТС ПО в различных орга­ низациях;

отсутствие детальных метрик и данных для уже выполнен­ ных и текущих проектов;

широкий диапазон предметных областей проектов;

различная степень интефации ТС ПО в различных проектах. Вследствие этих сложностей доступная информация о реаль­

ных внедрениях крайне ограниченна и противоречива. Она зави­ сит от типа средств, характеристик проектов, уровня сопровож­ дения и опыта пользователей. Некоторые аналитики полагают, что реальная выгода от использования ТС ПО может быть полу­ чена только после одноили двухлетнего опыта. Другие считают, что воздействие может реально проявиться в процессе эксплуата­ ции системы, когда технологические улучшения могут привести к снижению эксплуатационных затрат.

Чтобы принять взвешенное решение относительно инвести­ ций в ТС ПО, пользователи вынуждены производить оценку от­ дельных средств, опираясь на неполные и противоречивые дан­ ные. Эта проблема зачастую усугубляется недостаточным знани­ ем всех возможных «подводных камней» использования ТС ПО. Среди наиболее важных проблем вьщеляются следующие:

достоверная оценка отдачи от инвестиций в ТС ПО затруд­ нительна ввиду отсутствия приемлемых метрик и данных по проектам и процессам разработки ПО;

внедрение ТС ПО может представлять собой достаточно длительный процесс и может не принести немедленной от­ дачи. Возможно даже краткосрочное снижение продуктив­ ности в результате усилий, затрачиваемых на внедрение. Вследствие этого руководство организации может утратить интерес к ТС ПО и прекратить поддержку ее знедрения;

отсутствие полного соответствия между теми процессами и методами, которые поддерживаются ТС ПО, и теми, кото-

354

Глава 5

рые используются в данной организации, может привести к дополнительным трудностям;

некоторые ТС ПО требуют слишком много усилий для того, чтобы оправдать их использование в небольшом проекте, при этом, тем не менее, можно извлечь выгоду из той дис­ циплины, к которой обязывает их применение;

негативное отношение персонала к внедрению новой ТС ПО может быть главной причиной провала проекта.

Несмотря на все высказанные предостережения и некоторый пессимизм, фамотный и разумный подход к использованию ТС ПО позволяет преодолеть все перечисленные трудности. Успеш­ ное внедрение ТС ПО должно обеспечить:

высокий уровень технологической поддержки процессов разработки и сопровождения ПО;

положительное воздействие на производительность, качест­ во продукции, соблюдение стандартов, документирование;

приемлемый уровень отдачи от инвестиций в ТС ПО.

5.3.2. ОПРЕДЕЛЕНИЕ ПОТРЕБНОСТЕЙ В ТС ПО

Цель данного этапа (рис. 5.3) — достижение понимания пот­ ребностей организации в ТС ПО. Он должен привести к выделе­ нию тех областей деятельности организации, в которых примене­ ние ТС ПО может принести реальную пользу Результатом данно­ го этапа является документ, определяющий стратегию внедрения ТС ПО.

Анализ возможностей организации

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

Формальные подходы определяются моделью СММ, а также стандартами ISO 9001: 1994, ISO 9003-3: 1991 и ISO 9004-2:1991. Главное в этих подходах — анализ различных аспектов происходя­ щих в организации процессов.

Для получения информации относительно положения и пот­ ребностей организации могут использоваться неформальные оценки и анкетирование. Список вопросов, которые могут по-

Технологии создания программного обеспечения

355

Анализ возможностей организации и ее готовности к внедрению технологии

Определение

Обзор рынка

организационных

технологий

потребностей

 

Определение

критериев

успешного

внедрения

Разработка

стратегии

внедрения

технологии

Рис. 5.3. Определение потребностей в ТС ПО

МОЧЬ в неформальной оценке текущей практики использования ПО, ТС ПО и персонала, приведен ниже.

Общие вопросы (ответы на данные вопросы в целом характери­ зуют подход организации к разработке ПО):

используемая модель ЖЦ ПО (каскадная или итерацион­ ная);

используемые методы (структурные, объектно-ориентиро­ ванные). Опыт, накопленный при использовании того или иного метода, полученное обучение. Степень адаптации ме­ тода к потребностям организации;

наличие документированных стандартов (формальных или неформальных) по анализу требований, спецификациям и проектированию, кодированию и тестированию;

количественные метрики, используемые в процессе разра­ ботки ПО, их использование;

виды документации, выпускаемой в процессе создания ПО;

наличие группы поддержки ТС ПО.

356

Глава 5

Вопросы, касающиеся проектов, ведущихся в организащяи:

средняя продолжительность проекта в человеко-месяцах;

среднее количество специалистов, участвующих в проектах различных категорий (небольших, средних и крупных);

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

Вопросы, касающиеся технологической базы:

доступные вычислительные ресурсы, платформа разработки;

уровень доступности ресурсов, «узкие места», среднее время ожидания ресурсов;

ПО, используемое в организации, и его характер (готовые профаммные продукты, собственные разработки);

степень интефации применяемых профаммных продуктов, механизмы интефации (существующие и планируемые);

тип и уровень сетевых возможностей, доступных фуппе раз­ работчиков;

используемые языки профаммирования;

средний процент вновь разрабатываемых, повторно исполь­ зуемых и реально эксплуатируемых приложений.

Целью оценки персонала является определение его отноше­ ния к возможным изменениям (позитивного, нейтрального или негативного).

Вопросы, касающиеся оценки персонала:

реакция сотрудников организации (как отдельных людей, так и коллективов) на внедрение новой ТС ПО, наличие опыта успешных или безуспешных внедрений;

наличие лидеров, способных серьезно повлиять на отноше­ ние к новым средствам;

наличие стремления «снизу» к совершенствованию средств и ТС ПО;

объем обучения, необходимого для ориентации пользовате­ лей в новой ТС ПО;

стабильность и уровень текучести кадров.

Целью оценки готовности организации является определение того, насколько она способна воспринять как немедленные, так и долгосрочные последствия внедрения ТС ПО.

Вопросы, касающиеся оценки готовности:

• поддержка проекта со стороны высшего руководства;

Технологии создания программного обеспечения

357

готовность организации к долгосрочному финансированию проекта;

готовность организации к выделению необходимых специа­ листов для участия в процессе внедрения и их обучению;

готовность персонала к изменению технологии своей рабо­ ты и трудовых навыков в такой степени, в какой это потре­ буют новые средства;

степень понимания персоналом масштаба изменений;

готовность технических специалистов и менеджеров пойти на возможное кратковременное снижение продуктивности своей работы;

готовность руководства к долговременному ожиданию отда­ чи от вложенных средств.

Оценка готовности организации к внедрению ТС ПО должна быть объективной и тщательно выверенной, поскольку в случае отсутствия такой готовности все усилия по внедрению потерпят крах.

Определение организационных потребностей

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

Цели организации играют главную роль в определении ее конкретных потребностей и ожидаемых результатов. Для их по­ нимания необходимо ответить на следующие вопросы:

намерение организации использовать технологию для по­ мощи в достижении определенных целей или ожиданий (например, определенного уровня СММ или сертификации в соответствии с ISO 9001);

восприятие ТС ПО как фактора, способствующего достиже­ нию стратегических целей организации;

наличие у организации собственной программы совершен­ ствования процесса разработки ПО;

358

Глава 5

восприятие инициативы внедрения ТС ПО как части более широкомасштабного проекта по созданию среды разработ­ ки ПО.

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

Определению потребностей организации могут помочь отве­ ты на следующие вопросы.

Каким образом продуктивность и качество деятельности ор­ ганизации сравниваются с аналогичными показателями по­ добных организаций (к сожалению, многие организации не располагают данными для такого сравнения)?

Какие процессы ЖЦ ПО дают наилучшую (наихудшую) от­ дачу, существуют ли конкретные процессы, которые могут быть усовершенствованы путем использования новых мето­ дов и средств?

Свнедрением ТС ПО обычно связывают большие ожидания.

Вряде случаев эти ожидания оказываются нереалистичными и приводят к неудаче при внедрении.

Составление реалистичного перечня ожидаемых результатов является трудной задачей, поскольку он может зависеть от таких факторов, как тип внедряемых средств и характеристики внедря­ ющей организации. Кроме того, достижение некоторых результа­ тов может противоречить другим результатам.

Ряд потенциально реалистичных и нереалистичных ожидае­ мых результатов, связанных с организацией в целом, пользовате­ лями, планированием, анализом, проектированием, разработкой и затратами, приведен ниже. Практически невозможно, чтобы в процессе одного внедрения ТС ПО были достигнуты все положи­ тельные результаты. Тем не менее, любая организация может вы­ работать собственные идеи относительно ожидаемых результатов, имея в виду, что данный перечень является всего лишь примером.

Реалистичные ожидания:

повышение внимания к планированию деятельности, свя­ занной с информационной технологией;

Технологии создания программного обеспечения

359

долговременное повышение продуктивности и качества де­ ятельности организации;

ускорение и повышение согласованности разработки при­ ложений;

снижение доли ручного труда в процессе разработки и (или) эксплуатации;

более точное соответствие приложений требованиям поль­ зователей;

отсутствие необходимости большой переделки приложений для повышения их эффективности;

улучшение реакции службы эксплуатации на требования внесения изменений и усовершенствований;

лучшее документирование;

улучшение коммуникации между пользователями и разра­ ботчиками;

последовательное и постоянное повышение качества проек­ тирования;

более высокие возможности повторного использования раз­ работок;

кратковременное возрастание затрат, связанное с деятель­ ностью по внедрению ТС ПО;

последовательное снижение общих затрат;

лучшая прогнозируемость затрат.

Нереалистичные ожидания:

отсутствие воздействия на общую культуру и распределение ролей в организации;

понимание проектных спецификаций неподготовленными пользователями;

сокращение персонала, связанного с информационной тех­ нологией;

уменьшение степени участия в проектах высшего руковод­ ства и менеджеров, а также экспертов предметной области, уменьшение степени участия пользователей в процессе раз­ работки приложений;

немедленное повышение продуктивности деятельности ор­ ганизации;

достижение абсолютной полноты и непротиворечивости спецификаций;

автоматическая генерация прикладных систем из проект­ ных спецификаций;

360

Глава 5

немедленное снижение затрат, связанных с информацион­ ной технологией;

снижение затрат на обучение.

Реализм в оценке ожидаемых затрат имеет особенно важное значение, поскольку он позволяет правильно оценить отдачу от инвестиций. Затраты на внедрение ТС ПО обычно недооценива­ ются. Среди конкретных статей затрат на внедрение можно выде­ лить следующие:

специалисты по планированию внедрения ТС ПО;

выбор и установка инструментальных средств;

учет специфических требований персонала;

приобретение ТС ПО и обучение;

настройка инструментальных средств;

подготовка документации, стандартов и процедур использо­ вания ТС ПО;

интеграция с другими технологиями и существующими дан­ ными;

освоение ТС ПО разработчиками;

технические средства;

обновление версий.

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

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

Результатом данного действия является формулировка пот­ ребностей с их приоритетами, которая используется на этапе оценки и выбора в качестве «пользовательских потребностей».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]