DRAKON.SU

Текущее время: Пятница, 19 Апрель, 2024 06:54

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




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
СообщениеДобавлено: Четверг, 23 Май, 2013 18:08 

Зарегистрирован: Понедельник, 20 Май, 2013 09:24
Сообщения: 4
http://habrahabr.ru/post/180709/

Просьба к знатокам Дракона участвовать в дискуссии, чтобы пользователи Хабра получили грамотные ответы на свои вопросы.


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

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


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

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 21
Откуда: Россия, Ярославль
Бгг, а вы дайте инвайт.


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

Зарегистрирован: Понедельник, 20 Май, 2013 09:24
Сообщения: 4
Инвайтов нет. Есть такой способ материализоваться на хабре: написать статью в так называемую "песочницу".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 24 Май, 2013 10:11 

Зарегистрирован: Понедельник, 20 Май, 2013 09:24
Сообщения: 4
Вот видео доклада:

http://www.youtube.com/watch?feature=player_embedded&v=bskYLF5kgd8

Там тоже желательно поучаствовать в дискуссии.


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

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5848
Откуда: Москва
Кроме того, доклад выложен (автоматически, роботом) на сайте "Веб-цитатник".
http://www.webcitation.org/6GrKn6ptW

"Веб-цитатник" — это мой вольный перевод названия сайта WebCite.

Зачем нужен этот сайт?

Затем, что информация в Интернете часто пропадает. По данным журнала Science, 13% ссылок на научные статьи оказались неактивными (битыми) уже через 27 месяцев.

Сайт WebCite создан для того, чтобы уменьшить ущерб от таких неприятностей.

Вот сведения об этом сайте: http://www.webcitation.org/
Цитата:
The Problem

Authors increasingly cite webpages and other digital objects on the Internet, which can "disappear" overnight. In one study published in the journal Science, 13% of Internet references in scholarly articles were inactive after only 27 months.

Another problem is that cited webpages may change, so that readers see something different than what the citing author saw.

The problem of unstable webcitations and the lack of routine digital preservation of cited digital objects has been referred to as an issue "calling for an immediate response" by publishers and authors [1].

An increasing number of editors and publishers ask that authors, when they cite a webpage, make a local copy of the cited webpage/webmaterial, and archive the cited URL in a system like WebCite®, to enable readers permanent access to the cited material.

What is WebCite®?

WebCite®, which used to be a member of the International Internet Preservation Consortium, is an on-demand archiving system for webreferences (cited webpages and websites, or other kinds of Internet-accessible digital objects), which can be used by authors, editors, and publishers of scholarly papers and books, to ensure that cited webmaterial will remain available to readers in the future.

If cited webreferences in journal articles, books etc. are not archived, future readers may encounter a "404 File Not Found" error when clicking on a cited URL. Try it! Archive a URL here. It's free and takes only 30 seconds.

A WebCite®-enhanced reference is a reference which contains - in addition to the original live URL (which can and probably will disappear in the future, or its content may change) - a link to an archived copy of the material, exactly as the citing author saw it when he accessed the cited material.

http://www.webcitation.org/


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

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5848
Откуда: Москва
Я обратил внимание на такой комментарий на Хабре: http://habrahabr.ru/post/180709/#comment_6277909

Цитата:
YLambert,24 мая 2013 в 12:08#

Многие, кто связаны с телекомом, думаю, вспомнили язык SDL Specification_and_Description_Language

И такой тул как Tau SDL http://www.interface.ru/home.asp?artId=18802


Выкладываю начало текста (картинки очень интересные, но я их опускаю)

Цитата:
IBM Rational / Telelogic SDL Suite

IBM Rational SDL Suite - это решение для разработки программного обеспечения в режиме реального времени, которое предоставляет возможности описания и разработки сложных коммуникационных систем, управляемых событиями.

• Гарантирует высокое качество приложений за счет непрерывной проверки моделей, совместного имитационного моделирования и отладки.

• Защищает инвестиции благодаря использованию существующего программного кода на C/C++ при разработке новых протоколов.

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

• Повышает качество продуктов за счет прозрачной интеграции процессов проектирования и тестирования.

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

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

• Поддерживаемые операционные системы: HP Unix, Sun Solaris, Windows.

Инструмент IBM Rational / Telelogic SDL Suite построен на базе международного стандартного языка SDL(Specification and Description Language), официально признан ITU-ETSI, используется ими и рекомендован этими организациями для дизайна систем и приложений для телекома, систем реального времени, встраиваемого программного обеспечения.

Следует заметить, что большинство телекоммуникационных протоколов помимо текстового описания уже специфицировано ITU-ETSI с помощью SDL-диаграмм, для построения которых эти организации также используют IBM Rational / Telelogic Tau SDL.

Tau SDL весьма напоминает описанный выше Tau, хотя ради исторической справедливости, следует отметить, что как раз Tau строился, исходя из зарекомендовавших себя с положительной стороны, возможностей Tau SDL:

