Нисходящий подход - Большая Энциклопедия Нефти и Газа, статья, страница 2
Если тебе трудно грызть гранит науки - попробуй пососать. Законы Мерфи (еще...)

Нисходящий подход

Cтраница 2


В этих случаях решение не использовать метод сверху вниз может быть предпочтительнее. При втором затруднении переходить к программированию, не дожидаясь фиксации спецификаций, оказывается выгодным потому, что это заставляет все-таки определить спецификации раньше, так что остается время при необходимости уточнить их. При третьем затруднении строгий нисходящий подход противоречит ситуации. Программист должен быть уверен, что руководство понимает сложившуюся ситуацию и сознает опасность задержки и дополнительных затрат.  [16]

Но какой же именно опыт нужен. Основная черта, которой должен обладать кандидат, - способность подчиняться дисциплине. Он должен понимать важность нисходящего подхода в создании программных изделий, уметь проектировать и документировать программу до ее кодирования. К сожалению, университетский курс обучения и курсы повышения квалификации все еще уделяют слишком мало внимания этим решающим аспектам. Каждый новый служащий должен проходить внутрифирменное обучение по методике, в которой следует подчеркивать важность соблюдения дисциплины программирования. Надо обращать особое внимание на то, что результаты работы любого программиста должны быть понятны другим людям, чтобы ими можно было воспользоваться. Если кто-либо оказывается неспособным продемонстрировать достаточную дисциплину программирования, ему следует напоминать, что такое поведение является ненормальным и что имеются все основания для его увольнения или понижения в должности.  [17]

Часто такая сборка программных модулей в одну систему начинается только на заключительной стадии проекта. Если при этом обнаруживаются новые ошибки, то сроки завершения проекта обязательно срываются. Дело в том, что когда используется восходящий подход, руководитель может контролировать деятельность программистов еженедельно, но все равно не будет знать даже с точностью до месяца, насколько она близка к завершению. Нисходящий подход дает возможность получать надежные и легко проверяемые результаты с самого начала работ и на всех последующих стадиях производственного цикла. Другими словами, система может постоянно поддерживаться в действующем состоянии и ее можно непрерывно проверять по ходу ее создания.  [18]

Шестой критерий связан с ответом на обсуждавшийся ранее вопрос: возможно ли проверить любой конкретный путь и любое условие в программе. Седьмой критерий характеризует сложность планирования, надзора и управления в процессе тестирования. Это связано с осознанием того факта, что тестирование, которым трудно управлять, часто ведет к недосмотрам и упущениям. Последний критерий оценивает степень перерасхода машинного времени: лишние прогоны ранее проверенных программ. Время от времени раздаются возражения против нисходящего подхода в связи с тем, что тестирование нижних модулей требует многократных лишних прогонов головных модулей. Однако этот критерий отмечен как несущественный. Хотя лишние прогоны действительно бывают необходимы, возможно также, что во многих случаях, которые кажутся лишними, в действительности воссоздаются несколько разные условия. Эти прогоны могут вскрыть новые ошибки, превращая таким образом недостаток в достоинство. Поскольку этот эффект недостаточно осознан, мы им пренебрегаем.  [19]

Если обратиться к аналогии из области архитектуры и строительства, то нисходящий подход соответствует разработке проекта всего здания с последующей детализацией его отдельных частей, а восходящий - проектированию здания с учетом деталей, имеющихся в каталоге. Результат один - готовый проект здания, но достижение цели происходит по-разному. Бели в распоряжении программиста имеется широкий набор процедур и функций, выполняющих некоторые действия, то программу можно разрабатывать начиная именно с них. Они образуют самый нижний уровень иерархии, над которым надстраиваются другие уровни, на которых элементарные процедуры и функции объединяются в более крупные единицы, необходимые для решения всей задачи. Процесс разработки идет от примитивных конструкций, лежащих в глубине, к решению всей задачи, лежащей на поверхности. Поэтому такой подход называется восходящим. Противоположным к нему является нисходящий подход, при котором процесс проектирования заключается в постепенном продвижении от всей задачи к уровню того языка программирования, на котором будет сформулирована программа. Можно также сказать, что восходяща разработка программ соответствует движению от частного к общему, а нисходящая - от общего к частному.  [20]

Она может не содержать ничего, кроме входного и выходного операторов и сообщения о своем выполнении. Полезно, но не обязательно программировать в заглушке также подготовку данных, нужных модулям верхнего уровня. Заглушки содержат некоторые чисто технологические компоненты, но в конечном итоге их объем меньше, чем в отладочных программах; заглушки обычно устроены проще. При использовании метода нисходящей разработки детальное проектирование программы, кодирование, проверку и документирование можно делать параллельно. Подчеркнем, однако, что подробное кодирование откладывается на более поздние сроки. О том, как разрабатывать и реализовывать программу с помощью нисходящего подхода, рассказывается в гл.  [21]



Страницы:      1    2