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

Липаев В.В. Программная инженерия

.pdf
Скачиваний:
723
Добавлен:
02.05.2014
Размер:
10.14 Mб
Скачать

Лекция 17. Документирование программных средств

работ и для использования на следующем этапе или при завершении проек­ та ПС.

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

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

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

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

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

требования к качеству конкретных документов и способы его кон­

троля.

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

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

Адаптация номенклатуры и содержания документов ПС к осо­ бенностям системы и пользователей может базироваться на выборе

570

17.3. Планирование документирования проектов сложных программных средств

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

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

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

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

571

Лекция 17. Документирование программных средств

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

Первоначально должен быть разработан проект архитектуры сис­ темы документооборота и руководство по ее применению, настроена выбранная СУБД на управление взаимодействующими подсистемами до­ кументооборота, с соответствующими комплектами выбранных шаблонов документов, с учетом класса и масштаба предполагаемого ЖЦ ПС (см. лекцию 16, п. 16.3). Шаблоны подсистем документооборота должны по­ этапно заполняться реальными данными проекта от заказчика и разра­ ботчиков соответствующих квалификаций и контролироваться менедже­ рами проекта. При этом следует управлять динамикой процессов реализа­ ции процедур документооборота, регистрировать реальное использование ресурсов специалистов, текущее время выполнения процедур процессов ЖЦ ПС и оформления документов в подсистемах. В реальных проектах ПС возможны отклонения от такой линейной схемы двух типов:

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

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

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

572

17.3. Планирование документирования проектов сложных программных средств

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

В состав базовых версий программного продукта входит седьмая

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

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

атационных документов жизненного цикла базовой версии слолсного программного средства реального времени, создаваемого «с нуля». По ряду работ (например, программирование компонентов) в ЖЦ ПС реко­ мендуется использовать специфические документы, детально регламенти­ рующие содержание и применение определенных технологических проце­ дур в соответствии с инструкциями использования инструментальных средств. Детальную структуру каждого документа целесообразно уточ­ нять менеджерам предприятия или проекта, в соответствии с их традиция­ ми, используемой технологией и особенностями проектируемого программ­ ного продукта. Формализованная структура и типовое содержание каждо­ го документа должны позволять контролировать результаты и качество выполненных работ.

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

573

Лекция 17. Документирование программных средств

и характеристик ЖЦ программного средства. Наиболее сложному случаю разработки крупномасштабных критических ПС реального времени высо­ кого качества соответствует номенклатура и детализация всего комплекта представленных документов. Для каждого этапа жизненного цикла выде­ лены три уровня сложности проектов ПС: особо сложные (свыше 200 тысяч строк — крупные), средние по масштабу (свыше 50 тысяч строк — средние) и небольшие проекты программных средств (малые). Рекомендуй емые для таких проектов документы в таблицах отмечены знаком +. Некоторые документы целесообразно применять факультативно, или с со­ кращением и упрощением содержания, что отмечено знаками + -. Выде­ ленные три перечня документов целесообразно использовать как типовые, базовые, при адаптации и формировании состава и содержания докумен­ тов в конкретных проектах, с учетом их особенностей, масштаба и харак­ теристик.

Таблица 17.1

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

Документы

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

1.2Результаты обследования и описание системы

ицелей разработки комплекса программ

1.3Технико-экономическое обоснование проекта программного средства

1.4Концепция и основные предложения по созданию программного средства

1.5Предварительный укрупненный план проектирования и разработки версии программного средства

1.6Системный проект, общее описание программного средства и среды разработки для согласования между заказчиком и разработчиком

1.7Техническое задание на предварительное (детальное) проектирование программного средства

Масштаб проекта Крупный Средний Малый

++

+

+

-

+

+

+

-

++

++ -

++

++ +

574

17.3. Планирование документирования проектов сложных программных средств

Таблица 17.2

Документы проектирования и выбора характеристик качества программного средства

Документы

Масштаб проекта

Крупный

Средний Малый

 

 

2.1Стандарты и ограничения на процессы проек­ тирования программного средства

2.2Спецификация требований к системе и к ком­ плексу программ

2.3Предварительное описание и контроль согла­ сованности требований компонентов про­ граммного средства

2.4Описание функционирования программного средства, взаимодействия с объектами внеш­ ней среды и человеко-машинного диалога

2.5Описания алгоритмов компонентов (модулей) программного средства

2.6Описание информационного обеспечения про­ граммного средства и системы управления базами данных

2.7Требования к характеристикам качества про­ граммного средства

2.8Пояснительная записка к предварительному или детальному проекту программного сред­ ства

2.9Описание концепции технологии автоматизи­ рованного проектирования программного средства

2.10План и поддерживающее его Руководство по документированию жизненного цикла программного средства

2.11Ведомость предварительного или детального проекта программного средства

++

++

+

+

-

+

-

+

+

-

+

-

++ -

+

+

+ -

+

+ -

4 - -

+

+

+

++ -

+

+

-

+ -

+

+

-

 

575

Лекция 17. Документирование программных средств

Таблица 17.3

Документы процессов разработки и программирования компонентов программных средств

Документы

3.1План разработки компонентов про­ граммного средства

3.2План обеспечения качества компонен­ тов программного средства

3.3Стандарты кодирования компонентов программного средства

