metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-01-22 02:45 pm
Entry tags:

Что у нас в FP есть в плане анализа предметки

и синтеза дизайна системы?
Тут народ вопросом задается: http://guamoka.livejournal.com/1047171.html

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

[identity profile] dmzlj.livejournal.com 2013-01-22 12:01 pm (UTC)(link)
Непонятно, в чем отличие от не-ФП.

[identity profile] jakobz.livejournal.com 2013-01-22 12:13 pm (UTC)(link)
Да тоже самое все подходит. Любителям фашизма можно даже UML-диаграммы рисовать.

[identity profile] vit-r.livejournal.com 2013-01-22 01:34 pm (UTC)(link)
Если брать Эрриксон, то они скорее всего документировали в виде CSD (call sequence diagram) и конечных автоматах. Диаграммы потоков данных и сообщений тоже полезны. А в остальном, те же яйца, только сбоку.

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

[identity profile] guamoka.livejournal.com 2013-01-22 04:34 pm (UTC)(link)
Я вот думаю, что не везде требуют соблюдать вуду-процессы с артефактами-uml-подробными спецификациями и прочим

Кстати, ребе, вы случайно не путает OO подход, моделирование, специфицирование и документирование c помощью, скажем UML? Чтобы использовать OO подход и даже использовать/знать РУП, не нужно ведь обязательно под страхом расстрела документировать каждую запятую в проекте на UML, утром получать документацию, а вечером сдавать? Ну, и "достаточность" тоже ведь не подразумивает, нарисовал две линии в юзкейзах, три- в моделях, четыре-пять- в спецификации имплементации?

[identity profile] justy-tylor.livejournal.com 2013-01-22 07:59 pm (UTC)(link)
Для data modeling есть разница в кошерных sum types. Палитра низкоуровневых архитектурных приёмов больше зависит от языка, чем от парадигмы. Например, design patterns заплатки для Java от GoF. Или type classes в Haskell vs. попытки навести что-то подобное в OCaml.

Что касается OOA/OOD, то хороших слов у меня нет. Попытки сделать толковое начались только в BORO Партриджа (Chris Partridge "Business Objects: Re-Engineering for Re-Use"), но это, фактически, отход от object-oriented (как и последовавшие ISO 15926-2, Gellish, HQDM). А "проверенное временем" вуду, будь оно архитектурного или организационного уровня, всё больше про говно и солому,