CADES - CADES

CADES (Система автоматизированного проектирования и оценки) была системой репозитория программной инженерии, созданной для поддержки разработки VME / B Операционная система для ICL New Range - впоследствии 2900 - компьютеров.

С самого начала VME / B разрабатывался с помощью CADES, который был создан для этой цели с использованием базового IDMS база данных (недавно обновленная до IDMS (X) ). CADES был не просто системой контроля версий для модулей кода: он был предназначен для управления всеми аспектами жизненного цикла программного обеспечения от сбора требований до обслуживания на месте.

Именно дизайн CADES проложил путь к Алви Проект в IPSE (Интегрированные среды поддержки проектов) и механизмы управления процессами. Поскольку CADES использовался более 20 лет на протяжении всего проекта разработки программного обеспечения, собранные данные использовались в качестве исходных данных для ряда исследований эволюции программного обеспечения.

Ранняя история

CADES был задуман в 1970 году Дэвид Пирсон и Брайан Варбойз во время работы в Технологическом центре операционных систем нового поколения ICL, OSTECH, в Кидсгроув.[1][2] Пирсон, физик-теоретик по образованию, стал специалистом по компьютерному моделированию и присоединился к ICL в 1968 году после работы в области конечно-элементного моделирования в Кембридже и исследований в области моделирования в Имперском колледже. Warboys был главным архитектором операционной системы Multijob ICL System 4 с множественным доступом.

Приверженность ICL крупномасштабной разработке программного обеспечения для компьютеров серии 2900 послужила основой для ранней работы Пирсона и Варбоев над новой средой разработки программного обеспечения, которая будет решать проблемы производительности дизайнера / программиста, целостности проекта, оценки и тестирования, контроля версий и системная регрессия.[3][4]

При проектировании начальной архитектуры среды CADES Пирсон, в частности, искал параллели с ведущими аппаратными системами автоматизированного проектирования того времени, даже пытаясь использовать графику в процессе проектирования. Подход CADES к проектированию, называемый структурным моделированием, был жестко управляем данными и иерархичен и выражался на формальном языке проектирования. SDL. Проектные спецификации, написанные на SDL, обрабатывались анализатором проектирования перед вводом в базу данных CADES Product Database, базу данных проектирования и реализации, поддерживающую собственный язык запросов и составляющую ядро ​​информационной системы о продукте.[5][6][7]

Намерение состояло в том, чтобы эти проекты можно было оценивать / моделировать с помощью Animator, а код реализации S3 автоматически генерировался из них с помощью процессора среды. Генерация сборок и управление версиями также основывались на базе данных продуктов, что привело к очень дисциплинированному подходу к сборкам новых систем. Таким образом, системная регрессия контролировалась с самого начала жизненного цикла программного обеспечения.[8][9]

Основы

Чтобы контролировать развитие VME / B, каждая разработка была разделена для облегчения управления. Структура была иерархической, в которой все важные компоненты VME (ядро, хранилище файлов и т. Д.) Были разделены на подсистемы. В ходе разработки каждой подсистемы была создана последовательность версий.

Эти подразделения и подразделения VME / B были отражены в иерархической структуре базы данных CADES. Это позволило повторно использовать код в VME / B (одна из целей разработки программного обеспечения). Это в сочетании с набором инструментов и использованием SDL (Язык разработки программного обеспечения ) как язык разработки, история версий и концепция доверенный Исходный код (то есть код, который прошел проверку качества и впоследствии находится в файловом хранилище CADES) сокращает время разработки, обеспечивая при этом удовлетворительные контрольные журналы и процессы контроля качества.

CADES принял термин «холон» для обозначения модулей кода (таких как процедуры и макросы). Слово произошло от греческого голо означает «целое», и был взят из книги Артура Кестлера «Призрак в машине». Пирсон всегда утверждал, что он сформулировал архитектуру CADES, изучая книгу Кестлера на пляже в Тунисе. Организованные в виде иерархии холоны обеспечивают «семейное древо» (для каждой подсистемы), используя отношения родитель / потомок. Холоны также сохранили атрибуты взаимодействия, позволяя одному холону взаимодействовать с другими холонами, тем самым обеспечивая более модульную разработку и облегчая повторное использование. Аналогичным образом CADES также сохранил информацию о постоянных значениях (также называемых литералами), определяемых пользователем типах и определяемых пользователем структурах.

Разработка с использованием CADES

