Организация сопровождения ПО

Мы уже говорили о том, что сопровождение программного обеспечения является составной частью процесса создания программного обеспечения в целом. Процесс исправления или внесения изменений в программное обеспечение включает этапы определения требований, проектирования, кодирования, тестирования и, конечно, следующего за ними этапа сопровождения. (Таким образом, сопровождение программного обеспечения можно рассматривать как рекурсивный процесс.) И нет ничего удивительного в том, что организация сопровождения немыслима вне связи с созданием программного обеспечения. Действительно, во многих случаях организация сопровождения ведется в тесной связи с разработкой программного обеспечения. Нередки случаи, когда сопровождение поручается программистам — разработчикам обеспечения (что бывает иногда полезно), причем они чередуют работу по сопровождению с созданием программного обеспечения (своей текущей работой), Получается что-то вроде режима разделения времени. Программист А, например, внедряет систему Z и одновременно занимается сопровождением системы Y, которую, возможно, он же и разработал.

Существует другая организация сопровождения, которая тоже распространена и вполне приемлема. Может существовать специальное подразделение, в задачу которого входит исключительно сопровождение. Программисты A, В, и С разрабатывают программное обеспечение, проверяют его и передают сопровождающим программистам X, Y и Z для сопровождения. При этом! сопровождающий программист X может быть ответственным за сопровождение всего программного обеспечения или какой-либо его части.
Существует и промежуточный вариант организации СПО — так называемый зонтик: подразделение, занимающееся сопровождением, находится под прикрытием подразделения, занимающегося созданием программного обеспечения. Программисты могут заниматься чистым сопровождением, или только созданием программного обеспечения, или и тем и другим, но связь между ними столь тесна, что переход от одного к другому осуществляется легко и привычно.
При выборе правильного варианта следует руководствоваться соображениями сложности программного обеспечения и степенью квалификации коллектива программистов. Если все сотрудники презрительно относятся к сопровождению, разумнее всего, пожалуй, распределять обязанности, связанные с ним, равномерно между всеми членами коллектива. Если же среди них есть люди, которым нравится заниматься сопровождением и которые обладают необходимыми для этого способностями, целесообразнее выделить их в специальное подразделение, отвечающее за сопровождение программного обеспечения. Кроме соображений, связанных с личными качествами работников, существуют соображения, которые следует учесть: сложность программного обеспечения и приоритет сопровождения. Если программное обеспечение очень сложное (например, большая операционная система или программа, управляющая работой цеха), имеет смысл привлечь к сопровождению тех специалистов, которые создали ее. При этих условиях лучше работать в режиме разделения времени. (Вполне вероятно, что программисты, создавшие данную сложную программу, уже перешли к созданию новой программы, но они должны по-прежнему нести ответственность за сопровождение предыдущего программного обеспечения.).

Но если сопровождение обладает высоким приоритетом (например, речь идет о системе расчета заработной платы или о системе, работающей в режиме реального времени), будет правильнее поручить сопровождение специальному подразделению, чтобы оно занималось только этим делом.
Совершенно ясно, что существует промежуточный вариант — большая степень сложности плюс высокий приоритет, о котором мы ничего не сказали. Соображения сложности заставляют поручить работу по сопровождению разработчику, высокий же приоритет требует обратного — поручить сопровождение специально выделенному для этого подразделению! Как найти выход из положения? Решение этого вопроса мы оставим за руководителями, которые будут читать нашу книгу. Это и есть превосходный случай поупражняться в решении тех задач, для которых необходима интуиция, основанная на глубоких знаниях. Об этом мы говорили выше.

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

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

 

 


<== предыдущая лекция | следующая лекция ==>
 | Документация к сопровождению




Дата добавления: 2016-03-20; просмотров: 1782;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.