"А мы тут, знаете, всё плюшками балуемся..."
из мультфильма "Карлсон вернулся"
Приемка информационной системы, безусловно, апофеоз всего проекта создания информационной системы. Пусть Вас не обманывает цитата в начале статьи, мероприятие это важное и серьезное. Думаю, что это праздник для обеих сторон, но, как известно, чтобы праздник прошел хорошо, к нему надо хорошо подготовиться.
Начать стоит с формата проведения приемочных испытаний, хотя, скорее всего он уже давно был определен, например, в контракте или техническом задании. Тем не менее, я бы выделил два варианта проведения этого мероприятия и назвал их условно: приемка системы «по понятиям» и приемка системы «по науке». С первым все достаточно понятно, но описать такую процедуру невозможно. Это может быть полная формальность — веселые посиделки с бодрящими напитками или же настоящая вакханалия, где упоминание технического задания является чем-то неприличным и даже оскорбительным. А вот на втором варианте хотелось бы остановиться поподробнее, возможно данная статья приоткроет начинающим специалистам, а боюсь что и некоторым старым воякам, занавесу таинства приемочных испытаний. Постараюсь также дать несколько советов, чтобы испытания прошли более продуктивно.
Немного о стандартах. В далекие времена, будучи студентом, я, как и многие молодые люди своего поколения скептически относился с различным стандартам и руководствам СССР, при этом, даже не вникая в их суть. Но прошло совсем немного времени и здравый смысл взял вверх, не только сам применяю ГОСТы, но и рекомендую их к применению другим. Конечно, в ГОСТах 80-90-хх годах есть явные атавизмы, тем не менее, сравниваю их с уставом вооруженных сил, они что называется «на крови писались» и поверьте, там много здравых мыслей. Специалистов знающих ГОСТы, равно как и документы, оформленные в соответствии с ГОСТ и РД, видно издалека и отличаются они явно в лучшую сторону.
Приемочные испытания проводятся в соответствии с ГОСТ 34.603-92 «Информационная технология. Виды испытаний автоматизированных систем». Данный вид испытаний завершающий после предварительных испытаний и опытной эксплуатации. Цель данных испытаний — проверить соответствие автоматизированной системы требованиям Технического задания и сделать заключение о готовности Системы к вводу в постоянную эксплуатации.
Испытания проводятся по документу Программа и методикой приемочных испытаний (ПМИ). ПМИ разрабатывается с применением РД 50-34.698-90 «Автоматизированные системы. Требования к содержанию документов». Благодаря в первую очередь этому документу приемочные испытания «по понятиям» превращаются в приемочные испытания «по науке». ПМИ описывает все требования (функциональные и нефункциональные) Технического задания и ожидаемые результаты проверки.
Совет №1. ПМИ — это последний шанс для Заказчика повлиять на характеристики принимаемой информационной системы. Особенно если в ходе проекта разрабатывалось Техническое задание, которое в классическом понимании говорит «что делать» (цели и задачи, общие требования, требования к программному, техническому и документационному обеспечению, требования к персоналу и др.) и не разрабатывался Технический проект, который говорит «как делать» (конкретные технические решения по реализации конкретных требований Технического задания). Уделите достаточное время на разработку и согласование Программы и методики приемочных испытаний. Если хотите, это будет ваш устав на приемочных испытаниях.
Заказчику помимо согласования ПМИ не забыть издать приказ о составе приемочной комиссии, и каждого его члена под подпись ознакомить с ПМИ. Кого включать в комиссию — личное дело Заказчика. Рекомендую, чтобы в ней обязательно были:
Функциональные заказчики
Представители подразделений — ключевые пользователи Системы
Представители технических подразделений, которые в дальнейшем будут обслуживать Систему
А также не были (относится к обеим сторонам):
Слабонервные и неуравновешенные сотрудники
Сотрудники не умеющие слушать и плохо выражающие свои мысли
Внештатные сотрудники, представляющие компании конкурентов
Совет №2. Хотите, чтобы на приемочных испытаниях автоматизированной системы все было «по-взрослому»? Помимо проверки функциональных требований выполните:
Развертывание программного обеспечения Системы «с нуля»
Проверку заявленных временных показателей полного и частичного восстановления Системы
Проверку быстродействия Системы путем замера времени выполнения ключевых функций, пусть и в монопольном режиме. Конечно, данные показатели должны быть изначально описаны в Техническом задании, или стороны будут обречены на спор, что есть «комфортное время» выполнения той или иной операции. Мое субъективное мнение уже много лет остается прежним — до 3 сек. на выполнение основных простых операций, далее нужно исходить из конкретной ситуации
Проверку устойчивости и надежности Системы. Даже такого элементарного теста будет вполне достаточно – открываем интерфейсную форму внесения данных, выдергиваем сетевой шнур или разрываем соединение Wi-Fi, пытаемся сохранить данные, получаем адекватное сообщение, восстанавливаем соединение и повторяем попытку сохранения. Если это веб-приложение рекомендую проверять корректность повторной загрузки страниц, то есть после открытия той или иной формы/страницы, после выполнения команды сохранения данных и т.п., принудительно вызвать команду обновления (в браузерах это обычно клавиша F5)
Проверку комплектности и качества документации. Лучше эту часть выполнить до начала испытаний, т.к. она требует достаточно много времени. Непосредственно на самих испытаниях озвучить результаты данной проверки
А вообще начните с проверки соответствия общесистемного программного (операционные системы, офисные пакеты, системы управления базами данных и др.) и технического обеспечения Системы (сервера, клиентские станции, каналы связи и др.) заявленным требованиям в Техническом задании. Несоответствия в этих пунктах может стать обоснованной причиной недостижения характеристик Системы заявленным показателям и даже полного невыполнения отдельных функций Системы.
Совет №3. Приемочные испытания проводите на контрольном наборе данных. В Систему должны быть в загружены данные как минимум сопоставимые с плановым объемом данных за первый год работы. Пусть это будет автоматически сгенерированная информация, качество контента тут не на первом месте. Если в процессе опытной эксплуатации необходимый объем данных уже был сформирован — отлично.
Совет №4. Часто в Технических заданиях пишется фраза «Система должна обеспечивать одновременную работу N пользователей». Исполнитель в первую очередь обеспечивает наличие необходимого количества конкурентных лицензий (если такая политика лицензирования предусмотрена). Не стесняйтесь спросить каким образом организационно или технически было обеспечено выполнение данного требования. Если были проведены нагрузочные испытания (в автоматизированном и/или ручном режиме), попросите предоставить протокол и программу проведения. Если данные тесты будут запущены прямо на испытаниях, честь и хвала Исполнителю.
По результатам проведения приемочных испытаний оформляется протокол (отчет) о результатах испытаний, в его составе может быть приложение с описанием выявленных замечаний и сроках их устранения (не забывайте об этом), а также акт технического состояния Системы и готовности ее приемки в промышленную эксплуатацию. Содержание данных документов также описано в РД 50-34.698-90 «Автоматизированные системы. Требования к содержанию документов».
После успешных испытаний по старой русской традиции новорожденную Систему нужно «обмыть», правда этого я так и не нашел ни в одном ГОСТе.