3.4Руководство по программированию компонентов комплекса программ

3.5Документация на разработанный функциональный программный ком­ понент или модуль программного средства

Масштаб проекта Крупный Средний Малый

+

+

+

+-н-

+

+

- ь -

+

+

+

++ +

Таблица 17.4

 

Документы верификации и тестирования компонентов

 

программных средств

Документы

Масштаб проекта

Крупный Средний Малый

 

 

4.1Состав базовых документов, регламен­

тирующих верификацию и тестирова­

+

+ -

ние программных компонентов

 

 

4.2Исходные данные для верификации

программных компонентов

+

+ -

4.3

Результаты верификации корректности

+

+ -

 

 

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

+ -

 

программного средства

 

 

 

4.4Исходные данные для тестирования

 

компонентов

 

+

+

+

4.5

Организация, подготовка тестирования

+

 

 

 

и обеспечение качества

компонентов

+ -

+ -

4.6

Сценарии тестирования и специфика­

+

+

+

 

ции тестов для каждого

компонента

4.7

План тестирования программного ком­

+

+

+

 

понента

 

4.8

Отчет 0 результатах верификации и

 

 

+

 

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

-f

-f

576

17.3. Планирование документирования проектов сложных программных средств

Окончание табл. 17.4

Документы

Масштаб проекта

 

Крупный

Средний

Малый

 

 

4.9Методика комплексирования фунцио-

нальных компонентов

+

+ -

4.10Оценка реализации комплексирования

функциональных компонентов ком­

+

+ -

плексов программ

 

 

Таблица 17.5

Документы квалификационного тестирования, испытаний

и оценивания качества программных продуктов

Документы

5.1Методика генерации тестов, имитирующих внешнюю среду и обработку результатов квалификационного тестирования

5.2Методика применения проблемно-ориенти­ рованной системы квалификационного тес­ тирования и испытаний комплексов про­ грамм

5.3Методика, содержание и сценарии квалифи­ кационного тестирования и испытаний про­ граммных средств

5.4Программа испытаний комплекса программ

5.5Методики проведения испытаний комплек­ са программ по отдельным характеристикам качества

5.6Протоколы по результатам испытаний функциональных компонентов и/или ком­ плекса программ

5.7Итоговый отчет результатов разработки программного продукта

5.8Акт завершения работ по проекту про­ граммного продукта

5.9Акт приемки программного продукта в про­ мышленную эксплуатацию

Масштаб проекта Крупный Средний Малый

+

+

-

+ -

i

+ -

+

-

 

 

 

+

+

 

+

-

 

+

+

 

+

 

 

+

+

 

+

 

 

+

+

 

+

-

 

+

+

 

+

 

1

+

+

 

+ -

1

+

+

-

+ -

1

577

Лекция 17. Документирование программных средств

Таблица 17.6

 

Документы сопровождения и конфигурационного управления

 

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

Документы

Масштаб проекта

Крупный Средний Малый

 

 

6.1Описание среды жизненного цикла и конфи­

гурации программного средства

+

+

+ -

6.2План сопровождения версий

программного п])одукта

+

+

+ -

6.3План управления конфигурацией программно­

го продукта

+

+

+ -

6.4Программа управления конфигурацией про­

граммного продукта

+

+

+ -

6.5Отчеты пользователей о выявленных дефектах и предложениях по корректировке комплекса

 

программ

+

+

+

6.6

Описание выявленных дефектов и предложе­

 

 

 

 

ний по совершенствованию функций версии

ч-

+

+

 

программного продукта

6.7

Описание подготовленных и утвержденных

 

 

 

 

корректировок и обобщенных характеристик

+

+

+

 

новой базовой версии программного продукта

6.8Извещение пользователям о выпуске новой версии программного продукта и/или о пре­

 

кращении сопровождения предшествующей

+

 

 

 

 

версии

+

-

+ -

6.9

Описание новой базовой версии программного

+

+

 

+

 

продукта

 

6.10

План передачи и внедрения новой базовой

+

+ -

 

 

версии программного продукта пользователям

 

6.11

Отчет 0 результатах эксплуатации снятой с

 

 

 

 

 

сопровождения версии программного продук­

+

 

 

 

 

та и ее архивации

+

-

 

6.12

Отчет 0 результатах тиражирования базовых

 

 

 

 

 

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

+

 

 

 

 

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

+

-

 

578

17.3. Планирование документирования проектов сложных программных средств

Таблица 17.7

Документы процессов эксплуатации программных продуктов

Документы

7.1Общее описание системы, в которой ис­ пользуется программный продукт

7.2Общие требования к формированию поль­ зовательской документации программных продуктов

7.3Описание административного управления программными продуктами системы

7.4Руководство системного администратора программного продукта

7.5Общее описание руководства пользовате­ лей программного продукта

7.6Руководство оперативного пользователя программного продукта

7.7Инструкция по формированию и ведению информации базы данных

7.8Паспорт на программный продукт

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

7.10Руководство по подготовке документов и обучению специалистов применению про­ граммного продукта

Масштаб проекта Крупный Средний Малый

+

+

+ -

+

+

+ -

+

+ -

+ -

+

4 - -

+ -

+

+ -

+ -

+

+

+

+

+ -

+ -

+

+

+

-f

+ -

+ -