Автоматическая генерация и исполнение программ по спецификациям на языке SDL тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат физико-математических наук Рагозин, Алексей Сергеевич

  • Рагозин, Алексей Сергеевич
  • кандидат физико-математических науккандидат физико-математических наук
  • 1999, Москва
  • Специальность ВАК РФ05.13.11
  • Количество страниц 160
Рагозин, Алексей Сергеевич. Автоматическая генерация и исполнение программ по спецификациям на языке SDL: дис. кандидат физико-математических наук: 05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей. Москва. 1999. 160 с.

Оглавление диссертации кандидат физико-математических наук Рагозин, Алексей Сергеевич

Оглавление

Введение

Глава 1. Языки формальных спецификаций и автоматическая генерация программ

1.1. Применение автоматической генерации программ по спецификациям

1.2. Основные понятия

1.2.1. Генерация программ

1.2.2. Свойства генерируемых программ

1.3. Языки формальных спецификаций

1.3.1. Язык SDL

1.3.2. Язык ASN.1

1.3.3. Язык LOTOS

1.3.4. Язык Estelle

1.3.5. Методология ROOM и система ObjecTime

1.3.6. Язык UML

1.4. Особенности автоматической генерации программ

1.5. Недостатки автоматической генерации программ

1.5.1. Снижение качества при автоматической генерации программ

1.5.2. Потребность в доводке сгенерированного кода

1.5.3. Императивность отображения 3

1.6. Оценка качества сгенерированных программ 3

1.7. Выводы 39 Глава 2. Концепция декларативных отображений для реализации

языков исполнимых спецификаций

2.1. Декларативные отображения

2.2. Достоинства декларативных отображений

2.2.1. Налядность генерируемого текста

2.2.2. Поддержка процесса разработки

2.2.3. Разработка генератора

2.3. Недостатки декларативных дотбражений 4

2.4. Выводы

Глава 3. Декларативное отображение для языка SDL

3.1. Особенности автоматической генерации программ для языка SDL

3.2. Предлагаемая схема генерации для языка SDL

3.2.1. Трансляционные преобразования SDL-спецификации

3.2.2. Особенности предлагаемого подхода

3.3. Основные решения по отображению

3.3.1. Объектная ориентация

3.3.2. Вложенные описания

3.3.3. Поэтапное определение

3.3.4. Шаблоны классов

3.3.5. Перегрузка операторов

3.3.6. С++-методы без ограничения на тип и количество параметров

3.3.7. Использование препроцессора

3.3.8. Объекты вместо классов

3.3.9. Статические члены классов

3.3.10. Внутреннее дерево структуры системы 65 3.3.11 .Взаимодействие СПЭВ и генерируемой программы 65 3.3.12. Нумерация объектов

3.4. Схема генерации структуры системы

3.4.1. Файловая структура сгенерированной программы

3.4.2. Отображение SDL структуры

3.4.3. Нумерация генерируемых объектов

3.4.4. Отображение SDL коммуникации

3.4.5. Пример

3.5. Схема генерации для тела SDL процесса

3.5.1. Пример

3.5.2. Генерируемые классы для SDL графа

3.5.3. Реализация графа

3.5.4. Операции в графе

3.5.5. Схема отображения данных

3.6. Отображение объектно-ориентированных расширений языка SDL

3.6.1. Структурные типы

3.6.2. Нсаледование структурных типов

3.6.3. Виртуализация

3.6.4. Параметризация структурных типов

3.7. Достоинства и недостатки декларативного отображения

3.7.1. Прямая поддержка трансформаций

3.7.2. Наглядность генерируемого текста

3.7.3. Гибкость настройки сгенерированных программ

3.7.4. Недостатки предлагаемого подхода

3.8. Выводы 112 Глава 4. Система поддержки этапа выполнения SDL системы

4.1. Предназначение СПЭВ

4.2. Принципы построения СПЭВ

4.3. Структура СПЭВ

4.3.1. Базове классы

4.3.2. Вспомогательные классы

4.3.3. Инициализационная часть

4.3.4. Функционирование системы

4.3.5. Интерфейс с платформой

4.3.6. Система отладки

