LePUS3 - LePUS3

Пример: кодовая диаграмма, моделирующая составной паттерн в LePUS3

LePUS3[1] язык для моделирования и визуализации объектно-ориентированного (Ява, C ++, C # ) программы и шаблоны проектирования.[2] Он определяется как формальная спецификация язык,[3][4] сформулированы как аксиоматизированное подмножество Логика предикатов первого порядка. Диаграмму в LePUS3 еще называют Кодовая диаграмма.[5] LePUS, название первой версии языка, является аббревиатурой от Язык для унифицированной спецификации образца.

Цель

LePUS3 предназначен для следующих целей:

  • Масштабируемость: Для моделирования крупномасштабных программ с использованием небольших кодовых диаграмм всего с несколькими символами.
  • Автоматическая проверяемость: Чтобы позволить программистам полностью автоматически проверять соответствие дизайну, чтобы поддерживать синхронизацию дизайна с реализацией.
  • Визуализация программы: Чтобы инструменты могли реконструировать разборчивые кодовые диаграммы из простого исходного кода, моделируя их дизайн.
  • Реализация паттерна: Чтобы позволить инструментам автоматически определять, реализует ли ваша программа шаблон проектирования.
  • Абстракция дизайна: Для указания нереализованных программ без преждевременного перехода к мелочам реализации.
  • Общность: Моделирование паттерна дизайна не как конкретной реализации, а как мотива дизайна.
  • Строгость: Позволить разработчикам программного обеспечения быть уверенными в том, что представляют собой Codecharts, и строго их рассуждать.

Контекст

LePUS3 принадлежит к следующим семействам языков:

Словарный запас

LePUS3 был разработан для экономии средств выражения. Его словарный запас состоит всего из 15 визуальных знаков.

LePUS3 Словарь

Поддержка инструмента

Двухуровневый инструментарий программирования[6][7]можно использовать для

  • создавать спецификации LePUS3 (кодовые диаграммы)
  • проверять автоматически[8] согласованность кодовых диаграмм LePUS3 с программами Java 1.4; и
  • обратный инженер Кодовые диаграммы из исходного кода Java.

Шаблоны проектирования

LePUS3 был специально разработан для моделирования, среди прочего, Паттерны проектирования "Банда четырех", включая абстрактная фабрика, заводской метод, адаптер, декоратор, составной, доверенное лицо, итератор, государственный, стратегия, шаблонный метод, и посетитель. (Видеть "Товарищ по" Банде четырех ") [2] Аббревиатура LePUS от «Language for Pattern Uniform Specification» используется потому, что предшественник этого языка был в первую очередь связан с шаблонами проектирования. Реализация шаблонов проектирования, указанных в LePUS3, может быть автоматически проверена с помощью TTP Toolkit.[8]

Примеры

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

Рекомендации

  1. ^ Иден, Амнон; вклад Джонатана Николсона (2011). Кодовые диаграммы: дорожные карты и чертежи для объектно-ориентированных программ (PDF). Хобокен, Нью-Джерси: Wiley / Blackwell.
  2. ^ а б Амнон Х. Иден при участии Джонатана Николсона. «Моделирование шаблонов дизайна, глава 11 в Codecharts: дорожные карты и схемы для объектно-ориентированных программ» (PDF).
  3. ^ Амнон Х. Иден; Эпамейнондас Гаспарис; Джонатан Николсон (2007). «Справочное руководство по LePUS3 и Class-Z». Университет Эссекса.
  4. ^ Гаспарис, Эпамейнонд; Джонатан Николсон; Амнон Х. Иден (19 сентября 2008 г.). LePUS3: язык описания объектно-ориентированного дизайна (PDF). ДИАГРАММЫ 2008 г., Херршинг, Германия. Архивировано из оригинал (PDF) на 2008-11-19. Получено 2008-06-23.
  5. ^ Кодовая диаграмма, формальное определение
  6. ^ Двухуровневый инструментарий программирования
  7. ^ Гаспарис, Эпамейнонд; Амнон Х. Иден; Джонатан Николсон; Рик Казман (10 мая 2008 г.). Навигатор дизайна: создание диаграмм программ на Java (PDF). 30-я Международная конференция IEEE по программной инженерии - ICSE. Лейпциг, Германия. Архивировано из оригинал (PDF) на 2008-11-19. Получено 2008-06-23.
  8. ^ а б Николсон, Джонатан; Эпамейнондас Гаспарис; Амнон Х. Иден; Рик Казман (2009). Автоматическая проверка шаблонов дизайна с помощью LePUS3 (PDF). 1-й Симпозиум НАСА по формальным методам - ​​NFM 2009. Моффетт Филд, Калифорния.

внешняя ссылка