Файл: Технология раработки програмного обеспечения УП.pdf

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

 

 

 
 

186 

иное

 

важное

 

направление

 

деятельности,

 

включая

 

функцию

 

раз-

работки.

 

Лицо,

 

которое

 

руководит

 

этим

 

направлением,

 

считает-

ся

 

ответственным

 

за

 

все

 

аспекты

 

создания

 

изделия,

 

выпускае-

мого

 

организацией.

 

Чтобы

 

координировать

 

процесс

 

разработки,

 

это

 

лицо

 

имеет

 

право

 

назначать

 

администраторов

 

изделия

 

и

 

ру-

ководителей

 

проектов

 

и

 

обеспечивать

 

их

 

взаимодействие.

 

8.1.3 Организация взаимодействия 

Если

 

все

 

взаимодействия

 

хорошо

 

определены,

 

то

 

и

 

управ-

ление

 

ими

 

организовано

 

должным

 

образом.

 

Если

 

же

 

взаимодей-

ствия

 

плохо

 

организованы,

 

то

 

даже

 

при

 

жесткой

 

линейной

 

структуре

 

подчинения

 

трудно

 

будет

 

создать

 

конечное

 

изделие.

 

Важнейшим

 

принципом

 

любого

 

вида

 

управления

 

является

 

разделение

 

целого

 

на

 

части,

 

и

 

многие

 

методы

 

и

 

средства

 

осно-

вываются

 

именно

 

на

 

этом

 

принципе.

 

Совокупность

 

точек,

 

в

 

которых

 

две

 

функциональные

 

группы

 

взаимодействуют

 

друг

 

с

 

другом,

 

называется

 

организа-

ционной

 

границей.

 

Иногда

 

функция

 

может

 

иметь

 

один

 

канал

 

взаимодействия

 

со

 

всеми

 

остальными

 

функциями,

 

однако

 

более

 

вероятно,

 

что

 

она

 

имеет

 

несколько

 

границ

 

соприкосновения.

 

Границы

 

функции

 

определяются

 

множеством

 

зафиксированных

 

и

 

незафиксированных

 

планов,

 

стратегий,

 

процедур,

 

которые

 

определяют

 

функциональные

 

обязанности.

 

Чем

 

больше

 

сведе-

ний

 

фиксируется

 

в

 

письменном

 

виде,

 

тем

 

лучше,

 

т.к.

 

это

 

уменьшает

 

двусмысленность.

 

Основное

 

свойство

 

организаци-

онной

 

границы

 

состоит

 

в

 

разграничении

 

ответственности

 

(кто

 

и

 

что

 

делает,

 

каким

 

образом,

 

для

 

чего

 

и

 

т.д.).

 

Неполное

 

определе-

ние,

 

двусмысленность

 

и

 

сложность

 

приводят

 

к

 

невозможности

 

описания,

 

а

 

следовательно,

 

и

 

понимания

 

природы

 

взаимодейст-

вия.

 

Но

 

ни

 

сами

 

документы,

 

ни

 

их

 

коллективное

 

обсуждение

 

не

 

могут

 

обеспечить

 

действенных

 

взаимосвязей,

 

если

 

отсутст-

вуют

 

контакты

 

функциональных

 

групп.

 

Общие

 

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

 

обязанности

 

могут

 

устанавли-

ваться

 

с

 

помощью

 

должностных

 

инструкций

 

и

 

целевых

 

планов

 

подразделений.

 

Конкретные

 

обязанности

 

определяются

 

плана-

ми

 

выпуска

 

изделия.

 

Пропорциональное

 

распределение

 

ответ-


background image

 

 

 
 

187 

ственности

 

обеспечивается

 

соответствующими

 

стратегиями

 

управления.

 

В

 

них

 

обязательно

 

должны

 

предусматриваться

 

возможности

 

невыполнения

 

взятых

 

обязательств

 

и

 

учитываться

 

поправки

 

на

 

исключительные

 

случаи,

 

чтобы

 

сделать

 

планы

 

и

 

процедуры

 

жизнеспособными.

 

8.1.4 Установление целей, средства их достижения 

Первым

 

шагом

 

процесса

 

установления

 

и

 

достижения

 

це-

лей

 