4.4. Выводы 138 Глава 5. Оценка качества сгенерированных программ

5.1. Метрики качества сгенерированных программ

5.1.1. Статические метрики

5.1.2. Динамические метрики

5.2. Кодогенераторы для языка SDL

5.2.1. Кодогенератор системы SDT

5.2.2. Кодогенератор системы ObjectGeode

5.2.3. RASTA

5.3. Сравнительная оценка отображений для языка SDL

5.3.1. Рост объема

5.3.2. Сохранение структуры

5.3.3. Сохранение имен

5.3.4. Фрагментация

5.3.5. Использование имен

5.3.6. Производительность сгенерированных программ

5.4. Выводы Заключение Литература

Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК

Введение диссертации (часть автореферата) на тему «Автоматическая генерация и исполнение программ по спецификациям на языке SDL»

ВВЕДЕНИЕ

Автоматическая генерация программ по формальным спецификациям приобрела широкое распространение в последнее десятилетие. Причина интереса к автоматизации разработки программ состоит в заметном усложнении программного обеспечения, увеличении размеров программ, необходимости их длительного сопровождения, в повышенных требованиях к надежности программ. Разработка современного программного обеспечения в таких областях, как телекоммуникация, атомная энергетика, авионика, бортовые программы, требует построения целого ряда промежуточных моделей. Это обусловлено исключительной сложностью анализа требований к такого рода программному обеспечению, а также многочисленными взаимосвязями внутри коллектива разработчиков, в состав которого входит большое количество специалистов разного профиля, зачастую географически распределенных. Особенно предпочтительным является использование языков формальных спецификаций. Формальные спецификации систем позволяют проводить их детальный автоматизированный анализ на ранних стадиях разработки, что значительно сокращает цикл проектирования программного обеспечения, повышает его качество. Заметим также, что формальная спецификация легче поддается сопровождению.

Особенно актуально применение формальных спецификаций при разработке телекоммуникационных приложений. Программные компоненты в этой сфере тесно взаимодействуют с аппаратурой, обеспечивают совместимость с программами других разработчиков. Для обеспечения переносимости и совместимости в телекоммуникации большое значение приобретают формальные или полуформальные спецификации систем, которые зачастую создаются международными и национальными стандартизационными комитетами.

В таких условиях использование методов автоматической генерации программ по спецификациям является весьма предпочтительным.

В сфере телекоммуникационных приложений применяется целый ряд языков спецификаций. К ним относятся SDL, TTCN, Lotos, Estelle, ASN.l, ROOM, UML.

Язык спецификаций и описаний SDL является наиболее широко распространенным стандартом, утвержденным Международным Телекоммуникационным Союзом (ITU-T). Язык

используют при разработке телекоммуникационных систем, систем реального времени, встроенных систем.

Важнейшими достоинствами языка SDL являются:

• иерархическое описание структуры системы;

• описание поведения компонент системы в виде взаимодействующих конечных автоматов;

• использование локальных данных при описании переходов в конечном автомате;

• объектная ориентированность;

• графическое представление;

• поддержка инструментальными средствами.

SDL позволяет создавать детальные спецификации систем. Язык применяется не только для анализа и проектирования, но и для получения исполняемых программ. Таким образом, SDL позволяет значительно сократить время от выдвижения требований к системе до получения автоматически сгенерированных программ на машинно-ориентированном языке программирования. Существует достаточно много инструментальных систем, генерирующих по SDL-спецификациям программы на таких языках программирования как С, С++, CHILL и др. В то же время известно на удивление немного промышленных проектов с использованием SDL, где в конечном продукте использовался бы автоматически генерируемая программа: разработчики используют язык для анализа и проектирования систем, иногда для трассировки и верификации спецификаций, но само кодирование осуществляют вручную. Одна из основных причин такого положения состоит в недостаточно высоком качестве генерируемых программ, в сложности их адаптации к требованиям конкретного проекта.

Традиционно, разработчики инструментального обеспечения для языка SDL основное внимание уделяют генерации семантически корректных, эффективных по скорости и памяти переносимых программ. Задача обеспечения наглядности (удобства работы) сгенерированных программ никогда не была первоочередной, поскольку считается, что сгенерированный текст нужен только для дальнейшей трансляции в машинные коды. Сгенерированные программы значительно превышают по размеру исходные спецификации и не приспособлены для ручной инспекции, а тем более модификации. Вместе с тем, сгенерированная по SDL-спецификациям программа, как правило,

