Опыт работы исп ран с открытыми стандартами



Скачать 272.92 Kb.

Дата20.11.2016
Размер272.92 Kb.
Просмотров61
Скачиваний0

Опыт работы ИСП РАН с
открытыми стандартами
Институт системного программирования
Российской академии наук (ИСП РАН) *

ИСП РАН имеет большой опыт работы с международными стандартами для различных видов программных систем. Стандарты, с которыми работают в ИСП РАН, представляют собой структурированное, однозначное и полное описание системы взаимодействия программной системы с окружением. Взаимодействие может осуществляться посредством программных интерфейсов, обменов сообщениями по протоколам, обработкой потоковых данных или программ на языках высокого уровня. В проектах ИСП РАН были задействованы различные виды открытых
1
, частично открытых и закрытых стандартов (выделены курсивом):

спецификации программных интерфейсов: POSIX [1], Linux Standard Base [2],
ARINC [3];

спецификации языков программирования: С [4], С++ [5], Java [6], C# [7],
TTCN-3 [8];

спецификации аудио-визуальных систем: MPEG-2 [9], MPEG-4 [10], MPEG-
21 [11];

спецификации телекоммуникационных протоколов – стек TCP/IP/IPv6 [12-
14]);

спецификации протоколов защиты (IPsec [15, 16], MPEG -2 IPMP [9]).
Разработка тестовых наборов для проверки соответствия
Исторически первые работы с открытыми стандартами заключались в разработке тестовых наборов для тестирования соответствия реализаций стандартам. В ИСП РАН разработана технология UniTESK [17] и набор инструментальных средств для упрощения разработки таких тестовых наборов.
1
Открытые стандарты объединяют вокруг себя открытое сообщество специалистов, которые согласованно работают над улучшением стандартов. В открытости такого сообщества заключается основное отличие открытых стандартов от закрытых – последние также разрабатываются сообществами специалистов, но такие сообщества являются замкнутыми и войти в них «человеку со стороны», как правило, не просто. Открытые стандарты обладают следующими свойствами:
1.
Процесс обсуждения и обновления стандарта публичен – ведутся конференции или поддерживаются списки рассылки, в которых все желающие могут опубликовать свои соображения о содержании стандарта.
2.
Доступ к тексту стандарта и сопутствующим материалам, таким как проекты стандарта и обсуждениям, свободен; на него не накладываются ограничения, в частности, финансового характера.
Бывают случаи смешанных стандартов, процессы разработки которых удовлетворяют части требований к открытости стандарта.
* Ссылка на ИСП РАН обязательна при копировании материалов из этого документа полностью или частично

2
Процесс разработки таких тестовых наборов в технологии UniTESK состоит из нескольких этапов:
1.
анализ стандарта и выделение функциональных требований;
2.
представление функциональных требований в формальном виде на одном из языков формальных описаний;
3.
разработка тестовых сценариев для автоматизированной проверки соответствия реализации формальной спецификации требований;
4.
прогон тестов и построение отчетов о проведенном тестировании.
Отличительная черта технологии UniTESK, разработанной в ИСП РАН, заключается в использовании формальных моделей стандарта и автоматической генерации тестовых данных для проверки поведения реализации. Большинство современных стандартов написаны на естественном языке (английском) и практически не используют формальные методы для записи требований. Для автоматизации тестирования такого представления требований недостаточно, поэтому при разработке тестового набора создается формальная модель стандарта, которая представляет собой однозначную и точную запись положении стандарта на языке, поддерживающем машинную обработку.
С 2000-го года в ИСП РАН ведутся работы по разработке тестовых наборов для протоколов из стека Интернет-протокола нового поколения, включая собственно протокол
IPv6 и ряд служебных инфраструктурных протоколов: Mobile IPv6, IP security (IPsec).
Полученные тестовые наборы применялись для тестирования коммерческих и открытых реализаций IPv6.
В 2005 году институт инициировал работы по созданию тестового набора для стандарта POSIX. Изначально POSIX разрабатывался в закрытом режиме, но в конце 90-х годов сообщество POSIX стал открытым стандартом, была организована группа Austin, курирующая работы по развитию стандарта. В ходе работ над тестовым набором поддерживался контакт с разработчиками стандарта, в Austin Group были переданы отчеты о выявленных ошибках в стандарте и предложения по его улучшению.
Разработанный тестовый набор использовался для верификации ОС реального времени, а в настоящее время тестовый набор включен в состав официального тестового набора для
ОС Linux.
В настоящее время в ИСП РАН ведет работы по созданию и поддержке сертифицирующего тестового набора для Linux standard Base [18]. Данная работа проводится в тесной кооперации с Linux Foundation – официальным разработчиком стандартов для Linux.
В 2006 году в ИСП РАН начаты работы по созданию комплекта тестов для ARINC-
653. Комплект тестов покрывает требования соответствия, изложенные в третьей части стандарта и покрывает значительную часть функциональных требований стандарта.
Тестовый набор использовался для тестирования ОС реального времени для авиационных приложений.
Анализ и улучшение стандартов
Построение формальной модели стандарта позволяет провести очень глубокий анализ положений стандарта. В ходе такого анализа, как правило, выявляются неоднозначности, противоречия, неполнота описания, а в отдельных случаях даже ошибки.