является

 

подбор

 

необходимого

 

персонала.

 

Когда

 

в

 

органи-

зации

 

происходят

 

изменения,

 

соответственно

 

меняется

 

и

 

ее

 

персонал.

 

Некоторые

 

изменения

 

происходят

 

периодически.

 

По-

добные

 

изменения

 

характеризуются

 

экспоненциальным

 

ростом

 

числа

 

устанавливаемых

 

связей.

 

Чтобы

 

приспособиться

 

к

 

этим

 

колебаниям,

 

нужны

 

руководители,

 

способные

 

к

 

адаптации.

 

Ру-

ководителей,

 

продуктивных

 

только

 

в

 

каком-либо

 

одном

 

виде

 

деятельности,

 

нужно

 

заменять.

 

Программирование

 

 

область

 

деятельности,

 

требующая

 

высокой

 

квалификации,

 

оно

 

привле-

кает

 

к

 

себе

 

неординарных,

 

эксцентричных

 

людей.

 

Такие

 

люди

 

редко

 

понимают

 

структуру

 

организации,

 

ориентированную

 

на

 

создание

 

программного

 

продукта,

 

часто

 

отказываются

 

работать

 

в

 

условиях

 

ограничения

 

свободы

 

творчества,

 

т.к.

 

они

 

вынужде-

ны

 

тратить

 

время

 

на

 

документирование

 

или

 

защиту

 

своих

 

раз-

работок.

 

Однако

 

их

 

участие

 

в

 

«черновой

 

работе»

 

необходимо,

 

и

 

чтобы

 

склонить

 

этих

 

людей

 

к

 

работе,

 

необходимо

 

комплекто-

вать

 

штат,

 

руководствуясь

 

соображениями

 

эффективности.

 

Это

 

означает

 

отход

 

от

 

идеальных

 

установленных

 

общих

 

правил,

 

предоставление

 

свободного

 

режима

 

прихода

 

и

 

ухода

 

с

 

работы,

 

выделение

 

таким

 

людям

 

помощников,

 

способных

 

компенсиро-

вать

 

их

 

неумение

 

четко

 

документировать

 

свои

 

результаты.

 

Но

 

при

 

этом

 

следует

 

сравнивать

 

прямые

 

затраты,

 

связанные

 

со

 

стимулированием

 

«привилегированных»

 

сотрудников,

 

а

 

также

 

неявные

 

издержки,

 

связанные

 

с

 

ухудшением

 

морального

 

со-

стояния

 

их

 

сослуживцев,

 

с

 

получаемой

 

организацией

 

выгодой.

 

Основным

 

методическим

 

принципом

 

управления

 

разра-

боткой

 

является

 

целевое

 

управление.

 

Целевое

 

управление

 

представляет

 

собой

 

концепцию

 

пла-

нирования

 

и

 

управления,

 

с

 

помощью

 

которой

 

руководитель

 

ус-


background image

 

 

 
 

188 

танавливает

 

соответствующие

 

цели

 

через

 

своего

 

непосредст-

венного

 

руководителя

 

более

 

высокого

 

ранга

 

и

 

участвует

 

в

 

уста-

новлении

 

целей

 

последнего;

 

при

 

этом

 

результаты

 

его

 

деятель-

ности

 

оцениваются

 

на

 

основании

 

конкретного

 

обсуждения

 

и

 

документального

 

рецензирования.

 

Цели

 

присутствуют

 

в

 

планах

 

самого

 

различного

 

уровня:

 

целевых

 

планах,

 

бюджете,

 

планах

 

выпуска

 

изделий,

 

документа-

ции

 

и

 

т.д.

 

Основной

 

план

 

для

 

программного

 

изделия

 

 

согла-

шение

 

о

 

требованиях.

 

Цели,

 

сформулированные

 

в

 

этом

 

плане,

 

должны

 

включаться

 

в

 

индивидуальные

 

рабочие

 

планы,

 

служа-

щие

 

тем

 

механизмом,

 

посредством

 

которого

 

в

 

системе

 

целевого

 

управления

 

достигается

 

договоренность

 

между

 

исполнителями

 

и

 

их

 

руководителями.

 

Достижение

 

цели

 

гарантируется

 

