Стандартизация распространяется на все сферы человеческой деятельности: науку, технику, промышленное и с.-х. производство, строительство, здравоохранение, транспорт и т.д. Шкаф проходит в дверь потому, что есть согласованные стандарты на размеры мебели и дверных проемов. Электрическая вилка втыкается в розетку по той же причине. Но можно вспомнить евро вилку и евро розетку.
Из истории стандартов: длина крепостной стены нижегородского кремля равна длине крепостной стены московского кремля. Также совпадают размеры Красной площади и площади Минина.
1.3.1.3.Что такое сертификация?
Сертификация в переводе с латыни означает "сделано верно". Для того чтобы убедиться в том, что продукт "сделан верно", надо знать:
•каким требованиям он должен соответствовать
•каким образом возможно получить достоверные доказательства этого соответствия Общепризнанным способом такого доказательства служит сертификация соответствия и
заявление о соответствии.
Заявление поставщика о соответствии:
•означает, что поставщик (изготовитель) под свою личную ответственность сообщает о том, что его продукция отвечает требованиям конкретного нормативного документа
•содержит следующие сведения:
•адрес изготовителя, представляющего заявление-декларацию,
•обозначение изделия и дополнительную информацию о нем;
•наименование, номер и дату публикации стандарта, на который ссылается изготовитель;
•указание о личной ответственности изготовителя за содержание заявления и др.
Заявление не является гарантией на соответствие стандарту. Заявление отражает готовность нести ответственность.
Сертификация соответствия:
•предполагает обязательное участие третьей стороны
•осуществляется по правилам определенной процедуры, включающей обязательные испы-
тания на соответствие стандарту Сертификация считается основным достоверным способом доказательства соответствия
продукции (процесса, услуги) заданным требованиям (стандартам). Систему сертификации (в общем виде) составляют:
•центральный орган который управляет системой, проводит надзор за ее деятельностью и может передавать право на проведение сертификации другим органам; правила и порядок проведения сертификации;
•нормативные документы, на соответствие которым осуществляется сертификация;
•процедуры (схемы) сертификации;
•порядок инспекционного контроля.
Системы сертификации могут действовать на национальном, региональном и международ-
ном уровнях.
1.3.2. Какие бывают стандарты?
Среди всего многообразия стандартов принято выделять следующие основные типы стандартов:
Корпоративные стандарты разрабатываются крупными фирмами (корпорациями) с целью повышения качества своей продукции. Такие стандарты разрабатываются на основе собственного опыта и с учетом требований мировых стандартов. Корпоративные стандарты не сертифицируются, но являются обязательными для применения внутри корпорации. В условиях рыночной конкуренции могут иметь закрытый характер.
В IT сфере известны стандарты, разработанные Microsoft, Intel, IBM.
Отраслевые стандарты действуют в пределах организаций некоторой отрасли (министерства). Например, СНИП – строительные нормы и правила. Разрабатываются с уче-
16
том требований мирового опыта и специфики отрасли. Являются, как правило, обязательными для отрасли. Подлежат сертификации.
Государственные стандарты (ГОСТы) принимаются государственными органами, имеют силу закона. Разрабатываются с учетом мирового опыта или на основе отраслевых стандартов. Могут иметь как рекомендательный, так и обязательный характер (стандарты безопасности). Для сертификации создаются государственные или лицензированные органы сертификации.
Международные стандарты. Разрабатываются, как правило, специальными международными организациями на основе мирового опыта и лучших корпоративных стандартов. Имеют сугубо рекомендательный характер. Право сертификации получают организации (государственные и частные), прошедшие лицензирование в международных организациях.
1.3.3. Кто разрабатывает стандарты SE?
Основными разработчиками международных стандартов являются следующие организации:
ISO - International Organization for Standardization – Международная организация по стандартизации. Наиболее представительная и влиятельная организация, разрабатывающая стандарты почти во всех областях деятельности, в том числе и в IT.
ACM - Association for Computing Machinery –Ассоциация по вычислительной тех-
нике. Всемирная научная и образовательная организация в области вычислительной технике. Известна также и разработкой образовательных стандартов.
SEI - Software Engineering Institute - Институт Программной Инженерии. Исследования в области программной инженерии с упором на разработку методов оценки и повышения качества ПО. Стандарты по качеству ПО и зрелости организаций, разрабатывающих ПО.
PMI - Project Management Institute - Международный Институт Проектного Менеджмента (Управления Проектами). Некоммерческая организация, целью которой является продвижение, пропаганда, развитие проектного менеджмента в разных странах. PMI разрабатывает стандарты проектного менеджмента, занимается повышением квалификации специалистов.
IEEE - Институт инженеров по электронике. Поддержка научных и практических разработок в области электроники и вычислительной техники. Большие вложения в разработку стандартов в этой области.
См. также: Васютович В.В. Стандартизация в области информационных технологий. http://inform.alee.ru/item_541.html
1.3.3.1.ISO - International Organization for Standardization
Неправительственная организация с консультативным статусом ООН. Главная цель - развитие стандартизации и родственных направлений деятельности во всем мире.
Официальное название -International Organization for Standardization, и сокращенным -
ISO. Выходит, что аббревиатурой ISO должен быть IOS. Слово ISO образовано от греческого слова isos , что означает «равный» и служит приставкой iso- в таких терминах как «изономия», «изометрия».
Во избежание многочисленных вариаций аббревиатуры, получающейся от перевода
International Organization for Standardization на родные языки членов организации решили ис-
пользовать аббревиатуру ISO, как сокращенную форму обозначения Международной организации по стандартизации (ISO) во всем мире.
Международная организация по стандартизации (ISO):
•Является всемирной федерацией национальных организаций по стандартизации (комите-
тов-членов ISO)
17
•Разработка международных стандартов обычно осуществляется техническими комитетами ISO. Каждый комитет-член, заинтересованный в деятельности, для которой создан технический комитет, имеет право быть представленным в этом комитете.
Международные правительственные и неправительственные организации, имеющие связи
сISO, также принимают участие в работах.
Стандарты ISO являются рекомендательными; в то же время некоторые международные стандарты (например по проблемам здравоохранения, безопасности, охраны окружающей среды) приняты рядом стран в качестве обязательных на территории данной страны.
Как правило, никакого контроля за выполнением стандартов, никакой сертификации на соответствие своим стандартам ISO не ведет - это также считается суверенным правом стран. Обычно эти процедуры поручаются либо специально назначенному государственному органу регистрации, либо так называемой третьей стороне -- лаборатории или аудиторскому институту, в том числе и частному аудитору, действующему на коммерческой основе.
Использование логотипа ISO на каких-либо продуктах или в предприятиях является также незаконным, поскольку дает ощущение "одобрения" данного продукта; а как мы уже говорили, ISO не занимается сертификацией.
Проекты международных стандартов, принятые техническими комитетами, рассылаются комитетам-членам на голосование. Их опубликование в качестве международных стандартов требует одобрения, по меньшей мере, 75% комитетов-членов, принимающих участие в голосовании.
1.3.3.2.ACM - Association for Computing Machinery
ACM - Association for Computing Machinery – название почти никогда не переводится.
Можно перевести как Ассоциация для вычислительной техники, что звучит весьма коряво. ACM является крупнейшей всемирной научной и образовательной организацией, объединяющей более 75000 профессионалов компьютерной науки. Основанная в 1947 г, АСМ ежегодно проводит до 100 международных (научных и практических) конференций, издает несколько десятков научных журналов и присуждает большое количество авторитетных наград за достижения в области компьютерной науки, в т.ч. A.M. Turing Award, известную как "нобелевская премия информатики". Под эгидой ACM проводятся ежегодные международные студенческие олимпиады по программированию.
Подробнее об ACM можно прочесть на Internet-сайте ассоциации: http://www.acm.org/.
1.3.3.3.SEI - Software Engineering Institute
Software Engineering Institute, Carnegie Mellon University - Институт Программной Инжене-
рии в университете Карнеги-Меллона – это центр исследования и разработки, находящийся на федеральном финансировании и спонсируемый министерством обороны США. SEI ставит своей основной задачей создание методик для оценки уровня развития внутренних процессов в организации. В качестве подразделения широко известного благодаря разработкам в области вычислительной техники и программного инжиниринга, SEI имеет доступ к самым передовым техническим инновациям. С 1984 года SEI развивает и пропагандирует методики для разработки высококачественного ПО. Первая версия Модели Технологической Зрелости Компании-Разработчика ПО
(Capability Maturity Model for Software, SW-CMM) была создана в SEI в 1991 году. Подробнее: www.sei.cmu.edu
1.3.3.4.PMI - Project Management Institute
Международный Институт Проектного Менеджмента - Project Management Institute (PMI), основан в 1969 г. в США. Штаб-квартира в Филадельфии (Пенсильвания). Международная общественная организация, объединяющая профессионалов в области проектного менеджмента. PMI объединяет от 100000 до 135000 членов (данные различных источников расходятся) в 125 странах мира.
PMI - некоммерческая организация, целью которой является продвижение, пропаганда, развитие проектного менеджмента в разных странах. PMI разрабатывает стандарты проектного менеджмента, занимается повышением квалификации специалистов.
PMI являлся ведущей профессиональной организацией по управлению проектами в таких областях, как авиакосмическая и автомобильная промышленность, управление коммерческими
18
предприятиями, машиностроение, финансовые операции, информационные технологии, фармацевтика, телекоммуникации и многие другие.
PMI предоставляет всеобъемлющее руководство по разработке стандартов для проектного менеджмента (стандарт по управлению проектами PMBOK). PMI стал первой организацией в мире, имеющей программу сертификации специалистов по управлению проектами - Project Management Professional (PMP).
Для обучения проектному менеджменту и подготовки к экзамену PMP созданы Registered Education Provider (R.E.P) - Сертифицированный провайдер по образованию - во многих странах мира.
Исследования в области проектного менеджмента поддерживаются за счет проведения конференций, предоставления грантов, выпуска научных трудов, создания исследовательской базы данных и т.д. Кроме того, собирается и сортируется информация о текущем состоянии дел, потребностях, накопленных знаниях по проектному менеджменту, и на этой основе оценивается будущее профессии и путь ее развития.
PMI выпускает три вида периодических изданий для индивидуальных лиц, занимающихся проектным менеджментом: ежемесячный журнал PM Network, ежеквартальный журнал Project Management Journal и ежемесячный информационный бюллетень PMI Today. PMI является ведущим мировым издателем литературы и учебных материалов по проектному менеджменту. В онлайновом магазине PMI в настоящее время доступно более 1000 наименований.
Подробнее: http://www.pmi.org и http://www.pmi.ru
1.3.3.5.IEEE – Institute of Electrical and Electronics Engineers
IEEE - Институт инженеров по электронике объединяет почти 400000 технических специалистов из более чем 150 стран. IEEE состоит из ряда профессиональных сообществ, в самое крупное из которых - IEEE Computer Society - входят более 100000 человек. Компьютерное сообщество IEEE ежегодно спонсирует около ста пятидесяти научных конференций и симпозиумов, публикует более 20 периодических изданий. IEEE Computer Society также широко известно своей деятельностью по стандартизации, которую на сегодняшний день в рамках сообщества осуществляют порядка 200 рабочих групп.
Подробнее: http://www.ieee.org и http://www.computer.org.ru/
1.3.4. Основные стандарты SE
Наиболее известными стандартами программной инженерии являются:
•ISO/IEC 12207 - Information Technology - Software Life Cycle Processes - Процессы жизненного цикла программных средств. Стандарт содержит определения основных понятий программной инженерии (в частности программного продукта и жизненного цикла программного продукта), структуры жизненного цикла как совокупности процессов, детальное описание процессов жизненного цикла.
•SEI CMM - Capability Maturity Model (for Software) - модель зрелости процессов разработки программного обеспечения. Стандарт отвечает на вопрос: «Какими признаками должна обладать профессиональная организация по разработке ПО?». Профессионализм организации определяется через зрелость процесса, применяемого этой организацией. Выделяются пять уровней зрелости процесса.
•ISO/IEC 15504 - Software Process Assessment - Оценка и аттестация зрелости про-
цессов создания и сопровождения ПО. Является развитием и уточнением ISO 12207 и SEI CMM. Содержит расширенное по отношению ISO 12207 количество процессов жизненного цикла и 6 уровней зрелости процессов. Дается подробное описание схемы аттестации процессов, на основе результатов которой может быть выполнена оценка зрелости процессов и даны рекомендации по их усовершенствованию.
•PMBOK - Project Management Body of Knowledge - Свод знаний по управлению проектами. Содержит описания состава знаний по следующим 9 разделам (областям знаний) управления проектами
19
•SWBOK - Software Engineering Body of Knowledge - Свод знаний по программной инженерии - содержит описания состава знаний по 10 разделам (областям знаний) программной инженерии.
•ACM/IEEE CC2001 - Computing Curricula 2001 – Академический образовательный стандарт в области компьютерных наук. Выделены 4 основных раздела компью-
терных наук: Computer science, Computer engineering, Software engineering и Information systems, по каждому из которых описаны области знаний соответствующего раздела, состав и планы рекомендуемых курсов
1.3.4.1.ISO/IEC 12207-95
Понятие жизненного цикла ПО как некоторой последовательности этапов, которые надо выполнить для создания ПО: проектирование, разработка, тестирования, … составляет одно из фундаментальных понятий программной инженерии. Понятие возникло в конце 60-х годов, когда разработкой ПО занималось много фирм, и различными разработчиками трактовалось по-разному. Путаница в терминологии порождала много проблем во взаимопонимании между разработчиками, между разработчиками и заказчиками. Необходим был стандарт на представление терминов, понятий и составных элементов жизненного цикла ПО. Этот стандарт был принят ISO в 1995 году. Следует отметить, что работы по нему были начаты в 1987 году и стандарт формировался взаимными усилиями 125 стран – участниц ISO. В России этот стандарт принят в 2000 году под названием «ГОСТ Р ИСО/МЭК 12207 Процессы жизненного цикла программных средств».
В стандарте ISO 12207 дается определение программного продукта (ПО) как набора компьютерных программ, процедур и связанной с ними документации и данных и определение жизненного цикла программного продукта как непрерывного процесса, который начинается с момента принятия решения о необходимости его создания и заканчивается в момент его полного изъятия из эксплуатации.
Стандарт определяет:
•организацию ЖЦ ПО
•структуру ЖЦ ПО
По организации жизненный цикл ПО описывается в виде совокупности взаимодействующих процессов, каждый из которых состоит из действий, которые в свою очередь могут быть разбиты на отдельные задачи.
Структура жизненного цикла дается в виде перечня его процессов: процесс управления, процесс разработки процесс тестирования, процесс документирования, … Для каждого процесса дается описание действий этого процесса. Так, действиями процесса разработки являются: подготовка процесса, анализ требований, проектирование системной архитектуры, анализ требований к программным средствам и т.д. Для каждого действия дается подробное описание его задач.
Примечание.
•ISO - International Organization of Standardization - Международная организация по стан-
дартизации
•IEC - International Electrotechnical Commission - Международная электротехническая ко-
миссия Тексты стандарта:
•ГОСТ ИСО 12207: http://www.staratel.com/iso/InfTech/DesignPO/ISO12207/ISO1220799/ISO12207.htm
•ISO/IEC 12207: ftp://172.16.100.100/Soft/ntd/12207cpt.pdf
1.3.4.2.SEI CMM
Capability Maturity Model (for Software) - модель зрелости процессов разработки программного обеспечения – известный отчет SEI, который формально стандартом не является, но приобрел характер международного стандарта в силу его интересности и практической полезности. Отчет появился в 1993 году как результат исследования на тему: «Как выбирать организацию, которой можно доверить выполнение крупного IT проекта?». Это исследование проводилось SEI по заказу министерства обороны США, которое было очень озадачено этой проблемой. В отчете изложена модель зрелости организаций, которая определялась через зрелость процесса разработки ПО, применяемого в этой организации. В этой модели выделяется пять уровней зрелости процесса, которые и устанавливают степень готовности организации выполнить крупный проект:
20