3
В ходе работ по созданию тестового набора для POSIX был проведен тщательный анализ стандарта. В результате в Austin Group были переданы сообщения 25 обнаруженных дефектах стандарта. Были выявлены ошибки в описаниях функций
(например, некоторые константы используются, но нигде не определены), противоречия в между описаниями нескольких функций, опечатки.
В ходе работ над стандартом LSB были выявлены 44 дефекта. Как и в случае с
POSIX, были обнаружены ошибки в описаниях, противоречия и опечатки.
Специализированные работы по анализу требований проводились для проекта стандарта защиты данных в аудио-видео потоках MPEG-2 IPMP. Цель анализа – выявить положения стандарта, которые могли нарушить совместимость между корректными реализациями. В ходе работ были выявлены более 40 дефектов стандарта, в том числе серьезные ошибки, ведущие к нарушению совместимости между реализациями.
Разработка инфраструктуры для процесса стандартизации
В 2007 году ИСП РАН по заказу Linux Foundation разработал программный комплекс для поддержки процесса разработки LSB. Программный комплекс включает в себя навигатор по базе данных стандарта и веб-интерфейс к системе автоматизированной сертификации LSB-совместимости
Навигатор по базе данных предоставляет три вида сервисов:
1.
Навигация по элементам стандарта LSB: функциям, компонентам, заголовочным файлам, библиотекам и т.п.
2.
Навигация по дистрибутивам линукса и приложениям; навигатор предоставляет информацию по составу библиотек и заголовочных файлов, которые входят в дистрибутив или используются в приложениях.
3.
Поддержка процесса разработки LSB: доступ к тексту стандарта, тестам, покрытию, статистическим данным.
Навигатор активно используется в повседневной работе Linux Foundation.
Автоматизированная система сертификации включает в себя систему регистрации на сайте, комплект тестов для дистрибутивов и приложений, и автоматизированная система аудита результата. К настоящему времени сертификацию прошли более 40 дистрибутивов
Linux.
Разработка реализации стандарта
Для ряда стандартов в ИСП РАН были созданы реализации. Прежде всего это относится к стандартам языков программирования: в ИСП РАН разработаны реализации для языков С/С++, Java, C#, TTCN-3. Кроме того разрабатывались прототипные реализации для ряда стандартов Интернета и подмножества MPEG-2.
Сотрудничество с международными органами стандартизации
В работе над стандартами ИСП РАН контактировал с различными организациями, которые отвечают за разработку и поддержку соответствующих стандартов. Часть из этих организаций представляют собой открытые сообщества, а часть – закрытые, для участия в которых необходимо предпринимать специальные формальные шаги. Некоторые из организаций используют смешанные стратегии работы. Например, они могут быть закрытыми в плане принятия новых членов, но открытыми для подачи предложений и обсуждений обновлений стандарта.