Разработка под CADES была достигнута с использованием набора инструментов, известных как MODPRO (Модуле Processing), который действовал как интерфейс (или посредник) между разработчиком и CADES. Эти инструменты позволили разработчику больше сосредоточиться на разработке, чем на администрировании, контроле качества или СКМ задачи. Не нужно было знать как для управления данными в CADES приложение сгенерировало необходимый DNL (язык навигации по данным) для достижения требуемых результатов.

Разработка с использованием MODPRO не требовала специальных знаний ни S3 ни SCL (целевой язык для последующей компиляции), но SDL, Язык разработки программного обеспечения: абстракция над первыми двумя. Что в сочетании с расширенным редактором EDSDL (ЭдЭто SDL) взаимодействовал с CADES для управления разработкой или переделкой. Затем, снова с информацией из CADES, при использовании с инструментом MODPRO EPETC (также известным как Eэкологический ппроцессор или EP и т. д.) позволили правильно настроить конечный файл для S3 или же SCL компиляция. Последующие инструменты в пакете облегчили различные этапы разработки, такие как:

  • Подробная информация о холоне с использованием CHED (CADES Holon Environment Details),
  • Взаимодействие с CADES с использованием DIL (язык интерфейса баз данных, используемый для создания DNL),
  • Создание отчетов с использованием CRP (CADES Report Producer),
  • Перенесите действительные файлы / код в безопасный репозиторий, а именно CADES, или извлеките из него, используя XFER.

Ниже показан типичный маршрут разработки MODPRO.

Технологический процесс с использованием CADES MODPRO Tools
Разработка VME / B с использованием инструментов MODPRO

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

  1. ^ B.C. Warboys "Проект IPSE 2.5: Моделирование процессов как основа для вспомогательной среды" Международная конференция по системным средам и предприятиям для разработки, май 1989 г., Берлин
  2. ^ Мартин Кэмпбелл-Келли "ICL: история бизнеса и техники" Clarendon Press, Oxford 1989
  3. ^ Д.Дж. Пирсон "CADES - Система автоматизированной разработки и оценки" Computer Weekly, 1973
  4. ^ Д. Дж. Пирсон и Б. К. Уорбойз "Структурное моделирование - философия" OSTC / IN / 40 июль 1970 г.
  5. ^ Г.Д. Праттен и Р.А. Сноуден "CADES, поддержка разработки сложного программного обеспечения" EUROCOMP, 1976
  6. ^ М.А. Фирт и другие "Улучшение среды разработки программного обеспечения с использованием объектно-ориентированной технологии" TOOLS (8), 1992 г.
  7. ^ Б. В. Чаттерс, М. М. Леман и другие "Моделирование процесса эволюции программного обеспечения" Процесс разработки программного обеспечения: улучшение и практика, сентябрь 2000 г.
  8. ^ Д. Дж. Пирсон "Использование и злоупотребление системой разработки программного обеспечения" Национальная компьютерная конференция, Нью-Йорк, 1979 г.
  9. ^ Дон Ливитт "Обзор метода разработки признан полезным" Computerworld Июнь 1979 г.

дальнейшее чтение

  • ДО Н.Э. Warboys (25 января 1988 г.). «Экстраполяция уроков CADES на сегодняшний день». Коллоквиум IEE по влиянию разработки программного обеспечения на промышленность: 3.
  • Р. В. Макгаффин; А.Э. Эллистон; Б.Р. Трантер; П.Н. Вестмакотт (сентябрь 1979 г.). «CADES - программная инженерия на практике». IEEE Proceedings 4th International Conference on Software Engineering, Мюнхен, Германия.
  • Б. Китченхэм (май 1982 г.). «Динамика развития системы VME / B». Технический журнал ICL: 42–57.
  • Б. В. Чаттерс; М. М. Леман; Дж. Ф. Рамиль; П. Верник (2000). «Моделирование процесса эволюции программного обеспечения: долгосрочное тематическое исследование». Программный процесс: улучшение и практика. 5 (2–3): 91–102. Дои:10.1002 / 1099-1670 (200006/09) 5: 2/3 <91 :: AID-SPIP123> 3.0.CO; 2-L. Архивировано из оригинал на 2013-01-05.
  • Р. А. Сноуден (май 1990 г.). «Введение в проект IPSE 2.5». Технический журнал ICL. 6 (3).
  • ДО Н.Э. Warboys, П.Визи (май 1990 г.). «Двадцать лет с поддержкой Среда». Технический журнал ICL. 6 (3).