Сравнительный анализ структур руководств пользователя программы по ЕСПД и IEEE Std 1063-2001 с учетом рекомендаций «манифеста Кагарлицкого». Показано, что обобщенная структура руководства пользователя, собранная согласно требованиям «устаревших» ГОСТов 19-й системы, существенно превосходит структуру руководства, рекомендуемую суперсовременным IEEE Std 1063-2001. Редакция от 23.01.2022.
Создан 11.02.2005 11:14:22
Когда умирает надежда, приходит отчаяние.
Мудрая латинская поговорка
Как писать руководство пользователя программы? Создать древовидную иерархическую структуру разделов руководства пользователя и заполнить ее разделы содержимым. И вся любовь.
Где взять структуру разделов руководства пользователя? С руководствами на изделия (руководство по эксплуатации по ГОСТ 2.601-95) и на автоматизированные системы (руководство пользователя по РД 50-34.698-90) все более или менее ясно. А вот сам документ «Руководство пользователя» программы в ГОСТах 19-й системы отсутствует как класс.
Каким содержимым наполнять разделы руководства пользователя? Как быть? Главное — не отчаиваться.
Цели и задачи статьи
Цель, как всегда, — попытаться облегчить жизнь разработчику руководства пользователя программы.
Задачи:
- проанализировать существующие стандарты и рекомендации по разработке эксплуатационной программной документации, выявить достоинства и недостатки каждого документа по отдельности;
- вывести некую обобщенную структуру руководства пользователя по ГОСТам 19-й системы из имеющегося набора эксплуатационных программных документов;
- сравнить ее со структурой, рекомендованной IEEE Std 1063-2001;
- а все прочие задачи перекочевали во 2-ю часть статьи…
Примечание от 10.07.2014 г. — В феврале 2005 года был проведен, пожалуй, даже не сравнительный анализ, а скорее сравнительные испытания, показавшие неоспоримое превосходство ГОСТов 19-й системы стандартов над буржуйскими и практически полную несостоятельность последних.
Вопросы, на которые должно дать ответы руководство пользователя
Подарите ребенку незнакомую ему электронную игрушку. Перечень вопросов будет примерно таким (если сразу же не разломает):
- а что это;
- а что им можно делать;
- а что им нельзя делать (у особо одаренных);
- а что надо, чтобы оно работало;
- а что там у него внутри (у детей, склонных к глубокому анализу);
- а как его настроить, чтобы работало так, как я хочу;
- а как его проверить, работает оно или не работает;
- а что и где надо нажимать;
- а что оно еще может делать;
- а что оно говорит, если что-то не так нажимаешь?
Последовательность вопросов может оказаться самой разнообразной. И документ под названием «Руководство пользователя» должен дать ответы на все поставленные вопросы. Все просто. Не так страшен черт, как его малюют.
Руководство пользователя: четыре источника и четыре составных части
Располагаем документами:
- «метагайдом» Кагарлицкого;
- суперсовременным IEEE Std 1063-2001, «IEEE Standard for Software User Documentation»;
- классическими отечественными ГОСТами 19-й системы, включающим в себя перечисленные ниже документы «описательного» характера:
- ГОСТ 19.402-78 ЕСПД. Описание программы;
- ГОСТ 19.502-78 ЕСПД. Описание применения. Требования к содержанию и оформлению;
- ГОСТ 19.503-79 ЕСПД. Руководство системного программиста. Требования к содержанию и оформлению;
- ГОСТ 19.504-79 ЕСПД. Руководство программиста. Требования к содержанию и оформлению;
- ГОСТ 19.505-79 ЕСПД. Руководство оператора. Требования к содержанию и оформлению.
Крайняя четверка из перечня — эксплуатационные программные документы.
Возможно, существуют и иные документы, но автору, основательно порывшемуся в рунетовской свалке, ничего более подходящего заполучить пока не удалось. Яндекс обнаружил в своих недрах еще одну страничку с названием «Как сделать хорошее руководство пользователя», автор которой именует себя на американЬский манер (типа John P. Morgan). Двухстраничное «наставление» с радостными возгласами было немедленно отправлено в корзину.
Манифест Кагарлицкого
Метагайд Кагарлицкого показался многообещающим. Только автор настоящей статьи не уразумел, что есть «метагайд», поэтому позволил себе наглось обозвать метагайд «манифестом». И не погрешил против истины (но это открылось позже — ниже).
(цитаты из манифеста Кагарлицкого)
Мы стремились свести в единую систему всю совокупность типовых требований, которые должны, с нашей точки зрения, предъявляться к технической документации: руководствам, справочникам и т.д. При этом мы основывались на стандартах(!!!) ГОСТ, стандартах компании Microsoft, опыте наших сотрудников и других разработчиков технической документации.
Начало обнадеживающее.
В состав технической документации входят две стержневые части, которые мы будем называть соответственно руководством пользователя и справочником пользователя, или коротко: руководством и справочником (по аналогии с английскими словосочетаниями User’s Guide и User’s Reference). Они могут быть оформлены в виде отдельных документов (для крупных программных продуктов), а могут, напротив, существовать в интегрированном виде. Между ними даже может не быть четкой границы: единый текст способен совмещать в себе черты руководства и черты справочника.
Что-то не так. Автору статьи всегда «казалось», что термин техническая документация трактуется более широко, значительно шире, чем эксплуатационная (программная) документация.
Руководство и справочник — это не столько части документации, сколько понятия, которые воплощают собой два подхода к описанию программного продукта.
По-понятиям так по-понятиям, вот только пацаны начинают нервничать. Руководство не есть понятие, а есть вид документа.
Наша задача не столько в том, чтобы рассказать, как выглядит документация, сколько в том, чтобы дать конкретные рекомендации по ее разработке. Всем известно, какие проблемы возникают в процессе написания связного текста большого объема — как приступить к работе, с чего начать, как расположить материал. Этот подход побуждает видеть в провозглашаемых нами нормах не хаотический их перечень, а иерархическую систему…
На небосклоне засияла звезда по имени Надежда — сейчас уважаемый г-н Кагарлицкий выдаст нам, лишенцам, всеобъемлющую иерархическую структуру руководства пользователя всех времен и народов. Ну же?!
Прежде чем приступить к разработке документации как таковой, необходимо наметить и спланировать общую логику изложения. Может показаться, что жанр технической документации крайне прост: ведь его задачей является «всего лишь» сообщение пользователю некоторых сведений о продукте. Однако если Вы будете исходить из этого в своей работе, Вы будете создавать образцы документации, вовсе непригодные или едва пригодные для практического использования, — даже если все необходимые сведения будут там содержаться. Ваша задача состоит в том, чтобы провести пользователя через перевал, то есть найти в горной цепи место, которое хотя бы и с трудом, но все-таки проходимо для Вашего «подопечного».
Жаль… А так все хорошо начиналось. Со «стандартов ГОСТ» — «стандартов ГОсударственных СТандартов» — простим г-на Кагарлицкого за тавтологию. Только вот решения первой задачи, поставленной автором настоящей статьи, в семидесятидвухстраничном манифесте (Arial’ом 12pt) нет. Уважаемый автор манифеста лишь поставил нам задачу. Что ж, нет пророка в своем отечестве. Может, есть пророк в отечестве буржуйском?
Руководство пользователя по IEEE Std 1063-2001 «IEEE Standard for Software User Documentation»
Забугорный «пророческий» документ IEEE Std 1063-2001 (IEEE в простонародье — «ай-яй-яй») в подразделе 1.2 (Puprose) содержит такую строчку:
This revision provides requirements for the structure, information content, and format of both printed and electronic documentation.
В авторском понимании назначение (намерение, цель, замысел, стремление) документа IEEE Std 1063-2001 состоит в «обеспечении требований к структуре, информационному наполнению, форматированию (оформлению) как электронной, так и печатной пользовательской документации по программным средствам». Что ж, подходяще. Какую же структуру руководства пользователя предлагает IEEE Std 1063-2001?
Структура руководства пользователя по IEEE Std 1063-2001
Опциональная типовая структура руководства пользователя содержится в таблице из раздела Structure of software user documentation документа IEEE Std 1063-2001:
Component |
See subclause |
Required? |
Identification data (package label/title page) |
4.3 |
Yes |
Table of contents |
5.7.1 |
Yes, in documents of more than eight pages after identification data |
List of illustrations |
5.7.2 |
Optional |
Introduction |
3.2 |
Yes |
Information for use of the documentation |
4.4 |
Yes |
Concept of operations |
4.5 |
Yes |
Procedures |
4.6, 4.7 |
Yes (instructional mode) |
Information on software commands |
4.8 |
Yes (reference mode) |
Error messages and problem resolution |
4.9 |
Yes |
Glossary |
4.10 |
Yes, if documentation contains unfamiliar terms |
Related information sources |
4.11 |
Optional |
Navigational features |
5.8 |
Yes |
Index |
5.7.3 |
Yes, if documents of more than 40 pages |
Search capability |
5.7.4 |
Yes, in electronic documents |
For purposes of this standard, the following non-mandatory nomenclature is used for the structural parts of software user documentation. A printed document is structured into logical units called chapters, subdivided into topics, which may be subdivided into subtopics, and printed on physical units called pages.
Здорово. IEEE Std 1063-2001 предлагает «все взять и поделить» — разбить разделы руководства на главы, топики, субтопики и т.д. И наступит всем счастье.
Практический интерес (в рамках задач статьи) представляют выделенные разделы. Посмотрим, как дробить разделы руководства пользователя на более мелкие структурные единицы и каким содержимым предполагается заполнять указанные структурные единицы.
Introduction
Какие сведения должны быть изложены в разделе Introduction согласно IEEE Std 1063-2001? А вот какие
The introduction shall describe the intended audience, scope, and purpose for the document and include a brief overview of the software purpose, functions, and operating environment.
Что ж, замечательно. Структура подразделов Introduction начинает как-то вырисовываться.
Information for use of the documentation
The documentation shall include information on how it is to be used (for example, help on help), and an explanation of the notation (a description of formats and conventions-see 5.8). At least one document in a document set shall identify all documents in the set by title and intended use, including recommendations on which members of the audience should consult which sections of the documentation. In document sets comprising many volumes or products, this information may be provided in a separate «road map» or guide to the document set. Documentation may include identification and discussion of notable changes from the previous version of the document set and the software.
Весьма полезный раздел (в контексте разработки руководства пользователя). Руководство по руководству.
Concept of operations
Documentation shall explain the conceptual background for use of the software, using such methods as a visual or verbal overview of the process or workflow; or the theory, rationale, algorithms, or general concept of operation. Explanations of the concept of operation should be adapted to the expected familiarity of the users with any specialized terminology for user tasks and software functions. Documentation shall relate each documented function to the overall process or tasks. Conceptual information may be presented in one section or immediately preceding each applicable procedure.
Концептуальная информация безусловно важна.
Procedures
Task-oriented instructional mode documentation shall include instructions for routine activities that are applied to several functions:
— Software installation and de-installation, if performed by the user
— Orientation to use of the features of the graphical user interface (see 5.6)
— Access, or log-on and sign-off the software
— Navigation through the software to access and to exit from functions
— Data operations (enter, save, read, print, update, and delete)
— Methods of canceling, interrupting, and restarting operations
These common procedures should be presented once to avoid redundancy when they are used in more complex functions.
И пошла конктерика. Молодцы, буржуи!
Information on software commands
Documentation shall explain the formats and procedures for user-entered software commands, including required parameters, optional parameters, default options, order of commands, and syntax. Documentation may be provided on the development and maintenance of macros and scripts. Reference mode documentation shall contain a reference listing of all reserved words or commands. Examples should illustrate the use of commands. Documentation shall explain how to interrupt and undo operation during execution of a command and how to restart it, if possible. Documentation shall describe how to recognize that the command has successfully executed or abnormally terminated.
Error messages and problem resolution
Documentation should address all known problems in using the software in sufficient detail such that the users can either recover from the problems themselves or clearly report the problem to technical support personnel. Reference mode documentation shall include each error message with an identification of the problem, probable cause, and corrective actions that the user should take. A quick reference card may address error messages by referring the user to more detailed reference documentation. The documentation on resolving problems shall also include contact information for reporting problems with software or its documentation and suggesting improvements.
Выводы по IEEE Std 1063-2001
Но счастье оказалось неполным… Структура разделов первого уровня руководства показана в таблице явно. А дальше — «милый мой, хороший, догадайся сам» («догадайся, мол, сама»). IEEE Std 1063-2001, конечно, «provides requirements for the structure», но не предлагает явной структуры руководства пользователя до рекомендованного ГОСТ 2.105 четвертого уровня вложенности.
Рекомендации типа «Documentation shall explain…», «Examples should illustrate…», «Documentation shall describe…» и им подобные, безусловно, проверены временем. В руководстве пользователя надо и объяснять, и иллюстрировать, и описывать — без всякого сомнения. Но все это и козе понятно, и в ГОСТах 19-й системы прописано.
Итак, вряд ли целесообразно разрабатывать руководства пользователя, основываясь исключительно на рекомендациях IEEE Std 1063-2001. Причины, как минимум, две:
- отсутствие в IEEE Std 1063-2001 четко регламентированной структуры руководства пользователя;
- «поверхностность» IEEE Std 1063-2001, отсутствие «широты охвата» и «глубины проработки».
Отсутствие четко регламентированной структуры руководства пользователя даст возможность заказчику ТРЕТИРОВАТЬ разработчика, см. хотя бы Страшная правда о техническом задании. Бедняга-разработчик будет вынужден, по указке заказчика, изо дня в день менять местами разделы руководства пользователя (гарантированный минимум, полученный опытным путем).
Отсутствие четко регламентированной структуры оборачивается хаосом, как только уровень вложения заголовков снижается до второго-третьего. Пользователь просто зашвырнет такое руководство куда подальше и назовет его автора кретином.
По мнению автора, рекомендации IEEE Std 1063-2001, разработанного при участии сотни забугорных спецов, весьма и весьма поверхностны. Не сможет разработчик, работая по IEEE Std 1063-2001, охватить максимум «характеристик», свойственных программе. В IEEE Std 1063-2001 многие из них попросту не прописаны. Отсутствуют «широта охвата» и «глубина проработки», свойственные отечественным документам.
В крайнем разделе настоящей статьи приведена таблица соответствия ГОСТ 19 и IEEE Std 1063-2001, которую автор статьи начал было составлять, затем бросил и проверять не стал. А выводы пусть каждый сделает сам для себя. И, возможно, в чем-то поправит автора.
Пользовательские документы по ГОСТ 19 (ЕСПД)
В отличие от суперсовременного буржуйского IEEE Std 1063-2001, древние, многими ругаемые отечественные стандарты 19-й системы (Единая система программной документации — ЕСПД) содержат не пространные рассуждения о том, что и как должно разъяснять, иллюстрировать и описывать руководство пользователя, а конкретные требования к структуре и содержанию пользовательских (эксплуатационных) документов.
Перечень ГОСТов 19 «описательного» характера, на основе которых можно, не мудрствуя лукаво, сформировать четкую структуру разделов каждого из «описательных» документов, приведен в разделе Источники. Основной прием — детализация — подробно описан в статье «Как писать техническое задание?!». Далее — сформированные «детализацией» структуры разделов документов согласно ГОСТам из перечня.
Структура разделов описания программы по ГОСТ 19.402-78
Структура разделов описания применения по ГОСТ 19.502-78
Структура разделов руководства системного программиста по ГОСТ 19.503-79
Структура разделов руководства программиста по ГОСТ 19.504-79
Структура разделов руководства оператора по ГОСТ 19.505-79
Выводы по ГОСТам 19.ххх
Ни ГОСТ 19.505-79, ни ГОСТ 19.504-79, ни ГОСТ 19.503-79, взятые по одельности, не могут похвастаться достаточной полнотой структуры.
Зато структуры «описательных» документов ГОСТ 19 обладают как полностью идентичными (по тексту названий), так и схожими по тексту названий разделами и подразделами. К идентичным разделам относятся, к примеру, разделы «Аннотация», имеющие место во всех документах согласно ГОСТ 19.105-78. К схожим (фактически — идентичным) можно отнести подразделы «Назначение программы» и «Сведения о назначении программы».
А почему не попытаться объединить все «описательные» документы? Объединить идентичные и схожие разделы документов, выделить специфические разделы? Быть может, удастся избавиться от неполноты ГОСТ 19.505-79, ГОСТ 19.504-79 и ГОСТ 19.503-79 и получить обобщенную структуру «описательного» документа и обозвать сам документ руководством пользователя программы?
ГОСТы 19.ххх допускают «вводить дополнительные разделы или объединять отдельные разделы», а также «вводить новые». Согласно ГОСТ 19.101-77 «Допускается объединять отдельные виды эксплуатационных документов (за исключением ведомости эксплуатационных документов и формуляра). Необходимость объединения этих документов указывается в техническом задании. Объединенному документу присваивают наименование и обозначение одного из объединяемых документов. В объединенных документах должны быть приведены сведения, которые необходимо включать в каждый объединяемый документ [из 2.6 ГОСТ 19.101-77]»
Сказано — сделано. Только мы нарушим ГОСТы и создадим объединенный документ под названием «Руководство пользователя».
Обобщенная структура руководства пользователя по ГОСТам 19-й системы
Путем слияния структур «описательных» документов ГОСТов 19-й системы в единую структуру, удаления «лишних» одноименных разделов, слияния схожих разделов сформирована общая структура руководства пользователя программы. В табличке сведены и «*» отмечены разделы, присутствующие в каждом отдельном документе.
ГОСТ 19.ххх — обобщенная структура разделов руководства |
ГОСТ 19.402-78 |
ГОСТ 19.502-78 |
ГОСТ 19.503-79 |
ГОСТ 19.504-79 |
ГОСТ 19.505-79 |
Аннотация |
* |
* |
* |
* |
* |
•Назначение документа |
* |
* |
* |
* |
* |
•Краткое изложение основной части документа |
* |
* |
* |
* |
* |
Общие сведения о программе |
* |
* |
|||
•Обозначение и наименование программы |
* |
* |
|||
•Языки программирования, на которых написана программа |
* |
||||
•Сведения о назначении программы |
* |
* |
* |
* |
* |
••Информация, достаточная для понимания функций программы и ее эксплуатации |
* |
||||
•••Возможности программы |
* |
||||
•••Классы решаемых задач |
* |
||||
••••Описание задач |
* |
||||
••••Методы решения задач |
* |
||||
•••Функции, выполняемые программой |
* |
* |
|||
••Описание основных характеристик и особенностей программы |
* |
* |
|||
•••Временные характеристики |
* |
||||
•••Режим работы |
* |
||||
•••Средства контроля правильности выполнения и самовосстанавливаемости программы |
* |
||||
••Ограничения области применения программы |
* |
||||
•••Сведения о функциональных ограничениях на применение |
* |
||||
Условия применения программы |
* |
* |
* |
||
•Условия, необходимые для выполнения программы |
* |
* |
* |
||
••Сведения о технических и программных средствах, обеспечивающих выполнение программы |
* |
||||
•••Требования к техническим средствам |
* |
* |
|||
••••Типы ЭВМ, устройства, используемые при работе программы |
* |
||||
••••Объем оперативной памяти |
* |
||||
••••Минимальный и (или) максимальный состав аппаратурных и программных средств |
* |
||||
••••Требования к составу и параметрам периферийных устройств |
* |
||||
•••Программное обеспечение, необходимое для функционирование программы |
* |
||||
••••Требования к программному обеспечению |
* |
||||
••••Требования к другим программам |
* |
||||
••••Требования и условия организационного, технического и технологического характера |
* |
||||
Описание логической структуры |
* |
||||
•Алгоритм программы |
* |
||||
•Используемые методы |
* |
||||
•Сведения о структуре программы |
* |
* |
|||
•Сведения о составных частях программы |
* |
||||
•Описание функций составных частей |
* |
||||
•Сведения о связях между составными частями программы |
* |
* |
|||
•Сведения о связях с другими программами |
* |
* |
|||
Сведения о входных и выходных данных |
* |
* |
|||
•Общие характеристики входной и выходной информации |
* |
||||
•Сведения о входных данных |
* |
* |
|||
••Характер, организация и предварительная подготовка входных данных |
* |
* |
|||
•Сведения о выходных данных |
* |
* |
|||
••Характер и организация выходных данных |
* |
* |
|||
••Формат, описание и способ кодирования выходных данных |
* |
||||
•Описание кодирования информации |
* |
||||
Настройка программы |
* |
||||
•Описание действий по настройке программы |
* |
||||
••Настройка на состав технических средств |
* |
||||
••Выбор функций |
* |
||||
••Поясняющие примеры |
* |
||||
Проверка программы |
* |
||||
•Описание способов проверки работоспособности программы |
* |
||||
••Контрольные примеры |
* |
||||
••Методы прогона |
* |
||||
••Результаты |
* |
||||
Выполнение программы |
* |
||||
•Загрузка программы |
* |
* |
* |
||
•Запуск программы |
* |
||||
•Входные точки в программу* |
* |
||||
•Способы передачи управления и параметров данных |
* |
||||
•Выполнение программы |
* |
||||
••Описание выполняемой функции 1 |
* |
||||
••Формат и возможные варианты команд для выполнения функции 1 |
* |
||||
••Ответы программы на команды выполнения функции 1 |
* |
||||
•Завершение выполнения программы |
* |
||||
Дополнительные возможности |
* |
||||
•Описание дополнительных функциональных возможностей программы |
* |
||||
•Описание применения дополнительных функциональных возможностей программы |
* |
||||
Сообщения программы |
* |
* |
* |
||
•Тексты сообщений, выдаваемых в ходе (настройки, проверки, выполнения) программы |
* |
* |
* |
||
••Описание содержания |
* |
* |
* |
||
••Описание действий, которые необходимо предпринять по этим сообщениям |
* |
* |
* |
Выводы по обобщенной структуре руководства пользователя по ГОСТ 19.ххх
Обобщенная структура руководства пользователя по ГОСТ 19.ххх явно не страдает, как IEEE Std 1063-2001, отсутствием широты охвата. Избыток, как известно, рождает качество. Перечислено все, чем может характеризоваться программа. Отдельные подразделы могут показаться даже излишними, к примеру, подраздел «Языки программирования, на которых написана программа».
Казалось бы, какое дело пользователю, на каком языке был написан исходный текст программы? С другой стороны, может «…это кому-нибудь нужно? Значит — это необходимо…». Ведь хочется при покупке буржуйского телевизора заполучить и принципиальную схему на него. Самсунги и соньки тоже выходят из строя. А вдруг неисправность пустяковая и устранить ее представляется возможным в домашних условиях, без поездки в сервисный центр?
В то же время, при всей широте охвата, в явном виде отсутствуют:
- Software installation and de-installation, if performed by the user;
- Orientation to use of the features of the graphical user interface;
- Access, or log-on and sign-off the software;
- Navigation through the software to access and to exit from functions и многое другое.
Автору удалось разбросать кое-что в разделе Таблица соответствия ГОСТ 19.ххх и IEEE Std 1063-2001, но времени «наморщить ум» всегда не хватает, руководство пользователя, как всегда, должно было быть готово еще на прошлой неделе.
Показать связи разделов обобщенного руководства пользователя с разделами ГОСТ 19.201-78 ЕСПД. Техническое задание, требования к содержанию и оформлению автор поленился, поскольку указанные связи очевидны.
Выводы по источникам
Итак, если первые три задачи в целом решены, крайняя задача осталась нерешенной.
Автор манифеста более склонен к рекомендациям по подбору слов* и построению предложений, IEEE Std 1063-2001, в лучшем случае, приводит требования к структуре руководства пользователя, но не дает особой конкретики, в ГОСТ 19.ххх не прописаны процедуры заполнения содержимым разделов руководства. Может, организовать эдакую смесь французского с нижегородским? Использовать все четыре источника в качестве четырех составных частей?
* Нынче в моде буржуйское понятие — т.н. контролируемый язык. Среди представителей «просвещенной русской интеллигенции» наибольшей популярностью пользуется отечественный аналог в глагольной форме повелительного наклонения — фильтруй базар!
Смесь французского с нижегородским
Почему бы нет? Взять лучшее из ГОСТов 19-й системы, — обобщенную структуру руководства пользователя, добавить к ней немногочисленные толковые рекомендации из IEEE Std 1063-2001 и разбавить неисчерпаемой стилистической культурой и ресурсами языка из манифеста Кагарлицкого? Придать смеси стройный строгий вид, сформировать очередной учебно-тренировочный документ с подробными комментариями? А что делать, если ни один из перечисленных выше источников и составных частей в отдельности не способны дать ответы на все поставленные вопросы?
Таблица соответствия ГОСТ 19 и IEEE Std 1063-2001
ГОСТ 19.ххх |
IEEE Std 1063-2001 |
Аннотация |
Introduction |
The introduction shall describe the intended audience, scope, and purpose for the document and include a brief overview of the software purpose, functions, and operating environment |
|
•Назначение документа |
purpose for the document (Introduction) |
•Краткое изложение основной части документа |
scope (Introduction) |
Общие сведения о программе |
|
•Обозначение и наименование программы |
аналогичный подраздел отсутствует |
•Языки программирования, на которых написана программа |
то же |
•Сведения о назначении программы |
brief overview of the software purpose (Introduction) |
••Информация, достаточная для понимания функций программы и ее эксплуатации |
аналогичный подраздел отсутствует |
•••Возможности программы |
то же |
•••Классы решаемых задач |
» |
••••Описание задач |
» |
••••Методы решения задач |
Documentation shall relate each documented function to the overall process or tasks |
•••Функции, выполняемые программой |
brief overview of the software … functions (Introduction) |
••Описание основных характеристик и особенностей программы |
аналогичный подраздел отсутствует |
•••Временные характеристики |
то же |
•••Режим работы |
» |
•••Средства контроля правильности выполнения и самовосстанавливаемости программы |
» |
••Ограничения области применения программы |
» |
•••Сведения о функциональных ограничениях на применение |
» |
Условия применения программы |
If different versions of the software are available for different operating environments, the title page should specify the applicable operating environment(s), including version(s) of hardware, communications, and operating system(s) (4.3. Content of identification data) |
•Условия, необходимые для выполнения программы |
аналогичный подраздел отсутствует |
••Сведения о технических и программных средствах, обеспечивающих выполнение программы |
Documentation for the hardware and software environment (4.11 Information on related information sources) |
•••Требования к техническим средствам |
аналогичный подраздел отсутствует |
••••Типы ЭВМ, устройств, используемые при работе программы |
то же |
••••Объем оперативной памяти |
» |
••••Минимальный и (или) максимальный состав аппаратурных и программных средств |
» |
••••Требования к составу и параметрам периферийных устройств |
» |
•••Программное обеспечение, необходимое для функционирование программы |
brief overview of the … operating environment (Introduction) |
••••Требования к программному обеспечению |
аналогичный подраздел отсутствует |
••••Требования к другим программам |
то же |
•••Требования и условия организационного, технического и технологического характера |
» |
Описание логической структуры |
|
•Алгоритм программы |
algorithms (4.5 Concept of operations) |
•Используемые методы |
using such methods as a visual or verbal overview of the process or workflow (4.5 Concept of operations) |
•Сведения о структуре программы |
аналогичный подраздел отсутствует |
•Сведения о составных частях программы |
то же |
•Описание функций составных частей |
» |
•Сведения о связях между составными частями программы |
» |
•Сведения о связях с другими программами |
» |
Сведения о входных и выходных данных |
|
•Общие характеристики входной и выходной информации |
аналогичный подраздел отсутствует |
•Сведения о входных данных |
то же |
••Характер, организация и предварительная подготовка входных данных |
» |
•Сведения о выходных данных |
» |
••Характер и организация выходных данных |
» |
••Формат, описание и способ кодирования выходных данных |
» |
•Описание кодирования информации |
» |
Настройка программы |
Identification of technical or administrative activities that must be done before starting the task (4.7 Information for procedures and tutorials) |
•Описание действий по настройке программы |
аналогичный подраздел отсутствует |
••Настройка на состав технических средств |
то же |
••Выбор функций |
» |
••Поясняющие примеры |
» |
Проверка программы |
|
•Описание способов проверки работоспособности программы |
аналогичный подраздел отсутствует |
••Контрольные примеры |
Examples should illustrate the use of commands (4.8 Information on software commands) |
••Методы прогона |
аналогичный подраздел отсутствует |
••Результаты |
то же |
Выполнение программы |
|
•Загрузка программы |
Software installation and de-installation, if performed by the user (4.6 Information for general use of the software) |
•Запуск программы |
аналогичный подраздел отсутствует |
•Входные точки в программу* |
Access, or log-on and sign-off the software (4.6 Information for general use of the software) |
•Способы передачи управления и параметров данных |
аналогичный подраздел отсутствует |
•Выполнение программы |
то же |
••Описание выполняемой функции 1 |
A brief overview of the purpose of the procedure and definitions or explanations of necessary concepts not elsewhere included (4.7 Information for procedures and tutorials) |
••Формат и возможные варианты команд для выполнения функции 1 |
Navigation through the software to access … functions (4.6 Information for general use of the software) |
••Ответы программы на команды выполнения функции 1 |
Documentation shall describe how to recognize that the command has successfully executed or abnormally terminated (4.8 Information on software commands) |
•Завершение выполнения программы |
Navigation through the software … to exit from functions |
Дополнительные возможности |
|
•Описание дополнительных функциональных возможностей программы |
аналогичный подраздел отсутствует |
•Описание применения дополнительных функциональных возможностей программы |
то же |
Сообщения программы |
Relevant warnings, cautions, and notes that apply to the entire procedure (4.7 Information for procedures and tutorials) |
•Тексты сообщений, выдаваемых в ходе (настройки, проверки, выполнения) программы |
аналогичный подраздел отсутствует |
••Описание содержания |
то же |
••Описание действий, которые необходимо предпринять по этим сообщениям |
» |
Всем доброго времени суток, кто решил прочитать статью, посвященную документации. Здесь вы найдёте как общие, так и довольно специфические советы по созданию руководства пользователя. Надеюсь, они будут вам полезны.
Приятного чтения.
Если перед вами стоит вопрос – нужно ли вашему продукту пользовательское руководство, то отвечу сразу – да, нужно. Почему? На это есть две причины:
1. Качественная документация повышает лояльность клиента и ценность продукта в целом.
Как это не странно, но люди до сих пор читают пользовательскую документацию. Конечно, не просто так, а когда сталкиваются с проблемой. И если с руководством все хорошо, то пользователь быстро найдет ответ на свой вопрос – это будет ещё один балл в копилку вашего проекта!
2. Руководство пользователя экономит время и силы техподдержки.
Данный факт напрямую зависит от первого. Если документация качественная, то пользователи будут редко обращаться в техподдержку, и ваша команда будет работать с действительно нестандартными ситуациями. Ну а если руководство «так себе», то поддержка будет завалена однотипными вопросами. Из-за этого пользователям придется дольше ждать ответа, поддержке больше работать, а это в свою очередь будет злить как пользователя, так и команду.
А теперь к советам!
Общие советы по созданию руководства пользователя
Прежде чем начинать писать руководство пользователя нужно ответить на несколько вопросов. — Для кого вы пишите? Кто будет пользоваться файлом справки? (ваша целевая аудитория)
— Где скорее всего пользователи будут прибегать к документации? (дома, на работе, в машине)
— Насколько объективно сложен для понимания продукт и как часто пользователь будет обращаться к документации?
И так, вы ответили на эти вопросы и теперь можете сделать вывод какого размера документация вам нужна, какой стиль изложения в ней использовать, и как часто пользователь будет читать документ.
(Для изложения лучше всего выбрать нейтрально-формальный стиль)
Структура руководства пользователя
У любого качественной документации продуманная и логичная структура. Представьте, что вы сами работаете в программе и сталкиваетесь с проблемой. Открываете файл справки – а там просто сплошной текст. Такая документация вам не поможет.
Создайте оглавление, которое будет началом вашего руководства. Оно поможет вам в дальнейшем написании документации, а также поможет пользователю ориентироваться в тексте.
В первом разделе расскажите общую информацию о продукте. Для чего создан проект и какие задачи он решает.
Во второй «главе» укажите основные элементы интерфейса. Клиент вряд ли сможет достичь своей цели в программе, если не будет знать для чего служат различные детали интерфейса. Объясните предназначение всех окон, кнопок и так далее.
Дальше расскажите, как эффективно пользоваться программой. Какие задачи стоят перед пользователем и как продукт быстро их решает.
В любом руководстве желательны разделы «Частые вопросы» и «Устранение типовых проблем». Расскажите о проблемах, с которыми часто сталкиваются клиенты и о путях их решения.
Информацию для этого раздела лучше брать у техподдержки. Проанализируйте, какие вопросы задаются чаще всего и ответьте на них один раз максимально информативно.
И последний «обязательный» раздел, которой точно должен быть в любой документации – «контактная информация». Данный раздел даст пользователю возможность связаться с разработчиком. Если руководство вдруг не закрывает потребность читателя, то он может обратиться в поддержку. Кроме того, клиент может дать совет, поделиться опытом или предложить выгодное вам сотрудничество.
Профессиональный совет: если вы хотите максимально облегчить ношу клиента при чтении документации создайте контекстно-зависимую справку. Что это такое?
Представьте, что вы работаете в программе для создания пользовательской документации. Открываете меню основных настроек и видите раздел «аннотирование экрана» Заходите в него, там показаны разные стили аннотации, тени, фон и так далее. Но что такое аннотация? Допустим вы не знаете — нажимаете кнопку F1 и перед вами открывается руководство именно на той странице, где рассказано об «аннотировании экрана»
Как ее сделать? Смотрите ниже.
Контент
И так, мы создали «каркас» нашей документации, но чтобы руководство стало полезным нужно наполнить её компетентной информацией.
Конкретного совета дать невозможно, так как все продукты разные. Поэтому расскажу про общие положения, которые делают документацию лучше.
1. Понятность.
Помните, что руководство будут читать люди, которые не сильно знакомы с вашим продуктом. Пишите простым языком, избегайте профессиональных терминов. Руководство пользователя должно быть написано на языке этого самого пользователя, а не на языке писателя.
2. Наглядность.
Добавляйте в руководство побольше графики и скриншотов с аннотациями. Читателю будет проще и приятнее решать проблему, если будет наглядно показано как это делать.
3. Видео.
Лучше один раз увидеть, чем сто раз услышать. Продемонстрируйте пользователю последовательность действий для достижения конкретной цели. Документация, содержащая видео вставки будет пользоваться большей популярностью, чем обычный текстовый документ.
Но как добавить в документацию видео? Смотрите ниже.
Больше советов!
Когда документация будет готова, чтобы она стала «полноценной» её нужно опубликовать. Иначе какой от неё толк, если клиент не может её прочитать. У «юзера» всегда должен быть доступ к документации, и не важно где он. Такую потребность легко закрывают три формата: HTML, PDF и CHM.
Создайте файл справки и загрузите его прямо в вашу программу в формате CHM. Таким образом, у пользователя будет возможность открыть документ, не выходя из программы. Не забудьте добавить элемент вызывающий руководство в меню программы.
Выложите руководство на сайт в формате HTML, чтобы клиент мог обратиться к документации, даже не работая с программой. Кроме того, документация, выложенная на сайт, повышает SEO факторы сайта.
И напоследок, переведите пользовательскую документацию в формат PDF, чтобы клиенты могли скачать и распечатать руководство.
Но помните, что после публикации документации, придется иногда её обновлять.
Инструменты
Для того, чтобы написать, а затем опубликовать документацию одного Wordа не хватит, но и пользоваться большим количеством программ тоже не хочется.
Ну и пользуясь случаем, я хочу рассказать про проект, в котором я работаю уже много лет и который закрывает все потребности писателей пользовательской документации.
Dr.Explain – программа для создания руководств пользователя для ПО, web-сервисов и баз знаний.
Благодаря «доктору» вы сможете опубликовать и обновлять документацию в востребованных форматах (CHM; HTML; PDF; DOC), не выходя из программы.
В программе есть шаблоны документации, ведь по образцу работать проще.
Импортируйте в программу заранее написанные фрагменты документации.
Вы сможете создать контекстно-зависимую документацию, настроить визуальный стиль руководства, добавить в него видео и многое другое!
Какой можно сделать вывод
Если вы хотите создать по-настоящему хорошую документацию – придется потрудиться, потому что это займет много времени и усилий всей команды. Но игра стоит свеч, так как после этого вы получите лояльных и довольных клиентов.
Руководство пользователя должно стать персональным гидом по продукту для клиента. Если пользователь останется недовольным после работы с документацией, то это может повлиять на решение отказаться от продукта.
Работая с Dr.Explain, можно быстро написать пользовательскую документацию, которая будет помогать клиентам разбираться в продукте, а вам позволит сосредоточить свои силы на более важных задачах — разработке и продвижении программного продукта.
Спасибо за внимание!
Со всеми возможностями Dr.Explain можно ознакомиться здесь:
Как написать руководство пользователя программы или сайта — инструкции, советы, помощь, программное обеспечение
Журавлев Денис
Что такое руководство пользователя и для чего его создавать
Ежедневно создаются новые продукты, программы, сервисы и часто пользователям приходится несладко при освоении какой-нибудь сложной программы, поэтому каждому новому продукту желательно собственное руководство. Для чего?
Большинство людей не хочет разбираться с чем-то незнакомым без персонального, всегда доступного и понятного помощника. А именно им и является хорошее руководство пользователя.
Общие советы по созданию пользовательской документации
Перед тем как приступить к созданию руководства, нужно определиться с некоторыми важными моментами. Например, определить, для кого вы его пишете? Кто его будет читать — рядовые пользователи, для которых важны базовые функции продукта, или люди, которым нужны особые, нечасто используемые функции программы/сервиса.
После этого важно подумать о том:
- Где пользователь будет к нему обращаться: дома, на работе, в машине?
- Как часто он будет его просматривать?
- Насколько объективно сложен для понимания продукт?
Из этого можно сделать вывод, насколько интенсивно пользователь будет работать с документацией, а значит уже можно выбрать между сжатым «справочником» или объемным «путеводителем» Также важно, чтобы руководство писал профессионал, знающий продукт. Так что по возможности делегируйте написание техническому специалисту или аналитику, у которого есть полное представление о всех тонкостях продукта.
Определившись со всеми представленными пунктами, станет понятнее, какой нужно использовать стиль изложения, какого объема написать текст. Но помните, что излишне стилистически окрашенные слова мешают пользователю добраться до сути. Так что лучшим вариантом в большинстве случаев будет нейтрально-формальный стиль. Пишите так, чтобы пользователь вас понял. Постарайтесь по возможности избегать технических терминов, но проанализируйте — не сделает ли полное отсутствие терминов ваше руководство бесполезным?
Структура руководства пользователя
После того как вы ответили на предыдущие вопросы, создайте структуру руководства. У любого хорошего «путеводителя» хорошая и логичная структура. Начните с оглавления. Информативное содержание поможет читателю легко ориентироваться в документе.
В первом разделе желательно рассказать общую информацию о программе:
- Для чего создан продукт.
- Какие задачи он решает.
- Какие основные выгоды от использования для клиента.
В следующем разделе можно указать основные элементы пользовательского интерфейса. Пользователю будет трудно разобраться в софте, если он не поймёт для чего служат различные элементы интерфейса, или он не разберётся в основных режимах работы ПО. Опишите понятным языком предназначение экранов и окон.
Создайте раздел, где расскажете о наиболее эффективных способах применения продукта для решения типовых задач. Какие цели стоят перед клиентом, и как ваша программа/сервис помогает достичь их. Укажите информацию о том, как быстро и продуктивно пользоваться программой.
Ни одно руководство не обойдется без таких разделов как: «Частые вопросы» и «Устранение типовых проблем» В них разбираются вопросы и проблемы, с которыми часто сталкиваются пользователи. Для заполнения данного раздела вам скорее всего понадобятся уже готовые отзывы клиентов. Если у вас абсолютно новый продукт, вы можете предугадать проблемы ваших клиентов либо на первое время не включать данный пункт в ваше руководство.
Иногда технические писатели забывают о важном моменте в руководстве пользователя — контактная информация. Этот раздел поможет пользователям связаться с вами, даже если у них нет никаких вопросов и руководство полностью закрывает все их потребности. Клиент может дать совет, поделиться опытом или предложить выгодное вам сотрудничество.
Инструменты для быстрого создания руководства пользователя
Но как создать руководство пользователя, если пишешь его впервые? Или что делать, если руководство пользователя нужно постоянно обновлять и дорабатывать? Или нужны особые функции, которых нет в традиционных текстовых редакторах, например, в MS Word.
Одним из популярных инструментов для создания качественного руководства является программа Dr. Explain (https://www.drexplain.ru), в которой уже есть готовые шаблоны руководств пользователя с готовой структурой разделов и в которой удобно обновлять документацию, как бы часто эти обновления не происходили.
Видео-обзор основных возможностей программы Dr.Explain
Удобной особенностью инструмента является возможность экспортировать один и тот же документ в форматы: HTML, CHM, PDF. Простой и понятный интерфейс сам подскажет, как быстро просмотреть документ в различных форматах и настроить его под вывод в эти форматы.
Любой проект в Dr.Explain вы можете создать с нуля или импортировать уже существующую документацию, например из формата MS Word, HTML или CHM-файла, и буквально за несколько минут создать из нее онлайн-помощь, файл справки в формате CHM, или документ в формате PDF.
При создании руководства важно опираться на заранее составленный план. Дерево проекта в Dr.Explain поможет структурировать документ по вашему усмотрению. Вы можете добавлять, удалять перемещать разделы и переименовывать их. Для каждого раздела вы можете определить, в какой формат он будет экспортироваться. Также в работе удобно использовать статусы готовности разделов.
У программы свой собственный редактор, оптимизированный под работу со сложной документацией. Основные функции редактора вынесены в компактный тулбар. Это — управление стилем текста, форматирование абзацев, вставка ссылок, изображений, видео, таблиц и списков, а также вставка специальных объектов. Dr. Explain экономит время и силы своих пользователей. Разработчики документации часто сталкиваются с проблемой многократного использования одного и того же фрагмента текста и прибегают к очевидным решениям — «Ctrl+c», Ctrl+v». Dr.Explain предлагает решение по повторному использованию контента — текстовые переменные. Это решение экономит время, когда нужно много раз использовать один и тот же текст, особенно, который может периодически изменяться — например, версия документируемой системы.
Многие российские компании сталкиваются с тем, что руководство пользователя нужно писать согласно ГОСТ 19 и ГОСТ 34. Dr.Explain активирует поддержку требований ГОСТ фактически одним кликом. Программа автоматически сформирует структуру обязательных разделов и установит требуемые параметры страницы, стили абзацев, списков и заголовков.
Часто техническим писателям при документировании пользовательского интерфейса приходится снабжать изображения пояснительными выносками. Для таких случаев программа поддерживает специальные графические объекты — аннотированные экраны. Чаще всего аннотируются скриншоты программ и страниц веб-сайтов. Уникальной особенностью Dr.Explain является автоматическая аннотация изображений, получаемых при захвате экранов с окнами программ или сайтов. Программа анализирует структуру окон и добавляет пояснительные выноски ко всем значимым элементам.
Кроме того, Dr.Explain позволяет нескольким авторам одновременно работать над проектом с использованием сервиса www.tiwri.com, учетную запись на котором можно создать бесплатно за пару минут. При внесении правок одним автором сервис блокирует редактируемые разделы проекта для изменения другими авторами. По окончании редактирования изменения отправляются на сервер, и блокировка снимается. Так несколько человек могут одновременно работать над различными разделами проекта без риска помешать друг другу.
Попробовать режим многопользовательской работы в Dr.Explain можно даже с бесплатной лицензией. Вы можете создать общий проект и полноценно работать с ним в многопользовательском режиме до семи дней.
Почему компании выбирают Dr.Explain для создания руководств пользователя
Павел Свиридов, профессиональный военный, полковник, создатель астрологической системы «Вега Матрица»
«Только программа Dr.Explain обладала всеми необходимыми возможностями. А главное — она давала простор для творчества. Можно было выбрать цветовую гамму, вид и форму служебных элементов, настраиваемые шаблоны. Это позволило мне сохранить стилевое единство документации и самой программы. Ну, и конечно, полуавтоматическая обработка материала существенно облегчает и ускоряет работу по созданию хелпа.
Обучение работе в Dr.Explain было наглядным и сделано возможностями самой программы, что безусловно повлияло на мой выбор в ее пользу».
Прочитать полный кейс компании «Вега Матрица вы можете перейдя по ссылке
Наталья Обухова, бизнес-аналитик компании CRM Expert
«По классике жанра был пилотный проект на двух фаворитах (Dr.Explain и HelpNDoc) и муки выбора.
Через неделю справка была полностью готова. Конечно, если мы набивали ее «с нуля», за это время мы бы не успели. Мы просто конвертировали все бумажные инструкции во внутренний формат программ, изменили каталогизацию и организовали систему гиперссылок.
Сначала фаворитом выбора была другая система, но решающим фактором в пользу Dr.Explain стал возглас человека, выполняющего основную часть работы по переносу текста: «Вжух! И вся структура документа перенеслась в файл справки». Функция импорта в Dr.Explain отработала на ура и сэкономила кучу времени.
Также очень подкупил дизайн веб-справки, который формируется Dr.Explain, и красивый способ организации подписей к окнам нашей системы. В Dr.Explain это называется «Аннотирование экрана».
Возможность установки статуса раздела тоже оказалась очень удобной, особенно, после импорта старой версии справки легко отслеживать, какие разделы требуют обновления, в каких еще ведутся изменения, а какие уже обновлены и актуальны».
Прочитать полный кейс компании CRM Expert
Николай Вальковец, разработчик компании 2V
«Мы значительно сократили время работы техподдержки с новыми клиентами на этапе подключения. Раньше требовалось проводить онлайн презентации и видео конференции для новых клиентов, объясняя особенности программы. Сейчас же, один раз постаравшись максимально подробно всё описать, мы избавили себя и нашу техподдержку от этой работы. Нам импонирует простота программы и скорость работы. Можно быстро редактировать, добавить новые пункты в документацию, сохранить в формате HTML и выложить на сайт».
Прочитать кейс компании V2
Подытожим
Создание и написание хорошей пользовательской документации — это труд, который требует много времени и усилий. Но если успешно справиться с задачей, можно навсегда получить лояльных и довольных клиентов. Не забывайте о том, что недовольство от некачественного руководства может быть спроецировано пользователем на сам продукт и повлиять на дальнейшие решения о его выборе. Пользовательская документация должна стать персональным и незаменимым помощником. Используя Dr. Explain, вы сможете быстро создать качественное руководство пользователя, которое будет помогать пользователям разбираться в продукте, а вам позволит сосредоточить свои силы на более важных задачах — разработке и продвижении программного продукта.
Скачать Dr.Explain с неограниченной по срокам возможностью бесплатной работы можно по адресу: https://www.drexplain.ru/download/
Успешных вам разработок!
Смотрите также
- Dr.Explain — инструмент для создания мобильной версии пользовательской документации к программным продуктам
- Шаблоны файлов помощи, руководства пользователя программного обеспечения или сайта, шаблон базы знаний — бесплатные шаблоны и примеры пользовательской документации
Сравнительный анализ структур руководств пользователя программы по ЕСПД и IEEE Std 1063-2001 с учетом рекомендаций «манифеста Кагарлицкого». Показано, что обобщенная структура руководства пользователя, собранная согласно требованиям «устаревших» ГОСТов 19-й системы, существенно превосходит структуру руководства, рекомендуемую суперсовременным IEEE Std 1063-2001. Редакция от 23.01.2022.
Создан 11.02.2005 11:14:22
Когда умирает надежда, приходит отчаяние.
Мудрая латинская поговорка
Как писать руководство пользователя программы? Создать древовидную иерархическую структуру разделов руководства пользователя и заполнить ее разделы содержимым. И вся любовь.
Где взять структуру разделов руководства пользователя? С руководствами на изделия (руководство по эксплуатации по ГОСТ 2.601-95) и на автоматизированные системы (руководство пользователя по РД 50-34.698-90) все более или менее ясно. А вот сам документ «Руководство пользователя» программы в ГОСТах 19-й системы отсутствует как класс.
Каким содержимым наполнять разделы руководства пользователя? Как быть? Главное — не отчаиваться.
Цели и задачи статьи
Цель, как всегда, — попытаться облегчить жизнь разработчику руководства пользователя программы.
Задачи:
- проанализировать существующие стандарты и рекомендации по разработке эксплуатационной программной документации, выявить достоинства и недостатки каждого документа по отдельности;
- вывести некую обобщенную структуру руководства пользователя по ГОСТам 19-й системы из имеющегося набора эксплуатационных программных документов;
- сравнить ее со структурой, рекомендованной IEEE Std 1063-2001;
- а все прочие задачи перекочевали во 2-ю часть статьи…
Примечание от 10.07.2014 г. — В феврале 2005 года был проведен, пожалуй, даже не сравнительный анализ, а скорее сравнительные испытания, показавшие неоспоримое превосходство ГОСТов 19-й системы стандартов над буржуйскими и практически полную несостоятельность последних.
Вопросы, на которые должно дать ответы руководство пользователя
Подарите ребенку незнакомую ему электронную игрушку. Перечень вопросов будет примерно таким (если сразу же не разломает):
- а что это;
- а что им можно делать;
- а что им нельзя делать (у особо одаренных);
- а что надо, чтобы оно работало;
- а что там у него внутри (у детей, склонных к глубокому анализу);
- а как его настроить, чтобы работало так, как я хочу;
- а как его проверить, работает оно или не работает;
- а что и где надо нажимать;
- а что оно еще может делать;
- а что оно говорит, если что-то не так нажимаешь?
Последовательность вопросов может оказаться самой разнообразной. И документ под названием «Руководство пользователя» должен дать ответы на все поставленные вопросы. Все просто. Не так страшен черт, как его малюют.
Руководство пользователя: четыре источника и четыре составных части
Располагаем документами:
- «метагайдом» Кагарлицкого;
- суперсовременным IEEE Std 1063-2001, «IEEE Standard for Software User Documentation»;
- классическими отечественными ГОСТами 19-й системы, включающим в себя перечисленные ниже документы «описательного» характера:
- ГОСТ 19.402-78 ЕСПД. Описание программы;
- ГОСТ 19.502-78 ЕСПД. Описание применения. Требования к содержанию и оформлению;
- ГОСТ 19.503-79 ЕСПД. Руководство системного программиста. Требования к содержанию и оформлению;
- ГОСТ 19.504-79 ЕСПД. Руководство программиста. Требования к содержанию и оформлению;
- ГОСТ 19.505-79 ЕСПД. Руководство оператора. Требования к содержанию и оформлению.
Крайняя четверка из перечня — эксплуатационные программные документы.
Возможно, существуют и иные документы, но автору, основательно порывшемуся в рунетовской свалке, ничего более подходящего заполучить пока не удалось. Яндекс обнаружил в своих недрах еще одну страничку с названием «Как сделать хорошее руководство пользователя», автор которой именует себя на американЬский манер (типа John P. Morgan). Двухстраничное «наставление» с радостными возгласами было немедленно отправлено в корзину.
Манифест Кагарлицкого
Метагайд Кагарлицкого показался многообещающим. Только автор настоящей статьи не уразумел, что есть «метагайд», поэтому позволил себе наглось обозвать метагайд «манифестом». И не погрешил против истины (но это открылось позже — ниже).
(цитаты из манифеста Кагарлицкого)
Мы стремились свести в единую систему всю совокупность типовых требований, которые должны, с нашей точки зрения, предъявляться к технической документации: руководствам, справочникам и т.д. При этом мы основывались на стандартах(!!!) ГОСТ, стандартах компании Microsoft, опыте наших сотрудников и других разработчиков технической документации.
Начало обнадеживающее.
В состав технической документации входят две стержневые части, которые мы будем называть соответственно руководством пользователя и справочником пользователя, или коротко: руководством и справочником (по аналогии с английскими словосочетаниями User’s Guide и User’s Reference). Они могут быть оформлены в виде отдельных документов (для крупных программных продуктов), а могут, напротив, существовать в интегрированном виде. Между ними даже может не быть четкой границы: единый текст способен совмещать в себе черты руководства и черты справочника.
Что-то не так. Автору статьи всегда «казалось», что термин техническая документация трактуется более широко, значительно шире, чем эксплуатационная (программная) документация.
Руководство и справочник — это не столько части документации, сколько понятия, которые воплощают собой два подхода к описанию программного продукта.
По-понятиям так по-понятиям, вот только пацаны начинают нервничать. Руководство не есть понятие, а есть вид документа.
Наша задача не столько в том, чтобы рассказать, как выглядит документация, сколько в том, чтобы дать конкретные рекомендации по ее разработке. Всем известно, какие проблемы возникают в процессе написания связного текста большого объема — как приступить к работе, с чего начать, как расположить материал. Этот подход побуждает видеть в провозглашаемых нами нормах не хаотический их перечень, а иерархическую систему…
На небосклоне засияла звезда по имени Надежда — сейчас уважаемый г-н Кагарлицкий выдаст нам, лишенцам, всеобъемлющую иерархическую структуру руководства пользователя всех времен и народов. Ну же?!
Прежде чем приступить к разработке документации как таковой, необходимо наметить и спланировать общую логику изложения. Может показаться, что жанр технической документации крайне прост: ведь его задачей является «всего лишь» сообщение пользователю некоторых сведений о продукте. Однако если Вы будете исходить из этого в своей работе, Вы будете создавать образцы документации, вовсе непригодные или едва пригодные для практического использования, — даже если все необходимые сведения будут там содержаться. Ваша задача состоит в том, чтобы провести пользователя через перевал, то есть найти в горной цепи место, которое хотя бы и с трудом, но все-таки проходимо для Вашего «подопечного».
Жаль… А так все хорошо начиналось. Со «стандартов ГОСТ» — «стандартов ГОсударственных СТандартов» — простим г-на Кагарлицкого за тавтологию. Только вот решения первой задачи, поставленной автором настоящей статьи, в семидесятидвухстраничном манифесте (Arial’ом 12pt) нет. Уважаемый автор манифеста лишь поставил нам задачу. Что ж, нет пророка в своем отечестве. Может, есть пророк в отечестве буржуйском?
Руководство пользователя по IEEE Std 1063-2001 «IEEE Standard for Software User Documentation»
Забугорный «пророческий» документ IEEE Std 1063-2001 (IEEE в простонародье — «ай-яй-яй») в подразделе 1.2 (Puprose) содержит такую строчку:
This revision provides requirements for the structure, information content, and format of both printed and electronic documentation.
В авторском понимании назначение (намерение, цель, замысел, стремление) документа IEEE Std 1063-2001 состоит в «обеспечении требований к структуре, информационному наполнению, форматированию (оформлению) как электронной, так и печатной пользовательской документации по программным средствам». Что ж, подходяще. Какую же структуру руководства пользователя предлагает IEEE Std 1063-2001?
Структура руководства пользователя по IEEE Std 1063-2001
Опциональная типовая структура руководства пользователя содержится в таблице из раздела Structure of software user documentation документа IEEE Std 1063-2001:
Component |
See subclause |
Required? |
Identification data (package label/title page) |
4.3 |
Yes |
Table of contents |
5.7.1 |
Yes, in documents of more than eight pages after identification data |
List of illustrations |
5.7.2 |
Optional |
Introduction |
3.2 |
Yes |
Information for use of the documentation |
4.4 |
Yes |
Concept of operations |
4.5 |
Yes |
Procedures |
4.6, 4.7 |
Yes (instructional mode) |
Information on software commands |
4.8 |
Yes (reference mode) |
Error messages and problem resolution |
4.9 |
Yes |
Glossary |
4.10 |
Yes, if documentation contains unfamiliar terms |
Related information sources |
4.11 |
Optional |
Navigational features |
5.8 |
Yes |
Index |
5.7.3 |
Yes, if documents of more than 40 pages |
Search capability |
5.7.4 |
Yes, in electronic documents |
For purposes of this standard, the following non-mandatory nomenclature is used for the structural parts of software user documentation. A printed document is structured into logical units called chapters, subdivided into topics, which may be subdivided into subtopics, and printed on physical units called pages.
Здорово. IEEE Std 1063-2001 предлагает «все взять и поделить» — разбить разделы руководства на главы, топики, субтопики и т.д. И наступит всем счастье.
Практический интерес (в рамках задач статьи) представляют выделенные разделы. Посмотрим, как дробить разделы руководства пользователя на более мелкие структурные единицы и каким содержимым предполагается заполнять указанные структурные единицы.
Introduction
Какие сведения должны быть изложены в разделе Introduction согласно IEEE Std 1063-2001? А вот какие
The introduction shall describe the intended audience, scope, and purpose for the document and include a brief overview of the software purpose, functions, and operating environment.
Что ж, замечательно. Структура подразделов Introduction начинает как-то вырисовываться.
Information for use of the documentation
The documentation shall include information on how it is to be used (for example, help on help), and an explanation of the notation (a description of formats and conventions-see 5.8). At least one document in a document set shall identify all documents in the set by title and intended use, including recommendations on which members of the audience should consult which sections of the documentation. In document sets comprising many volumes or products, this information may be provided in a separate «road map» or guide to the document set. Documentation may include identification and discussion of notable changes from the previous version of the document set and the software.
Весьма полезный раздел (в контексте разработки руководства пользователя). Руководство по руководству.
Concept of operations
Documentation shall explain the conceptual background for use of the software, using such methods as a visual or verbal overview of the process or workflow; or the theory, rationale, algorithms, or general concept of operation. Explanations of the concept of operation should be adapted to the expected familiarity of the users with any specialized terminology for user tasks and software functions. Documentation shall relate each documented function to the overall process or tasks. Conceptual information may be presented in one section or immediately preceding each applicable procedure.
Концептуальная информация безусловно важна.
Procedures
Task-oriented instructional mode documentation shall include instructions for routine activities that are applied to several functions:
— Software installation and de-installation, if performed by the user
— Orientation to use of the features of the graphical user interface (see 5.6)
— Access, or log-on and sign-off the software
— Navigation through the software to access and to exit from functions
— Data operations (enter, save, read, print, update, and delete)
— Methods of canceling, interrupting, and restarting operations
These common procedures should be presented once to avoid redundancy when they are used in more complex functions.
И пошла конктерика. Молодцы, буржуи!
Information on software commands
Documentation shall explain the formats and procedures for user-entered software commands, including required parameters, optional parameters, default options, order of commands, and syntax. Documentation may be provided on the development and maintenance of macros and scripts. Reference mode documentation shall contain a reference listing of all reserved words or commands. Examples should illustrate the use of commands. Documentation shall explain how to interrupt and undo operation during execution of a command and how to restart it, if possible. Documentation shall describe how to recognize that the command has successfully executed or abnormally terminated.
Error messages and problem resolution
Documentation should address all known problems in using the software in sufficient detail such that the users can either recover from the problems themselves or clearly report the problem to technical support personnel. Reference mode documentation shall include each error message with an identification of the problem, probable cause, and corrective actions that the user should take. A quick reference card may address error messages by referring the user to more detailed reference documentation. The documentation on resolving problems shall also include contact information for reporting problems with software or its documentation and suggesting improvements.
Выводы по IEEE Std 1063-2001
Но счастье оказалось неполным… Структура разделов первого уровня руководства показана в таблице явно. А дальше — «милый мой, хороший, догадайся сам» («догадайся, мол, сама»). IEEE Std 1063-2001, конечно, «provides requirements for the structure», но не предлагает явной структуры руководства пользователя до рекомендованного ГОСТ 2.105 четвертого уровня вложенности.
Рекомендации типа «Documentation shall explain…», «Examples should illustrate…», «Documentation shall describe…» и им подобные, безусловно, проверены временем. В руководстве пользователя надо и объяснять, и иллюстрировать, и описывать — без всякого сомнения. Но все это и козе понятно, и в ГОСТах 19-й системы прописано.
Итак, вряд ли целесообразно разрабатывать руководства пользователя, основываясь исключительно на рекомендациях IEEE Std 1063-2001. Причины, как минимум, две:
- отсутствие в IEEE Std 1063-2001 четко регламентированной структуры руководства пользователя;
- «поверхностность» IEEE Std 1063-2001, отсутствие «широты охвата» и «глубины проработки».
Отсутствие четко регламентированной структуры руководства пользователя даст возможность заказчику ТРЕТИРОВАТЬ разработчика, см. хотя бы Страшная правда о техническом задании. Бедняга-разработчик будет вынужден, по указке заказчика, изо дня в день менять местами разделы руководства пользователя (гарантированный минимум, полученный опытным путем).
Отсутствие четко регламентированной структуры оборачивается хаосом, как только уровень вложения заголовков снижается до второго-третьего. Пользователь просто зашвырнет такое руководство куда подальше и назовет его автора кретином.
По мнению автора, рекомендации IEEE Std 1063-2001, разработанного при участии сотни забугорных спецов, весьма и весьма поверхностны. Не сможет разработчик, работая по IEEE Std 1063-2001, охватить максимум «характеристик», свойственных программе. В IEEE Std 1063-2001 многие из них попросту не прописаны. Отсутствуют «широта охвата» и «глубина проработки», свойственные отечественным документам.
В крайнем разделе настоящей статьи приведена таблица соответствия ГОСТ 19 и IEEE Std 1063-2001, которую автор статьи начал было составлять, затем бросил и проверять не стал. А выводы пусть каждый сделает сам для себя. И, возможно, в чем-то поправит автора.
Пользовательские документы по ГОСТ 19 (ЕСПД)
В отличие от суперсовременного буржуйского IEEE Std 1063-2001, древние, многими ругаемые отечественные стандарты 19-й системы (Единая система программной документации — ЕСПД) содержат не пространные рассуждения о том, что и как должно разъяснять, иллюстрировать и описывать руководство пользователя, а конкретные требования к структуре и содержанию пользовательских (эксплуатационных) документов.
Перечень ГОСТов 19 «описательного» характера, на основе которых можно, не мудрствуя лукаво, сформировать четкую структуру разделов каждого из «описательных» документов, приведен в разделе Источники. Основной прием — детализация — подробно описан в статье «Как писать техническое задание?!». Далее — сформированные «детализацией» структуры разделов документов согласно ГОСТам из перечня.
Структура разделов описания программы по ГОСТ 19.402-78
Структура разделов описания применения по ГОСТ 19.502-78
Структура разделов руководства системного программиста по ГОСТ 19.503-79
Структура разделов руководства программиста по ГОСТ 19.504-79
Структура разделов руководства оператора по ГОСТ 19.505-79
Выводы по ГОСТам 19.ххх
Ни ГОСТ 19.505-79, ни ГОСТ 19.504-79, ни ГОСТ 19.503-79, взятые по одельности, не могут похвастаться достаточной полнотой структуры.
Зато структуры «описательных» документов ГОСТ 19 обладают как полностью идентичными (по тексту названий), так и схожими по тексту названий разделами и подразделами. К идентичным разделам относятся, к примеру, разделы «Аннотация», имеющие место во всех документах согласно ГОСТ 19.105-78. К схожим (фактически — идентичным) можно отнести подразделы «Назначение программы» и «Сведения о назначении программы».
А почему не попытаться объединить все «описательные» документы? Объединить идентичные и схожие разделы документов, выделить специфические разделы? Быть может, удастся избавиться от неполноты ГОСТ 19.505-79, ГОСТ 19.504-79 и ГОСТ 19.503-79 и получить обобщенную структуру «описательного» документа и обозвать сам документ руководством пользователя программы?
ГОСТы 19.ххх допускают «вводить дополнительные разделы или объединять отдельные разделы», а также «вводить новые». Согласно ГОСТ 19.101-77 «Допускается объединять отдельные виды эксплуатационных документов (за исключением ведомости эксплуатационных документов и формуляра). Необходимость объединения этих документов указывается в техническом задании. Объединенному документу присваивают наименование и обозначение одного из объединяемых документов. В объединенных документах должны быть приведены сведения, которые необходимо включать в каждый объединяемый документ [из 2.6 ГОСТ 19.101-77]»
Сказано — сделано. Только мы нарушим ГОСТы и создадим объединенный документ под названием «Руководство пользователя».
Обобщенная структура руководства пользователя по ГОСТам 19-й системы
Путем слияния структур «описательных» документов ГОСТов 19-й системы в единую структуру, удаления «лишних» одноименных разделов, слияния схожих разделов сформирована общая структура руководства пользователя программы. В табличке сведены и «*» отмечены разделы, присутствующие в каждом отдельном документе.
ГОСТ 19.ххх — обобщенная структура разделов руководства |
ГОСТ 19.402-78 |
ГОСТ 19.502-78 |
ГОСТ 19.503-79 |
ГОСТ 19.504-79 |
ГОСТ 19.505-79 |
Аннотация |
* |
* |
* |
* |
* |
•Назначение документа |
* |
* |
* |
* |
* |
•Краткое изложение основной части документа |
* |
* |
* |
* |
* |
Общие сведения о программе |
* |
* |
|||
•Обозначение и наименование программы |
* |
* |
|||
•Языки программирования, на которых написана программа |
* |
||||
•Сведения о назначении программы |
* |
* |
* |
* |
* |
••Информация, достаточная для понимания функций программы и ее эксплуатации |
* |
||||
•••Возможности программы |
* |
||||
•••Классы решаемых задач |
* |
||||
••••Описание задач |
* |
||||
••••Методы решения задач |
* |
||||
•••Функции, выполняемые программой |
* |
* |
|||
••Описание основных характеристик и особенностей программы |
* |
* |
|||
•••Временные характеристики |
* |
||||
•••Режим работы |
* |
||||
•••Средства контроля правильности выполнения и самовосстанавливаемости программы |
* |
||||
••Ограничения области применения программы |
* |
||||
•••Сведения о функциональных ограничениях на применение |
* |
||||
Условия применения программы |
* |
* |
* |
||
•Условия, необходимые для выполнения программы |
* |
* |
* |
||
••Сведения о технических и программных средствах, обеспечивающих выполнение программы |
* |
||||
•••Требования к техническим средствам |
* |
* |
|||
••••Типы ЭВМ, устройства, используемые при работе программы |
* |
||||
••••Объем оперативной памяти |
* |
||||
••••Минимальный и (или) максимальный состав аппаратурных и программных средств |
* |
||||
••••Требования к составу и параметрам периферийных устройств |
* |
||||
•••Программное обеспечение, необходимое для функционирование программы |
* |
||||
••••Требования к программному обеспечению |
* |
||||
••••Требования к другим программам |
* |
||||
••••Требования и условия организационного, технического и технологического характера |
* |
||||
Описание логической структуры |
* |
||||
•Алгоритм программы |
* |
||||
•Используемые методы |
* |
||||
•Сведения о структуре программы |
* |
* |
|||
•Сведения о составных частях программы |
* |
||||
•Описание функций составных частей |
* |
||||
•Сведения о связях между составными частями программы |
* |
* |
|||
•Сведения о связях с другими программами |
* |
* |
|||
Сведения о входных и выходных данных |
* |
* |
|||
•Общие характеристики входной и выходной информации |
* |
||||
•Сведения о входных данных |
* |
* |
|||
••Характер, организация и предварительная подготовка входных данных |
* |
* |
|||
•Сведения о выходных данных |
* |
* |
|||
••Характер и организация выходных данных |
* |
* |
|||
••Формат, описание и способ кодирования выходных данных |
* |
||||
•Описание кодирования информации |
* |
||||
Настройка программы |
* |
||||
•Описание действий по настройке программы |
* |
||||
••Настройка на состав технических средств |
* |
||||
••Выбор функций |
* |
||||
••Поясняющие примеры |
* |
||||
Проверка программы |
* |
||||
•Описание способов проверки работоспособности программы |
* |
||||
••Контрольные примеры |
* |
||||
••Методы прогона |
* |
||||
••Результаты |
* |
||||
Выполнение программы |
* |
||||
•Загрузка программы |
* |
* |
* |
||
•Запуск программы |
* |
||||
•Входные точки в программу* |
* |
||||
•Способы передачи управления и параметров данных |
* |
||||
•Выполнение программы |
* |
||||
••Описание выполняемой функции 1 |
* |
||||
••Формат и возможные варианты команд для выполнения функции 1 |
* |
||||
••Ответы программы на команды выполнения функции 1 |
* |
||||
•Завершение выполнения программы |
* |
||||
Дополнительные возможности |
* |
||||
•Описание дополнительных функциональных возможностей программы |
* |
||||
•Описание применения дополнительных функциональных возможностей программы |
* |
||||
Сообщения программы |
* |
* |
* |
||
•Тексты сообщений, выдаваемых в ходе (настройки, проверки, выполнения) программы |
* |
* |
* |
||
••Описание содержания |
* |
* |
* |
||
••Описание действий, которые необходимо предпринять по этим сообщениям |
* |
* |
* |
Выводы по обобщенной структуре руководства пользователя по ГОСТ 19.ххх
Обобщенная структура руководства пользователя по ГОСТ 19.ххх явно не страдает, как IEEE Std 1063-2001, отсутствием широты охвата. Избыток, как известно, рождает качество. Перечислено все, чем может характеризоваться программа. Отдельные подразделы могут показаться даже излишними, к примеру, подраздел «Языки программирования, на которых написана программа».
Казалось бы, какое дело пользователю, на каком языке был написан исходный текст программы? С другой стороны, может «…это кому-нибудь нужно? Значит — это необходимо…». Ведь хочется при покупке буржуйского телевизора заполучить и принципиальную схему на него. Самсунги и соньки тоже выходят из строя. А вдруг неисправность пустяковая и устранить ее представляется возможным в домашних условиях, без поездки в сервисный центр?
В то же время, при всей широте охвата, в явном виде отсутствуют:
- Software installation and de-installation, if performed by the user;
- Orientation to use of the features of the graphical user interface;
- Access, or log-on and sign-off the software;
- Navigation through the software to access and to exit from functions и многое другое.
Автору удалось разбросать кое-что в разделе Таблица соответствия ГОСТ 19.ххх и IEEE Std 1063-2001, но времени «наморщить ум» всегда не хватает, руководство пользователя, как всегда, должно было быть готово еще на прошлой неделе.
Показать связи разделов обобщенного руководства пользователя с разделами ГОСТ 19.201-78 ЕСПД. Техническое задание, требования к содержанию и оформлению автор поленился, поскольку указанные связи очевидны.
Выводы по источникам
Итак, если первые три задачи в целом решены, крайняя задача осталась нерешенной.
Автор манифеста более склонен к рекомендациям по подбору слов* и построению предложений, IEEE Std 1063-2001, в лучшем случае, приводит требования к структуре руководства пользователя, но не дает особой конкретики, в ГОСТ 19.ххх не прописаны процедуры заполнения содержимым разделов руководства. Может, организовать эдакую смесь французского с нижегородским? Использовать все четыре источника в качестве четырех составных частей?
* Нынче в моде буржуйское понятие — т.н. контролируемый язык. Среди представителей «просвещенной русской интеллигенции» наибольшей популярностью пользуется отечественный аналог в глагольной форме повелительного наклонения — фильтруй базар!
Смесь французского с нижегородским
Почему бы нет? Взять лучшее из ГОСТов 19-й системы, — обобщенную структуру руководства пользователя, добавить к ней немногочисленные толковые рекомендации из IEEE Std 1063-2001 и разбавить неисчерпаемой стилистической культурой и ресурсами языка из манифеста Кагарлицкого? Придать смеси стройный строгий вид, сформировать очередной учебно-тренировочный документ с подробными комментариями? А что делать, если ни один из перечисленных выше источников и составных частей в отдельности не способны дать ответы на все поставленные вопросы?
Таблица соответствия ГОСТ 19 и IEEE Std 1063-2001
ГОСТ 19.ххх |
IEEE Std 1063-2001 |
Аннотация |
Introduction |
The introduction shall describe the intended audience, scope, and purpose for the document and include a brief overview of the software purpose, functions, and operating environment |
|
•Назначение документа |
purpose for the document (Introduction) |
•Краткое изложение основной части документа |
scope (Introduction) |
Общие сведения о программе |
|
•Обозначение и наименование программы |
аналогичный подраздел отсутствует |
•Языки программирования, на которых написана программа |
то же |
•Сведения о назначении программы |
brief overview of the software purpose (Introduction) |
••Информация, достаточная для понимания функций программы и ее эксплуатации |
аналогичный подраздел отсутствует |
•••Возможности программы |
то же |
•••Классы решаемых задач |
» |
••••Описание задач |
» |
••••Методы решения задач |
Documentation shall relate each documented function to the overall process or tasks |
•••Функции, выполняемые программой |
brief overview of the software … functions (Introduction) |
••Описание основных характеристик и особенностей программы |
аналогичный подраздел отсутствует |
•••Временные характеристики |
то же |
•••Режим работы |
» |
•••Средства контроля правильности выполнения и самовосстанавливаемости программы |
» |
••Ограничения области применения программы |
» |
•••Сведения о функциональных ограничениях на применение |
» |
Условия применения программы |
If different versions of the software are available for different operating environments, the title page should specify the applicable operating environment(s), including version(s) of hardware, communications, and operating system(s) (4.3. Content of identification data) |
•Условия, необходимые для выполнения программы |
аналогичный подраздел отсутствует |
••Сведения о технических и программных средствах, обеспечивающих выполнение программы |
Documentation for the hardware and software environment (4.11 Information on related information sources) |
•••Требования к техническим средствам |
аналогичный подраздел отсутствует |
••••Типы ЭВМ, устройств, используемые при работе программы |
то же |
••••Объем оперативной памяти |
» |
••••Минимальный и (или) максимальный состав аппаратурных и программных средств |
» |
••••Требования к составу и параметрам периферийных устройств |
» |
•••Программное обеспечение, необходимое для функционирование программы |
brief overview of the … operating environment (Introduction) |
••••Требования к программному обеспечению |
аналогичный подраздел отсутствует |
••••Требования к другим программам |
то же |
•••Требования и условия организационного, технического и технологического характера |
» |
Описание логической структуры |
|
•Алгоритм программы |
algorithms (4.5 Concept of operations) |
•Используемые методы |
using such methods as a visual or verbal overview of the process or workflow (4.5 Concept of operations) |
•Сведения о структуре программы |
аналогичный подраздел отсутствует |
•Сведения о составных частях программы |
то же |
•Описание функций составных частей |
» |
•Сведения о связях между составными частями программы |
» |
•Сведения о связях с другими программами |
» |
Сведения о входных и выходных данных |
|
•Общие характеристики входной и выходной информации |
аналогичный подраздел отсутствует |
•Сведения о входных данных |
то же |
••Характер, организация и предварительная подготовка входных данных |
» |
•Сведения о выходных данных |
» |
••Характер и организация выходных данных |
» |
••Формат, описание и способ кодирования выходных данных |
» |
•Описание кодирования информации |
» |
Настройка программы |
Identification of technical or administrative activities that must be done before starting the task (4.7 Information for procedures and tutorials) |
•Описание действий по настройке программы |
аналогичный подраздел отсутствует |
••Настройка на состав технических средств |
то же |
••Выбор функций |
» |
••Поясняющие примеры |
» |
Проверка программы |
|
•Описание способов проверки работоспособности программы |
аналогичный подраздел отсутствует |
••Контрольные примеры |
Examples should illustrate the use of commands (4.8 Information on software commands) |
••Методы прогона |
аналогичный подраздел отсутствует |
••Результаты |
то же |
Выполнение программы |
|
•Загрузка программы |
Software installation and de-installation, if performed by the user (4.6 Information for general use of the software) |
•Запуск программы |
аналогичный подраздел отсутствует |
•Входные точки в программу* |
Access, or log-on and sign-off the software (4.6 Information for general use of the software) |
•Способы передачи управления и параметров данных |
аналогичный подраздел отсутствует |
•Выполнение программы |
то же |
••Описание выполняемой функции 1 |
A brief overview of the purpose of the procedure and definitions or explanations of necessary concepts not elsewhere included (4.7 Information for procedures and tutorials) |
••Формат и возможные варианты команд для выполнения функции 1 |
Navigation through the software to access … functions (4.6 Information for general use of the software) |
••Ответы программы на команды выполнения функции 1 |
Documentation shall describe how to recognize that the command has successfully executed or abnormally terminated (4.8 Information on software commands) |
•Завершение выполнения программы |
Navigation through the software … to exit from functions |
Дополнительные возможности |
|
•Описание дополнительных функциональных возможностей программы |
аналогичный подраздел отсутствует |
•Описание применения дополнительных функциональных возможностей программы |
то же |
Сообщения программы |
Relevant warnings, cautions, and notes that apply to the entire procedure (4.7 Information for procedures and tutorials) |
•Тексты сообщений, выдаваемых в ходе (настройки, проверки, выполнения) программы |
аналогичный подраздел отсутствует |
••Описание содержания |
то же |
••Описание действий, которые необходимо предпринять по этим сообщениям |
» |
- Понятие руководства по эксплуатации
Руководство по эксплуатации, которое также иногда называют инструкцией по эксплуатации, представляет собой документ, в котором исчерпывающим образом описывается корректный процесс использования продукта, будь то сложный производственный механизм или электронная игра. Поэтому с необходимостью разработки такого руководства сталкиваются компании самого различного профиля.
Навигация по странице:
- Понятие руководства по эксплуатации
- Статус руководства по эксплуатации в ряду прочих технических документов
- Области применения руководства по эксплуатации
- Дополнительные сферы применения РЭ
Понятие руководства по эксплуатации
Содержание термина «руководство по эксплуатации» принято трактовать в соответствии с положениями ГОСТ 2.601-2006 «Единая система конструкторской документации (ЕСКД). Эксплуатационные документы». Указанный национальный стандарт определяет данное руководство как важный документ, в котором содержится исчерпывающая информация о характеристиках продукта, его конструкции и принципах работы, правилах безопасной эксплуатации и осуществления работ с применением данного изделий.
Кроме того, в руководстве по эксплуатации принято указывать порядок осуществления оценки технического состояния изделия в разрезе необходимости проведения профилактических, ремонтных или утилизационных работ в отношении всего продукта или отдельных его деталей и частей.
Статус руководства по эксплуатации в ряду прочих технических документов
ГОСТ 2.601-2006 относит руководство по эксплуатации к разряду эксплуатационных документов наряду с инструкцией по монтажу, паспортом изделия, ведомостью наличия прилагаемых запчастей и проч. Таким образом, на данное руководство распространяются соответствующие правила Единой системы конструкторской документации (ЕСКД). В частности, это относится к положениям ГОСТ 2.610-2006 «Единая система конструкторской документации. Правила выполнения эксплуатационных документов».
Требования ГОСТ 2.601-2006 устанавливают, что разработка руководства по эксплуатации не носит обязательного характера в отношении всех без исключения видов изделий: необходимость формирования этого документа определяется самим создателем продукции с учетом сложности его использования, необходимости применения дополнительной информации для корректной настройки и применения и других факторов. При этом в данном нормативно-правовом документе имеется оговорка о том, что в случае, если разработка конкретного продукта производится по заказу Министерства обороны РФ, именно это ведомство будет выступать в качестве органа, принимающего решение о необходимости разработки руководства по эксплуатации (РЭ).
Для этих случаев и содержание, и форма руководства по эксплуатации должны соответствовать самым последним требованиям государственных стандартов и иных действующих нормативных документов. Чтобы обеспечить уверенность в том, что созданная документация отвечает всем этим условиям, а вместе с тем понятна потребителям и обеспечивает им удобство и безопасность при работе с изделием, целесообразно обратиться в специализированную организацию, которая имеет большой опыт создания таких документов.
Вместе с тем, при решении вопроса о необходимости создания РЭ для конкретного вида продукции разработчику необходимо учитывать, что такой документ позволяет пользователям изделий быть уверенными в правильности порядка его эксплуатации и обеспечивает безопасность персонала, работающего с тем или иным изделием. Поэтому при выпуске специального оборудования, предназначенного для использования в процессе работ на опасных производственных объектах, предоставление заказчикам РЭ является обязательным.
Кроме того, оно может потребоваться для получения ряда разрешительных документов:
- например, РЭ необходимо для получения специального разрешения Ростехнадзора на использование особо сложного и опасного оборудования в случаях, когда получение такого разрешения является необходимым условием для осуществления соответствующих работ;
- также этот документ, как правило, запрашивают исполнители в случае проведения процедуры сертификации для данного вида продукции.
Таким образом, разработка РЭ – это ответственная процедура, к которой компании-производителю необходимо подойти с должной серьезностью.
96
Глава 6.
РУКОВОДСТВО И РУКОВОДИТЕЛЬ
1. Понятие руководства
Руководство — это механизм, направляющий усилия коллектива или личности на выполнение общих задач. Оно побуждает людей к достижению поставленной цели посредством влияния на их потребности.
Это способность влиять на поведение группы людей или отдельных индивидуумов, позволяющая побудить их работать для достижения общих целей.
Согласно положению социальной психологии, руководство — это совокупность процессов взаимодействия между начальником и подчиненными, методов морально-психологического воздействия на коллектив. Это повседневное влияние на людей, причем прежде всего не инструкциями и разносами, а высокой организованностью, принципиальностью, справедливостью.
В руководстве тесно связаны концепция власти и личного влияния. Поэтому среди руководителей-практиков распространено мнение, что наиболее действенными инструментами эффективного управления является руководящая должность и власть.
Конечно, мол, можно поговорить о методах управления, о мотивации, но все это интеллектуальные упражнения. Однако, мол, никогда теории управления не славились тем, что побуждали людей к действию, заставляли других делать что-то и делать так, как вы хотите. Но если ктото думает, что должности и власти достаточно для управления коллективом, то он, по крайней мере, близорук.
Для того, чтобы сложная фирма эффективно выполняла свои задачи, необходимо задействовать все функции управления.
Сегодня наряду с развитием таких базовых требований, как профессиональный уровень, как компетенция, как знание экономических законов, руководитель любого уровня управления сталкивается с необходимостью грамотного владения основами конкретной социологии,
97
практикой психологии, педагогики, воспитания. Без этих основ теперь фактически немыслимо принятие эффективных решений в сложных вопросах, связанных с формированием коллектива, с подбором и обучением кадров, с созданием деловой творческой атмосферы и высокой дееспособности коллектива.
Руководство требует умения прогнозировать ситуации и выдвигать соответствующие программы.
Руководство должно быть гибким. Надо научиться менять свои суждения в зависимости от конкретных ситуаций. Нельзя в сложных ситуациях гнуть палку в одну сторону — она сломается.
Руководству не нужно фанатизма и не нужно железной руки. Нужно проявлять терпимость и спокойствие. Нужно уметь идти на компромисс. Нужно уметь разделять власть.
Всфере новой философии руководства, в центре которой отношения согласия, а не отношения господства и подчинения, смысл понятия руководства претерпел существенные изменения. Если прежде руководство полагалось на силу власти и издания приказов, то теперь оно действует на основе согласия и сотрудничества людей, работающих под началом руководителя. Власть не отделена от руководителя, но отношения жесткого подчинения ушли в прошлое.
Современное производство — это сложный, динамичный организм, основу которого составляет трудовой коллектив. Его успехи зависят в основном от сознательного отношения к труду рядовых членов коллектива, от морального климата в коллективе, от степени развития демократических начал в управлении и от умения руководителя управлять поведением людей.
Вот почему понятие руководства имеет огромное значение. Раньше можно было назначить работника ответственным за какую-либо область деятельности, не считаясь с его чувствами или желаниями и с отношением
кэтому других людей. Сегодня это делать уже нельзя, поскольку условия, в которых действуют руководители, изменились.
Вобобщенном виде руководство может быть сведено к трем следующим аспектам:
1)выдача директив относительно того, что нужно сделать;
2)налаживание сотрудничества между людьми;
98
3)обеспечение энергии, необходимой для достижения поставленных
целей.
Формирование целей и эффективное их достижение — основное назначение руководства.
Одним из основных инструментов современного руководства является налаживание эффективных связей с людьми. Это необходимо для того, чтобы знать и воспринимать различные мнения, способствующие разработке нового курса фирмы.
Для стратегического руководства необходим широкий кругозор, позволяющий вырабатывать оптимальную программу деятельности фирмы.
Сознание людей подготавливается, учитывается и настраивается при принятии важных управленческих решений. Желательно, чтобы эффективность деятельности людей сочеталась с относительно справедливой оценкой и соответственно вознаграждалась.
Главное — понять, какие основополагающие идеи и принципы реализуются в руководстве. Основными средствами руководства являются следующие:
1)требования (разумные, реальные);
2)контроль (обязательно личный);
3)поощрения, наказания (быть справедливым);
4)организация общественного мнения.
Искусство руководства состоит в том, чтобы в любых ситуациях находить опору, уметь вовремя отказаться от развития идей, которые явно не будут приняты, в истинности которых невозможно убедить оппонентов.
2. Руководитель и его социальная роль
2.1. Должностной статус руководителя
Руководитель — это должностной статус (положение) человека, который обязан влиять на других (подчиненных) таким образом, чтобы они выполняли работу, порученную фирмой.
Статус определяет поведение и действия руководителя в рамках должностных структур и полномочий. Он характеризует функциональную и социальную роль (модель) поведения руководителя, то есть ожидаемые
99
действия руководителя в различных управленческих ситуациях.
Руководитель в системе управления занимает ключевое положение. Чем сложнее и совершеннее система управления, тем выше и жестче требования к руководителю.
Это верно хотя бы потому, что здесь при возможной ошибке руководителя издержки системы оказываются более существенными. Справедливо считается: как порядок, так и беспорядок в фирме начинается с руководителя. Известен афоризм: «Фирма не может быть лучше, чем ее руководители».
Определяющая роль руководителя исходит из того, что руководитель — лицо, наделенное полномочиями принимать управленческие решения. Это тот, кто решает, что делать, как делать и несет за это ответственность.
Роль руководителя безлична. Она возлагает на человека определенные обязанности, нормы поведения и предоставляет ему права. Но каждый человек, приняв роль, относится к ней по-своему. Поэтому качество выполнения роли — дело сугубо индивидуальное.
Важно, чтобы каждый работник знал свои обязанности и хотел бы их выполнять полностью и вовремя. Привести деятельность каждого работника фирмы в соответствие с ее целями и интересами — такова главная задача руководителя-организатора трудового коллектива.
Поведение руководителя должно оцениваться в зависимости от предвосхищения ожидаемых последствий и определенных действий в каждой конкретной обстановке. При этом целесообразно учитывать те факторы, которые регламентируют и регулируют поведение человека.
Умение подчинить отношения интересам дела зависят от ролевых особенностей личности. Роль и сознание человека являются регуляторами его поведения.
Существуют линейные и функциональные руководители. Линейные руководители возглавляют относительно обособленные
производственные и хозяйственные подразделения (фирму, цех, отдел, бюро). Каждый из них посредством приданного ему аппарата управления координирует деятельность своих подчиненных, принимает решения, касающиеся вопросов, определяющих работу его подразделения.
Функциональные руководители — это начальники
100
специализированных функциональных служб всех уровней управления (главный инженер, начальники планово-экономического отдела, отдела труда и зарплаты и т.д.). В их обязанности входит подготовка рекомендаций линейным руководителям для принятия управленческих решений. Такие руководители являются одновременно и линейными по отношению к возглавляемым ими службам.
2.2. Общие функции руководителя
Функция — это специализированный вид деятельности, требующий определенных знаний, умений, навыков (опыта). Это система мер воздействия руководителя на подчиненных.
Управленческие функции определяются характером деятельности руководителей, обусловленных особенностями стоящих перед коллективами задач и сложившимися условиями (обстановкой). А поскольку вариантность задач практически безгранична и условия весьма разнообразны, то перечень управленческих функций (действий), в сущности, не имеет предела.
Однако есть функции, содержание которых является общим и непременным в деятельности любого руководителя.
К общим функциям, которые связаны с деятельностью любого руководителя, можно отнести функции администратора, организатора, технического специалиста, общественного деятеля, воспитателя. В деятельности руководителя эти функции реализуются в столь плотной взаимосвязи, что не всегда различима их самостоятельность.
В роли администратора руководитель использует свои полномочия для обеспечения работы коллектива в соответствии с действующими нормативными актами и предпринимает меры к тому, чтобы не допускать обезличивания в выполнении работы.
Все это выполняется с таким расчетом, чтобы исключить безответственное поведение исполнителей и возможные нежелательные конфликты, чтобы ориентировать людей и заинтересовывать их в выполнении работы.
Выполняя функции организатора, руководитель создает условия, необходимые для совместного труда, для целенаправленной работы
101
подчиненных, занятых в процессах управления и производства.
Вэтой работе руководитель должен четко понимать цель своей деятельности, должен уметь выделять наиболее важные на данный период времени задачи, определять методы и ресурсы, требуемые для решения этих задач. Среди функций организатора следует выделить такие функции как планирование, прогнозирование, координация и взаимодействие, контроль, организация труда, принятие решений и другие функции управления.
Исполняя функции специалиста — человека, профессионально хорошо подготовленного, обладающего знаниями и опытом в заданной конкретной сфере деятельности.
Руководитель призван грамотно ставить задачи, компетентно анализировать и эффективно контролировать ход их реализации, проводить квалифицированный инструктаж подчиненных.
Руководитель в силу занимаемого положения является общественным деятелем, выполняющим различные представительские функции. Он присутствует на различных совещаниях, участвует в общественных организациях, решает различные социальные вопросы.
Врезультате получает многообразную информацию, умелое применение которой позволяет заметно влиять на производственную деятельность и моральный климат коллектива.
Воспитательная функция руководителя — это его повседневная трудовая деятельность, которая способствует раскрытию и умножению потенциала коллектива.
Воспитывать — это значит убеждать, активно воздействовать на сознание и чувства человека. Ведь управление — это всегда руководство людьми, и для успешного его осуществления важно, чтобы руководитель мог воздействовать на подчиненных по возможности не силой приказа, а силой убеждения.
Таким образом, труд руководителя многофункционален и носит комплексный характер.
Руководителю далеко не достаточно знаний в области техники, технологии и экономики. Руководитель обязан в совершенстве овладеть еще искусством управления людьми, уметь воспитывать подчиненных, решать социальные и экономические задачи, стоящие перед коллективом.
102
2.3. Каким быть руководителю?
Руководителю необходимо осознать свое место в коллективе. Его задача — решать проблемы, делать дело, добиваться результата. Его работа
—выращивать здоровый и продуктивный коллектив.
В«джентльменский» набор руководителя обязательно входит умение писать сценарий наиболее вероятного развития событий, умение предвидеть действия оппонентов, находить слабые места в защите противника, точно определять место и время контратаки. Это требует от руководителя большего, чем просто быть способным ловко решать проблемы.
Для руководителя требуется определенный организаторский талант, а способность руководить предполагает самые разнообразные качества, которые зачастую не поддаются определению.
Вуправленческой деятельности руководителя-профессионала должны сочетаться научный подход и спонтанное во многих проявлениях искусство общения.
Наука вооружает руководителя знаниями закономерностей управленческой деятельности и систематизированным опытом. Она помогает ему уверенно и быстро находить рациональные приемы воздействия на подчиненных, избежать многих ошибок.
Владеющий искусством управления руководитель широко использует эмоционально-психологические приемы и импровизацию, наделяя живыми красками в основном формальную по своей сути деятельность.
Наука и искусство управления взаимообогащают и дополняют друг друга. Если наука предлагает методы управления, образует объективную составляющую работы руководителя, то искусство управления в решающей мере определяет своеобразие этой работы, ее стиль.
Минимально необходимыми предпосылками пригодности человека
для |
профессиональной |
деятельности |
руководителя |
является мотивированный интерес |
к этой деятельности и |
достаточные |
умственные способности.
Мотивация — это обоснование желаний, стремлений человека. Если у человека есть побудительный мотив к цели или действию, то его энергия и
103
усилия проявляются в гораздо большей степени, чем при его отсутствии.
Мотивы руководящей деятельности могут быть самыми различными.
Это желание человека принять активное участие в достижении целей фирмы, в улучшении ее деятельности.
Это стремление к получению сравнительно большей массы материальных благ, которые предоставляются лицам, занимающим ответственные должности.
Это честолюбие и соперничество, стремление к достижению успеха и самоутверждения.
Это потребность самовыражения через организаторскую деятельность, удовлетворенность результатами своего труда.
Наличие умственных способностей у человека дает, при прочих равных условиях, больше оснований полагать, что он будет соответствовать своей должности.
Это диктуется также и тем, что люди умные обычно отличаются миролюбием и снисходительностью, а глупые и невежественные воинственны, утверждают себя, не разбираясь в средствах. Кто-то сказал, что таланты надо поддерживать, а серость сама найдет себе дорогу. Но категория умственных способностей настолько сложна, что при ее оценке нетрудно впасть в заблуждение, совершенно не подозревая об этом.
Характер взаимоотношений в сфере управления зачастую складывается так, что препятствует реальной оценке умственных способностей руководителя, мешает ему самому осознавать границы своих способностей. Человек, как правило, бывает склонен наделять себя умом не скупясь. Руководитель, изображающий из себя умного без скольконибудь весомых на то оснований, способен принести много бед. Он не может понять другого, окружает себя слабыми людьми, осторожен, бюрократ и т.д. В этом случае избыток власти становится как бы компенсатором недостающего ума. Такие люди склонны переоценивать свои способности, думая, что если они находятся в должности, то они и достаточно способны.
Трудности выявления умственных способностей усугубляются вследствие того, что свойства ума по-настоящему проявляются только в деятельности. Применительно к руководителю — в процессе осуществления функций управления. Поэтому на стадии отбора кандидатов на должность
Текст ГОСТ Р ИСО/МЭК ТО 15271-2002 Информационная технология. Руководство по применению ГОСТ Р ИСО/МЭК 12207 (Процессы жизненного цикла программных средств)
ГОСТ Р ИСО/МЭК ТО 15271-2002
Группа П85
ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Информационная технология
РУКОВОДСТВО ПО ПРИМЕНЕНИЮ ГОСТ Р ИСО/МЭК 12207
(Процессы жизненного цикла программных средств)
Information technology. Guide for the application of GOST R ISO/IEC 12207
(Software life cycle processes)
ОКС 35.080
ОКСТУ 5001
Дата введения 2003-07-01
Предисловие
1 РАЗРАБОТАН И ВНЕСЕН Всероссийским научно-исследовательским институтом стандартизации (ВНИИстандарт) Госстандарта России
2 ПРИНЯТ И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Госстандарта России от 5 июня 2002 г. N 227-ст
3 Настоящий стандарт содержит полный аутентичный текст международного стандарта ИСО/МЭК ТО 15271-98 «Информационная технология. Руководство по применению ИСО/МЭК 12207 (Процессы жизненного цикла программных средств)»
4 ВВЕДЕН ВПЕРВЫЕ
5 ПЕРЕИЗДАНИЕ. Апрель 2004 г.
Введение
Введение
В настоящем стандарте приведены рекомендации по практическому применению ГОСТ Р ИСО/МЭК 12207 в условиях реализации конкретных проектов создания программных средств. Опытное применение ГОСТ Р ИСО/МЭК 12207 в ряде организаций подтвердило необходимость выработки таких рекомендаций для однозначного понимания требований и норм, установленных в ГОСТ Р ИСО/МЭК 12207. Вместе с тем, ряд концептуальных положений и понятий, определенных в указанном стандарте, требуют дополнительного пояснения и более расширенной трактовки. В настоящем стандарте учтены обобщенные предложения по практическому применению ГОСТ Р ИСО/МЭК 12207, представленные Техническим комитетом по стандартизации ТК 22 «Информационные технологии».
В частности, термин «работа (activity)» трактуется (в зависимости от излагаемого контекста) более расширенно как «деятельность» или «виды деятельности (activities)», термин «задача (task)» — как «задание» (в зависимости от контекста), а термин «программно-аппаратное средство (firmware)» — как «программы, реализованные техническими средствами» (во избежание путаницы с аналогичным понятием, применяемым по отношению к компонентам автоматизированных систем).
Примечание — Текст основной части стандарта дополнен приложениями A-D.
1 Область применения
1.1 Назначение
Настоящий стандарт содержит рекомендации по применению ГОСТ Р ИСО/МЭК 12207, а также приложения А, В, С и D.
В стандарте основное внимание уделено особенностям, подлежащим учету при прикладном применении ГОСТ Р ИСО/МЭК 12207 в условиях реальных проектов создания программных средств. Приведенные в настоящем стандарте рекомендации не касаются обсуждения обоснованности требований ГОСТ Р ИСО/МЭК 12207.
В стандарте рассмотрены три основополагающие модели жизненного цикла и приведены примеры прикладного применения ГОСТ Р ИСО/МЭК 12207.
1.2 Пользователи стандарта
Настоящий стандарт может быть использован субъектами (лицами, организациями), желающими применить ГОСТ Р ИСО/МЭК 12207 при реализации договоров независимо от объема или сложности проекта, конкретной организацией для самоконтроля или работ по совершенствованию процессов жизненного цикла программных средств.
В настоящем стандарте указано, как можно использовать ГОСТ Р ИСО/МЭК 12207 применительно к различным типам программных средств и какие процессы соответствуют каждому случаю.
Настоящий стандарт дополняет ГОСТ Р ИСО/МЭК 12207, являющийся не только нормативным документом, но и эталоном для управления реальным проектом. (Например, последний случай имеет место, когда ГОСТ Р ИСО/МЭК 12207 является образцом при проведении части работ процесса усовершенствования.) Настоящий стандарт должен быть осмыслен целиком, но в отдельных случаях могут быть использованы его конкретные разделы.
1.3 Предпосылки
Предпосылками для использования настоящего стандарта являются:
a) наличие ГОСТ Р ИСО/МЭК 12207;
b) хорошее знание ГОСТ Р ИСО/МЭК 12207;
c) хорошее знание политики соответствующей организации;
d) общее знание вопросов управления созданием программных средств, программной инженерии и моделирования жизненного цикла программных средств.
2 Нормативные ссылки
В настоящем стандарте использованы ссылки на следующие стандарты:
ГОСТ Р ИСО/МЭК 9126-93 Информационная технология. Оценка программной продукции. Характеристики качества и руководства по их применению
ГОСТ Р ИСО/МЭК 12207-99 Информационная технология. Процессы жизненного цикла программных средств
ИСО/МЭК ТО 15504-1-98* Информационная технология. Оценка программного процесса. Часть 1: Общие положения и вводное руководство
ИСО/МЭК ТО 15504-2-98* Информационная технология. Оценка программного процесса. Часть 2: Эталонная модель процессов и их возможностей
ИСО/МЭК ТО 15504-3-98* Информационная технология. Оценка программного процесса. Часть 3: Проведение оценки
ИСО/МЭК ТО 15504-4-98* Информационная технология. Оценка программного процесса. Часть 4: Руководство по проведению оценок
ИСО/МЭК ТО 15504-5-99* Информационная технология. Оценка программного процесса. Часть 5: Модель оценки и руководящие указания
ИСО/МЭК ТО 15504-6-98* Информационная технология. Оценка программного процесса. Часть 6: Руководство по компетентности экспертов
ИСО/МЭК ТО 15504-7-98* Информационная технология. Оценка программного процесса. Часть 7: Руководство по применению в процессе усовершенствования
ИСО/МЭК ТО 15504-8-98* Информационная технология. Оценка программного процесса. Часть 8: Руководство по применению при определении возможностей процесса поставщика
ИСО/МЭК ТО 15504-9-98* Информационная технология. Оценка программного процесса. Часть 9: Словарь
_______________
* Оригиналы международных стандартов ИСО/МЭК — во ВНИИКИ Госстандарта России.
3 Система обозначений
Диаграммы, описывающие процессы и работы ГОСТ Р ИСО/МЭК 12207, соответствующие стилю указанного стандарта, приведены на рисунке 1.
Рисунок 1 — Графическая система обозначений
Рисунок 1 — Графическая система обозначений
4 Основные концепции в развитие ГОСТ Р ИСО/МЭК 12207
4.1 Инженерная дисциплина
Применение программной инженерии является сравнительно молодой дисциплиной по сравнению с традиционными направлениями инженерной деятельности. В результате контроль, обычно сопровождающий проекты традиционной инженерной деятельности, не всегда возможен для программных средств.
Основные положения ГОСТ Р ИСО/МЭК 12207 в таких вопросах, как разработка и сопровождение программного средства, должны быть реализованы методом, определяемым инженерной дисциплиной. Использование такого метода позволяет определить структуру, четко привязанную к функциональной среде системной инженерии, охватывающей программные и технические средства, персонал и бизнес.
4.2 Архитектура жизненного цикла программного средства
ГОСТ Р ИСО/МЭК 12207 устанавливает архитектуру верхнего уровня жизненного цикла программного средства от замысла до утилизации. Архитектура состоит из множества процессов и взаимосвязей между данными процессами. Процессы основаны на двух исходных принципах: модульности и ответственности.
4.2.1 Модульность
Процессы в ГОСТ Р ИСО/МЭК 12207 являются модульными в том смысле, что они:
a) строго связаны. Все части процесса строго взаимоувязаны;
b) свободно соединены. Число интерфейсов между процессами сведено к минимуму.
В принципе каждый процесс предназначен для реализации уникальной функции в жизненном цикле и может привлекать другой процесс для выполнения специализированной функции. Ниже представлены правила для обозначения, определения области применения и структурирования процессов:
a) процесс должен быть модульным, т.е. один процесс должен выполнять одну и только одну функцию в жизненном цикле, а интерфейсы между двумя любыми процессами должны быть минимизированы;
b) каждый процесс должен быть вызываем из архитектуры;
c) если процесс А вызван процессом В и только процессом В, тогда А принадлежит к В;
d) если функция вызвана более чем одним процессом, тогда функция сама становится процессом;
e) должна быть возможность верификации любой функции в модели жизненного цикла;
f) каждый процесс должен иметь внутреннюю структуру, установленную в соответствии с тем, что должно им быть выполнено.
4.2.2 Ответственность
В ГОСТ Р ИСО/МЭК 12207 термины «организация» и «сторона» являются близкими по смыслу. Организация, являющаяся группой лиц, собранных для реализации некоторой конкретной цели, может быть представлена как корпорация, агентство, предприятие, общество, союз или клуб. Размер организации может варьироваться от одного человека до множества лиц. Когда организация в целом (или ее часть) заключает договор, то она становится стороной. Организация имеет самостоятельные подразделения, а стороны могут быть из одной или разных организаций.
Каждый процесс в ГОСТ Р ИСО/МЭК 12207 рассмотрен с точки зрения ответственности (обязанностей) стороны. Организация может выполнять один или несколько процессов. Процесс может быть выполнен одной или несколькими организациями, при этом одна из организаций должна быть определена как ответственная сторона. Сторона, выполняющая процесс, несет ответственность за весь данный процесс, даже если выполнение отдельных задач поручено другим людям.
Принцип ответственности в архитектуре жизненного цикла облегчает прикладное применение ГОСТ Р ИСО/МЭК 12207 для конкретного проекта, в который может быть вовлечено множество лиц.
4.3 Характеристика процессов
Процессы сгруппированы в три общих класса:
— основные;
— вспомогательные;
— организационные.
4.3.1 Основные процессы
Основными процессами являются:
— заказ;
— поставка;
— разработка;
— эксплуатация;
— сопровождение.
На практике процесс заказа открывает жизненный цикл программного средства. Процесс поставки отвечает за выполнение процессов разработки, эксплуатации и (или) сопровождения.
4.3.2 Вспомогательные процессы
Вспомогательными процессами являются:
— документирование;
— управление конфигурацией;
— обеспечение качества;
— верификация;
— аттестация (валидация);
— совместный анализ;
— аудит;
— решение проблемы.
Вспомогательный процесс может быть использован другим процессом, который таким образом обеспечивает реализацию конкретной цели.
4.3.3 Организационные процессы
Организационными процессами являются:
— управление;
— создание инфраструктуры;
— усовершенствование;
— обучение.
Организация может использовать данные процессы для создания, реализации и совершенствования процессов жизненного цикла.
4.3.4 Детализация процессов
Каждый процесс затем должен быть определен в терминах составляющих его работ, каждая из которых должна быть определена в терминах составляющих ее задач. Работа в процессе состоит из набора связанных задач. В ГОСТ Р ИСО/МЭК 12207 установлено множество процессов, работ и задач, количество которых указано в таблице 1.
Таблица 1 — Анализ процессов
Класс |
Процессы |
Работы |
Задачи |
Основной |
5 |
35 |
135 |
Вспомогательный |
8 |
25 |
70 |
Организационный |
4 |
14 |
27 |
Всего |
17 |
74 |
232 |
Задача (задание) должна(о) быть выражена(о) в виде требования, самообъявления, рекомендации или допустимого действия. С этой целью в ГОСТ Р ИСО/МЭК 12207 тщательно отобраны некоторые вспомогательные глаголы для выделения различий между видами задач:
— глагол «должна (shall)» использован для выражения соглашения между двумя или более сторонами;
— глагол «будет (will)» выражает объявление цели или намерения одной из сторон;
— глагол «следует (should)» выражает рекомендацию из имеющихся возможных вариантов;
— глагол «может (may)» указывает образ действий, допустимый в рамках ГОСТ Р ИСО/МЭК 12207.
4.4 Процессы и проекты
ГОСТ Р ИСО/МЭК 12207 описывает набор процессов, используемых для больших и (или) сложных программных проектов. Однако ГОСТ Р ИСО/МЭК 12207 может быть применен к программному проекту любого типа, меньшего размера и сложности. Этот стандарт также может быть использован для программных средств, являющихся самостоятельными объектами или частями общей системы.
Процессы, работы и задачи в ГОСТ Р ИСО/МЭК 12207 описаны в наиболее общей естественной позиционной последовательности. Эта последовательность не предопределяет последовательность реализации модели жизненного цикла. Описанная последовательность предназначена для того, чтобы в проекте создания программного средства выбрать, упорядочить, применить и повторить присущие проекту или подходящие для него процессы, работы (виды деятельности) и задачи (задания).
В рамках одного проекта ГОСТ Р ИСО/МЭК 12207 может быть использован многократно и выборочно. Например, в конкретном проекте создания программного средства заказчик может попросить поставщика выполнить разработку программного средства с использованием единого метода применения ГОСТ Р ИСО/МЭК 12207. Поставщик далее может попросить субподрядчика выполнить всю разработку программного средства или ее часть. Поставщик (в режиме заказчика) и его субподрядчик (в режиме поставщика) могут использовать конкретный метод реализации ГОСТ Р ИСО/МЭК 12207. В обеих ситуациях необходимо прикладное применение ГОСТ Р ИСО/МЭК 12207 для отражения достигнутых соглашений.
Дальнейшее уточнение данной ситуации — в соответствии с разделом 6.
4.5 Процессы и организации
Организация (или сторона) получает наименование в соответствии с процессом, который она выполняет в данное время, например называется заказчиком, когда выполняет процесс заказа.
Процессы в ГОСТ Р ИСО/МЭК 12207 образуют исчерпывающее множество, удовлетворяющее потребностям различных организаций. Организация, малая или большая, в зависимости от специфики, может выбрать соответствующее подмножество процессов (и соответствующих работ и задач) для реализации поставленной цели. ГОСТ Р ИСО/МЭК 12207 предназначен для применения как внутри организации, так и в договорных отношениях между двумя или несколькими организациями. Для того чтобы облегчить применение ГОСТ Р ИСО/МЭК 12207 как внутри организации, так и вне ее, задачи (задания) должны быть сформулированы на языке договора. Когда указанный стандарт применяют внутри организации, язык договора определяется внутренними задачами, как описано в разделе 7.
ГОСТ Р ИСО/МЭК 12207 должен быть гармонизирован с политикой(ами) организации и другими существующими стандартами. Обычно имеет место случай, когда в организации уже используют собственные стандарты и конкретные методы для разработки программных средств. Поэтому при применении ГОСТ Р ИСО/МЭК 12207 внутри организации важно выяснить связи между указанным стандартом, собственными стандартами организации и различными используемыми методами.
На рисунке 2 приведен один из примеров таких взаимосвязей, который может быть использован при прикладном применении ГОСТ Р ИСО/МЭК 12207 внутри организации. ГОСТ Р ИСО/МЭК 12207 расположен на первом уровне, стандарты организации расположены на втором уровне, а третий уровень предназначен для уточненных методик проведения работ и инструментальных средств, специфичных для проекта. Термины, устанавливаемые и используемые на втором и третьем уровнях, должны соответствовать ГОСТ Р ИСО/МЭК 12207.
Рисунок 2 — Взаимосвязь между существующими документами
Рисунок 2 — Взаимосвязь между существующими документами
Решения по любым возникающим противоречиям должны быть приняты на уровне организации, использующей ГОСТ Р ИСО/МЭК 12207, и могут включать в себя разработку схем и, при необходимости, заполнение выявленных пробелов.
4.6 Программные средства и системы
4.6.1 Интерфейс с системной инженерией
ГОСТ Р ИСО/МЭК 12207 устанавливает строгую связь между системой в целом и программным средством. Это возможно потому, что указанный стандарт основан на принципах общей системной инженерии.
ГОСТ Р ИСО/МЭК 12207 разработан с некоторой степенью расширения для применения в процессе системной инженерии. Когда программное средство является частью общей системы, его выделяют из системы, создают и включают в систему. Данное свойство ГОСТ Р ИСО/МЭК 12207 полезно при отсутствии стандартов системного уровня. Когда программное средство имеет отдельную область применения, задачи системного уровня можно трактовать как полезные рекомендации. В любом случае ГОСТ Р ИСО/МЭК 12207 предусматривает существенное использование программной инженерии в системной инженерии.
4.6.2 Связь между программным средством и системой
Система является конкретной комбинацией технических средств, компьютеров, программных средств, материалов, персонала и возможностей, как показано на рисунке 3. Все это фактически образует работоспособную систему. В исходной системе существуют реальные процессы. Программные средства служат для обеспечения выполнения некоторых функций данных процессов на компьютерах. Программные средства могут быть постоянно (резидентно) размещены в компьютерах, встроены как программы, реализованные техническими средствами, или интегрированы в объект технических средств. В любом случае заказ, поставку, разработку, эксплуатацию или сопровождение программных средств необходимо координировать и гармонизировать с аналогичными процессами для исходной системы.
Рисунок 3 — Программные средства в системе
Рисунок 3 — Программные средства в системе
В организации может быть несколько компьютерных систем, обеспечивающих реальные бизнес-процессы, что показано на рисунке 4.
Рисунок 4 — Компьютерные системы в организации
Рисунок 4 — Компьютерные системы в организации
4.6.3 Системы на основе программных средств
Хотя ГОСТ Р ИСО/МЭК 12207 определяет жизненный цикл системы в целом, но он охватывает такие процессы, как разработка, эксплуатация и сопровождение системы только в части ее программных средств. Поэтому процессы жизненного цикла технических средств в ГОСТ Р ИСО/МЭК 12207 не определены.
4.6.4 Классификация системных и программных работ (видов деятельности)
В процессе разработки программных средств по ГОСТ Р ИСО/МЭК 12207 различают два типа работ (видов деятельности): системные и программные. Область применения данных работ отражена в их наименовании.
Соотношения между системными и программными работами показаны на рисунке 5, разделенном на две соответствующие группы.
Рисунок 5 — Классификация работ (видов деятельности) по ГОСТ Р ИСО/МЭК 12207
Рисунок 5 — Классификация работ (видов деятельности) по ГОСТ Р ИСО/МЭК 12207
Как показано на рисунке 5, системные работы (виды деятельности) в процессе разработки программных средств по ГОСТ Р ИСО/МЭК 12207 начинают с анализа требований к системе (5.3.2) и завершают квалификационными испытаниями системы (5.3.11).
В разделе 8 настоящего стандарта описано, как система становится комбинацией технических и программных средств и ручных операций. Разделение системы на данные элементы начинают с работы «Проектирование системной архитектуры» (5.3.3 ГОСТ Р ИСО/МЭК 12207). Программные работы, которые выделяют из конкретного архитектурного (эскизного) проекта, начинают с анализа требований к программным средствам (5.3.4) и завершают квалификационными испытаниями программных средств (5.3.9).
После завершения разработки программных средств их интегрируют с техническими средствами и ручными операциями в соответствии с работой «Сборка системы» (5.3.10 ГОСТ Р ИСО/МЭК 12207), а затем выполняют работу «Квалификационные испытания системы» (5.3.11). Основываясь на вышеуказанных работах, можно сделать вывод о том, что системные работы являются расширением набора программных работ.
4.7 Управление и планирование
Для каждого из основных и вспомогательных процессов управление соответствующим процессом на проектном уровне реализуют, конкретизируя процесс управления. Посредством этого процесса осуществляют планирование, а также реализацию и контроль всех запланированных событий. Разделы, которые должны быть включены в план, определены в 7.1.2.1 ГОСТ Р ИСО/МЭК 12207, тогда как 7.1.3.2 указанного стандарта определяет отчетность о ходе процесса, а 7.1.3.3 его же устанавливает отчетность о проблемах.
4.7.1 План управления проектом
В процессе поставки по 5.2.4.5 ГОСТ Р ИСО/МЭК 12207 требуется подготовка плана управления проектом, а по 5.2.5.1 указанного стандарта данный план реализуют и контролируют. Далее в процессе поставки должен быть осуществлен надзор за технической реализацией, расходами, выполнением планов (графиков) и проведена соответствующая отчетность (5.2.5.3 ГОСТ Р ИСО/МЭК 12207).
4.7.2 Дополнительные планы
Вопросы, требующие дополнительного рассмотрения и перечисленные в 5.2.4.5 ГОСТ Р ИСО/МЭК 12207, связаны с некоторыми вспомогательными и организационными процессами. Для ряда таких процессов требуется разработка соответствующих планов, например обеспечения качества, верификации и обучения. В зависимости от объема и сложности проекта, а также возможности субподрядного выполнения всех или ряда работ данные планы могут быть включены в план управления проектом или подготовлены в виде отдельных дополнительных документов.
При привлечении субподрядчиков подобные вопросы отслеживают в соответствии с 5.2.5.4 ГОСТ Р ИСО/МЭК 12207, уделяя особое внимание установлению необходимых взаимосвязей для синхронизации данных планов.
Сводные сведения о наборе дополнительных планов могут быть получены из таблиц В.2 и В.3 приложения В к настоящему стандарту.
4.7.3 Контроль документов
Требования по управлению документами включают в себя планы, описанные в процессе документирования (6.1 ГОСТ Р ИСО/МЭК 12207).
4.8 Реализация принципов управления качеством
В ГОСТ Р ИСО/МЭК 12207 реализованы принципы управления качеством и сделано это тремя основными способами, описанными ниже.
4.8.1 Интеграция качества в жизненный цикл
ГОСТ Р ИСО/МЭК 12207 устанавливает требования к всеобъемлющему интегрированному набору процессов, охватывающих жизненный цикл программного средства. Указанный стандарт обеспечивает для каждого процесса доступ к циклу «план-реализация-проверка-акт» (plan-do-check-act) посредством процесса усовершенствования. При этом все работы, связанные с качеством и трактуемые как неотъемлемая часть жизненного цикла программного средства, входят в соответствующие процессы жизненного цикла. Таким образом, за каждым процессом и персоналом, отвечающим за его реализацию, закреплены работы в рамках данного процесса, связанные с качеством.
4.8.2 Процесс обеспечения качества
Процесс обеспечения качества (6.3 ГОСТ Р ИСО/МЭК 12207) предназначен для обеспечения соответствия продуктов и услуг конкретным требованиям и установленным планам. Лица, отвечающие за данный процесс, должны быть наделены необходимой организационной независимостью и соответствующими полномочиями. Организационная независимость подразумевает независимость от тех, кто непосредственно отвечает за создание продукта, а соответствующие полномочия подразумевают права на проведение оценки и инициализацию корректирующих действий.
4.8.3 Процесс усовершенствования
ГОСТ Р ИСО/МЭК 12207 (7.3) определяет процесс усовершенствования для дальнейшего повышения качества работ организации в целом независимо от договорных обязательств.
4.9 Гибкость и отзывчивость на развитие технологии
ГОСТ Р ИСО/МЭК 12207 является гибким и чувствительным к развитию дисциплины программной инженерии. Это достигается обеспечением открытой архитектуры высокого уровня, т.е. ГОСТ Р ИСО/МЭК 12207 является:
a) применимым к любой(ым):
— модели(ям) жизненного цикла (например, каскадной, инкрементной или эволюционной);
— методам или технологиям программной инженерии (например, объектно-ориентированное проектирование, структурное программирование, нисходящее тестирование или макетирование);
— языкам программирования (например, КОБОЛ, Ада или ассемблер).
Решение данных вопросов зависит от самого проекта и современного состояния технологии, а выбор этих элементов осуществляет пользователь ГОСТ Р ИСО/МЭК 12207;
b) гибким с общей точки зрения, т.е. работы (виды деятельности) и задачи (задания) процесса жизненного цикла отвечают на вопросы «что делать?», а не на вопросы «как делать?». Другими словами, задачей может быть «разработать и документально оформить архитектурный проект», но не «разработать или документально оформить архитектурный проект с использованием метода нисходящего функционального проектирования». Данная схема предоставляет заказчику широкие возможности для установления требований к конечному продукту или услуге и, в то же время, позволяет продавцу разрабатывать и применять соответствующие методы, способы и инструментарий для создания продукта или предоставления услуги;
c) адаптируемым к любой отрасли промышленности (например, к военным или коммерческим целям) или любой национальной или организационной культуре.
4.10 Процессы и документирование
ГОСТ Р ИСО/МЭК 12207 не является стандартом в области документирования, т.е. даже если в указанном стандарте установлены требования к документированию некоторых выходных результатов процессов, он не определяет формат или содержание документов. Указанный стандарт не определяет, как объединять аналогичные выходные результаты, такие как планы, спецификации (технические задания) или требования к тестированию. Уточненные требования к документированию приведены в приложении В к настоящему стандарту.
4.11 Метрики программных средств
ГОСТ Р ИСО/МЭК 12207 не определяет или не задает свойств (атрибутов) программного средства (таких как надежность или удобство сопровождения) в терминах конкретной системы показателей (метрик) и указателей. Этот стандарт описывает способы для определения подобных свойств программного средства, но они должны быть уточнены пользователями ГОСТ Р ИСО/МЭК 12207.
4.12 Согласованность
Соответствие с ГОСТ Р ИСО/МЭК 12207 может быть достигнуто следующими способами;
a) организация публично объявляет условия сделки, набор процессов, работ (видов деятельности) и задач (заданий) из ГОСТ Р ИСО/МЭК 12207, которым должны подчиняться поставщики данной организации;
b) программный проект адаптирует соответствующие процессы, работы и задачи, которые должны быть реализованы по договорным критериям.
Примечание — ГОСТ Р ИСО/МЭК 12207 содержит набор требований, сформулированных как «должен». Пользователи указанного стандарта не обязаны подчиняться данному документу в целом, т.е. они не должны добиваться соответствия всем формулировкам «должен» из ГОСТ Р ИСО/МЭК 12207. Соглашение по данному вопросу может быть достигнуто между двумя сторонами. Стороны могут решить, что ГОСТ Р ИСО/МЭК 12207 является основой для соглашения, или они могут согласовать соответствующую адаптацию ГОСТ Р ИСО/МЭК 12207 для удовлетворения своих частных требований.
4.13 Заключение
ГОСТ Р ИСО/МЭК 12207 не заменяет строго систематизированное управление проектированием программного обеспечения систем. Указанный стандарт определяет структуру, в которой процессы, работы и задачи, связанные с программным средством, могут быть соответствующим образом определены, запланированы и выполнены. ГОСТ Р ИСО/МЭК 12207 содержит набор четко определенных конструктивных блоков (процессов). Пользователь указанного стандарта должен выбрать, практически применить и скомпоновать данные блоки соответственно целям и задачам своей организации и проекта. При практическом применении ГОСТ Р ИСО/МЭК 12207 должны быть сохранены его архитектура, сущность и целостность, например включением элементов стандарта с пометой «не применяется» и объяснением причины его неиспользования.
5 Внедрение ГОСТ Р ИСО/МЭК 12207
5.1 Обзор
ГОСТ Р ИСО/МЭК 12207 может быть внедрен по разным причинам, включая:
— применение его в конкретном проекте при определении процессов, работ и задач, связанных с программными средствами;
— использование его организацией в качестве основы для усовершенствования программных процессов в самой организации;
— использование его в качестве компонента в процессе моделирования общего жизненного цикла системы.
Какой бы ни была причина для внедрения ГОСТ Р ИСО/МЭК 12207, рекомендуемая стратегия его практического применения состоит из следующих шагов:
a) плана внедрения;
b) практического применения ГОСТ Р ИСО/МЭК 12207;
c) проведения сопровождения пилотного проекта(ов);
d) формализации метода внедрения;
e) утверждения метода внедрения.
Стратегией является типовой метод внедрения, которого следует придерживаться при внесении изменений в деятельность организации или проект. Описанная выше стратегия внедрения может быть неоднократно повторена в проекте или организации, когда вводят дополнительные процессы и (или) совершенствуют существующие.
Когда проект или организация уже находится в стабильном состоянии, т.е. для него(е) определены и утверждены процессы по ГОСТ Р ИСО/МЭК 12207, тогда стратегия внедрения должна быть укорочена и может состоять из следующих шагов:
a) плана внедрения;
b) практического применения ГОСТ Р ИСО/МЭК 12207;
c) проведения сопровождения пилотного проекта(ов).
5.2 План внедрения
Внедрение ГОСТ Р ИСО/МЭК 12207 должно быть рассмотрено как конкретный проект и соответствующим образом спланировано.
При планировании внедрения указанного проекта должны быть учтены следующие аспекты:
а) определение области применения проекта, включая, возможно:
— единый проект внутри организации или часть двустороннего договора;
— выделение некоторых ключевых процессов или даже единственного процесса, от которого ожидают выгоду для организации. Данный метод может быть использован, когда были обнаружены недостатки в деятельности организации и в дальнейшем предполагают полное внедрение ГОСТ Р ИСО/МЭК 12207;
— практическое применение ГОСТ Р ИСО/МЭК 12207 через ряд проектов с вероятным постадийным его введением. При этом в организации могут отсутствовать или существовать некоторые процессы, которые должны быть стандартизованы по ГОСТ Р ИСО/МЭК 12207;
— практическое применение ГОСТ Р ИСО/МЭК 12207 во всех проектах и во всех подразделениях данной организации. Вероятность использования данного метода какой-либо организацией, за исключением очень небольшой, невелика. Данный метод внедрения может быть пригоден для нового филиала существующей организации, в которой для практической работы ранее уже был использован ГОСТ Р ИСО/МЭК 12207;
b) определение целей проекта и установление того, как они соответствуют общим целям деятельности организации. Если явная связь между данным проектом и деловыми интересами организации не установлена, то сформулировать предложение по достижению целей проекта внедрения ГОСТ Р ИСО/МЭК 12207 затруднительно;
c) определение ролей и обязанностей группы или организации проектировщиков с установлением единоличной ответственности за каждый процесс. В большинстве случаев одно лицо или организация отвечает за несколько процессов, особенно в малых проектах или организациях;
d) определение ресурсов, необходимых для внедрения ГОСТ Р ИСО/МЭК 12207, таких как время, деньги, персонал и оборудование;
e) создание и документальное оформление плана управления проектом по внедрению ГОСТ Р ИСО/МЭК 12207.
5.3 Практическое применение ГОСТ Р ИСО/МЭК 12207
При выполнении позиций плана внедрения, связанных с практическим применением указанного стандарта, реализуют процесс адаптации, описанный в приложении А ГОСТ Р ИСО/МЭК 12207. Рекомендации по практическому применению ГОСТ Р ИСО/МЭК 12207 для конкретных целей приведены в разделах 6-8 настоящего стандарта.
Данные рекомендации из настоящего стандарта должны быть изучены совместно с общими советами по его практическому применению, приведенными в приложении В ГОСТ Р ИСО/МЭК 12207, и материалами, связанными с конкретной ситуацией. Например, практическое применение указанного стандарта может быть выполнено внутри организации с использованием особенностей модели жизненного цикла системы.
На рисунке 6 показана последовательность событий в процессе адаптации, который рассмотрен в приложении А ГОСТ Р ИСО/МЭК 12207. Конкретные примеры практического применения указанного стандарта приведены в приложении D к настоящему стандарту. В данных примерах:
— использованы сценарии для определения среды проектирования;
— при необходимости определены дополнительные работы и задачи;
— обобщены решения по практическому применению ГОСТ Р ИСО/МЭК 12207 и приведены обоснования для него.
Рисунок 6 — Работы по практическому применению ГОСТ Р ИСО/МЭК 12207
Рисунок 6 — Работы по практическому применению ГОСТ Р ИСО/МЭК 12207
5.3.1 Определение среды проектирования и характеристик проекта
Характеристики организации могут быть определены при ответе на следующие вопросы:
— Какие процессы, стратегии и процедуры уже применяются?
(Это важно для определения применяемых процессов и практических методов, подлежащих включению в общий набор необходимых процессов.)
— Является ли данный процесс основным для достижения целей организации?
— Учтен ли повышенный деловой риск?
— Где существуют проблемные области?
— Какова практика организации (легкоадаптируема или невосприимчива к изменениям)?
Характеристики проекта могут быть определены при ответе на следующие вопросы:
— Какая модель жизненного цикла системы или проекта используется?
— Каков уровень совершенства конкретного процесса?
— Каков технический риск?
— Является ли система критичной по безопасности?
— Будут ли использованы новые технологии?
5.3.2 Запрос исходных данных
Соответствующие требования, выделенные из деловых и договорных потребностей организации (проекта), являются исходными данными для практического применения ГОСТ Р ИСО/МЭК 12207. Например, ГОСТ Р ИСО/МЭК 12207 может быть применен в соответствии с договором между поставщиком и покупателем продукта. Потребитель может потребовать только проведения проектирования программного средства, а не полной разработки программного обеспечения системы. В другом случае, если требования потребителя связаны с критичным по безопасности программным средством, заменяющим существующее у него программное средство, ряд задач (заданий) из ГОСТ Р ИСО/МЭК 12207 может быть исключен.
Заинтересованные стороны должны быть вовлечены в процесс принятия решений по практическому применению указанного стандарта. Данные лица могут обеспечить реализацию и эффективность применения выбранных процессов. При этом, по возможности, должна быть обеспечена преемственность реализуемых проектов.
5.3.3 Выбор процессов, работ и задач
Должны быть определены подлежащие реализации процессы или части процесса из ГОСТ Р ИСО/МЭК 12207 и приоритеты их реализации. Обычно предпочтительнее начинать с процессов, от которых может быть получена наибольшая отдача, чем пытаться сразу внедрить весь ГОСТ Р ИСО/МЭК 12207.
ГОСТ Р ИСО/МЭК 12207 не определяет последовательность выполнения процессов, работ и задач и не предписывает какую-либо конкретную модель жизненного цикла программного средства. На данной стадии полезно провести привязку существующих процессов, практического опыта и (или) методов к процессам, работам и задачам из ГОСТ Р ИСО/МЭК 12207.
Подобная привязка может быть применена для проверки полноты используемого метода внедрения, т.е. определения наличия «пробелов» между существующей и планируемой ситуацией, в которой предполагают использовать процессы из ГОСТ Р ИСО/МЭК 12207.
5.3.4 Документирование решений по внедрению и их обоснований
При практическом применении ГОСТ Р ИСО/МЭК 12207 должна быть документально оформлена привязка установленных процессов, работ и задач к выбранной модели(ям) жизненного цикла программного средства вместе с выявленными взаимосвязями и обоснованиями применения выбранного метода. Данные документы должны быть включены в план управления проектом по внедрению ГОСТ Р ИСО/МЭК 12207, чтобы обеспечить эталонную структуру для проведения оценки или обзора реализации конкретного метода внедрения.
5.4 Проведение сопровождения пилотного проекта(ов)
При внедрении в организации ГОСТ Р ИСО/МЭК 12207 через реализацию ряда проектов можно ограничить степень риска для организации путем использования некоего «лоцмана» в ключевых областях и процессах. Успешное внедрение ГОСТ Р ИСО/МЭК 12207 обычно включает в себя такие методы, как:
a) определение пилотных проектов, которые могут использовать выбранные процессы. Данные пилотные проекты должны быть выбраны на основе приоритетных работ, которые с высокой вероятностью приведут к значительному улучшению результатов и от которых ожидают быструю реальную отдачу;
b) выбор группы добровольцев для сопровождения пилотных проектов с последующим пропагандированием и вознаграждением их усилий;
c) обучение всех вовлеченных в процесс. Повышению знаний обучаемых можно способствовать путем регулярного уведомления их о развитии процесса внедрения в дополнение к официальным курсам обучения;
d) планирование пилотных проектов и определение критических факторов достижения успеха;
e) включение выбранного адаптированного процесса(ов) в план управления проектом для каждого пилотного проекта. При этом в план должны быть включены документы, описанные в 5.3.4 настоящего стандарта, или даны ссылки на них;
f) реализация пилотного проекта(ов), отслеживание и документирование хода его выполнения по критическим факторам успеха реализации. Навыки документирования осваивают в ходе пилотного проекта(ов). Полученные уроки должны быть учтены при совершенствовании процессов.
5.5 Формализация метода внедрения
Формализация включает в себя введение нового процесса в ряд проектов и (или) в организации. При этом принимают и используют такие методы, как обучение, документирование, предоставление инструментальных средств для нового процесса(ов), а также слежение за данным процессом(ами) и определение его недостатков. В любом утвержденном и реализуемом проекте должно быть осуществлено планирование перехода к новому процессу(ам).
Примечание — При надзоре за ходом проекта в него могут быть внесены усовершенствования (уточнения). Подобные уточнения также могут быть внесены при сравнении одного проекта с другим с целью определить наилучшие методы внедрения ГОСТ Р ИСО/МЭК 12207, подлежащие реализации в последующих проектах.
5.6 Утверждение метода внедрения
Утверждение метода внедрения ГОСТ Р ИСО/МЭК 12207 обеспечивает последовательную и автоматизированную реализацию процесса внедрения в проекте или организации. При этом также обеспечивают оценку протекания данного процесса и, при необходимости, его усовершенствование. Для этой цели может быть использован процесс усовершенствования, описанный в 7.3 ГОСТ Р ИСО/МЭК 12207.
6 Применение в проектах
В настоящем разделе приведены дополнительные рекомендации по применению ГОСТ Р ИСО/МЭК 12207 в проекте. Однако данные рекомендации не являются исчерпывающими в связи с отличиями одного проекта от другого.
Следующие факторы могут влиять на заказ, разработку, эксплуатацию или сопровождение программного средства:
— различия в стратегиях и процедурах, принятых в разных организациях;
— особенности стратегий различных проектов в цикле «заказ-поставка»;
— объем и сложность проекта;
— требования к системе.
ГОСТ Р ИСО/МЭК 12207 разработан с учетом подобных вариантов и подходит для любого проекта. Кроме того, в целях снижения стоимости и повышения качества разработки ГОСТ Р ИСО/МЭК 12207 можно практически применять к конкретному проекту. Всем субъектам проекта должны быть предоставлены возможности участия в процессе адаптации указанного стандарта.
6.1 Особенности практического применения ГОСТ Р ИСО/МЭК 12207
В настоящем подразделе рассмотрены ключевые факторы, которые должны быть учтены при применении ГОСТ Р ИСО/МЭК 12207 в проекте. Перечень этих факторов, не являющийся исчерпывающим, связан с текущим состоянием рассматриваемого вопроса, а каждый из данных факторов должен быть взаимоувязан с другими и влиять на них в зависимости от специфики программного проекта. При рассмотрении среды проектирования может быть полезна следующая группа факторов:
— организационные вопросы;
— проектный риск;
— наличие и достаточность ресурсов.
6.1.1 Модель жизненного цикла системы
Степень практического применения ГОСТ Р ИСО/МЭК 12207 в качестве обязательного (нормативного) или рекомендуемого документа зависит от места данного программного проекта в модели жизненного цикла системы (типовые модели жизненного цикла рассмотрены в приложении С к настоящему стандарту).
Должна быть определена соответствующая позиция модели жизненного цикла системы, в которой программное средство становится частью системы (см. 8.1). Установление этого поможет определить:
— является ли программное средство частью системы или имеет самостоятельное применение;
— можно ли использовать ГОСТ Р ИСО/МЭК 12207 в качестве метода для проведения компьютерного моделирования и имитации;
— можно ли использовать ГОСТ Р ИСО/МЭК 12207 для разработки, эксплуатации или сопровождения программного средства.
Следует также рассмотреть соответствующие пункты данного раздела и обеспечить установление необходимых интерфейсов в модели жизненного цикла системы.
6.1.2 Политики и процедуры организаций
Должны быть определены соответствующие политики и процедуры заинтересованных организаций, особенно заказчика и поставщика, с которыми необходимо согласовать программный проект. Например, политики и процедуры, связанные с:
— защитой;
— безопасностью;
— конфиденциальностью;
— управлением риском;
— использованием независимого органа по верификации и аттестации (валидации);
— использованием конкретного языка программирования;
— обеспечением техническими ресурсами.
Необходимо определить любые соответствующие законы и подзаконные акты, включая документы, относящиеся к среде, общей безопасности и конфиденциальности и влияющие на программный проект. Это необходимо для контроля за соответствием поведения системы данным нормативным актам.
Вышеназванные политики и процедуры необходимо соответственно учитывать при разработке, эксплуатации и сопровождении программного средства. Например, если имеются политики безопасности и защиты, в них необходимо включить работы по анализу требований из процесса разработки и работу по эксплуатации системы из процесса эксплуатации.
6.1.3 Характеристики системы
Необходимо определить на соответствующем уровне детализации подсистемы и элементы конфигурации системы. Необходимо определить характеристики системы, особенно те, которые относятся к программному средству. При определении данных характеристик необходимо отметить, какие из них являются критичными при эксплуатации системы.
Примерный перечень характеристик системного уровня (относящихся к программному средству и подлежащих учету) включает в себя:
— межсистемные и внутрисистемные интерфейсы;
— интерфейсы пользователя;
— влияние ошибок программного средства на защиту и безопасность системы;
— оценку вычислительных мощностей и временных ограничений;
— наличие программ, реализованных техническими средствами;
— наличие соответствующих компьютеров.
Если в систему входит много подсистем или элементов конфигурации, для них должны быть полностью проведены работы системного уровня из процесса разработки. Должны быть учтены все требования к интерфейсам и сборке (интеграции) системы. Для небольшой системы подобная строгая последовательность действий может не понадобиться.
6.1.4 Характеристики программного средства
Должны быть определены характеристики программного уровня, например:
— потенциальное число элементов программной конфигурации;
— типы, объемы и критичность программных средств;
— технический риск;
— типы, комплектность и носители документов;
— необходимость новой разработки, изменения или повторного применения программного средства;
— аспекты из ГОСТ Р ИСО/МЭК 9126, такие как надежность.
Если в программное средство входит много элементов программной конфигурации, компонентов и модулей, для каждого элемента данной конфигурации должны быть полностью проведены работы программного уровня из процесса разработки. Должны быть учтены все требования к интерфейсам и сборке (интеграции) программного средства. Для небольшого программного средства подобная строгая последовательность действий может не понадобиться.
Должны быть определены работы (виды деятельности), связанные с контролем за административным управлением и проведением оценок, которые могут потребоваться для программного средства с точки зрения критичности системы и характеристик самого программного средства.
6.1.5 Политика сопровождения программного средства
Должны быть учтены вопросы, связанные с сопровождением программного средства. Типовыми объектами, рассматриваемыми при этом, являются:
— ожидаемый период сопровождения;
— ожидаемая периодичность внесения изменений;
— критичность применения;
— определение персонала, осуществляющего сопровождение;
— определение степени квалификации данного персонала;
— определение среды, необходимой для сопровождения программного средства, включая его тестирование.
Должны быть учтены все требования к документированию программного средства, особенно если предполагают длительный период его сопровождения или внесение в него существенных изменений. При необходимости в среде документирования может быть предусмотрено средство для поиска необходимой информации.
Полезно также обеспечить в период сопровождения электронный доступ к документам.
6.1.6 Модель жизненного цикла проекта
Для проекта должен быть проведен выбор одной или нескольких соответствующих моделей жизненного цикла (см. приложение С к настоящему стандарту). Должно быть установлено, является ли модель жизненного цикла программного средства составной частью модели жизненного цикла системы либо полной моделью жизненного цикла.
Каждая модель жизненного цикла в приложении С содержит некоторые процессы и работы, которые могут быть выполнены последовательно, повторно или комбинированно. Работы процессов из ГОСТ Р ИСО/МЭК 12207 должны быть отображены в выбранной модели жизненного цикла. С точки зрения создания модифицируемого, развивающегося, структурированного и планируемого продукта, результаты одной работы из модели жизненного цикла должны быть переданы следующей. В этом случае соответствующие документы должны быть созданы к окончанию данной работы, т.е. до начала следующей работы.
6.1.7 Разнообразие участвующих сторон
Должны быть определены стороны, участвующие в проекте, и их ответственность за конкретные процессы. Должны быть учтены все работы и задачи из ГОСТ Р ИСО/МЭК 12207, связанные с взаимодействиями (интерфейсами) между этими сторонами.
Для большого проекта, в который вовлечено много лиц, необходим развитой административный надзор и контроль. Например, проведение внутренних и независимых оценок, анализов, аудиторских проверок, инспекций и подготовка отчетов, являющихся главным инструментарием для большого проекта. Для малых проектов подобные средства контроля могут быть излишними и должны быть использованы взвешенно.
6.1.8 Типы программных средств
Должны быть определены типы программных средств, охваченных проектом, так как для различных типов требуются различные решения по внедрению ГОСТ Р ИСО/МЭК 12207. Примерами типов программных средств являются:
a) новая разработка;
b) готовое;
c) программы, реализованные техническими средствами;
d) автономное;
e) непоставляемое.
Ниже приведены некоторые важные рекомендации по основным типам программных средств. Следует запомнить, что различные типы программных средств реализуются на различных этапах процесса разработки, связанных с выполнением соответствующего набора работ.
a) Новая разработка.
Данный тип программного средства изначально охвачен процессом разработки. Поэтому для него должны быть учтены все требования к процессу разработки.
b) Готовое:
— используют именно готовое программное средство целиком. Данный тип программного средства уже спроектирован, запрограммирован и тестирован, но может потребоваться дополнительное тестирование в зависимости от такого его свойства, как критичность или практика применения. Данный тип программного средства охватывается процессом разработки не позднее проведения квалификационных испытаний системы, а полный процесс разработки для него является избыточным. Для данного типа должны быть оценены: качество функционирования, документы, права собственности и возможности его сопровождения (поддержки);
— готовое программное средство включают в процесс разработки без изменений, но требуется настройка его параметров под необходимую конфигурацию. В список настраиваемых параметров, например, может входить формат данных или размер бумаги. Данный тип охватывается процессом разработки после тестирования или сборки (интеграции) программных модулей разрабатываемого программного средства. Полный процесс разработки для данного типа может быть избыточным. Для данного типа должны быть оценены: качество функционирования, документы, права собственности и возможности его сопровождения (поддержки);
— модифицированное готовое программное средство, например с дополнением более подходящими форматами отчетов или отсутствием ряда документов. В данном случае, в зависимости от критичности объекта и предполагаемых изменений в нем, процесс разработки должен быть применен через процесс сопровождения. Процесс разработки подключают при программировании и тестировании модификаций данного программного средства. Для этого типа должны быть оценены: качество функционирования, документы, права собственности и возможности его сопровождения (поддержки).
c) Программы, реализованные техническими средствами.
Это программное средство аппаратно встроено в систему или подключено к ней. Так как данное программное средство является частью большой системы, в процессе его разработки должны быть предусмотрены работы системного уровня. Из работ системного уровня должны быть выбраны те, которые определяются глаголами «выполнить» или «обеспечить». Если данный тип (программного средства в целом или входящих в него программ, реализованных техническими средствами) в дальнейшем изменять не предполагается, то требуется тщательная проверка документов к нему.
d) Автономное.
Данный тип охватывает автономные программные средства. Так как они не являются частью законченной системы, проведения работ системного уровня в процессе разработки для них не требуется. При этом для них должны быть тщательно проверены необходимые документы, особенно в части их сопровождения.
e) Непоставляемое.
Так как данный тип средств не является объектом заказа, поставки или разработки, соответствующие разделы ГОСТ Р ИСО/МЭК 12207 для них не учитывают, за исключением 5.3.1.5 указанного стандарта. Однако если заказчик решит заказать часть таких программных средств для последующей их эксплуатации и сопровождения, тогда к ним следует применять рекомендации в соответствии с перечислениями b) и d) данного пункта.
6.1.9 Объем проекта
Большой проект, в который вовлечены десятки или сотни лиц, вызывает значительные трудности в управлении им по сравнению с проектом, в котором заняты, например, три человека. Большие проекты или проекты с привлечением субподрядчиков требуют тщательного административного надзора и контроля. В некоторых проектах данные мероприятия реализуют применением совместных анализов, аудиторских проверок, верификации, аттестации и обеспечением качества. Для малых проектов подобные методы контроля могут быть излишними.
6.1.10 Критичность проекта
Для системы, работа которой в значительной степени зависит от правильного функционирования программных средств и своевременной выдачи результатов, необходим более тщательный надзор и контроль. Напротив, для некритичного программного средства излишний надзор и контроль, вероятно, неэффективен. (Для уточнения понятия критичности — см. 6.4.1.1 ГОСТ Р ИСО/МЭК 12207.)
6.1.11 Технический риск
При разработке программного средства может иметь место технический риск. Если использована несовершенная технология программирования, то будет создано уникальное или сложное программное средство; если к программному средству предъявлены требования по безопасности и (или) защите или другие критические требования, то могут быть необходимы строгое определение технических требований, тщательное проектирование, тестирование и оценка, а также независимая верификация и аттестация.
7 Применение в организациях
7.1 Предпосылки и методы
Организации должны широко использовать ГОСТ Р ИСО/МЭК 12207 в качестве составной части деятельности по усовершенствованию процессов, связанных с программными средствами. Это может быть выполнено автономно или вместе с доступными методами оценки и определения функциональных возможностей процесса, например описанными в стандартах серии ИСО/МЭК ТО 15504.
Применение ГОСТ Р ИСО/МЭК 12207 в организации основано на тех же методах внедрения, которые используют в проектах. Организации, внедряющие ГОСТ Р ИСО/МЭК 12207, должны использовать рекомендации, приведенные в разделе 6, и политики, описанные в разделе 5 настоящего стандарта.
7.2 Возможности применения
Причины, по которым ГОСТ Р ИСО/МЭК 12207 внедряют в организации, могут быть следующими:
— проверка совершенства существующего метода. Это обычно имеет место, когда метод был разработан самой организацией или ею был выбран и изменен существующий метод;
— практическое применение данного метода для предотвращения риска, связанного с выходом на новые секторы рынка с более жесткими требованиями, связанными с потенциальным риском;
— разработка нового метода, например для удовлетворения потребностям новой организации. Тем самым могут быть охвачены организации, созданные путем слияния или делового сотрудничества. Это может быть необходимо для сопровождения некоторых моделей процессов обеспечения конкретных работ;
— управление внедрением новой технологии, например: автоматизация ручных процессов или изменение методов, используемых при внедрении программного продукта. ГОСТ Р ИСО/МЭК 12207 устанавливает критерии, которые могут быть использованы для контроля совершенства соответствующего метода до или после изменения технологии;
— оценка внутренних возможностей стороны с точки зрения удовлетворения критериям договора, например в качестве стороны, участвующей в конкурсном (тендерном) процессе;
— определение контрольных этапов, при реализации которых могут быть разработаны более совершенные программы, например проведение аудита в соответствии с ГОСТ Р ИСО/МЭК 12207 и использование самого процесса усовершенствования.
7.3 Распространение административного управления
Для любой программы работ, связанной с изменениями существующей практической деятельности, внутри организации должно быть обеспечено административное управление надзором за реализацией и внесением изменений. При участии в работах многих сторон подобный метод должен быть предусмотрен договором и, в случае реализации его головной организацией, распространен на все участвующие стороны.
8 Прикладное применение модели жизненного цикла системы
Настоящий раздел иллюстрирует общую модель жизненного цикла системы или проекта и описывает, как ГОСТ Р ИСО/МЭК 12207 может быть внедрен в данной модели жизненного цикла системы. Обзор типовых моделей жизненного цикла — по приложению С к настоящему стандарту.
8.1 Модель жизненного цикла системы
Типовая модель жизненного цикла системы начинается с концепции идеи системы или потребности в ней, охватывая разработку, создание, эксплуатацию и сопровождение системы, и заканчивается снятием системы с эксплуатации (утилизацией). Модель жизненного цикла обычно разделяют на периоды реализации, например стадии или этапы. Каждый подобный период включает в себя основные реализуемые в нем работы и задачи, при завершении которых может потребоваться разрешение на переход к следующему периоду реализации.
Например, общую модель жизненного цикла системы разделяют на стадии (этапы) с последующей адаптацией каждой из них к модели жизненного цикла конкретной системы:
a) определение потребностей;
b) исследование и описание основных концепций;
c) демонстрация и аттестация основных концепций;
d) проектирование и разработка;
e) создание и производство;
f) распространение и продажа;
g) эксплуатация;
h) сопровождение и поддержка;
i) снятие с эксплуатации (утилизация).
8.2 Модель жизненного цикла программного средства
Типовая модель жизненного цикла программного средства состоит из ряда работ. Данная модель начинается с формулировки замысла (идеи) или концепции программного продукта или услуги, продолжается работами по применению методов системной и программной инженерии, работами по эксплуатации, сопровождению и поддержке и заканчивается снятием с эксплуатации (утилизацией). В ГОСТ Р ИСО/МЭК 12207 все эти и другие, связанные с ними работы, объединены в основные, вспомогательные и организационные процессы, из которых формируют модель жизненного цикла программного средства.
8.3 Пример использования ГОСТ Р ИСО/МЭК 12207 в общей модели жизненного цикла системы
На рисунке 7 основное внимание уделено использованию ГОСТ Р ИСО/МЭК 12207 в общей модели жизненного цикла гипотетической системы. Основным назначением данного рисунка является сжатое представление метода применения ГОСТ Р ИСО/МЭК 12207. В таблице 2 (см. 8.13) представлен состав работ жизненного цикла системы и используемых процессов жизненного цикла программного средства.
Рисунок 7 — Использование ГОСТ Р ИСО/МЭК 12207 для обеспечения модели жизненного цикла системы
Рисунок 7 — Использование ГОСТ Р ИСО/МЭК 12207 для обеспечения модели жизненного цикла системы
Организация может использовать ГОСТ Р ИСО/МЭК 12207 в любой работе или в общей модели жизненного цикла самостоятельно, а также может привлекать для этого (частично или полностью) поставщика соответствующих продуктов или услуг.
8.4 Определение потребностей
Во время данной работы выявляют и определяют замысел или потребность в новой или усовершенствованной системе. Формулируют общие потребности с учетом таких факторов, как стоимость, критичность и реализуемость планируемой системы.
Процесс заказа может быть использован для установления технологических или эксплуатационных возможностей системы до выполнения исследований, разработки и привязки. Далее процесс разработки может быть использован для создания программного средства, методов или моделей для принятия соответствующих решений.
8.5 Исследование и определение концепции
Данная работа открывает период первоначального планирования, в течение которого оценивают технические, стратегические и рыночно-экономические аспекты системы путем всесторонних исследований, опытной разработки и оценки ее концепции. Решения, предложенные для реализации определенной потребности, могут быть однозначными или альтернативными, разработанными на основе оценки возможностей, прикидок (таких как стоимость, график работ, перспективы продажи, интеллектуальность и логистика); изучения компромиссных вариантов и проведения анализов. Выходными результатами данной работы, передаваемыми в следующую работу, являются предварительные общие требования к системе и возможные программные средства, выбранные в качестве прототипа.
Процессы заказа, поставки и разработки могут быть использованы для:
— помощи при установлении предварительных требований к системе;
— определения прототипов разработки;
— анализа и учета взаимодействий (обратной связи) с пользователем по предложенным решениям.
Сам по себе процесс разработки может быть использован в качестве метода для разработки программного средства, реализующего аналитические или имитационные модели, необходимые при исследованиях и принятии определенных решений.
8.6 Демонстрация и аттестация
При выполнении данной работы уточняют характеристики системы, ее концепции и принятые решения, включая вычислительные ресурсы, используя при этом методы системной инженерии, определяют предварительные требования к программному средству и его прототипам, включая их тестирование и аттестацию. Характеристики системы, а также выбранные концепции и решения аттестуют для демонстрации того, что система, включая технические и программные средства, пригодна для технологической разработки. Требования к системе являются основой для дальнейшего их разбиения по компонентам системы, таким как технические средства, компьютеры, программные средства и персонал. Данные выходные результаты передают в следующую работу.
Процессы заказа, поставки и разработки могут быть использованы для анализа и определения требований к системе, принятия общих проектных решений по системе и предварительных требований для компонентов системы, включая программные средства. Процесс разработки может быть использован в качестве метода для анализа, демонстрации, аттестации, тестирования и макетирования соответствующих требований и проектных решений.
8.7 Проектирование и разработка
Данная работа охватывает период проектирования, создания, интеграции (сборки), тестирования и оценки системных технических средств, компьютеров, программных средств, оборудования, персонала подсистем, его обучения и объектов сопровождения. Выходными результатами данной работы являются система, достаточно близкая к создаваемой, документы, необходимые для последующей работы, и результаты тестирования качества создаваемой системы.
При проведении данной работы полностью применим ГОСТ Р ИСО/МЭК 12207. При этом для выполнения разработки или модернизации программного средства должны быть выбраны, соответствующим образом адаптированы и использованы процессы, работы и задачи из процессов заказа, поставки и разработки. Данная работа может включать в себя однократное или многократное использование процесса разработки, скоординированное с другими компонентами системы. Результатами данной работы являются исходные требования к программному средству, его проект и соответствующие программы.
Если программное средство разрабатывают как часть системы, то должны быть востребованы все работы процесса разработки. Дополнительно уточняют, должен ли разработчик выполнять или обеспечивать работы, связанные с системой. Если программное средство разрабатывают в виде автономного продукта или продукта, не являющегося частью системы, тогда нет необходимости в выполнении работ, связанных с системой, но их следует учесть (предусмотреть).
8.8 Создание и производство
Во время данной работы спроектированную и разработанную систему изготовляют для заказчика (пользователей) или рынка (потребителей). Период создания охватывает работы от постановки на производство до поставки и приемки системы. Целями данной работы являются квалифицированное изготовление и поставка работоспособной и сопровождаемой системы заказчику (пользователям). Период производства охватывает деятельность от постановки на производство до перепроектирования или снятия системы с производства. Целями данной работы являются квалифицированное производство и поставка работоспособной и поддерживаемой системы потребителям (на рынок).
Для программных средств, по сравнению с техническими средствами, работа по созданию и производству незначительна. Она состоит из копирования (тиражирования) разработанного программного средства и документов к нему на соответствующие носители для различных пользователей (потребителей). (Конкретные задачи по реализации данной работы в ГОСТ Р ИСО/МЭК 12207 не установлены.) В этом случае могут быть использованы конкретные промышленные методы и соответствующие государственные акты. Для контроля за выполнением указанных задач может быть использована работа по управлению выпуском и поставкой из процесса управления конфигурацией. Также могут быть использованы другие соответствующие работы, такие как верификация сборки.
8.9 Распространение и продажа
При выполнении данной работы систему поставляют заказчику (пользователям) или покупателям (на рынок). Период распространения начинается с поставки первой работоспособной системы заказчику (пользователям или сопровождающей организации). Период продажи охватывает деятельность от поставки первой партии систем потребителям до изъятия системы с рынка.
Процессы заказа, поставки и разработки могут быть использованы для ввода в действие и наладки разработанного или модифицированного программного средства.
8.10 Эксплуатация
Данная работа включает в себя эксплуатацию, применение или использование системы пользователями (потребителями), заканчиваясь снятием ее с эксплуатации.
Процессы заказа, поставки и эксплуатации могут быть использованы при эксплуатации программного средства и обеспечении эксплуатационной поддержки соответствующих пользователей.
8.11 Сопровождение и поддержка
При выполнении данной работы систему модифицируют, что связано с наличием в ней ошибок, дефектов, возникновением проблем, появлением запросов пользователей или появлением в данной организации потребностей в ее адаптации или усовершенствовании. Данная работа включает в себя предоставление логистической, технической и ремонтной поддержки пользователям (или потребителям) системы.
Процессы заказа, поставки и сопровождения могут быть применены для сопровождения программного средства и предоставления услуг по поддержке системы в соответствующих организациях, у пользователей (потребителей).
При этом должны быть определены все взаимосвязи (интерфейсы) с процессом разработки. В зависимости от важности решаемой проблемы могут быть в разной степени применены работы из процесса разработки (в зависимости от конкретной ситуации).
8.12 Снятие с эксплуатации (утилизация)
В этот период систему снимают с обслуживания. Данная работа включает в себя архивирование снимаемой системы и обеспечение ограниченной поддержки ее пользователей в данный период.
Процесс заказа и работа по снятию с эксплуатации из процесса сопровождения могут быть использованы при снятии с эксплуатации программного средства и обеспечении услуг по поддержке системы в данный конкретный период в организациях, у пользователей (потребителей).
8.13 Процессы жизненного цикла программного средства в общей модели жизненного цикла системы
В таблице 2 приведен пример распределения процессов жизненного цикла программного средства по периодам жизненного цикла системы. Показаны только основные процессы из ГОСТ Р ИСО/МЭК 12207. Вспомогательные или организационные процессы должны быть использованы через основные процессы. Буквой «П» обозначено использование процесса из ГОСТ Р ИСО/МЭК 12207, а буквой «М» — использование соответствующего метода. Обозначение «(П)» или «(М)» указывает на возможность использования соответствующего процесса или метода.
Таблица 2 — Процессы жизненного цикла программного средства в общей модели жизненного цикла системы
Периоды жизненного цикла системы |
Процессы жизненного цикла программного средства |
||||
Заказ |
Поставка |
Разработка |
Эксплуатация |
Сопровождение |
|
Определение потребностей |
() |
||||
Исследование и определение концепции |
() |
(), |
|||
Демонстрация и аттестация |
, |
||||
Проектирование и разработка |
, |
||||
Создание и производство |
|||||
Распространение и продажа |
|||||
Эксплуатация |
|||||
Сопровождение и поддержка |
|||||
Снятие с эксплуатации |
ПРИЛОЖЕНИЕ А (справочное). Процессы качества и требования к оценке
ПРИЛОЖЕНИЕ А
(справочное)
Вспомогательные процессы жизненного цикла, связанные с качеством программного средства, показаны в сгруппированном виде, выделенном серым фоном, на рисунке 1 в ГОСТ Р ИСО/МЭК 12207. Такими процессами являются:
— обеспечение качества;
— верификация;
— аттестация (валидация);
— совместный анализ;
— аудит.
При реализации каждого из основных процессов могут быть привлечены не только вышеперечисленные вспомогательные процессы, связанные с деятельностью по оценке или аттестации, но также и дополнительные задачи по оценке, за решение которых персонально отвечает определенное лицо. Такие дополнительные задачи предназначены для последовательного повышения качества выполнения других задач, работ и процессов. В некоторых проектах подобный метод может привести к дублированию работ или выполнению большего объема работ, чем необходимо, для создания высококачественного продукта. Для других проектов, таких как критичные оборонные проекты, необходимы все процессы, работы и задачи по проведению соответствующих оценок. Поэтому ключевым моментом использования ГОСТ Р ИСО/МЭК 12207 является адаптация процессов, связанных с качеством, проведенная до начала реализации проекта, а также распределение ролей данных конкретных процессов, реализуемых в проекте. ГОСТ Р ИСО/МЭК 12207 формулирует эту важную задачу в виде подготовки плана обеспечения качества, подкрепленного, при необходимости, другими связанными с ним планами, такими как планы верификации и аттестации.
Применение задач, связанных с качеством, может привести к объединению конкретных задач или выполнению обязанностей, связанных с качеством, другими задачами. Например, в малых проектах по разработке управляющей информационной системы, используемой внутри компании, план обеспечения качества должен допускать проведение верификации и аттестации группой проектантов и предусматривать элементарный процесс управления анализом. Для большой критичной оборонной системы, разрабатываемой для заказчика, в ее проекте должны быть запланированы независимые группы по верификации и аттестации, а также совместные анализы и аудиторские проверки. В этом случае решающую роль играют объем и сложность проекта вместе с уровнем интеграции создаваемого приложения или системы.
В таблице А.1 показаны требования, связанные с оценками продуктов, услуг и процессов. В соответствующей работе жизненного цикла проекта или процесса эксперт должен оценить либо программные продукты и услуги самой организации, либо сторонние программные продукты или услуги. В ГОСТ Р ИСО/МЭК 12207 данные оценки сгруппированы в пять нижеперечисленных типов (см. таблицу А.1). Первые четыре типа оценок реализуют на проектном уровне, а последний — на уровне организации. Данные оценки должны быть выбраны и адаптированы пропорционально области применения, важности, сложности и критичности проекта (или стратегии) и потребностям организации. Отчеты о проблемах, несоответствиях или необходимых усовершенствованиях, полученные в результате оценок, передают в процесс решения проблем.
Таблица А.1 — Требования к оценкам продуктов, услуг и процессов
Тип оценки |
Пункт ГОСТ Р ИСО/МЭК 12207 |
Назначение |
Исполнитель |
Примечание |
Оценки внутри процесса |
5.1-5.5 |
Ежедневная работа |
Персонал, выполняющий задачи по оценке в процессе |
— |
Обеспечение качества |
6.3 |
Независимое подтверждение соответствия программных продуктов и услуг требованиям договора и соблюдения установленных планов |
Персонал, организационно независимый от тех, кто отвечает за разработку программного средства |
Можно использовать результаты других работ в качестве исходных данных. Можно скоординировать данные работы с другими работами по оценке |
Верификация и аттестация (валидация) |
6.4 и 6.5 |
Верификация и аттестация продуктов с различной степенью зависимости от проекта |
Заказчик, поставщик, разработчик, оператор, персонал по сопровождению или независимый персонал, или третья сторона |
Можно не дублировать или заменять другими оценками, т.е. данные оценки дополнительны |
Совместные анализы и аудиторские проверки |
6.6 и 6.7 |
Оценка состояний и завершенности продуктов и работ по согласованным графикам |
Оценивающая сторона (аналитик или аудитор) и оцениваемая сторона (анализируемая или проверяемая) совместно |
— |
Оценка и усовер- шенствование |
7.3 |
Эффективное управление и самоусовершенствование |
Администратор |
— |
ПРИЛОЖЕНИЕ В (справочное). Классификация выходных результатов процессов
ПРИЛОЖЕНИЕ В
(справочное)
В настоящем приложении определены выходные результаты процессов (см. таблицы В.1-В.4), которые должны быть документально оформлены в соответствии с требованиями или рекомендациями ГОСТ Р ИСО/МЭК 12207. Перечислены только те пункты ГОСТ Р ИСО/МЭК 12207, по которым требуются выходные результаты. Документы по данным выходным результатам должны быть выбраны и скомплектованы пропорционально области применения, значимости, сложности и критичности проекта или организации. В графе «Выходные результаты» таблицы B.1 наименования или заголовки соответствующих документов не указаны.
Таблица B.1 — Выходные результаты основных процессов жизненного цикла
Процесс |
Пункт ГОСТ Р ИСО/МЭК 12207 |
Выходные результаты |
Тип выходного результата |
Заказ |
5.1.1.8 |
План заказа |
План |
5.1.1.9 |
Стратегия и условия заказа |
Описание |
|
5.1.2.1 |
Заявка на подряд (тендер) |
Описание |
|
5.1.2.1 |
Документы по заказу |
Описание |
|
5.1.3.1 |
Процедура выбора поставщика |
Процедура |
|
5.1.3.4 |
Договор |
Договор |
|
Поставка |
5.2.2.1 |
Предложение |
Предложение |
5.2.4.5 |
План(ы) управления проектом |
План |
|
5.2.6.4 |
Отчеты о проведенных оценках, анализах, аудиторских проверках, испытаниях и реализованных решениях возникших проблем |
Отчет |
|
Разработка |
5.3.1.2 |
Протоколы о проблемах и несоответствиях |
Протокол |
5.3.1.4 |
Планы разработки |
План |
|
5.3.2.1 |
Технические требования (спецификация) к системе |
Описание |
|
5.3.3.1 |
Документ по архитектуре системы |
Описание |
|
5.3.3.1 |
Документ на привязку к объектам системы |
Описание |
|
5.3.4.1 |
Технические требования к программному средству |
Описание |
|
5.3.4.2 |
Результаты оценки технических требований к программному средству |
Протокол |
|
5.3.5.1 |
Объект программной конфигурации |
Программное средство |
|
5.3.5.1 |
Требования к архитектуре (эскизный проект) |
Описание |
|
5.3.5.2 |
Требования к интерфейсам программного средства (эскизный проект) |
Описание |
|
5.3.5.3 |
Эскизный проект базы данных |
Описание |
|
5.3.5.4 |
Руководство(а) пользователя |
Руководство |
|
5.3.5.5 |
Требования к испытанию (тестированию) программного средства |
Описание |
|
5.3.5.6 |
Анализ проекта |
Протокол |
|
Разработка |
5.3.6.1 |
Технический проект |
Описание |
5.3.6.2 |
Уточненные требования к интерфейсам программного средства (технический проект) |
Описание |
|
5.3.6.3 |
Технический проект базы данных |
Описание |
|
5.3.6.5 |
Требования к тестированию программных модулей |
Описание |
|
5.3.6.7 |
Анализ технического проекта |
Протокол |
|
5.3.7.1 |
Программные модули и базы данных |
Программные средства |
|
5.3.7.1 |
Процедура испытаний (тестирования) |
Процедура |
|
5.3.7.2 |
Результаты тестирования программных модулей |
Протокол |
|
5.3.7.5 |
Анализ результатов программирования и тестирования |
Протокол |
|
5.3.8.1 |
План сборки программного средства |
План |
|
5.3.8.2 |
Результаты сборки и тестирования программного средства |
Протокол |
|
5.3.8.5 |
Анализ плана сборки и документирования программного средства |
Протокол |
|
5.3.9.1 |
Результаты квалификационных испытаний (тестирования) объекта программной конфигурации |
Протокол |
|
5.3.9.3 |
Анализ сборки программного средства |
Протокол |
|
5.3.9.4 |
Аудиторская проверка сборки программного средства |
Протокол |
|
5.3.10.1 |
Результаты сборки и испытания системы |
Протокол |
|
5.3.10.2 |
Требования к квалификационным испытаниям системы |
Описание |
|
5.3.10.3 |
Анализ квалификационного испытания системы |
Протокол |
|
5.3.11.1 |
Результаты квалификационных испытаний системы |
Протокол |
|
5.3.11.3 |
Результаты аудиторских проверок системы |
Протокол |
|
5.3.12.1 |
План по вводу в действие программного средства |
План |
|
5.3.12.2 |
Реализация и результаты ввода в действие программного средства |
Протокол |
|
5.3.13.1 |
Готовность к приемке и приемочные испытания программного средства |
Протокол |
|
Эксплуатация |
5.4.1.1 |
План эксплуатации |
План |
5.4.1.2 |
Процедура подготовки отчетов по проблеме |
Процедура |
|
5.4.1.2 |
Отчетность по проблеме |
Протокол |
|
5.4.1.3 |
Процедура тестирования в эксплуатационной среде |
Процедура |
|
Сопровождение |
5.5.1.1 |
План сопровождения |
План |
5.5.1.1 |
Процедура сопровождения |
Процедура |
|
5.5.1.2 |
Процедуры описания проблемы и реализации заявки на внесение изменений |
Процедура |
|
5.5.2.4 |
Протокол фиксации сообщения о проблеме или заявки на внесение изменения |
Протокол |
|
5.5.3.1 |
Протоколы внесения изменений |
Протокол |
|
5.5.3.2 |
Результаты тестирования внесенных изменений |
Протокол |
|
5.5.5.2 |
План переноса программного средства |
План |
|
5.5.6.1 |
План снятия с эксплуатации |
План |
Таблица В.2 — Выходные результаты вспомогательных процессов жизненного цикла
Процесс |
Пункт ГОСТ Р ИСО/МЭК 12207 |
Выходные результаты |
Тип выходного результата |
Документирование |
6.1.1.1 |
План документирования |
План |
Управление конфигурацией |
6.2.1.1 |
План управления конфигурацией |
План |
6.2.4.1 |
Отчеты и протоколы по управлению конфигурацией |
Протокол |
|
Обеспечение качества |
6.3.1.3 |
План обеспечения качества |
План |
6.3.1.4 |
Протоколы по обеспечению качества |
Протокол |
|
Верификация |
6.4.1.5 |
План верификации |
План |
Аттестация |
6.5.1.4 |
План аттестации |
План |
Совместный анализ |
6.6.1.4 |
Результаты совместного анализа |
Протокол |
Аудит |
6.7.1.5 |
Результаты аудиторских проверок |
Протокол |
Решение проблем |
6.8.1.1 |
Отчет о проблеме |
Протокол |
Таблица В.3 — Выходные результаты организационных процессов жизненного цикла
Процесс |
Пункт ГОСТ Р ИСО/МЭК 12207 |
Выходные результаты |
Тип выходного результата |
Управление |
7.1.2.1 |
План управления |
План |
7.1.3.3 |
Анализы проблем |
Отчет |
|
Создание инфраструктуры |
7.2.1.2 |
План создания инфраструктуры |
План |
7.2.2.1 |
Конфигурация инфраструктуры |
Описание |
|
Усовершенствование |
7.3.1.1 |
Процедуры организационных процессов |
Процедура |
7.3.2.1 |
Процедура оценки процесса |
Процедура |
|
Обучение |
7.4.1.1 |
План обучения |
План |
7.4.3.1 |
Протоколы об обучении |
Протокол |
Процесс адаптации из приложения А к ГОСТ Р ИСО/МЭК 12207 используют как дополнительный. В случае применения данный процесс должен иметь следующие выходные результаты (таблица В.4).
Таблица В.4 — Выходные результаты процесса адаптации
Процесс |
Пункт ГОСТ Р ИСО/МЭК 12207 |
Выходные результаты |
Тип выходного результата |
Адаптация |
А.4.1 |
Принятые решения по адаптации и их обоснования |
Протокол |
ПРИЛОЖЕНИЕ С (справочное). Модели жизненного цикла
ПРИЛОЖЕНИЕ С
(справочное)
Существует множество моделей жизненного цикла, но три из них — фундаментальные. Этими фундаментальными моделями жизненного цикла являются:
— каскадная;
— инкрементная;
— эволюционная.
Каждая из указанных моделей может быть использована самостоятельно или скомбинирована с другими для создания гибридной модели жизненного цикла. При этом конкретную модель жизненного цикла следует выбирать так, чтобы процессы, работы и задачи из ГОСТ Р ИСО/МЭК 12207 были связаны между собой и определены их взаимосвязи с предшествующими процессами, работами (видами деятельности) и задачами (заданиями).
В настоящем приложении описаны три фундаментальные модели жизненного цикла с присущими им недостатками (аргументами против их применения) и преимуществами (выгодами). Эти недостатки и преимущества должны быть учтены при выборе модели жизненного цикла для проекта.
C.1 Каскадная модель
Каскадная модель жизненного цикла по существу реализует принцип однократного выполнения каждого из следующих видов деятельности в их естественных границах:
— установление потребностей пользователя;
— определение требований;
— проектирование системы;
— изготовление системы;
— испытание;
— корректировка;
— поставка или использование.
При применении такого принципа разработки каждого программного объекта соответствующие работы и задачи процесса разработки обычно выполняют последовательно (см. рисунок C.1). Однако они могут быть частично выполнены параллельно в случаях перекрытия последовательных работ.
Рисунок С.1 — Пример каскадной модели
Рисунок С.1 — Пример каскадной модели
Когда несколько программных объектов разрабатывают одновременно, для всех этих объектов работы и задачи процесса разработки могут быть выполнены параллельно. Процессы сопровождения и эксплуатации обычно реализуют после процесса разработки. Процессы заказа и поставки, а также вспомогательные и организационные процессы обычно выполняют параллельно с процессом разработки.
C.1.1 Недостатки
Данной модели присущи следующие недостатки, которые необходимо учитывать при оценке возможности ее применения:
a) требования к объектам определены недостаточно четко;
b) система обычно слишком велика, чтобы все работы по ее созданию выполнять однократно;
c) предполагаемые скорые изменения в технологиях работ;
d) возможные текущие изменения требований к системе;
e) ограниченность ресурсов, например средств или персонала;
f) промежуточный продукт может быть непригоден для использования.
С.1.2 Преимущества
Преимущества использования данной модели:
a) однократное представление всех возможностей (характеристик) системы;
b) необходимость только единственной фазы перехода от старой системы к новой.
С.2 Инкрементная модель
Инкрементная модель жизненного цикла, называемая также запланированным усовершенствованием продукта, начинается с выдачи набора требований и реализует разработку последовательности конструкций. Первая конструкция содержит часть требований, в последующую конструкцию добавляют дополнительные требования и так далее до тех пор, пока не будет закончено создание системы. Для каждой конструкции выполняют необходимые процессы, работы и задачи, например анализ требований и создание архитектуры могут быть выполнены сразу, в то время как разработку технического проекта программного средства, его программирование и тестирование, сборку программных средств и их квалификационные испытания выполняют при создании каждой из последующих конструкций.
В данной модели при разработке каждой конструкции работы и задачи процесса разработки выполняют последовательно или частично параллельно с перекрытием. При частично одновременной разработке последовательных конструкций работы и задачи процесса разработки могут быть выполнены параллельно для ряда конструкций.
Работы и задачи процесса разработки обычно выполняют многократно в той же последовательности для всех конструкций. Процессы сопровождения и эксплуатации могут быть реализованы параллельно с процессом разработки. Процессы заказа и поставки, а также вспомогательные и организационные процессы обычно выполняют параллельно с процессом разработки (рисунок С.2).
Рисунок C.2 — Пример инкрементной модели
|
Возможный информационный поток |
Т — требования; |
Рисунок C.2 — Пример инкрементной модели
С.2.1 Недостатки
Данной модели присущи следующие недостатки, которые необходимо учитывать при оценке возможности ее применения:
а) требования к объектам определены недостаточно четко;
b) предусмотрены сразу все возможности системы;
c) предполагаемые скорые изменения в технологиях работ;
d) возможные текущие изменения требований к системе;
e) привлечение ресурсов (средств или персонала) на длительный период ограничено.
С.2.2 Преимущества
Преимущества использования данной модели:
a) необходимость изначального использования характеристик системы;
b) пригодность для использования промежуточного продукта;
c) естественное разделение системы на наращиваемые компоненты (инкременты);
d) возможности наращивания привлекаемого персонала и средств.
С.3 Эволюционная модель
В эволюционной модели жизненного цикла систему также разрабатывают в виде отдельных конструкций, но в отличие от инкрементной модели требования изначально не могут быть полностью осознаны и установлены. В данной модели требования устанавливают частично и уточняют в каждой последующей конструкции (рисунок С.3).
Рисунок С.3 — Пример эволюционной модели
|
Информационный поток (уточненный) |
Т — требования; |
Рисунок С.3 — Пример эволюционной модели
При таком методе для каждой конструкции работы и задачи процесса разработки выполняют последовательно или параллельно с частичным перекрытием.
Работы и задачи процесса разработки обычно выполняют многократно в той же последовательности для всех конструкций. Процессы сопровождения и эксплуатации могут быть реализованы параллельно с процессом разработки. Процессы заказа и поставки, а также вспомогательные и организационные процессы обычно выполняют параллельно с процессом разработки.
В таблице C.1 показано, как могут быть распределены процессы в модели жизненного цикла программного средства при создании ее для эволюционного жизненного цикла. В таблице С.1 учтены только работы процесса разработки. Отмеченные знаком «» объекты указывают на конкретную работу или задачу, а горизонтальные строки представляют собой шкалу времени. При необходимости может быть проведена дальнейшая детализация распределения процессов.
Таблица C.1 — Пример разметки эволюционной разработки
Процесс/работа/ задача |
Шкала времени |
||||||||||||||||||||||||||
Реализация процесса |
|||||||||||||||||||||||||||
Анализ требований к системе и программному средству |
|||||||||||||||||||||||||||
Архитектурный (эскизный) проект системы и программного средства |
|||||||||||||||||||||||||||
Технический проект программного средства |
|||||||||||||||||||||||||||
Программирова- ние и тестирование программного средства |
|||||||||||||||||||||||||||
Сборка и квали- фикационные испытания программного средства |
|||||||||||||||||||||||||||
Сборка и квали- фикационные испытания системы |
|||||||||||||||||||||||||||
Ввод в действие и обеспечение приемки пpoграммного средства |
|||||||||||||||||||||||||||
Процесс эксплуатации |
|||||||||||||||||||||||||||
Процесс сопровождения |
|||||||||||||||||||||||||||
Процесс доку- ментирования |
|||||||||||||||||||||||||||
Процесс управления конфигурацией |
|||||||||||||||||||||||||||
Процесс обеспечения качества |
|||||||||||||||||||||||||||
Процесс верификации |
|||||||||||||||||||||||||||
Процесс аттестации |
|||||||||||||||||||||||||||
Процесс совместного анализа |
|||||||||||||||||||||||||||
Процесс аудита |
|||||||||||||||||||||||||||
Процесс решения проблемы |
|||||||||||||||||||||||||||
Управление процессом разработки |
|||||||||||||||||||||||||||
Управление процессом сопровождения |
|||||||||||||||||||||||||||
Процесс создания инфраструктуры |
|||||||||||||||||||||||||||
Процесс обучения |
|||||||||||||||||||||||||||
Процесс усовер- шенствования |
С.3.1 Недостатки
Данной модели присущи следующие недостатки, которые необходимо учитывать при оценке возможности ее применения:
а) все возможности системы предопределены изначально;
b) ограниченные возможности долговременного привлечения ресурсов (средств или персонала).
С.3.2 Преимущества
Преимущества использования данной модели:
a) изначальное определение возможностей системы;
b) пригодность для использования промежуточного продукта;
c) естественное разделение системы на наращиваемые компоненты (инкременты);
d) привлечение персонала и средств по мере необходимости;
e) необходимая обратная связь с пользователем для полного понимания требований;
f) упрощение надзора за изменением технологии.
ПРИЛОЖЕНИЕ D (справочное). Примеры адаптации ГОСТ Р ИСО/МЭК 12207
ПРИЛОЖЕНИЕ D
(справочное)
D.1 Расширение области практического применения стандарта
Данный пример показывает, как ГОСТ Р ИСО/МЭК 12207 может быть практически внедрен в условиях договора путем введения новых работ, расширяющих область его применения (рисунок D.1). Пояснительный текст к данному примеру изложен подобно изложению ГОСТ Р ИСО/МЭК 12207.
Рисунок D.1 — Пример адаптации к практической деятельности
Рисунок D.1 — Пример адаптации к практической деятельности
D.1.1 Сценарий
Ключевым аспектом анализа соответствующих требований является выбор метода удовлетворения конкретному требованию: исключительно программными решениями или изменением существующей практической деятельности в организации.
Примечание — В данном случае под практической деятельностью понимают способ решения задачи конкретным лицом при выполнении им повседневной работы. Например, обработка документа, которая может быть выполнена более эффективно в другой последовательности действий, внедренной при модернизации системы.
В ряде случаев внедрение системы, содержащей программные средства, может оказать существенное влияние на практическую деятельность соответствующей организации. Классическим примером этого являются управление системами трудовых ресурсов и информации, особенно при переходе с ручных операций на электронные. Также следует ожидать изменений в практической деятельности организации при поставке программного средства в виде готового пакета, который может быть использован с незначительными изменениями (настройками) или без них.
D.1.2 Решения по адаптации (практическому применению)
В процесс разработки внесены следующие дополнительные работы:
— практическая деятельность по анализу требований;
— практическая деятельность по проектированию и документированию;
— практическая деятельность по сборке.
В процесс эксплуатации внесена дополнительная работа — практическая деятельность по оценке.
D.1.3 Обоснование адаптации (практического применения)
ГОСТ Р ИСО/МЭК 12207 описывает процессы жизненного цикла программных средств в общем контексте системы. Хотя основные работы по системе и процесс верификации из ГОСТ Р ИСО/МЭК 12207 обеспечивают некоторую поддержку управления практической деятельностью, предполагают, что наиболее эффективные общие решения будут приняты с учетом конкретной практической деятельности. Это особенно важно при значительном изменении существующей практической деятельности, когда требуется тщательный надзор и контроль изменений в деятельности организации.
Четыре последующих пункта изложены подобно их изложению в ГОСТ Р ИСО/МЭК 12207. В данных пунктах уточнены задачи, которые должны быть выполнены в каждой из дополнительных работ.
D.1.4 Практическая деятельность по анализу требований
Данная работа состоит из следующих задач, которые разработчик должен выполнить или обеспечить их выполнение в соответствии с условиями договора:
а) существующая практическая деятельность должна быть проанализирована согласно работе по анализу требований к программному средству из процесса разработки с целью определить наиболее эффективные методы реализации системы. Данная работа должна охватывать обзор деловой деятельности, структуру организации, а также полномочия и обязанности каждого подразделения организации, вовлеченного в проект. Требования к практической деятельности должны быть документально оформлены;
b) практическая деятельность должна быть оценена с учетом нижеперечисленных критериев, а результаты этих оценок должны быть документально оформлены:
— отслеживания требований к системе и программному средству;
— полноты исходных данных, полученных от работодателей и профсоюзов;
— осуществимости реализации;
— согласованности с нормативными требованиями;
— выполнимости аудита системы.
D.1.5 Практическая деятельность по проектированию и документированию
Для каждого конкретного вида практической деятельности данная работа состоит из следующих задач, при решении которых разработчик должен:
a) определить, в соответствии с интересами участников процесса, информационные потоки процесса, связанные с практической деятельностью;
b) создать предварительные версии процедурных (технологических) документов;
c) подготовить методические материалы, используемые при реализации договора, для обучения персонала соответствующей практической деятельности;
d) предусмотреть поощрительные мероприятия по стимулированию деятельности персонала организации заказчика, связанного с окончательным вводом системы в действие.
D.1.6 Практическая деятельность по сборке
Для каждого конкретного вида практической деятельности данная работа состоит из следующих задач, при решении которых разработчик должен:
a) подготовить программу первоначального обучения персонала рабочих мест на основе предварительных процедурных (технологических) документов и соответствующих программных средств;
b) провести обучение персонала, используя предварительные версии данных документов с целью определить эффективность этих документов и соответствующих учебных материалов;
c) оценить данные документы, учебные и методические материалы по нижеперечисленным критериям, а результаты этих оценок документально оформить:
— отслеживания требований к системе и программному средству;
— согласованности с практикой эксплуатации компонентов программного средства;
— соответствия инструкциям;
— простоты использования данных материалов при эксплуатации;
— эффективности устанавливаемых взаимосвязей;
— выполнимости аудита системы;
d) доработать, при необходимости, соответствующие процедурные (технологические) документы и материалы.
D.1.7 Практическая деятельность по оценке
Данная работа состоит из следующих задач, выполняемых оператором в соответствии с условиями договора:
a) для каждой редакции программного продукта или процедурных (технологических) документов обеспечить их совместимость с системой;
b) выполнять регулярные обследования степени удовлетворения запросов пользователя и анализировать их результаты в целях определения степени пригодности системы. При необходимости в результате таких анализов должны быть выданы документально оформленные предложения по дальнейшей деятельности, например по дополнительному обучению, анализу практической деятельности или изменению программного средства.
D.2 Пример макетирования небольшой системы
Данный пример показывает, как ГОСТ Р ИСО/МЭК 12207 может быть адаптирован для обеспечения макетирования небольшой системы (рисунок D.2).
Рисунок D.2 — Пример адаптации при макетировании
Рисунок D.2 — Пример адаптации при макетировании
D.2.1 Сценарий
При разработке небольших деловых систем полное применение ГОСТ Р ИСО/МЭК 12207 может быть излишним, потому что в результате этого ресурсы будут потрачены впустую, а созданы малозначительные документы, излишне увеличивающие стоимость проекта. В данном случае для достижения требуемых целей должно быть принято наиболее экономически эффективное решение по макетированию.
Ключевой целью такого решения должна являться максимально возможная детализация на ранних стадиях проекта. Это достигается путем установления прямой связи между разработчиком программного средства и пользователями, непосредственно участвующими в соответствующих деловых процессах. Требования к системе должны быть определены пользователями, в особенности функции системы и внешние интерфейсы, а соответствующие деловые процессы должны быть уточнены при проведении пользователем серии оценок используемого прототипа системы.
Для небольших систем технические средства, эксплуатируемые программные средства и пакет базы данных могут быть приобретены на свободном рынке в виде соответствующих стандартных продуктов. Разработчик программного средства может применить базу данных с использованием инструментальной системы «4GL» для быстрого проектирования экранов и оперативного наращивания, изменения или уточнения объектов. Пользователь имеет возможность непосредственно проверить актуальность принятого решения опытным путем в реальной эксплуатационной ситуации.
Временной разрыв между анализом требований и квалификационными испытаниями должен быть максимально сокращен, а роль решения по наиболее полному удовлетворению требованиям с точки зрения пользователей повышена.
D.2.2 Решения по адаптации (практическому применению)
Следующие стандартные работы (из процесса разработки по ГОСТ Р ИСО/МЭК 12207) должны быть объединены в работу, названную «Программирование программного средства с использованием 4GL»:
— проектирование программной архитектуры;
— техническое проектирование программного средства;
— сборка программного средства.
Данная единая работа должна быть использована, как показано на рисунке D.2, в котором соответствующие работы из ГОСТ Р ИСО/МЭК 12207 выделены и привязаны к макетированию для наглядной иллюстрации этого метода.
Определен фиксированный период проведения макетирования и предусмотрены любые дополнительные итерации.
D.2.3 Обоснование адаптации (практического применения)
Макетирование требует быстрого и точного определения интерфейса пользователя. Одновременно данный интерфейс должен быть принят, а разработка системы проведена с учетом таких факторов, как преобразования данных и характеристики производительности.
Разработчик программного средства контролирует макетирование посредством:
— установления приоритетов требований;
— ужесточения ограничений временного интервала;
— привлечения конечного пользователя.
D.3 Пример ускоренной разработки приложения
В предыдущем примере введено понятие макетирования. В настоящем примере макетирование используют в модели жизненного цикла полной разработки системы, часто называемой «Ускоренная разработка приложения [(УРП) Rapid Application Development (RAD)]».
Примечание — Данный пример УРП выделен из метода динамической разработки системы [(МДРС) Dynamic Systems Development Method (DSDM)] для иллюстрации общего применения метода УРП (см. www.dsdm.org).
D.3.1 Сценарий
Для успешной реализации УРП разработчики должны взаимодействовать с конечными пользователями, иметь навыки работы с соответствующими технологиями и средствами, а область применения приложения не должна быть критичной (т.е. являться коммерческой). На основе данных предпосылок следующие критические факторы определяют успешность реализации УРП:
— установление приоритетов практических требований, определяющих качество эксплуатационных характеристик системы;
— анализ создаваемой продукции, ориентированный на виды выполняемой деятельности и являющийся более гибким по сравнению с анализом работ, ориентированным на выполнение заданий;
— использование строгих процедур управления конфигурацией, потому что каждое вносимое изменение может быть аннулировано;
— обоснование состава персонала, необходимого для достижения поставленных целей, более широких, чем сформулированные задачи;
— проведение испытаний на всем протяжении жизненного цикла объекта;
— обоснование временных и стоимостных оценок функциональных возможностей конечных продуктов, более широкое, чем установленный состав работ по их созданию;
— углубленная оценка риска при функционировании системы, более детальная по сравнению с анализом структуры системы;
— установление общих требований, так чтобы они были достаточно гибкими для декомпозиции во время разработки.
D.3.2 Решения по адаптации (практическому применению)
Принятая модель жизненного цикла УРП должна включать в себя следующие компоненты, показанные на рисунке D.3:
a) Осуществимость
Для определения того, будет ли проект удовлетворять критериям успешной реализации УРП.
Примечание — Данный компонент охвачен процессом разработки по 5.3.1 ГОСТ Р ИСО/МЭК 12207.
b) Анализ деловой деятельности
Должны быть определена область применения и разработан план макетирования.
Примечание — Данный компонент охвачен процессом разработки по 5.3.1 ГОСТ Р ИСО/МЭК 12207.
c) Цикл функциональной модели
Должен быть разработан функциональный прототип (макет), сформулированы нефункциональные требования и стратегия реализации.
Примечание — Данный компонент, ранее не определенный и дополняющий процесс разработки, реализуют по 5.3.1 ГОСТ Р ИСО/МЭК 12207. Могут быть полезны и другие аспекты из ГОСТ Р ИСО/МЭК 12207, такие как верификация и обеспечение качества.
d) Цикл проектирования и создания
Должна быть создана тестированная система, удовлетворяющая всем функциональным и нефункциональным требованиям.
Примечание — Данный компонент предусматривает последовательную итерацию работ по 5.3.3-5.3.8 ГОСТ Р ИСО/МЭК 12207.
e) Реализация
Когда разработчики внедряют систему в среде пользователя, они должны обеспечить ее документирование и обучение соответствующего персонала.
Примечание — Данный компонент является комбинацией 5.3.12 ГОСТ Р ИСО/МЭК 12207 с отдельными аспектами процессов документирования и обучения.
В перечислениях с) и d) разработчики должны определить прототипы в соответствии с графиками их создания и анализа. Каждый шаг данного итерационного цикла имеет определенный временной интервал, при этом конкретное время его реализации обычно определяется набором трех итераций — предварительное исследование, уточнение и утверждение (принятие).
Примечание — Для полной адаптации должна быть проведена взаимоувязка на уровне задач между методом УРП и требованиями ГОСТ Р ИСО/МЭК 12207.
Рисунок D.3 — Пример ускоренной разработки приложения (УРП)
Рисунок D.3 — Пример ускоренной разработки приложения (УРП)
Примечание — В квадратных скобках указаны пункты ГОСТ Р ИСО/МЭК 12207.
D.3.3 Обоснование адаптации (практического применения)
Метод УРП часто применяют при необходимости ускоренной разработки новых систем или реализации полной ее разработки.
D.4 Пример сопровождения
В данном примере показано, как можно путем добавления и удаления работ практически применить ГОСТ Р ИСО/МЭК 12207 в конкретной ситуации сопровождения. В пример также включен поясняющий текст, изложенный подобно изложению в ГОСТ Р ИСО/МЭК 12207.
D.4.1 Сценарий
Во время рассмотрения договора в процессе поставки организации по сопровождению могут пожелать внести дополнительные процессы и задачи, помимо установленных в ГОСТ Р ИСО/МЭК 12207. Например, в процессе заказа организацией по сопровождению может быть определена организация, отличная от исходного поставщика, а она пожелает провести подробное изучение заказанного программного продукта с точки зрения его сопровождения. На основе такого анализа данная организация может попросить перепроектировать программный продукт до начала процесса полного его сопровождения. Это может быть обеспечено путем введения в процесс заказа работы, названной «Программная инженерия и оценка качества». В процессе заказа важно обеспечить, чтобы соответствующие задачи были отражены в договоре и были выполнены при приемке и завершении заказа.
В случае принятия решения о перепроектировании программного продукта организация по сопровождению может отказаться от ряда работ процесса сопровождения. Обычно при принятии решения о перепроектировании жизненный цикл программного продукта продлевают сверх указанного в договоре. Поэтому может возникнуть необходимость в исключении работы по снятию с эксплуатации (см. 5.5.6 ГОСТ Р ИСО/МЭК 12207).
Дополнительное качество сопровождаемого продукта может быть обеспечено организацией по сопровождению путем внесения дополнительных задач в процесс совместного анализа (см. 6.6 ГОСТ Р ИСО/МЭК 12207). Организация по сопровождению может потребовать неформального рассмотрения своих анализов, предшествующих поставке программного продукта, в процессах его разработки и сопровождения.
Процесс усовершенствования может быть расширен при использовании показателей качества во всех процессах. В него может быть внесена дополнительная задача по выбору, анализу и интерпретации показателей для самого этого процесса (см. 7.3 ГОСТ Р ИСО/МЭК 12207).
На рисунке D.4 показано графическое представление возможности адаптации процесса сопровождения для данного примера. Это следует интерпретировать только как пример его дополнения и уточнения, а не как исчерпывающий рецепт адаптации сопровождения.
Рисунок D.4 — Пример адаптации сопровождения
Рисунок D.4 — Пример адаптации сопровождения
D.4.2 Решения по адаптации (практическому применению)
В процесс заказа внесена работа, названная «Программная инженерия и оценка качества».
Из процесса сопровождения удалена работа по снятию программного средства с эксплуатации.
D.4.3 Обоснование адаптации (практического применения)
Сопровождающая организация требует проведения анализа создаваемого программного средства до закрытия договора. По конкретным условиям договора исключена необходимость управления снятием программного средства с эксплуатации.
D.4.4 Программная инженерия и оценка качества
Данная работа состоит из следующих задач, которые в соответствии с условиями договора должна выполнить или обеспечить их выполнение организация по сопровождению:
a) исходные программы поставляемого программного продукта должны быть проанализированы для определения возможности их сопровождения. В результатах оценки особенно должны быть учтены следующие факторы:
— объем (размер) программного продукта;
— число строк комментариев и исходного программного кода в исходных программах;
— сложность компонентов программного средства;
b) исходные программы поставляемого программного продукта должны быть проанализированы с целью определить потребность в их перепроектировании. При этом должны быть:
— локализованы места расположения избыточных программных кодов;
— определены области неисполняемых программных кодов;
c) на основе установленного числа посторонних кодов и степени сложности исходных программ должно быть принято решение о перепроектировании программного продукта. При этом должны быть:
— удалены посторонние коды;
— удалены никогда не исполняемые коды;
— перепроектированы и перепрограммированы наиболее сложные исходные программы;
— переделан программный продукт в целом.
Примечание — В данном примере в зависимости от технологических потребностей может быть проведена дальнейшая адаптация процесса разработки.
D.4.5 Снятие программного средства с эксплуатации
Работа по снятию с эксплуатации должна быть исключена из процесса сопровождения следующим образом: организация по сопровождению не должна выполнять работу по снятию с эксплуатации из процесса сопровождения.
D.4.6 Равноправные анализы
В процесс совместного анализа должна быть внесена следующая задача: организация по сопровождению должна провести неформальные анализы во время работ по техническому проектированию программного средства, программированию и тестированию программного средства, сборке программного средства и квалификационным испытаниям программного средства из процесса разработки в соответствии с 6.6 ГОСТ Р ИСО/МЭК 12207.
D.4.7 Показатели (метрики) качества
В процессе усовершенствования (см. 7.3 ГОСТ Р ИСО/МЭК 12207) в работу по усовершенствованию процесса должна быть внесена следующая задача: в целях усовершенствования процесса сопровождения организация по сопровождению должна собрать, проанализировать и интерпретировать показатели (метрики) качества программного средства, связанные с процессом сопровождения.
Текст документа сверен по:
официальное издание
М.: ИПК Издательство стандартов, 2004