Результативность такого обмена обеспечивается наличием между НаучСофт и основными потребителеми прямого голосового Internet-канала, арендой Internet-канала и наличием электронной почты у всего персонала.
Планирование проектирования и разработки. Управление разработкой ПО осуществляется для того, чтобы обеспечить качество ПО на всех этапах разработки ПО. Требования данного раздела обязательны для отделов НаучСофт, занимающихся разработкой ПО. Менеджеры проектов контролируют разработку ПО.
Компания НаучСофт разработала и поддерживает в актуальном состоянии ряд документированных процедур для управления и аудита разработки ПО с целью обеспечения выполнения требований заказчика. Под разработкой ПО в данном случае понимается процесс реализации ПО, включающий такие стадии, как анализ требований к ПО, проектирование ПО, написание кода, тестирование, интеграция, инсталляция и приемка ПО заказчиком. Процесс разработки ПО описывают следующие документы и процедуры:
– проектирование и разработка ПО;
– план проекта (PPD_Project_Plan_Document);
– контрольный лист по планированию проекта (PPC_Project_Planning_Checklist).
Согласно документу "Проектирование и разработка ПО", каждому проекту присваивается категория разработки ПО и определяются действия для каждого этапа реализации ПО.
Менеджер проекта готовит План разработки проекта для каждого проекта. План может быть назван по-другому, состоять из одного или нескольких документов. План может храниться как в электронной, так и бумажной формах.
Компания НаучСофт использует документ "Проектирование и разработка ПО", для определения требований к входным данным проектирования и разработки, включая: функциональные требования и требования к рабочим характеристикам, полученным из входных данных заказчика, соответствующие законодательные и обязательные требования, полезная информация или опыт предыдущих похожих действий по проектированию и разработке, другие необходимые требования.
Для описания входных данных проектирования и разработки используются следующие процедуры и документы: спецификация (PSD_Product_Specification_Document), перечень функциональных требований (FRC_Functional_Requirements_Checklist), рекомендации к спецификации требований (RSG_Requirements_Specification_Guidelines).
Неполные, двусмысленные или конфликтующие требования устраняются прежде чем придавать окончательную форму документам по всем требуемым входным данным. Записи входных данных проектирования хранятся в соответствии с документом "Управление записями о качестве". Входные данные проекта регистрируются на этапе "спецификации требований" для разработки ПО. Входные данные могут включать спецификацию требований, документ, формулирующий задачи, функциональные описания и другие подобные документы. План разработки проекта может содержать несколько элементов входных данных проекта (описание операционной среды ПО, специальные требования заказчиков).
Менеджеры проектов совместно с заказчиками определяют требования к форме входных данных проекта. План разработки проекта уточняет форму входных данных проекта, а также их способ и место хранения.
Применение компанией НаучСофт документа "Проектирование и разработка ПО", гарантирует то, что выходные данные проектирования и разработки в компании:
– соответствуют требованиям к входным данным проектирования и разработки;
– включают информацию, необходимую для закупок, производства и обслуживания;
– включают либо ссылаются на критерии приемки;
– указывают характеристики проектирования, которые являются существенными для безопасной и надлежащей работы продукта;
– утверждены перед выпуском.
Для описания выходных данных проектирования и разработки используются следующие документы и процедуры:
– технический дизайн (TDD_Technical_Design_Document);
– контрольный список требований к проектированию (DRC_Design Requirements Checklist);
– описание архитектуры (Architecture Description Document);
– план тестирования (TP_Test_Plan).
По окончании данной стадии создаются следующие отчеты о разработке и контроле качества: тест проводимый разработчиком (DTD_Development_Test_Document), отчет о результатах тестирования (TRR_Test_Results_Report) (в Lotus Notes имеется также соответствующий шаблон), описание программной ошибки (BD_Bug_Description) (в Lotus Notes имеется также соответствующий шаблон).
Выходные данные проекта могут описываться на любом этапе разработки ПО. Данные могут включать отчет о выполнении этапа, объяснительные записки, программный код, руководство пользователя и другие документы.
Менеджеры проектов совместно с заказчиками определяют требования к форме выходных данных проекта.
План разработки проекта уточняет выходные данные проекта для конкретного проекта, форму данных, а также их способ и место хранения.
Для регистрации и анализа результатов проекта по окончании проекта создается отчет о результатах проекта (The PMR_Post_Mortem_Report).
Анализ проектирования и разработки. Запланированные анализы проводятся в соответствии с документом "Проектирование и разработка ПО", во время итеративного процесса. Целью анализа должно быть гарантированное выполнение намеченных требований. В случае, если требования не выполняются, работники, занимающиеся анализом, предлагают решение для каждой выявленной проблемы. Вся деятельность, относящаяся к анализируемому этапу, представляется в анализе. Записи об анализе проектирования и разработки осуществляются в соответствии с документом "Управление записями о качестве".
Записи об анализе регистрируются в Протоколе заседания по результатам анализа (RMM_Review_Meeting_Minutes). Для описания анализов проектирования и разработки используются следующие документы и процедуры: контрольный список для планирования проекта (PPC_Project_Planning_Checklist), контрольный список функциональных требований (FRC_Functional_Requirements_Checklist), контрольный список требований к проектированию (DRC_Design Requirements Checklist).
Каждый этап разработки ПО анализируется. Целями анализа и аудита являются: выявление программных ошибок и несоответствий на ранних этапах разработки ПО, гарантирование своевременной разработки продукта в рамках бюджета. Записи каждого этапа разработки ПО оцениваются и после анализа этапа принимается решение о переводе проекта на следующий этап.
Аудит проводится для того, чтобы определить соответствие выходных данных проекта входным данным, соглашениям, процедурам разработки и СМК. Аудит может включать себя процесс поиска и исправления программных ошибок и тестирование, а также анализ этапов разработки ПО. Регулярность проведения анализа и аудита изменяется в зависимости от вида ПО.
Характер действий относящихся к анализу и аудиту соответствует сложности разрабатываемого ПО. Менеджер проекта и представитель заказчика принимают решение о регулярности и продолжительности анализа и аудита проекта, а также о том, кто должен проводить анализ и аудит.
Корректирующие действия разрабатываются по результатам анализа и аудита. При необходимости корректирующие действия выполняются и документируются, используя средства управления проектами (MS Project) проектной команды.
Записи о запланированных и выполненных анализах и аудитах включаются в план разработки проекта. План указывает, где хранятся документы об анализе и аудите проекта.
Рекомендации по определению (путем верификации проектирования и разработки), соответствуют ли выходные данные проектирования и разработки входным записываются в документ "Проектирование и разработка ПО":
– отчет о тестировании, проведенном разработчиком (DT_DTD_Development Test Document);
– контрольный список требований к проектированию (DRC_Design Requirements Checklist);
– контрольный список функциональных требований (FRC_Functional_Requirements_Checklist);
– проверка документов и аудиты (QP_Document Review and Audits);
– рекомендации по экспертной оценке программы (QP_Peer Code Review Guidelines).
Записи таких верификаций создаются и сохраняются в соответствии с документом "Управление записями о качестве".
Продукт, являющийся результатом проектирования и разработки НаучСофт, подвергается валидации согласно плану. Валидация гарантирует то, что продукт удовлетворяет ожиданиям или годен для использования. Рекомендации по проведению валидации проектирования и разработки записываются в документ "Проектирование и разработка ПО":
– рекомендации по блочному тестированию (QP_Unit Testing Guidelines);
– рекомендации по функциональному тестированию системы (QP_System Functional Testing);
– процесс комплексного тестирования (QP_Intergration_Testing_Process);
– процесс разработки теста (QP_Test Design Process).
Рекомендации по созданию и хранению записей о валидации представлены в документе "Управление записями о качестве".
Проекты утверждаются для того, чтобы гарантировать соответствие ПО определенным требованиям заказчика.
План разработки проекта определяет критерии выходных данных для завершения каждого этапа разработки, то есть действия, которые необходимо выполнить прежде чем переходить к другому этапу. Критерии могут включать выходные данные проекта, записи об анализе и аудите каждого этапа, и т.д. Для утверждения этапа разработки необходимо, чтобы были выполнены все критерии выходных данных для этого этапа.
Этапы разработки утверждаются по результатам анализа и аудита проекта. Продукт целиком утверждается по результатам приемочных испытаний каждого этапа разработки. Менеджер проекта вначале обсуждает с представителем заказчика и затем определяет требования к испытаниям.