нуждается в ручной доводке и настройке. Существует ряд свойств, которые не удобно или вообще невозможно описывать на языке спецификации. Так, в спецификацию часто вставляют фрагменты на языке реализации. Свойства системы, не выразимые на языке спецификации, как правило, описываются отдельно. Еще одна проблема состоит в необходимости стыковки сгенерированной части программы с библиотеками сторонних разработчиков и так называемым унаследованным кодом. Унаследованным кодом называются программы, созданные иными разработчиками, нежели те, кто их развивает или использует в своей разработке. Обычно унаследованный код плохо документирован, связь с его авторами либо затруднена либо полностью отсутствует. Все это в значительной степени усложняет использование унаследованного кода.

Генерация программы по спецификациям является важнейшей, но не единственной частью этапа реализации программной системы. В процессе разработки программного обеспечения, основанном на использовании автоматической генерации программ по SDL-спецификациям, выделяется отдельный этап, на котором производится инспекция и доводка и интеграция сгенерированной программы.

Таким образом, наряду с очевидным требованием эффективности, задачей SDL-транслятора является обеспечение наглядности и гибкости генерируемой программы, что позволит максимально упростить этап инспекции, доводки и интеграции программы. Идеальным вариантом представляется, когда со сгенерированной программой также легко работать, как и с исходной спецификацией, то есть программа имеет схожую структуру, оперирует теми же понятиями, что и спецификация, и при этом не значительно превосходит ее по размеру.

В связи с вышесказанным значительный интерес представляет исследование методов автоматической генерации программ в целом и особенно в применении к языку спецификаций SDL. В диссертации обобщается опыт разработок SDL кодогенераторов. На этой основе

1) проводится исследование источников повышения качества автоматически генерируемых программ, разрабатывается метод оценки их качества;

2) разрабатывается отображение, позволяющее генерировать программы на языке С++ по SDL-спецификациям;

3) рассматривается система поддержки этапа выполнения сгенерированных программ (СПЭВ);

4) применяется метод оценки качества отображения.

В диссертации разрабатывается так называемый декларативный подход к автоматическому синтезу программ. Декларативный подход позволяет в достаточно широких пределах управлять (варьировать) структуными свойствами сгенерированных программ. В данной работе основное внимание уделяется генерации максимально наглядных программ на языке С++ по спецификациям на языке SDL. Сущность декларативного подхода заключается в использовании исполняемых конструкций целевого языка для представления декларативный ыконструкций исходного языка с последующей перестройкой внутренней структуры целевой программы в самом начале ее исполнения на так называемом этапе <<раскрутки». Этап раскрутки является ключевым средством декларативного подхода. Его введение позволило

• вынести многие детали реализации за пределы сгенерированной части программы;

• обеспечить адекватное отображение «семантически далеких» конструкций исходного языка, не имеющих прямых аналогов в языке реализации;

• упростить процесс проектирования отображения.

Следует отметить, что введение требования наглядности сгенерированной программы потребовало кардинального пересмотра традиционных методов отображения конструкций языка SDL на конструкции языка С++, а также привело к упрощению процесса трансляции.

Предлагаемый в диссертационной работе декларативный подход имеет достаточно общий характер и может быть применен для автоматической генерации программ для широкого класса исходных и целевых языков. В частности, имеется опыт применения декларативного подхода для автоматической генерации программ по спецификациям на языке ASN. 1.

Цели диссертационной работы:

1) Исследование современного опыта автоматической генерации программ по спецификациям на языке SDL и выявление возможностей управления структурными свойствами сгенерированных программ.

2) Разработка метода оценки качества отображения из языка спецификаций в язык реализации.

3) Разработка схемы отображения спецификаций на языке SDL в программы на языке С++, обладающие повышенной наглядностью и гибкостью.

4) Реализация системы поддержки этапа выполнения сгенерированных программ.