- имеется опция Simulator, которая в режиме реального времени позволяет моделировать поведение всей системы или ее отдельных частей, с использованием MSС-диаграмм(диаграмм последовательностей).

- имеется опция Validator, предназначенная для дополнительного поиска ошибок, позволяя находить перекрестные ссылки, "мертвые петли", разрывы в графе, ссылки "в никуда", ошибки ввода-вывода и т.д.

- имеется кодогенератор, автоматически выдающий до 100% исходного кода на языке С. Нас часто спрашивают об основных преимуществах использования Tau SDL, который может автоматизировать труд разработчика, по сравнению с ручным написанием кода. Попытаемся ответить...

Большинство ошибок, которые имеются в коде, вносит сам человек. И какими бы профессионалами не были ваши специалисты, - это неизбежно!

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

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

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

А то, и зачастую, - только на стороне клиента - когда потребуется совпадение во времени многих условий, чтобы выскочил, так называемый, "глюк", и когда повторить эти условия, чтобы найти ошибку, не всегда бывает возможно.

И если не задумываться более ни о чем, то возникает вопрос - а что вам даст замена одного языка программирования (который вы сейчас используете) на другой, если предлагать, что это будет SDL?

Однако, вся тонкость в том, что предлагается не просто язык SDL, а инструмент, построенный на базе этого языка-стандарта, а именно - Tau SDL. А вот в нем-то и заложена вся сила и немалые возможности, которые будут экономит вам время и деньги...

Tau SDL состоит из нескольких опций, которые разработчик проходит в обязательном порядке с тем, чтобы получить правильный, проверенный, на 100% автоматически сгенерированный код. Ниже приводится краткое описание каждой из основных опций Tau SDL:

1. SDL-Editor + SDL Analyzer

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

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

Работа пользователя сводится к дизайну системы, который он строит из составляющих как из кубиков, детализируя систему "сверху-вниз".

В процессе работы первая опция Tau SDL - Analyzer - проверяет все ваши диаграммы пока только на правильность и соответствие нотациям языка SDL (отметим - функционал ПОКА не проверяется).

Показывает обнаруженные ошибки, сообщает (описывает) с чем они связаны и указывает на конкретный символ SDL-диаграммы, в котором эта ошибка присутствует.

Согласитесь, в таких условиях намного легче искать ошибки (попробуйте представить для сравнения, что легче - писать по-английски ручкой на бумаге или воспользоваться Word, в котором включен speller английского языка).

Дальше у вас два пути:

            - или, глядя на эту диаграмму (поскольку в ней уже нет расхождений с языком) писать код вручную (это ж сколько времени может понадобиться для написания какого-нибудь современного протокола???!!!), как многие это сейчас и делают (рисуя диаграммы или блок-схемы в Visio), а значит по-прежнему вносить ошибки, связанные с человеческим фактором,

            - или задействовать следующую опцию Tau SDL.

2. Simulator

После приведения диаграмм в полное соответствие с нотацией языка (иначе дальше система вас просто не пустит), вы можете воспользоваться опцией Simulator, которая поможет вам отработать систему уже с точки зрения создаваемого функционала (дизайна).

Сразу оговоримся, что проверяется либо вся все то, что составляет SDL-диаграмму или к ней относится (на ваш выбор):

а) или только SDL-диаграмма системы, блока, подсистемы, модуля... т.е. любой части системы (вот еще один "плюс" - не надо ждать сборки всей модели\системы)

б) или совокупность SDL-диаграмм и\или ее частей и вставок с вашим кодом (непосредственно прописывание кода в символах диаграмм или референс на headers. Использование функций языка C, Assembler, например).

      При запуске Simulator'а инструмент автоматически переводит вашу SDL-диаграмму в диаграмму последовательностей MSC (Message Sequence Chart), иницализирует ее и готовится к приему сообщений-сигналов.

      Вот теперь вы можете посылать в систему любые сообщения, соответствующие внешним воздейстиям и условиям - с любыми параметрами и значениями, в любой вход (порт) вашей системы.

Можете посылать сигналы по одному, можете в паралель, можете пачками или по спец-графику с разнесением во времени - все, что вам угодно.

Можете исполнять пошагово, а может от начала и до конца, можете ставить break-points в любом месте SDL- или MSC-диаграммы, поскольку онизавязаны между собой.

Можете выводить log-файлы, можете ставить watch-окна на выбранные переменные и многое-многое другое.

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

И на диаграммах вы будете видеть картину поведения всей вашей системы или отрабатываемого блока.

Более того, система выдаст вам статистику покрытия и вы будете знать насколько полно вы проверили вашу систему посылаемыми сообщениями.

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

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

Мы еще раз утверждаем, что проверяется все то, что вам необходимо - в том числе и совместное поведение диаграмм, созданных в Tau SDL, и ваших кодовых вставок в них, если таковые будут делаться.

(Этим же путем можно пойти, если вы проверяете на функционал или соответствие нотации даже чужие диаграммы - ведь существуют много компаний, которые или продают свои SDL-диаграммы или отдают их).

