Итак...
Я преподаю формальные методы в разработке программного обеспечения. Я также преподаю "гибкие методологии". Большинство людей, похоже, считают это противоречивым. Я думаю, что это имеет большой смысл... Я также работаю в компании, где нам нужно на самом деле сделать все.:) Хотя я могу ежедневно применять свои очки навыков по "спецификации", коллеги обычно убегают от слова "формальный".
Раньше я думал, что это связано с тем, что мы узнаем, как программировать: мы обычно вынуждены находить рабочее решение, а не понимать проблему. Затем я подумал, что это связано с тем, что большинство людей в официальном сообществе не являются инженерами, а математиками или компьютерными учеными. В настоящее время мне кажется, что только потому, что сообщество формальных методов скрывается за каким-то "обфускационным" законом, чтобы использовать все доступные символы UNICODE, активно разрабатывать грубые, неэстетичные инструменты и смеяться перед стандартами.
Да, я перешел от "обвинить их" в "вините нас", -)
Итак, мой вопрос: используете ли вы какие-либо формальные методы в своей компании? Вы их представили или были предварительными условиями? Какие методы вы используете, чтобы очистить туман от математики от страха людей и побудить их использовать формальные методы? Как вы думаете, отсутствуют ли текущие инструменты для более общего использования?