Отсюда можно скачать полный текст статьи в формате pdf (310 кб)
А здесь лежит пример документирования реального проекта
УДК 681.3.06: 62-507
Федеральный научно-производственный центр
ГУП "НПО "Аврора"",
Санкт-Петербургский государственный институт точной механики и оптики
(технический университет)
Опубликована в журнале "Программирование"
2001,N5, c.45-62
Существует английская версия статьи:
Shalyto A.A., Tukkel' N.I. SWITCH-technology - An Automated Approach to
Developing Software for Reactive Systems // Programming and Computer
Software. 2001, 27(5).
На основе автоматного подхода предложена технология создания программного обеспечения «реактивных» систем, поддерживающая этапы изучения предметной области, анализа, проектирования, реализации, отладки, сертификации и документирования.
Современные системы управления состоят из двух составляющих: аппаратной и программной.
Особенность аппаратуры состоит в том, что она разрабатывается одними специалистами, а изготавливается (комплексируется) - другими. Это приводит к необходимости проводить разработку в форме проектирования, связанного с выпуском большого числа разнотипных схем и других конструкторских документов, соответствующих действующим стандартам и досконально отражающих все аспекты жизненного цикла аппаратуры. Поэтому даже через много лет эта часть систем при необходимости может быть сравнительно легко модифицирована, в том числе и другими специалистами.
Принципиально иная ситуация имеет место при создании программного обеспечения, так как оно разрабатывается и "изготавливается " одними и теми же специалистами. Поэтому обычно разработка программ не выполняется в форме проекта той же степени подробности, как это делается для аппаратуры, что часто приводит к значительным трудностям при необходимости их модификации.
Для систем логического управления при вводе входных воздействий по опросу, как это выполняется, например, в программируемых логических контроллерах, предложена SWITCH-технология, предназначенная для алгоритмизации и программирования задач логического управления [1,2].
В этой технологии базовым является понятие "состояние". Добавляя к нему понятие "входное воздействие", естественным образом вводится понятие "автомат без выхода" (автомат без выхода = состояния + входные воздействия). После добавления понятия "выходное воздействие" эта формула приобретает вид: автомат = состояния + входные воздействия + выходные воздействия.
При этом соответствующий подход к программированию может быть назван "автоматным программированием", а процесс проектирования программ - "автоматным проектированием" [1].
Авторы применили SWITCH-технологию при разработке системы управления дизель-генератором, реализуемой на промышленном компьютере с операционной системой QNX, в которой управляющая программа выполняется как один процесс, а программа, моделирующая объект - как другой процесс.
При этом был создан вариант SWITCH-технологии для разработки программного обеспечения более широкого класса систем управления - "реактивных" ("reactive") систем, реагирующих на события [3-9]. Такие системы обычно реализуются на промышленных компьютерах, работающих под управлением операционных систем реального времени.