Закончили и с этим, потому как теперь у вас на руках имеется диаграмма (или набор диаграмм) системы с проверенным функционалом.

После этого у разработчика тоже два пути:

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

            - или задействовать следующую опцию Tau SDL.

3. Validator

Мы рекомендуем второй путь... Включается в работу опция Validator. На основании SDL-диаграммы системы или ее любой, выбранной вами части, Validator строит дерево поведения системы.

Т.е. анализирует все возможные состояния сигналов и их параметров, настройки таймеров, интерфейсы и т.д., и "за кадром" строит дерево всех возможных переходов в системе, "глядя" на дизайн вашей системы.

Для чего в систему автоматически засылаются любые случайные наборы вышеперечисленных сообщений и оценивается реакция системы.

Опять же "за кадром", анализируя реакцию системы, Validator ищет ошибки, которые могут возникнуть в системе, например, при сбое, и выводит вам этот результат, группируя ошибки в однотипные группы.

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

Здесь ищутся, например, посылка сообщений "в никуда", перекрестные ссылки, мертвые петли, ошибки ввода-вывода и многое другое.

(Кликните мышкой на символ ошибки и опция выведет вас на символ диаграммы, с которым эта ошибка связана - огромная экономия времени).

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

Другими словами, если в опции Simulator вы проверяете и отрабатывате поведение системы на "правильность", то в Validator - на неправильность,т.е. как будет реагировать система, если в нее посыпятся сигналы с не теми параметрами, не в то время и не в том порядке, если таймеры закончат свою работу позже-раньше против ожидаемого и т.д.

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

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

После этого у разработчика тоже два пути:

            - или, глядя на полностью отработанную диаграмму писать код вручную, как некоторые иногда делают, а значит по-прежнему вносить ошибки, связанные с человеческим фактором,

            - или задействовать одну из самых мощных и важных опций Tau SDL.

4. Code Generator

Если вы выбираете второй путь, то дальнейшие шаги просты - открываете окно, задаете опции кодогенератора, нажимаете клавишу и получаете исходный код на ANSI.C (на базе созданных диаграмм и всех и любых кодовых вставок, заметьте), который можете потом омпилировать любым вашим родным компилятором.

Настроечных опций здесь великое множество. Перечислим лишь некоторые из них (пользователь должен пометить их):

      - должен ли сгенерированный код содержать специальные вставки, сообщающие вам о тех или иных ошибках (error checking);

      - если ДА, то отмечаете какие именно ошибки вас интересуют;

      - каким образом будет полученный код "заливаться" в исходное железо;

      - делать ли "закладки", чтобы выводить служебную информацию на какой-либо порт, используемый для отладки;

      - предполагается ли наличие или отсутствие операционной системы в вашем устройстве;

      - если операционка будет, то какая именно ОС (мы уже поддерживаем массу известных ОС, готовы интегрироваться с вашей собственной, или разработатьтакую интеграцию для вас);

      - можете собственноручно определять работу с очередями или воспользоваться критериями ОС и т.д.

Причем каждый раз меняя эти настройки, вы тут же будете получать новый код с учетом ваших пожеланий, - не занимаясь "ручной" орректировкой кода...

Сколь угодно часто, сколь угодно долго - хоть 24 часа в сутки и 30 дней в месяц. Но после того как код получен - вот тут уже мы категорически не рекомендуем "трогать" полученный код - во избежание внесения ошибок.

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

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

После этого можно смело "заливать" этот код в ваше железо - все будет работать.. будьте уверены... Но и тут мы не останавливаемся на достигнутом..

Tau SDL имеет два кодогенератора: - C-micro для систем критичных к "размерам" (например, 8-битовый процессор, без ОС) и C-advanced для 64-битовых процессоров, многопоточных задач, многопроцессорных систем. Все остальное - лежит между ними.

Последняя опция - Code Generator - отрабатывается нашей компанией уже десяток лет и не может генерить ошибок по сути, поскольку просто использует отработанные конструкции языка и модули - макросы, например. При этом никакой отсебятины кодо-генератор не пишет.

Следует помнить, кодогенератор может использоваться на всем протяжении работ, а значит у вас есть возможность искать недоразумения - если они будут - с самого начала. А не искать проблемные места в готовом результате, если писать что-то вручную.

Т.е. на этом можно считать процесс создания кода (не пишу "написания" кода) завершенным.

Вы получили то, к чему шли. Но намного быстрей и качественней. Однако и тут мы можем предложить вам продолжение..


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

Зарегистрирован: Понедельник, 09 Ноябрь, 2009 17:29
Сообщения: 904
Откуда: Россия, Питер
Вот отсюда
inetstar писал(а):
Если бы законы составлялись блок-схемами, то тысячам юристам пришлось бы искать другую работу.

Хорошо бы пару-тройку примеров на тему "Закон в блок-схемах - это понятный Закон".


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

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


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

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


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

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