5) Применение метода оценки качества отображения для сравнения предлагаемого подхода с существующими аналогами.

Научная новизна:

1) Предложен декларативный подход к автоматической генерации программ, позволяющий в достаточно широких пределах управлять структурными свойствами сгенерированных программ.

2) Предложена и апробирована методика сравнения качества генерации программ по спецификациям на языке SDL.

3) Предложено прямое и полное отображение всех конструкций языка SDL стандарта 1992 года.

Практическая ценность:

1) Разработана схема отображения из языка SDL в гибкие, эффективные и наглядные программы на языке С++. На ее основе реализован генератор программ.

2) Разработана и реализована эффективная система поддержки этапа выполнения, обеспечивающая исполнение сгенерированных программ.

3) Проведена сравнительная оценка качества программ, сгенерированных несколькими кодогенериторами для языка SDL. Измерения показали, что предложенный подход приводит к существенному сокращению размера генерируемых программ и значительному улучшению их наглядности. Кроме того, в ряде случаев наблюдается повышение производительности сгенерированных программ (в среднем на 30%) по сравнению с некоторыми зарубежными аналогами.

Структура и объем диссертационной работы:

Диссертация состоит из введения, пяти глав, заключения,списка литературы, включающего 67

названий.Текст диссертации занимает 160 машинописных страниц.

В первой главе исследуются источники управления структурными свойствами сгенерированных программ. Основными структурными свойствами являются наглядность и гибкость. Наглядность и гибкость сгенерированных программ, наряду с эффективностью исполнения, рассматриваются как базовые критерии качества автоматической кодогенерации. Предлагается набор метрик, позволяющих количественно оценить качество автоматической генерации программ.

Во второй главе рассматривается концепция декларативных отображений языков спецификаций в исполняемые программы. Рассматривается влияние декларативного стиля

генерируемой программы на ее структурные свойства. Описываются достоинства, недостатки и область применения рассматриваемого подхода к отображению.

В третьей главе подробно рассматривает декларативное отображение спецификаций на языке SDL в исполняемые программы на языке С++, которые имеют простую и наглядную структуру, а также дополнительный уровень гибкости, что позволяет осуществлять их настройку в широком диапазоне применений.

В четвертой главе подробно рассматриваются принципы организации и структура системы поддержки этапа выполнения (СПЭВ) для программ, сгенерированных в соответствии с отображением, описанным в главе 3, по SDL-спецификациям

В пятой главе описываются результаты оценки качества предложенной схемы отображения из языка SDL в программы на языке С++ и соответствующей системы поддержки этапа выполнения. Уточняется методология измерения, приводятся практические результаты оценки программ, выделяются те решения, которые позволяют улучшить качество генерируемых программ.

В заключении приводится перечень основных результатов диссертационной работы, вынесенных на защиту.

Основные результаты работы были получены автором самостоятельно.

Автор глубоко признателен H.H. Мансурову за начное руководство и поддержку работы на всех этапах ее выполнения.

Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК

Заключение диссертации по теме «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», Рагозин, Алексей Сергеевич

5.4. Выводы

1. Разработанная система метрик позволяет проводить сравнительные оценки качества сгенерированных программ. Основными метриками являются разбухание, фрагментация, структурное соответствие.

2. Применение декларативного отображения для генерации программ по ЗБЬ-спецификациям позволило существенно улучшить структурные свойства сгенерированного кода:

• Рост объема сокращен в 2-4 раза и не превышает 3.5 раз.

• Показатель сохранения структуры сокращен в 4-5 раз и зафиксирован на отметке в 0.1.

• Удалось добиться полного сохранения имен, используемых в исходной спецификации.

• Фрагментация при декларативном отображении сокращена для конструкций внутри 8БЬ-графа в среднем в 1.5 раза.

• Значительно сокращено количество явных связей (в 2-4 раза) в сгенерированной программе.

3. Реализация отображения и системы поддержки позволили сохранить (а в ряде случаев и увеличить) производительность сгенерированной программы на уровне известных коммерческих аналогов.

ЗАКЛЮЧЕНИЕ

В диссертационной работе получены следующие основные результаты.

