Блок-схемы, карты памяти (mind map), UML-диаграммы
Бесплатный кросс-платформенный редактор блок-схем YED
https://www.yworks.com/products/yed/download
в т.ч. онлайн-версия https://www.yworks.com/editors
в онлайн-версии можно использовать шаблоны блок-схем (понятные всем смешные примеры)
обучалка по нему https://www.graphity.com/clips.html#change-language
Мне лично надо:
1) описывать логику выполнения контрольных проверок!
2) убедиться, что при возможных комбинациях исходных данных (заранее неизвестных) в алгоритме не встретится:
- деление на нуль;
- запуск процедур, для которых нет исходных данных.
ГОСТ на блок-схемы алгоритмов
ГОСТ 19.701–90 (ИСО 5807–85) «Единая система программной документации»
СХЕМЫ АЛГОРИТМОВ, ПРОГРАММ, ДАННЫХ И СИСТЕМ
Обозначения условные и правила выполнения
"Блог программиста": ГОСТ на блок-схемы и "обсуждалка" в комментариях
https://pro-prof.com/archives/1462
"Наиболее удобными, на мой взгляд, являются утилиты MS Visio и yEd [5], обе они позволяют гораздо больше, чем строить блок-схемы (например рисовать диаграммы UML), но первая является платной и работает только под Windows, вторая бесплатная и кроссплатфомренная. Все блок-схемы в этой статье выполнены с использованием yEd.
"Частные конторы никакие блок-схемы не используют, в книжках по алгоритмам [6] вместо них применяют словесное описание (псевдокод) как более краткую форму. Возможно блок-схемы применяют на государственных предприятиях ..."
… Разработка блок-схем выполняется на этапах проектирования и документирования, согласно каскадной модели разработки ПО, которая сейчас почти не применяется, т.к. сопровождается большими рисками, связанными с ошибками на этапах проектирования.
…В ряде случаев, программирование невозможно без рисования блок-схем, т.к. это один процесс — существуют визуальные языки программирования, такие как ДРАКОН [8], кроме того, блок-схемы используются для верификации алгоритмов (формального доказательства их корректности) методом индуктивных утверждений Флойда [9].
… Для формальной верификации необходимо рисовать подробные блок-схемы, но для проектирования и документирования такие схемы не нужны
…
Список использованных источников:
-
ГОСТ 19.701–90 (ИСО 5807–85) «Единая система программной документации».
-
Алгоритм. Свойства алгоритма \ https://pro-prof.com/archives/578
-
Алгоритмы сортировки слиянием и быстрой сортировки \ https://pro-prof.com/archives/813
-
yEd Graph Editor \ https://www.yworks.com/products/yed
-
Книги: алгоритмы \ https://pro-prof.com/books-algorithms
-
Рамбо Дж., Якобсон А., Буч Г. UML: специальный справочник. -СПб.: Питер, 2002. -656 с.
-
Кент Бек Экстремальное программирование: разработка через тестирование – СПб.: Питер – 2003
-
Визуальный язык ДРАКОН \ https://drakon.su/
-
Шилов Н.В. Верификация шаблонов алгоритмов для метода отката и метода ветвей и границ. Моделирование и анализ информационных систем, ISSN 1818 – 1015, т.18, №4, 2011
-
Брукс Ф., Мифический человеко — месяц или как создаются программные системы. СПб. Символ Плюс, 1999 — 304 с. ил. "
Еще
Сервис платный lucidchart
https://lucid.app/ru/pricing/lucidchart?referer=https%3A%2F%2Fwww.lucidchart.com%2F#/pricing/chart
Статья и ссылки на сервисы
http://bikmeyev-at.ugatu.su/students/CPP/Handbook/blocks.html
Обзор прог для диаграмм и блок-схем
https://proglib.io/p/6-diagram-services
В обзоре еще ссылки:
- Более 100 полезных сервисов для разработки на все случаи жизни
- 67 инструментов для веб-разработчика на все случаи жизни
Программа Balsamiq mockups
Программа позволяет создавать мокапы, диаграммы, различные схемы. Имеется обширная библиотека элементов, с помощью которых можно создать любой проект. Приложение требует установки на компьютер, к тому же платное, однако можно воспользоваться пробным периодом web-версии.
mockup ['mɒkʌp, 'mɑːkʌp] сущ.
авиац. тренажёр
авиац.мед. манекен
авто. макет (автомобиля, трактора)
бур. модель в натуральную величину
воен., авиац. натурный макет
ИТ. имитация; макет; модель
Яндекс-урок про блок-схемы (для детсада)
Диаграммы UML
Диаграммы UML поиск
https://www.visual-paradigm.com/guide/uml-unified-modeling-language/uml-class-diagram-tutorial/
Теорию смотри
Вот в "блоге программиста" пишут:
про ГОСТ 19.701-90 https://pro-prof.com/archives/1462
про книги по алгоритмам https://pro-prof.com/books-algorithms
Лекция 2. Метод индуктивных утверждений Флойда
https://kornevgen.github.io/mfsp/slides/floyd_partial/floyd_partial.pdf
(формулы логические смотри)
Вот по-русски про графы
https://skysmart.ru/articles/mathematic/osnovnye-ponyatiya-teorii-grafov
(учебники школьной информатики смотри)
Mind maps ("карты памяти") - учебник информатики Полякова
https://kpolyakov.spb.ru/school/probook/mindmaps.htm
"Карты памяти, предложенные английским психологом Тони Бьюзеном, — это удобный способ представления связей между понятиями в виде дерева. В корне дерева, который обычно размещают в центре схемы, находится центральная идея. От неё в разные стороны отходят ветви, соответствующие понятиям следующего уровня и т.д. "