Вопрос 1. Добровольная сертификация
Вопрос 2. Основные международные стандарты для обеспечения качества жизненного цикла программных средств
Вопрос 1. Добровольная сертификация
Добровольная сертификация является наиболее перспективным направлением обеспечения необходимого уровня качества продукции, услуг, иных объектов и повышения их конкурентоспособности. Она проводится по инициативе заявителя аккредитованным органом по сертификации (третьей стороной), что обеспечивает компетентную и независимую оценку того, что требования к объекту оценки соответствия выполнены.
Наличие сертификата соответствия, выданного в добровольном порядке, является документальным подтверждением безопасности и качества продукции, услуг, иных объектов, что повышает доверие потребителей к ним, содействует компетентному выбору, предоставляет организациям конкурентные преимущества, укрепляет их имидж, способствует более успешному и конкурентоспособному бизнесу.
Назначение
– подтвердить качество и характеристики объекта оценки соответствия, которые были заявлены изготовителем;
– обеспечить и гарантировать безопасность для здоровья, жизни граждан, а также окружающей среды;
– создать благоприятные условия для продуктивной деятельности юридических лиц и индивидуальных предпринимателей, их активного участия в международной торговле;
– защитить граждан от недобросовестных изготовителей.
Характерные черты
– активная роль заявителя – определяет подтверждаемые требования к объекту сертификации (стандарты или другие документы), выбирает схему сертификации;
– открытость;
– самостоятельность – невмешательство госорганов в деятельность по добровольной сертификации (если они не являются ее организаторами).
Вопрос 2. Основные международные стандарты для обеспечения качества жизненного цикла программных средств
Современные стандарты не предписывают четких и однозначных схем построения структуры жизненного цикла ПО. Это сделано намеренно, поскольку достаточно жесткие схемы препятствуют использованию более прогрессивных технологий разработки, которых в последнее десятилетие появилось достаточно много и которые продолжают интенсивно наращиваться и развиваться. Международные стандарты максимально общим образом определяют некоторый набор видов деятельности, из которых должен состоять процесс разработки, и на этих видах деятельности, выделяя их элементы, вводят ту или иную структуру жизненного цикла ПО.
Существует набор стандартов, определяющих различные элементы в структуре жизненных циклов ПО. В качестве основных таких элементов выделяются технологические процессы - структурированные наборы деятельностей, решающих некоторую общую задачу или связанную совокупность задач, такие, как процесс определения требований, процесс разработки, процесс сопровождения ПО, процесс обеспечения качества, процесс разработки документации, процесс тестирования и пр. Процессы могут определять разные этапы жизненного цикла и увязывают их с различными видами деятельностей, задачами, результатами, ролями задействованных лиц. Цементирует все этапы в жизненном цикле ПО процесс управления изменениями. Ниже представлен неполный перечень стандартов, которые дают общее представление о структуре жизненного цикла ПО и его основных процессах.
Для того чтобы получить представление о возможной структуре жизненного цикла ПО, обратимся к соответствующим стандартам ISO, описывающим технологические процессы.
• ISO/IEC 12207:2008 System and software engineering – Software life cycle processes. Разработка систем и программного обеспечения – Процессы жизненного цикла программного обеспечения. Стандарт определяет общую структуру жизненного цикла ПО в виде трехуровневой модели, элементами которой являются процессы, виды деятельности, задачи. Процессы объединены в четыре группы: основные процессы, поддерживающие процессы, организационные процессы, адаптация. Процессы состоят из отдельных видов деятельности. Например, процесс разработки ПО включает такие виды деятельности, как анализ системных требований, проектирование программно-аппаратной части системы в целом, анализ требований к ПО, проектирование архитектуры ПО. кодирование, тестирование и т.д. Каждый вид деятельности направлен на решение одной или нескольких задач. Например, такой вид деятельности, как развертывание процесса разработки, должен решить следующие задачи: определение структуры жизненного цикла ПО, определение модели собственно фазы разработки ПО. выбор используемых стандартов, формирование набора нормативно-методических документов, определение среды разработки, функционирование и т.д.