1. Разработан декларативный подход к автоматической генерации программ, позволяющий в достаточно широких пределах управлять структурными свойствами сгенерированных программ. Сущность декларативного подхода заключается в применении исполняемых конструкций целевого языка для представления деклараций исходного языка спецификаций с последующей перестройкой внутренней структуры целевой программы непосредственно перед началом исполнения на так называемом этапе раскрутки.

2. Разработано декларативное отображение языка формальных спецификаций SDL в язык С++.

3. Разработана и реализована эффективная система поддержки исполнения сгенерированных программ в рамках декларативного подхода.

4. Предложен набор метрик отображения и произведена сравнительная оценка предлагаемого подхода. Результаты измерений показали, что декларативный подход позволяет уменьшить размер сгенерированных программ в 2-4 раза при сокращении структурных искажений в 4-5 раз. При этом удается избежать существенного снижения эффективности исполнения сгенерированных программ.

Список литературы диссертационного исследования кандидат физико-математических наук Рагозин, Алексей Сергеевич, 1999 год

Литература

1) Z. 100 (1993), CCITT Specification and Description Language(SDL), ITU-T, June 1994.

2) X.680 (1994), Abstract Syntactic Notation One(ASN. 1), ITU-T, April 1994.

3) X.690 (1994), Specification of Basic Encoding Rules for ASN.l, ITU-T, April 1994.

4) J.Ellsberger, D. Hogrefe, A.Sarma, SDL- formal object-oriented language for communicating systems. Prentice Hall Europe, 1997.

5) H.H. Мансуров, A.C. Рагозин, Генерация кода с простой и наглядной структурой по языку SDL-92. Сборник "Вопросы кибернетики", выпуск 3. Научный совет по комплексной проблеме "Кибернетика" РАН. М.,1997, с. 162-181.

6) М. Butov, М. Mestern, Performance modelling with the formal specification language SDL,

in Formal Description Techniques IX: Theory, application and tools, (ed. R.Gotzhein, J.Bredereke), Proc. of the FORTE/PSTV'96 symposium, Germany, Kaiserslautern, 8-11 October 1996, Chapman & Hall, pp.213-228.

7) B. Algayres, Y. Leyeune, F. Hugonnet, GOAL: observing SDL behaviours with Geode, in R. Braek, A. Sarma (Eds.) SDL'95 with MSC in CASE, Proc. of the 7-th SDL Forum, Oslo, Norway, 26-29 September, 1995, Elsevier Science Publishers В. V. North-Holland, pp. 223—230.

8) J. Grabovski, D. Hogrefe et al, Test case specification based on MSCs and ASN.l, in R. Braek, A. Sarma (Eds.) SDL'95 with MSC in CASE, Proc. of the 7-th SDL Forum, Oslo, Norway, 26-29 September, 1995, Elsevier Science Publishers В. V. North—Holland, pp. 307—322.

9) R. Braek and O. Haugen, Engeneering Real-Time Systems, Prentice Hall BCS Practitioner Series 1993.

10) N. Mansurov, A. Kalinov, A. Ragozin, A.Chernov, Design Issues of RASTA SDL--92 Translator, in R. Braek, A. Sarma (Eds.) SDL'95 with MSC in CASE, Proc. of the 7-th SDL Forum, Oslo, Norway, 2629 September, 1995, Elsevier Science Publishers В. V. North-Holland, pp. 165—174

11) N. Mansurov, A. Ragozin, A. Chernov. Industrial strength code generation from SDL, in Proc. of the 8th SDL Forum, Evry, France, 23-26 September, 1997, Elsevier Science Publishers В. V. (North-Holland), pp. 415—430.

12) Generating readable programs from SDL, N. Mansurov, A.Ragozin, in proceedings of SAM'98 workshop, Berlin, 1998, July.

13) A. Mitschele-Thiel, P.Langendorfer, R. Henke, Design and Optimization of High-Performance Protocols with the DO-IT Toolbox, in Formal Description Techniques IX: Theory, application and tools, (ed. R. Gotzhein, J. Bredereke), Proc. of the FORTE/PSTV'96 symposium, Germany, Kaiserslautern, 8-11 October 1996, Chapman & Hall, pp.45-60

14) Demonstrations, in SDL'95 with MSC in CASE(ed. R.Braek, A.Sarma, Proc. of the 7-th SDL Forum, Oslo, Norway, 26-29 September, 1995, Elsevier Science Publishers B.V. (North-Holland), pp.373-388.

15) G. Amsjo, A.Nyeng, SDL-based software development in Siemens A/s - experience of introducing rigorous use of SDL and MSC, in R.Braek, A.Sarma (Eds.) SDL'95 with MSC in CASE, Proc. of the 7th SDL Forum, Oslo, Norway, 26-29 September, 1995, Elsevier Science Publishers B.V. North-Holland, pp.339—348

16) F.Goudenove, L.Doldi, USE of SDL to specify Airbus Future Air Navigation Systems, in R. Braek, A.Sarma (Eds.) SDL'95 with MSC in CASE, Proc. of the 7-th SDL Forum, Oslo, Norway, 26-29 September, 1995, Elsevier Science Publishers B.V. North-Holland, pp.359-397

17) E. Inocencio, M. Ricardo, H. Sato and T. Kashima, Combined Application of SDL-92, OMT, MSC and TTCN, in R. Gotzhein and J. Bredereke (Eds.), 8-11 October, 1996, Chapman & Hall, pp. 451-466

18) W.Keller, A.Iselt, R. Riek, Using SDL for the specification, simulation and implementation of an advanced OSI data-link protocol on an embedded microcontroller system, in R. Gotzhein and J. Bredereke (Eds.), 8-11 October, 1996, Chapman & Hall, pp.419-434

19) K. Ahrens and J.Fischer and D.Witaszek, A process library for simulation in C++. Accessible at ftp://ftp.informatik.hu-berlin.de/pub/local/simulant/odem

22) Steven F. Mazure, Increased Productivity using GEODE in the Development of the ORBCOMM System. Verilog Communication, Summer 1993.

23) Pair-Olof Hakansson, Jan Karlsson, Louis Verhaard, Combining SDL and C,in SDL'97 Time for Testing SDL, MSC and Trends (ed. A. Cavalli, A.Sarma), Proc. of the 8-th SDL Forum, Eviy, France, 23-26 September, 1997, Elsevier Science Publishers B.V. North-Holland, pp.383-396.

24) Telelogic Tau 3.4 Reference Manual, SDL to CHILL Code Generator.

25) Telelogic SDT 3.4, Telelogic, Malmo AB, P.O.Box 4128, S-203 12 Malmoe, Sweden.

26) Quantify 2.0, Pure Software Inc. 1309 South Mary Avenue Sunnyvale, CA 94087, U.S.A.

27) Arne-Jorgen Berre (SINTEF SI) and Georg Raeder (Norsk Regnesentral), REPORT no. SISU-1113-1: Vision-1997: An Object-oriented Open Approach to Future SDL Run-time Environment.

28) Eva Hedman, Jorgen Norgaard,Translating OSDL to BETA.

29) Magnus W Froberg, Automatic code generation from SDL to a declarative programming language, in O.Faergemand and A.Sarma (Eds.) SDL'93: Using objects, Proc. of the 6-th SDL Forum, October 1993. Elsevier Science Publishers B.V.(North-Holland), pp.387-398.

30) Eurico Inocencio, Mario Miguel Fonseca, SDL to C++ Translator for ISDN Basic Rate Terminal Signalling, in O.Faergemand and A. Sarma (Eds.) SDL'93: Using objects, Proc. of the 6-th SDL Forum, October 1993. Elsevier Science Publishers B.V .North-Holland, pp.349-360.

31) SCORE-Methods and Tools, Report on Methods and Tools for Service Creation. RACE ref:2017.

32) Anders Olsen, Birger Moller-Pederson, Rick Reed, J.R.W. Smith, System Engeneering Using SDL-92, Elsevier, 1994.

33) Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman, Compilers: principles, techniques, and tools. A.-V. Publishing Company, 1988.

34) Information Processing System-Open Systems Interconnections~LOTOS~A Formal Description Technique Based on the Temporal Ordering of Observational Behaviour, International Standard

8809,ISO,Geneva (February 1989).

