На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
! В разделе обсуждаются следующие темы:
1) Процесс разработки программного обеспечения.
2) Определение требований к программному обеспечению.
3) Составные части и процесс проектирования (см. Шаблоны проектирования).
4) Документирование программного продукта(проекта).
5) Руководство разработкой программного обеспечения.
6) Проектирование пользовательского интерфейса.
7) Контроль версий проекта (см. Управление версиями в Subversion, Стратегии использования svn).
Модераторы: ElcnU
  
> Посоветуйте тулзу для прототипирования/моделирования программы, Моделирование логики алгоритма и GUI
    Посоветуйте тулзу для прототипирования/моделирования программы (алгоритм + GUI + динамическая анимация)

    В каких программах вы "обкатываете"/моделируете свои идеи?

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

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

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

    Да. И кроме окошек/менюшек нужна ещё динамическая анимация. Типа отображать как вода потекла по трубам. Как открылся кран и т.п.

    Нагуглил: T-Factory, Archestra+IDE, CitectSCADA, CoDeSys, DataRate, DESIGO+INSIGHT, Factory Link, Genesis, iFix, ISaGRAF, Master SCADA, Matrikon+OPC+Explorer, OpenSCADA, PcVue, RSView, Scada+, TRACE MODE, WinCC, FactorySuite::InTouch, AnyLogic, Automation Studio, CPN Tools, LabView, MatLab::Simulink::Stateflow, MvStudium, PoweSim, Proteus, Stella, MatLab::Virtual Reality Toolbox, xPC Target Turnkey, ZETLab Studio.

    Спец.языки:(GPSS, DOT, РЕФАЛ, РЕФЛЕКС, ДРАКОН, UML)

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

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

    Юзверь кликая мышкой по картинкам/мнемосхемам и менюшкам, вводя данные в окошках будет управлять неким технологическом процессом или сложной разветвленной системой с множеством связей. Соответственно состояние управляемой системы или каких-то частей системы будет изменяться во времени. И программа, которую я буду писать, должна всё это отображать в динамике. Получается типа как мультики своеобразные. Поэтому тулза, которую я ищу, должна ещё позволять проектировать и "обкатывать" динамическую анимацию
      Чо не хлэпаем-то? :blink:
        Очевидно, нечем помочь.
        Я не могу тебя забыть, ты снишься мне ночами, твой нежный запах, вкус и цвет стоят перед глазами.
        Когда тебя со мною нет, так тоскливо, и без тебя я не могу, мое ПИВО...
          deilНо тут же, как я понимаю, форум программистов?
          А программисты, как я понимаю, пишут программы?
          А прежде чем написать программу, как я понимаю, программисты сначала разрабатывают алгоритм или хотя бы общую идеологию.
          А этот алгоритм/идеологию проектируют и "обкатывают" в какой-то спец. тулзе? Так?
            Цитата Бифуркатор @
            А этот алгоритм/идеологию проектируют и "обкатывают" в какой-то спец. тулзе? Так?

            Не обязательно. Зачем какие-то спец.тулзы для этого?
            “Object-oriented design is the roman numerals of computing.” — Rob Pike
            All software sucks
              Нет, лично я не обкатываю. Для моей области подобных спец. тулзов нет.
              Я не могу тебя забыть, ты снишься мне ночами, твой нежный запах, вкус и цвет стоят перед глазами.
              Когда тебя со мною нет, так тоскливо, и без тебя я не могу, мое ПИВО...
                Цитата korvin @
                Зачем какие-то спец.тулзы для этого?

                В смысле? :blink:
                  Цитата Бифуркатор @
                  В смысле?

                  В прямом.
                  “Object-oriented design is the roman numerals of computing.” — Rob Pike
                  All software sucks
                    korvin а как же Вы тогда пишите программу не имея работающего обкатанного алгоритма/идеологии? :blink:
                      Ну вот в к примеру есть десять тракторов, 2 камаза и один экскаватор.
                      В какой тулзе можно создать их анимированные модели, записать в каждый свою программу/управляющий скрипт и погонять?

                      Т.е. мне нужна тулза для моделирования и обкатки ПАРАЛЛЕЛЬНЫХ алгоритмов

                      Потому что я хочу моделировать сложную разветвлённую СЕТЬ папаллельно работающих девайсов
                        Все-таки... Вам математическое моделирование надо или прототипирование программ?
                        Это абсолютно разные, практически не связанные, понятия.
                        Прототипирование алгоритмов - не слышл такое. С моей точки зрения эта фраза не имеет смысла.

                        И еще я хочу сказать, что за любым алгоритмом стоит какая-то математика.
                        И фраза "погонять управляющие алгоритмы" да еще и "параллельные" - не ясна.
                        Так и хочется спросить: Цель какая? Что вы пытаетсь моделировать?
                          Цитата grgdvo @
                          Прототипирование алгоритмов - не слышл такое. С моей точки зрения эта фраза не имеет смысла.


                          Ну так введите в яндексе
                          Цитата
                          прототипирование /+1 алгоритма ~~ ПЛИС


                          Добавлено
                          Цитата grgdvo @
                          И еще я хочу сказать, что за любым алгоритмом стоит какая-то математика.

                          Скорей уж логика и идеология

                          Добавлено
                          Цитата grgdvo @
                          Все-таки... Вам математическое моделирование надо или прототипирование программ?

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

                          Добавлено
                          Цитата grgdvo @
                          И фраза "погонять управляющие алгоритмы" да еще и "параллельные" - не ясна.
                          Так и хочется спросить: Цель какая? Что вы пытаетсь моделировать?


                          Хочу написать прогу для проектирования SCADA, т.е. прогу в которой можно было:
                          1) Проектировать и "обкатывать" на некоем обобщенно-абстрактном языке алгоритмы и программы управления для сложной системой/процессом с множеством разветвленных взаимосвязей, состоящих из множества ПАРАЛЛЕЛЬНО фунционирующих компонент
                          2) Создавать GUI и динамическую визуализацию. (анимацию)
                          3) Создавать спец. технологические языки для управления тех.процессами и многокомпонентными системами
                          4) Отлаживать технологические программы управления
                            Цитата Бифуркатор @
                            а как же Вы тогда пишите программу не имея работающего обкатанного алгоритма/идеологии?

                            А зачем писать программу, если уже есть работающий обкатанный алгоритм?

                            Что за идеология? Это как-то связано с религией?

                            Есть методологии и стратегии разработки, например, http://en.wikipedia.org/wiki/Agile_software_development , http://en.wikipedia.org/wiki/Top-down_and_bottom-up_design

                            Добавлено
                            Цитата Бифуркатор @
                            Хочу написать прогу для проектирования SCADA, т.е. прогу в которой можно было:
                            1) Проектировать и "обкатывать" на некоем обобщенно-абстрактном языке алгоритмы и программы управления для сложной системой/процессом с множеством разветвленных взаимосвязей, состоящих из множества ПАРАЛЛЕЛЬНО фунционирующих компонент
                            2) Создавать GUI и динамическую визуализацию. (анимацию)
                            3) Создавать спец. технологические языки для управления тех.процессами и многокомпонентными системами
                            4) Отлаживать технологические программы управления


                            http://en.wikipedia.org/wiki/Language-oriented_programming
                            “Object-oriented design is the roman numerals of computing.” — Rob Pike
                            All software sucks
                              Цитата korvin @
                              А зачем писать программу, если уже есть работающий обкатанный алгоритм?

                              Т.е. Вы пишите программу методом научного тыка? Не прорабатывая предварительно ОБЩУЮ идею, логику и алгоритм? :blink:

                              Добавлено
                              Не. ну может какие-то простейшие задачи можно так решать: т.е. не продумывая основную идею, логику и алгоритм сразу начинать кодить.
                              Но есть и сложные задачи.Которые так сразу, наскоком, не возьмёшь

                              Добавлено
                              Или всякие UML и прочие тулзы моделирования придуманы для лохов? :wacko:
                              А "правильные чОткие пацаны"© сразу пишут код. И причём сразу набело и без ошибок?
                                Цитата Бифуркатор @
                                1) Проектировать и "обкатывать" на некоем обобщенно-абстрактном языке алгоритмы и программы управления для сложной системой/процессом с множеством разветвленных взаимосвязей, состоящих из множества ПАРАЛЛЕЛЬНО фунционирующих компонент
                                2) Создавать GUI и динамическую визуализацию. (анимацию)
                                3) Создавать спец. технологические языки для управления тех.процессами и многокомпонентными системами
                                4) Отлаживать технологические программы управления

                                Эммм... Когда напишите такое - поделитесь. :) На самом деле, такие системы стоят немалых денег. Ибо вам нужен качественный эмулятор тех. процесса, системы сопряжения этого эмулятора с контроллером (или эмулятор контроллера, а то и нескольких - они разные, с разными протоколами и проч.), средства разработки собственно SCADA, стенды, модели и всякие прочие подобные ништяки - это если вы хотите отлаживать в том числе и программы PLC. Можете поступить несколько проще (если речь только об прототипировании GUI) - написать mock-программу для контроллера, которая будет как-то реагировать на нужные команды от SCADA-терминала, и набросать SCADA-проект, который будет эти команды контроллеру посылать и получать ответы. Это даст пользователю некоторое представление о том, как и что будет устроено.
                                Но серьёзные средства мат. моделирования стоят серьёзных денег. За бесплатно это не достанешь. А бесплатные (типа OpenModelica) не содержат некоторых весьма полезных компонент.
                                "Математики думают, что Бог в уравнениях, нейрологи уверены, что Бог в мозге, а программисты уверены, что Бог — один из них."
                                Морган Фриман
                                Мой учебник C++ - это просто!
                                Я на blogspot.com.
                                  Цитата Бифуркатор @
                                  Т.е. Вы пишите программу методом научного тыка? Не прорабатывая предварительно ОБЩУЮ идею, логику и алгоритм?

                                  Я пишу минимальный прототип, потому что, как показывает практика, «общая идея, логика и алгоритм» могут в результате резко поменяться и окончательно формируются в ходе тестирования и уточнения прототипа.

                                  Цитата Бифуркатор @
                                  Не. ну может какие-то простейшие задачи можно так решать: т.е. не продумывая основную идею, логику и алгоритм сразу начинать кодить.
                                  Но есть и сложные задачи.Которые так сразу, наскоком, не возьмёшь

                                  Никто и не говорил про «сразу, наскоком».
                                  Цитата Бифуркатор @
                                  А "правильные чОткие пацаны"© сразу пишут код. И причём сразу набело и без ошибок?

                                  Ты бы ссылки-то почитал, прежде чем глупые вопросы не задавать.
                                  “Object-oriented design is the roman numerals of computing.” — Rob Pike
                                  All software sucks
                                    Цитата korvin @
                                    Ты бы ссылки-то почитал

                                    Почитал. Это не то, что мне нужно
                                      Бифуркатор, а ты пост №15 внимательно прочитал? Какие выводы сделал?
                                      "Математики думают, что Бог в уравнениях, нейрологи уверены, что Бог в мозге, а программисты уверены, что Бог — один из них."
                                      Морган Фриман
                                      Мой учебник C++ - это просто!
                                      Я на blogspot.com.
                                        Цитата Бифуркатор @
                                        Вывод сделал, что форум - тухляк. Что здесь можно по полгода ждать хелпа, но так и не дождаться

                                        Странный, однако, вывод. Тогда ещё раз повторюсь, для тех, кто в танке: то, что вам требуется, стоит определённых, гм... денег. Открытые версии такого софта, как Modelica, MathLab и т. п. не позволят вам обсчитывать модели в реальном времени. Закрытые - требуют определённых плясок с бубнами. Кроме того, вам будут нужны контроллеры (реальные, железячные), и средства построения SCADA (хотя бы OpenSCADA). Всё это требует определённых финансовых вложений и усилий на скрещивание. Самый простой путь - это взять два контроллера, для одного написать программу, которая эмулирует нужный вам техпроцесс, второй, с ним связанный, отвечает за приём команд от SCADA-терминала, отправки на этот контроллер, и приём данных с него. В этом случае ничего, кроме SCADA-системы, вам не потребуется. Ну и, конечно, умение программировать промышленные контроллеры будет не лишним.
                                        Если и такой ответ вам не понятен, то, наверное, лучше вам поспрошать где-то в другом месте.
                                        "Математики думают, что Бог в уравнениях, нейрологи уверены, что Бог в мозге, а программисты уверены, что Бог — один из них."
                                        Морган Фриман
                                        Мой учебник C++ - это просто!
                                        Я на blogspot.com.
                                          Цитата Flex Ferrum @
                                          то, что вам требуется, стоит определённых, гм... денег.

                                          А как же дружба и взаимопомощь? Неужели коллеги по цеху откажут мне в хлэпе? <_<
                                            Цитата Бифуркатор @
                                            А как же дружба и взаимопомощь? Неужели коллеги по цеху откажут мне в хлэпе?

                                            Эммм... А какого рода помощь требуется то? Ключиками поделиться? На такую помощь здесь рассчитывать не надо (это я вам как администратор ресурса говорю) - варез ищется в других местах. Советом? Это можно. Но требуется конкретика.
                                            "Математики думают, что Бог в уравнениях, нейрологи уверены, что Бог в мозге, а программисты уверены, что Бог — один из них."
                                            Морган Фриман
                                            Мой учебник C++ - это просто!
                                            Я на blogspot.com.
                                              M
                                              Бифуркатор, не отклоняемся от темы. а то прикрою быстро это попрошайничество!!!!
                                              Предупреждение
                                              "Бубен Team Edition for Developers"
                                              ULLib | ULj2me
                                                Цитата Flex Ferrum @
                                                А какого рода помощь требуется то?

                                                Читайте мои сообщения внимательней. В них всё сказано
                                                  Цитата Бифуркатор @
                                                  Читайте мои сообщения внимательней. В них всё сказано

                                                  Вот мне кажется, что я на как раз на ваши сообщения и ответил. :)
                                                  "Математики думают, что Бог в уравнениях, нейрологи уверены, что Бог в мозге, а программисты уверены, что Бог — один из них."
                                                  Морган Фриман
                                                  Мой учебник C++ - это просто!
                                                  Я на blogspot.com.
                                                    Flex Ferrum Нет. Я ещё спрашивал про мозаичные алгоритмы
                                                      Ну всё. Видать сдох форум программистов. :'(
                                                        Просто народ не может понять, что тебе нужно. Попробу ещё раз описать свою проблему, на этот раз не опуская даже очевидные на твой взгляд моменты.
                                                        Всё написанное выше это всего лишь моё мнение, возможно ошибочное.
                                                          Да нужно мне алгоритмы моделировать, визуализировать и отлаживать
                                                          В самом обобщенном виде
                                                            Боюсь, большинство людей это делают в каком-нибудь простом ЯП. Вообще не уверен, что кто-то для таких нужд какую-то особую тулзу писал.
                                                            Всё написанное выше это всего лишь моё мнение, возможно ошибочное.
                                                              amk
                                                              Вы хотите что в ГИГАНТСКИХ программистских корпорациях (например в конторе, пишущей венду) не используются никакие спец. тулзы для предварительного прототипирования/моделирования алгоритмов в обобщенном виде? И код сразу лабАется на C#? :blink:
                                                                Лично я прототипирование делаю на питоне. Это такой же язык программирования, как и C++, на котором я пишу конечную программу, просто на нём я пишу быстрее, и иногда могу кое-что упростить при написании. Также на нём удобно делать некоторые простые расчёты. Программа позволяет получше осмыслить алгоритм, иногда поменять структуру конечной программы.

                                                                Не знаю, что мне дала бы какая-то специальная тулза для прототипирования. Алгоритм-то мне всё равно пришлось бы писать самому.
                                                                Всё написанное выше это всего лишь моё мнение, возможно ошибочное.
                                                                  Цитата amk @
                                                                  Не знаю, что мне дала бы какая-то специальная тулза для прототипирования. Алгоритм-то мне всё равно пришлось бы писать самому.

                                                                  Как что? Облегчила бы придумывание, разработку и обкатку алгоритма.
                                                                  Это разница как разница как писать венду в нотепаде или MS Visual Studio.
                                                                  Т.е. в принципе (теоретически) можно писать программы и в нотепаде, но на порядки более эффективно писать проги в IDE типа Visual Studio
                                                                    Цитата Бифуркатор @
                                                                    можно писать программы и в нотепаде, но на порядки более эффективно писать проги в IDE типа Visual Studio
                                                                    Нотепад - неудачный пример. В нём даже простые заметки писать неудобно. Я когда им приходится попользоваться складывается ощущение, что он даже в Win3.1 был лучше, а теперь деградировал. Я "IDE типа Visual Studio" обычно не пользуюсь - редактор там немногим лучше упомянутого нотепада. Единственное, что в нём хорошего, так это выскакивающие временами подсказки, какие методы объекта можно вызывать, и какие у этих методов параметры. Но я эти методы и сам помню, тем более одного знания параметров для правильного вызова всё равно недостаточно.
                                                                    Всё написанное выше это всего лишь моё мнение, возможно ошибочное.
                                                                      Вообщем, никто не знает таких программ.
                                                                      Так и запишем :victory:
                                                                        На предыдущей странице по-моему уже был дан полный и верный ответ на поставленный вопрос.
                                                                        Я не могу тебя забыть, ты снишься мне ночами, твой нежный запах, вкус и цвет стоят перед глазами.
                                                                        Когда тебя со мною нет, так тоскливо, и без тебя я не могу, мое ПИВО...
                                                                          deil Вы имеете в виду питон? :scratch:
                                                                            Да что угодно.
                                                                            Я например долгое время, пока не обнаружил питона, пользовался для этих целей AWK.
                                                                            Годится любой язык, на котором можно быстро написать программу и который имеет достаточно хорошую диагностику.
                                                                            Всё написанное выше это всего лишь моё мнение, возможно ошибочное.
                                                                              Цитата Бифуркатор @
                                                                              Я ещё спрашивал про мозаичные алгоритмы

                                                                              у вас дикая смесь разных уровней: одновременно спрашиваете про концептуальное прототипирование и низкоуровневую оптимизацию.
                                                                              Ссылки вам таки правильно дали

                                                                              Цитата Бифуркатор @
                                                                              Да нужно мне алгоритмы моделировать, визуализировать и отлаживать
                                                                              В самом обобщенном виде

                                                                              http://ideone.com
                                                                              С визуализацией суть сложнее, но на этапе "самого общего вида" она не требуется. Либо вы под словом "алгоритм" понимаете не то, что участники этого форума.

                                                                              Цитата Бифуркатор @
                                                                              в ГИГАНТСКИХ программистских корпорациях (например в конторе, пишущей венду) не используются никакие спец. тулзы для предварительного прототипирования/моделирования алгоритмов в обобщенном виде

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

                                                                              Цитата Бифуркатор @
                                                                              И код сразу лабАется на C#?

                                                                              сразу видно специалиста.

                                                                              Цитата Бифуркатор @
                                                                              придумывание, разработку и обкатку алгоритма

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

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

                                                                                Просто я искал шкаду в которой можно было решать ТАКОГО ПЛАНА ЗАДАЧИ(по ссылке мной созданная тема).
                                                                                И не нашёл. Поэтому сам решил написать. А для этого мне нужен инструмент для моделирования/прототипирования
                                                                                Сообщение отредактировано: Бифуркатор -
                                                                                  а, Доктор ТуамОсес, велкам...
                                                                                  Цитата
                                                                                  Задача состоит в том, чтобы написать программу, которая бы отслеживала текущее состояние лабиринта/трубопровода и включая или выключая вентили динамически формировала бы и поддерживала путь протока воды от узла/точки А к узлу/точке Б. Причем не абы какой, а такой, чтобы этот путь обязательно содержал как минимум 3(4, 5 или сколько Вам нужно) точки из заданного множества точек.

                                                                                  тут не программа моделирования нужна, а учиться, учиться, как дедушка завещал
                                                                                    Учиться всегда нужно. И никогда не поздно. И хоть мне уже 51 стукнуло я не прекращаю учиться. Как говорится "век живи - век учись. ... Всё равно дураком помрёшь
                                                                                    А по тему есть что сказать?
                                                                                      Цитата Бифуркатор @
                                                                                      А по тему есть что сказать?

                                                                                      ага. тут нечего моделировать.
                                                                                      Сообщение отредактировано: liss -
                                                                                        Цитата liss @
                                                                                        Цитата Бифуркатор @
                                                                                        А по тему есть что сказать?

                                                                                        ага. тут нечего моделировать.

                                                                                        На самом деле, в общем случае такая постановка задачи - валидна (есть тестовые стенды, которые эмулируют работу тех или иных агрегатов). И я об этом писал где-то в начале темы. Другое дело, что стоимость её решения довольно высока.
                                                                                        Сообщение отредактировано: Flex Ferrum -
                                                                                        "Математики думают, что Бог в уравнениях, нейрологи уверены, что Бог в мозге, а программисты уверены, что Бог — один из них."
                                                                                        Морган Фриман
                                                                                        Мой учебник C++ - это просто!
                                                                                        Я на blogspot.com.
                                                                                          Flex Ferrum, вы считаете задачу поиска пути объектом моделирования?
                                                                                          я еще понимаю прототипирование системы управления, но это другая задача
                                                                                            Дык я и говорил о протипировании/моделировании системы управления лабиринтным автоматом.
                                                                                            Причем с динамической анимацией.
                                                                                            Сообщение отредактировано: Бифуркатор -
                                                                                              Цитата Бифуркатор @
                                                                                              Дык я и говорил о протипировании/моделировании системы управления лабиринтным автоматом.Причем с динамической анимацией.
                                                                                              Так систему для такого прототипирования/моделирования можно найти у тех, кто занимается разработкой лабиринтных автоматов. Другим она попросту не нужна.
                                                                                              Много известно таких разработчиков?
                                                                                              Всё написанное выше это всего лишь моё мнение, возможно ошибочное.
                                                                                              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                                                                              0 пользователей:


                                                                                              Рейтинг@Mail.ru
                                                                                              [ Script Execution time: 0,2452 ]   [ 17 queries used ]   [ Generated: 22.09.17, 06:11 GMT ]