включением

 

общих

 

це-

лей

 

создания

 

изделия

 

в

 

индивидуальные

 

рабочие

 

планы

 

и

 

орга-

низацией

 

текущего

 

контроля

 

за

 

их

 

выполнением.

 

Соглашение

 

о

 

требованиях,

 

план

 

поддержки,

 

распределе-

ние

 

бюджета

 

и

 

другие

 

средства

 

устанавливают

 

те

 

границы,

 

в

 

пределах

 

которых

 

не

 

требуется

 

использование

 

обратной

 

связи.

 

Существует

 

три

 

вида

 

основных

 

критериев

 

оценки

 

эффек-

тивности

 

той

 

или

 

иной

 

деятельности:

 

 

конкретные

 

свойства;

 

 

затрачиваемое

 

время;

 

 

стоимость.

 

Каждый

 

из

 

этих

 

критериев

 

имеет

 

определенные

 

границы

 

действия,

 

по

 

достижению

 

которых

 

обязательно

 

предоставление

 

отчета

 

руководству

 

о

 

результатах.

 

Однако

 

следует

 

учитывать,

 

что

 

управление

 

созданием

 

программных

 

изделий

 

является

 

примером

 

управления

 

в

 

услови-

ях

 

неопределенности.

 

Качество

 

такого

 

управления

 

зависит

 

от

 

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

 

руководителей

 

предвидеть

 

трудности,

 

планиро-

вать

 

разработку

 

с

 

учетом

 

случайных

 

факторов

 

и

 

уметь

 

защи-

щать

 

такого

 

рода

 

планирование

 

от

 

критики

 

начальства,

 

которое

 

требует

 

непременно

 

«исключить

 

случайность».

 


background image

 

 

 
 

189 

8.1.5 Подбор и обучение кадров 

Поскольку

 

разработка

 

программных

 

средств

 

является

 

достаточно

 

сложной

 

процедурой,

 

то

 

для

 

ее

 

реализации

 

нужны

 

специалисты

 

высокой

 

квалификации,

 

т.е.

 

для

 

проектирования

 

программного

 

обеспечения

 

необходимо

 

выделять

 

высококвали-

фицированный

 

персонал

 

на

 

все

 

участки

 

работы.

 

Следует

 

искать

 

таких

 

людей,

 

которые

 

выполняли

 

подобные

 

функции

 

достаточ-

но

 

хорошо,

 

либо

 

тех,

 

кто

 

выполнял

 

очень

 

грамотно

 

функции

 

чуть

 

меньшей

 

сложности.

 

Руководство

 

проектами

 

надо

 

поручать

 

лишь

 

тем

 

специа-

листам,

 

которые

 

обладают

 

подобным

 

опытом.

 

Здесь

 

очень

 

хо-

рошо

 

работает

 

концепция

 

бригады

 

главного

 

программиста.

 

Но

 

ведь

 

люди

 

где-то

 

должны

 

начинать

 

работать?

 

Так

 

как

 

в

 

настоящее

 

время

 

подготовка

 

в

 

университете

 

достаточно

 

осно-

вательная

 

(структурное,

 

объектно-ориентированное

 

программи-

рование

 

и

 

др.),

 

то

 

нишу

 

проблемных

 

программистов

 

могут

 

за-

полнить

 

выпускники

 

университетов.

 

С

 

наибольшей

 

вероятностью

 

квалифицированный

 

персо-

нал

 

можно

 

найти

 

среди

 

поставщиков

 

универсального

 

про-

граммного

 

обеспечения.

 

Основная

 

черта,

 

которой

 

должен

 

обла-

дать

 

кандидат,

 

 

способность

 

подчиняться

 

дисциплине.

 

Он

 

должен

 

понимать

 

важность

 

нисходящего

 

подхода

 

в

 

создании

 

программного

 

изделия

 

и

 

документирования

 

программы

 

до

 

ее

 

кодировки.

 

Надо

 

обратить

 

внимание

 

на

 

то,

 

что

 

результаты

 

работы

 

любого

 

программиста

 

должны

 

быть

 

понятны

 

другим,

 

и

 

ими

 

можно

 

воспользоваться.

 

Любя

 

попытка

 

выполнить

 

нужную

 