35) C. Binding, W. Bouma, M. Dauphin, G. Kapjoth, Y. Yang, A common compiler for LOTOS and SDL specifications. IBM systems journal, vol. 31, no. 4, 1992.

36) H. Ehrig and B. Mahr, Fundamentals of Algebraic Specifications I Equations and Initial Semantics, II: Module Specifications and Constraints, Springer Verlag, NY, EATCS Monograph(1985,1990).

37) R. Milner, Communication and Concurrency, Prentice-Hall, Inc., Englewood Cliff, NJ (1989).

38) C. A. R. Hoare, Communicating Sequencial Processes, Prentice-Hall, Inc., Englewood Cliff, NJ (1985).

39) J.Q. Vives, A.A. Salona, S.P. Gomez, Design with LOTOS. Технический отчет по проекту DIT, Политехнический университет Мадрида.

40) J.Q. Vives, A.A. Salona, LOTOS compiler TOPO, Технический отчет по проекту DIT, Политехнический университет Мадрида.

41) ISO. Information Processing - Open Systems Interconnections- Estelle ~ A formal description technique based on an extended state transition model. ISO International Standard 9074, 1988.

42) R. Sijelmassi, B. Strausser, The Distributed Implementation Generator: an overview and user guide. Technical Report NCSL/SNA - 91/3, 1991.

43) B. Selic, G. Gullekson, and Paul T. Ward, Real-Time Object-Oriented Modeling, John Wiley & Sons, 1994.

44) G. Gullekson, B. Selic, Design Patterns for Real-Time Software. Paper presented at Embedded Systems Conference West'96.

45) B. Selic, Automatic Code Generating Methods for Embedded Applications - Theory and Practice. Accessible at http: / /www, objectime. on. ca.

46) B.Selic, High-Performance Implementations from ROOM Models. Accessible at http://www.objectime.on.ca.

47) G. Krasovec, M. Baker, S. Gheorghe, Target Tracking: A Real-Time Object Oriented Design Experiment, http: //www.objectime.on.ca.

48) Katherine Lato, Tim Parks, Automatic Code Generation at AT&T. Доступен по адресу

http://www.proj tech.com/pubs/html/acg/acg.html.

49) Г. Буч, Объектно-ориентированное проектирование с примерами применения. Пер. с англ.-М.:Конкорд, 1992.-519с.

50) Ю. В. Новоженов, Обектно-ориентированные технологии разработки сложных программных систем, Москва, 1996.-112с.

51) А. М. Вендров, CASE-технологии. Современные методы и средства проектирования информационных систем, Москва, "Финансы и статистика", 1998.-176с.

52) Bjarne Straustrup, С++ programming language.

53) B.Kernigan, D. Ritchie, С programming language.

54) Borland TurboC 2.0 Reference Manual, Borland corp., 1987.

55) С. Баурн, Операционная система UNIX. Москва, Мир, 1986.

56) А. Робачевский, Операционная система UNIX, BHV—Санкт-Петербург, 1997.

57) Solaris 2.6 Reference Manual, SUN Microsystems, 1997.

58) M. Fowler, K. Scott, UML Distilled: Applying the Standard Object Modelling Language. Addison-Wesley, 1997.

59) G.Booch, J. Rumbaugh, I.Jacobson, Unified Modeling Language User Guide. Addison-Wesley, 1997.

60) ISO/IEC 9646-3, Tree and Tabular Combined Notation.

61) ITU-T SDL Methodology Guidelines, Geneve, 1994.

62) Z.120 (1994), CCITT Message Sequence Charts, ITU-T, 1994.

63) Proggen Reference Manual, SINTEF DELAB, Norway, 1995.

64) E. Gamma, R. Helm, R. Johnson, j. Vlissides, Design Patterns, Elements of Reusable Object-Oriented Software, A.-W. Publishing Company.

65) GNU С++ 2.7.2 Reference Manual, 1997.

66) O.-J.Dahl, B.Myhrhaug, K. Nygaard. SIMULA 67 Common Base Language. Norwegian Computer Center, Oslo,1970. NCC Publication S-52.

67) G. Krasner, S. Pope. A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80. JOOP, l(3):26-49, Aug. 1988.

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.