4
Следующий список является не полным перечнем стандартизирующих организаций, с которыми взаимодействовал ИСП РАН:
1.
Internet Engineering Task Force (IETF): стандарты протоколов Интернета, открытое сообщество;
2.
OpenGroup: стандарты POSIX, открытое сообщество;
3.
The Linux Foundation: Linux Standard Base, открытое сообщество;
4.
European Telecommunication Standards Institute (ETSI): методология тестирования и язык TTCN-3, частично открытое сообщество.
5.
правительство КНР: стандартизация MPEG-2 и стандарта защиты MPEG-2 IPMP, закрытое сообщество.
Таблица 1. Сводная таблица по работам ИСП РАН над открытыми и закрытыми стандартами. спецификации программн ых интерфейсов спецификации языков программи рования спецификации аудио
-визуальных систем спецификации телекоммуникацион ных протоколов спецификации протоколов защиты
POSIX,
Linux,
ARINC,
JDK
С, С++,
Java, C#,
TTCN-3
MPEG-2,
MPEG-4,
MPEG-21
TCP/IPv4
/IPv6
IPsec,
IPsec v2,
IPMP
Анализ требований.
Улучшение стандарта.
POSIX
LSB
IPMP
Разработка тестовых наборов.
C, Java
MPEG-2
IPMP
Разработка инфраструктуры.
LSB
Разработка прототипа или реализации стандарта.
C, C#,
Java
IPv6
Transitioning
IPMP
Список литературы
1.
ISO/IEC 9945. Information technology -- Portable Operating System Interface (POSIX).
Geneva, Switzerland.
2.
The Linux Foundation. Linux Standard Base. [HTML] (
http://www.linuxbase.org/
)
3.
ARINC-653. Avionics Application Software Standard Interface.

5 4.
ISO/IEC 9899. Programming Languages — C. Geneva, Switzerland. 2003.
5.
ISO/IEC 14882. Programming Languages — C++. Geneva, Switzerland. 1999.
6.
Java Language Specification. Sun Microsystems. 2000. [HTML]
(
http://java.sun.com/docs/books/jls/second_edition/html/intro.doc.html
)
7.
ISO/IEC 23270. Information technology — Programming languages — C#.
8.
ETSI ES 201 873. Methods for Testing and Specification (MTS); The Testing and Test
Control Notation version 3.
9.
ISO/IEC 13818. Information technology – Generic coding of moving pictures and associated audio information. Geneva, Switzerland.
10.
ISO/IEC 14496. Information technology – Coding of audio-visual objects. Geneva,
Switzerland.
11.
ISO/IEC Technical Report 21000. Information technology – Multimedia framework (MPEG-
21). Geneva, Switzerland. 2004.
12.
IETF RFC 791. J. Postel. Internet Protocol. IETF, 1981.
[TXT] (
http://www.ietf.org/rfc/rfc0791.txt
).
13.
IETF RFC 2460. S. Deering, R. Hinden. Internet Protocol, Version 6 (IPv6) Specification.
December 1998. 39 c. [TXT] (
http://www.ietf.org/rfc/rfc2460.txt
).
14.
IETF RFC 793. J. Postel. Transmission Control Protocol. IETF, 1981. 85 c. [TXT]
(
http://www.ietf.org/rfc/rfc0793.txt
)
15.
IETF RFC 2401. S. Kent, R. Atkinson. Security Architecture for the Internet Protocol.
November 1998. 66 c. [TXT] (
http://www.ietf.org/rfc/rfc2401.txt
)
16.
IETF RFC 4301. S. Kent, K. Seo. Security Architecture for the Internet Protocol. December
2005. 101 c. [TXT] (
http://www.ietf.org/rfc/rfc2401.txt
)
17.
Баранцев А.В., Бурдонов И.Б., Демаков А.В., Зеленов С.В., Косачев А.С., Кулямин
В.В., Омельченко В.А., Пакулин Н.В., Петренко А.К., Хорошилов А.В. Подход
UniTesK к разработке тестов: достижения и перспективы. // Труды ИСП РАН, №5,
2004. [HTML] (
http://www.citforum.ru/SE/testing/unitesk
).
18.
Центр верификации ОС Линукс. [HTML] (
http://linuxtesting.org/
)

Document Outline

  • Опыт работы ИСП РАН с открытыми стандартами
    • Разработка тестовых наборов для проверки соответствия
    • Анализ и улучшение стандартов
    • Разработка инфраструктуры для процесса стандартизации
    • Разработка реализации стандарта
    • Сотрудничество с международными органами стандартизации
    • Список литературы


Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал