DRAKON.SU

Текущее время: Суббота, 27 Апрель, 2024 02:25

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 125 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 7  След.
Автор Сообщение
СообщениеДобавлено: Четверг, 23 Май, 2013 13:45 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Предположим, Вам нужны 3 таймера. Обозначим их A, B, C.

Рисуем три иконы "Пуск таймера",
и внутри их пишем (Обнуление таймера)
А:=0
B:=0
C:=0

Три запуска таймеров производим не обязательно одновременно, а (если нужно) с заданным сдвигом.

Эти три таймера (с помощью боковой иконы "Синхронизатор", прицепленной в нужных местах алгоритма) могут управлять тремя разными параллельными процессами.

Параллельных процессов может быть не три, а много.

На схеме может быть очень много икон "Синхронизатор".

Внутри их пишем (например):

A = 3 секунды (3с)

A = 5 секунд (5с)

A = 18 секунд (18с)

В = 57 секунд (57с)

В = 2 минуты 20 секунд (2м20с)

В = 14 минут 13 секунд (14м13с)

С = 29 минут 45 секунд (29м45с)

и т.д.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 13:59 

Зарегистрирован: Четверг, 23 Май, 2013 05:13
Сообщения: 401
Александр Ильин писал(а):
Шилин Александр писал(а):
Описание ситуации вижу пока так:
Вот, это дело. Здесь уже появилось фактическое время в виде конкретных дат.

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


При анализе судебного решения время играет очень большую роль.
Вот пример:
ПОСТАНОВЛЕНИЕ ПРЕЗИДИУМА ВАС РФ ОТ 26.02.2013 N 13622/12 ПО ДЕЛУ N А05-5696/2011
Суть такова.
Есть Муниципальное Учреждение (МУ). Его учредило Муниципальное Образование (город).
МУ наделало долгов перед организацией (кредитор). Но денег у МУ не было. В принципе кредитор мог ыб подать в суд не только на МУ, но и его учредителя - город. Город здесь - субсидиарный должник.
Но не успел. В 2002 году в МУ началась процедура ликвидации. С этого момента кредитор уже не мог подать в суд ни на МУ, ни на город. Кредитора включили в реестр кредиторов. Кредитор стал ждать окончания ликвидации МУ, чтобы получить хоть что-нибудь.
Ликвидация затянулась лет на 10 - по разным причинам. И всё это время кредитор не мог подать иск в суд ни на МУ, ни на город (как субсидиарного должника).
Тогда кредитор подал в суд на МУ и на город (как на субсидиарного должника) - на проценты за пользование чужими деньгами.
И тут суды решили, что подавать такой иск надо было в 2003 году, а не в 2012. То есть срок исковой давности (таймер на 3 года) по взысканию процентов за пользование чужими средствами пошёл с 2003 и закончился в 2006 году. И теперь ни МУ, ни город кредитору проценты не должны. Это было мнение МУ, города и судов.
Но ВАС РФ встал на сторону кредитора. Проценты взыскать можно.
Нехитрая ситуация, но всё завязано на времени - на сроках, на состоявшихся событиях (можно было "до", но нельзя "после" ).
Ситуация тоже нуждается в схематическом изложении.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 14:06 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Два примера

Пример 1. Здесь один таймер А. Он один раз запускается и обнуляется.
На схеме показаны 14 икон "Синхронизатор". Они обеспечивают синхронизацию работы алгоритма по таймеру А.

Зачем нужны эти сихронизаторы? Что они делают?
Они обеспечивают запуск 14-и параллельных процессов в точно определенные моменты времени.

Вложение:
Рис. 11 Агрегат и Ракета.png
Рис. 11 Агрегат и Ракета.png [ 446.79 КБ | Просмотров: 12825 ]


Временная диаграмма к примеру один

Вложение:
Рис. 12 циклограммаАгрегата.png
Рис. 12 циклограммаАгрегата.png [ 342.82 КБ | Просмотров: 12818 ]




Пример 2. Здесь один таймер А. Он один раз запускается и обнуляется.
На схеме показаны 5 икон "Синхронизатор". Они обеспечивают синхронизацию работы алгоритма по таймеру А. Кроме того, на схеме показаны 4 иконы "Пауза".

Здесь по таймеру синхронизируются пять операций:

— запускаются три параллельных процесса;

— запускается одна процедура;

— выдается одна команда (команда выдается из компьютера в линию связи для передачи к абоненту).

Вложение:
Рис. 13 Воздушный снайпер.png
Рис. 13 Воздушный снайпер.png [ 454.35 КБ | Просмотров: 12825 ]


Последний раз редактировалось Владимир Паронджанов Четверг, 23 Май, 2013 14:39, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 14:20 

Зарегистрирован: Четверг, 23 Май, 2013 05:13
Сообщения: 401
Владимир Паронджанов писал(а):
Два примера

Пример 1. Здесь один таймер А. Он один раз запускается и обнуляется.
Пример 2. Здесь один таймер А. Он один раз запускается и обнуляется.


А где можно посмотреть когда несколько таймеров в параллель работают. Есть где-нибудь такая картинка?
А таймер можно использовать как шкалу прошедшего времени - для иллюстрации относительности процессов во времени?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 14:34 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Поясню на пальцах. Если три иконы "Пуск таймера" нарисованы подряд, они запускаются синхронно и работают параллельно.

============================

Другой вариант. Запускаем таймер А. (А := 0). Он работает один (пока).

Через 7 секунд (например) с помощью синхронизатора (А = 7 секунд) запускаем таймер В.
С этого мгновения два таймера (А и В) работают параллельно. Вы можете синхронизировать процессы по обоим таймерам. Например, по таймеру А синхронизируем работу всех желтых приборов. А по таймеру В синхронизируем работу всех синих приборов.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 14:43 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Александр Николаевич, я вставил иллюстрацию к первому примеру (временную диаграмму) здесь:
viewtopic.php?p=80318#p80318


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 16:18 

Зарегистрирован: Четверг, 23 Май, 2013 05:13
Сообщения: 401
Владимир Паронджанов писал(а):
Александр Николаевич, я вставил иллюстрацию к первому примеру (временную диаграмму) здесь:
viewtopic.php?p=80318#p80318


Спасибо, Владимир Данилович!

1. Хочу отметить - для меня с циклограммой схема на Драконе стала сразу понятнее.
Может быть для моих малоподготовленных пользователей тоже применять не одну картинку, а несколько вариантов?

2. Не подскажете: есть ли в Драконе запуск или срабатывание таймера по условию. Для примера: А) Муниципальное учреждение задолжало. Запустился "бесконечный" таймер процесса (?) "ЕСТЬ ВОЗМОЖНОСТЬ СОЛИДАРНО ПРЕДЪЯВИТЬ ИСК УЧРЕДИТЕЛЮ". Б) Муниципальное Учреждение начало процедуру ликвидации. Закончился таймер процесса (?) "ЕСТЬ ВОЗМОЖНОСТЬ СОЛИДАРНО ПРЕДЪЯВИТЬ ИСК УЧРЕДИТЕЛЮ".
Если короче - то как отразить - что вот с этого момента некая возможность есть, а вот после этого момента эта возможность закончилась, ПРОПАЛА? То есть - сама возможность может быть и не использована, но нужно отразить её появление, наличие и исчезновение.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 16:22 

Зарегистрирован: Четверг, 23 Май, 2013 05:13
Сообщения: 401
Владимир Паронджанов писал(а):
Александр Николаевич, я вставил иллюстрацию к первому примеру (временную диаграмму) здесь:
viewtopic.php?p=80318#p80318

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 16:32 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Ну, обычно тогда, когда должны закончиться... :) Циклограммный подход предполагает, что разработчик знает нормативную длительность действий (процедур)... она и отсчитывается от Синхронизатора, по которому действие запускается...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 16:33 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
По условию таймер запускается, если стоит в ветви развилки (переключателя), охраняемой этим условием...
Отразить интервал можно, если исполнитель схемы "умеет" не только открывать, но и закрывать возможности реакции на события. В машинах второе называется "маскировать прерывания", для этого есть специальная команда процессора (контроллера). Если считаем исполнителя таким, то можно ввести в язык оператор типа как 36Д здесь.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:07 

Зарегистрирован: Четверг, 23 Май, 2013 05:13
Сообщения: 401
Владислав Жаринов писал(а):
По условию таймер запускается, если стоит в ветви развилки (переключателя), охраняемой этим условием...
Если считаем исполнителя таким, то можно ввести в язык оператор типа как 36Д здесь.

А где ещё можно посмотреть про дополнительные команды Дракон?
А можно самому дополнять команды Дракон?


Последний раз редактировалось Шилин Александр Четверг, 23 Май, 2013 17:13, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:09 

Зарегистрирован: Четверг, 23 Май, 2013 05:13
Сообщения: 401
Владислав Жаринов писал(а):
Ну, обычно тогда, когда должны закончиться... :) Циклограммный подход предполагает, что разработчик знает нормативную длительность действий (процедур)... она и отсчитывается от Синхронизатора, по которому действие запускается...

То есть всё-таки "циклограмма прилагается". Это хорошо. Всё сразу не выразишь.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:26 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
К системе, для коей её можно составить - да, прилагается... :wink: Когда не можем - должны "просчитывать" все варианты сочетания участков взаимодействующих процессов (но это обычно не для обсуждаемой предметки, где надо - можно здесь в цитате почитать)...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:29 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
"- Усё можно... но деньги вперёд!" :) В смысле, Вы должны сначала подумать, для чего надо дополнять. Обычно хорошо соотнести с каким-то текстовым алгоритмическим языком и выявить несовпадения, затем уже отражать недостающее. Правда, возможны не просто пропуски, но и невязки... требующие не просто дополнения...


Последний раз редактировалось Владислав Жаринов Четверг, 23 Май, 2013 17:30, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:30 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Шилин Александр писал(а):
на Дракон-схеме видно, что процессы стартуют, но не видно когда они заканчиваются, а на циклограмме хорошо видно и начало и конец каждого процесса.


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

Поэтому на циклограмме они работают по-разному. Они имеют разную длительность.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:32 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Именно... а по команде мы, не зная установленной длительности исполнения пущенного процесса (переменной, если его алгоритм нелинеен и/или есть разброс времени исполнения хотя бы одного оператора), можем остановить и до завершения (что иногда и полезно, но далеко не всегда :))...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:35 

Зарегистрирован: Четверг, 23 Май, 2013 05:13
Сообщения: 401
Владислав Жаринов писал(а):
Именно... а по команде мы, не зная установленной длительности исполнения пущенного процесса (переменной, если его алгоритм нелинеен и/или есть разброс времени исполнения хотя бы одного оператора), можем остановить и до завершения (что иногда и полезно, но далеко не всегда :))...

Теперь дошло...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:39 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5851
Откуда: Москва
Шилин Александр писал(а):
А можно самому дополнять команды Дракон?


Сегодня существуют и доступны два дракон-редактора:

— ИС Дракон Геннадия Тышова viewtopic.php?f=79&t=1291;

— DRAKON editor Cтепана Митькина viewtopic.php?f=79&t=3716.

Каждый из них имеет строго определенный набор команд.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 17:40 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Да, иначе придётся составлять схемы исключительно по офисной технологии (хотя этого бывает достаточно)...
Кстати, поэтому и лучше, чтобы любая процедура доходила до конца и выдавала результат в процедуру-потребитель... а уж та обнаруживала несвоевременность выдачи...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 23 Май, 2013 21:53 

Зарегистрирован: Понедельник, 09 Ноябрь, 2009 17:29
Сообщения: 904
Откуда: Россия, Питер
Вложение:
Схема Ситуации.PNG
Схема Ситуации.PNG [ 43.4 КБ | Просмотров: 12775 ]

Из таблицы фактов (ежели такое было) видно:

Хитрый ЛД, обладая инсайдерской информацией на 01.01.12 о том, что полный платёж будет осуществлён до 22.01.12, решает немного сэкономить на страховке, справедливо полагая, что по теории вероятности, машина не должна бы попасть в аварию в оставшуюся неделю : )

Но не подфартило. Подвёл психологический аспект математики. Маленький приятный гешефт обернулся головной болью : )

И правильно ВАС РФ считает.

P.S. Если в таблице указано всё, что Вы хотели отразить на ДРАКОНе, то дракон-схема, для данной ситуации, понятнее не будет. Имхо.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 125 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 7  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2024, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB