Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по информатике.doc
Скачиваний:
43
Добавлен:
02.05.2014
Размер:
431.62 Кб
Скачать

Планирование тестов.

Вместе с планированием порядка, в к-ом следует разрабатывать модули, необходимо параллельно планировать и разработку тестов.

Достоинства планирования тестов:

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

  2. лучше понимаются ограничения на входные данные. Это заставляет принимать решения и вносить ясность на более ранних этапах разработки программы

  3. тесты, подготовленные до программирования, лучше проверяют программу.

Структурное программирование.

Бойм впервые док-л, что прогр для решения любой логич задачи можно составить только из структур:

  1. следование

  2. развилка

  3. повторение

У аправляющие структуры.

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

Обозначение проверки:- предикатный узел

Он представляет собой ромб, в к-ый входит 1 линия управления, а выходят 2. Помещенный внутри ромба предикат«Р»обозначает условие, к-ое следует проверить.

Обозначение слияния:Соединяются пути управления (2 входа, 1 выход) – внутри ничего не

пишется.

Соединительные линии:Они в схемах играют роль соединения, изображают направление передачи управления.

Структура «следование»

Управление передается от одного обозначения обработки к следующему.

Структура «развилка»

Если … то … иначе. Служит для выбора одной из 2-х альтернатив.

Цикл «Пока»

Эта структура служит для изображения повторений (циклов), к-ая встречается практически во всех программах. В этой структуре управление проходит через узел слияния к обозначению проверки. Здесь происходит вычисление логич выражения Р. Если оно истинно, то вып-ся действие а и вновь вычисляется Р. Если оно ложь, то а не вып-ся. Т.к. выражение Р вычисляется до начала вып-ия действия, может проихойти таким образом, что это действие не будет вып-ся ни разу. Если, в свою очередь, Р сод-т управл переменную, нач знач к-ой было присвоено до нач цикла, то при вып-ии а, значение переменной измениться.

Цикл «До»

Структура представляет те же возможности, что и «пока», за исключением:

  1. в структуре цикла «до» происходит после вып-ия а. Т.о. doбудет вып-ся хотя бы 1 раз.

  2. цикл «до» завершается, когда Р становится истинным, а цикл «пока», когда Р – ложно.

Структура выбора (case)

В этой структуре пути после разных действий сходятся в одной точке. Управление от точки входа всегда попадает в точку выхода. Выбор пути опред-ся проверкой.

Пошаговая детализация.

Это очень известный метод, позволяющий эффективно детализировать (уточнять) программу. Каждый шаг этого процесса включает в себя разложение функции модуля на подфункции. В конечном итоге эти подфункции превращ в шаги нужной программы. Этот процесс подобен нисходящему проектированию программы, при к-ом схема иерархии исп-ся как схема разложения программы на составляющие ее модули. Схема иерархии показывает ф-ии их подчинения, но она не проявляет внутр логики каждого модуля.

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

Термин «пошаговая детализация»подразумевает уточнение на каждом шаге программы. 1 шаг связан с общим предложением. Дальнейшая детализация разложения первого общего шагав послед-сти шагов 2-ого или более низкого уровня заставляет более точно опред-ть логику модуля, что явл-ся детализацией предыд формулировки задачи. Детализация отд программных модулей связана с их функц-ым применением.

При использовании псевдокода для пошаговой детализации на каждом новом шаге логика работы модуля описывается все точнее. Когда каждое предложение псевдокода непосредственно переводится в 1 или 2 предложения ЯП, можно считать, что процесс пошаговой детализации завершен.

Сущ-т неск-ко общих принципов, к-ых следует придерживаться, независимо от того, применяется ли псевдокод или нет для детализации программы:

  1. не спешите заниматься мелочами

  2. тщательно взвешивайте принимаемые решения

  3. внимательно отслеживайте данные

  4. будьте готовы отменить ранее принятые решения.