Способ мышления-Форт



         

Девять фаз цикла программирования - часть 11


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

Как мы слышали в предыдущих интервью, выявление `аппаратных` ограничений часто требует написания некоторого количества пробного кода и испытаний. Выявление ограничений со стороны `покупателя` обычно сводится к заданию ему вопросов или получению письменных обзоров. "Насколько быстро Вам необходимо то-то и то-то, в размере от одного до десяти?" и т.д.

ПОСТРОЕНИЕ КОНЦЕПТУАЛЬНОЙ МОДЕЛИ РЕШЕНИЯ.

Концептуальная модель - это воображаемое решение проблемы. Это - взгляд на то, как система `должна` работать. Это - ответ на все требования и ограничения.

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

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

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

Несмотря на это, полезно делать различие. Концептуальная модель более гибка, чем проект. Легче войти в рамки требований и ограничений в модели, чем в проекте.

------------------------------------------------------------ СОВЕТ Старайтесь построить солидную концептуальную модель перед началом проектирования. ------------------------------------------------------------




Содержание  Назад  Вперед