ра-

боту,

 

с

 

помощью

 

специалистов

 

не

 

самого

 

высокого

 

класса,

 

об-

речена

 

на

 

провал.

 

Важным

 

фактором

 

для

 

успешного

 

выполнения

 

работ

 

яв-

ляется

 

обеспечение

 

продвижения

 

по

 

службе.

 

Целесообразно

 

максимально

 

использовать

 

имеющиеся

 

должностные

 

инстан-

ции.

 

Составить

 

формальные

 

должностные

 

инструкции,

 

опреде-

ляющие

 

соответствующее

 

повышение

 

ответственности

 

и

 

обяза-

тельно

 

устанавливающие

 

одинаковые

 

уровни

 

квалификации

 

для

 

должностей

 

одного

 

уровня.

 


background image

 

 

 
 

190 

Кроме

 

вертикального

 

продвижения

 

по

 

служебной

 

лестни-

це,

 

следует

 

обеспечить

 

продвижение

 

по

 

горизонтальному

 

уров-

ню.

 

Должна

 

поощряться

 

широта

 

профессиональных

 

интересов

 

и

 

упрощаться

 

проблема

 

подбора

 

кадров

 

для

 

выполнения

 

менее

 

важных

 

функций

 

путем

 

включения

 

в

 

должностные

 

инструкции

 

более

 

высоких

 

уровней

 

описания

 

тех

 

функций,

 

выполнения

 

ко-

торых

 

достаточно

 

для

 

занятия

 

более

 

низких

 

должностей

 

в

 

тех

 

или

 

иных

 

подразделениях.

 

Принимая

 

на

 

работу

 

людей

 

любого

 

уровня

 

квалификации,

 

необходимо

 

обеспечить

 

им

 

возможность

 

продвижения

 

по

 

служ-

бе

 

в

 

результате

 

дополнительного

 

профессионального

 

обучения.

 

По

 

каждой

 

выполняемой

 

функции

 

должен

 

быть

 

подготовлен

 

семинар,

 

рассчитанный

 

на

 

слушателей

 

с

 

различным

 

уровнем

 

квалификации.

 

Работу

 

семинара

 

следует

 

организовать

 

так,

 

что-

бы

 

на

 

нем

 

рассматривались

 

наиболее

 

значимые

 

и

 

уникальные

 

средства

 

проектирования.

 

Для

 

стимулирования

 

заинтересован-

ности

 

в

 

этих

 

семинарах

 

можно

 

сделать

 

участие

 

в

 

них

 

обяза-

тельным

 

условием

 

для

 

получения

 

конкретного

 

назначения.

 

Не

 

менее

 

важно

 

обучение

 

вне

 

рамок

 

организации.

 

Необ-

ходимо

 

максимально

 

использовать

 

участие

 

сотрудников

 

проек-

та

 

в

 

семинарах

 

по

 

профилю,

 

проводимых

 

передовыми

 

школами

 

программирования.

 

Естественно,

 

что

 

такое

 

обучение

 

дело

 

доро-

гостоящее,

 

поэтому

 

необходимо

 

иметь

 

твердую

 

уверенность,

 

что

 

затраты

 

на

 

обучение

 

дадут

 

должный

 

эффект.

 

8.2 

Организация

 

планирования

 

разработок

 

программного

 

изделия

 

Планы

 

создания

 

программного

 

изделия

 

должны

 

охваты-

вать

 

этапы

 

разработки,

 

документирования,

 

испытаний,

 

обуче-

ния

 

пользователей,

 

сопровождения.

 

Отсутствие

 

планов

 

 

ос-

новная

 

причина

 

переделки

 

программ.

 

Естественно,

 

что

 

в

 

планах

 

невозможно

 

предусмотреть

 

все

 

категории

 

пользователей,

 

одна-

ко

 

можно

 

принять

 

разумные

 

меры

 

предосторожности

 

на

 

не-

предвиденные

 

случаи.

 

Программное

 

изделие

 

 

это

 

собственно

 

программа

 

плюс

 

документация,

 

гарантия

 

качества,

 

рекламные

 

материалы,

 

обу-

чение,

 

распространение

 

и

 

сопровождение.

 

Таким

 

образом,

 

для