- •Лекции по курсу «Технология программирования». Два подхода к разработке программных средств
- •Основные задачи, решаемые при разработке пс
- •Основные понятия и определения, используемые при разработке сложных кп
- •Особенности кп срмв.
- •Основные требования к кп срмв
- •Жизненный цикл сложных кп
- •Каскадная модель жизненного цикла
- •Итеративная модель (Спиральная модель) разработки по
- •Документация на сложные кп
- •Примеры итеративных процессов разработки
- •Виды программ и программных документов
- •Пояснительная записка
- •Техническое задание
- •Стадии разработки
- •Общие требования к программным документам
- •Спецификация
- •Формуляр
- •Текст программы
- •Описание программы
- •Программа и методика испытаний
- •Руководство системного программиста
- •Руководство оператора
- •Типовая структура программы и программного модуля
- •Понятие резидентных и кросс–систем автоматизации
- •Проблемы стандартизации при разработки пс
- •Принципы разработки больших кп
- •Принципы организации коллективов разработчиков кп
- •Тестирование и отладка по
- •Принципы тестирования.
- •Критерии тестирования Критерии «Черного ящика»:
- •Критерии «Белого ящика»:
- •Виды тестирования
- •Основные способы получения эталонов
- •Типичные ошибки при проектировании кп
- •Технологические ошибки
- •Программные ошибки
- •Алгоритмические ошибки
- •Системные ошибки
- •Динамика изменения количества сложныхошибок кп при отладке
- •Определение рациональной длительности отладки
- •Основные принципы отладки
- •Методы отладки
- •Принципы отладки
- •Принципы комплексной отладки и испытаний кп
- •Комплексная отладка
Типовая структура программы и программного модуля
По сути дела это требования к тексту программы.
Текст программы начинается с развернутого комментария, который состоит из:
наименование и назначение программы;
автор программы;
время написания;
особенности программы (если имеются).
описание входных переменных на языке программирования с обязательными комментариями
описание выходных переменных на языке программирования с обязательными комментариями
описание внутренних переменных на языке программирования с обязательными комментариями
тело программы, которое представляет из себя текст программы, определяющий производимые действия.
В теле программы должны быть комментарии, но не для каждого оператора, а лишь для тех, которые определяют логику работы программы(условные переходы, циклы, блоки обработки информации).
Понятие резидентных и кросс–систем автоматизации
Разработка программных средств осуществляется на технологических ВС (ТВС), эксплуатация на исполнительных ВС (ИВС).
Как правило, при любых вариантах разработки, мощность ТВС превосходит, и в ряде случаев весьма существенно, мощность ИВС.
В том случае, когда ИВС совпадает с ТВС по системе команд мы имеем так называемые резидентные системы автоматизации. Т.е. ТВС сразу создает машинный код, который исполним на ИВС.
Преимущества резидентных систем:
простота разработки ПС;
возможность использования мощных ОС, БД, средств автоматизации, отладки и т.д.
Недостатки:
Часто ИВС оказываются слишком мощными, что может сказываться на стоимости системы в целом.
При разработке ПС на основе кросс-систем автоматизации (КСА), ТВС не совпадает с ИВС по машинному коду, а также, как правило, по набору команд, что характерно главным образом для СРМВ и управляющих систем.
При этом, в большинстве случаев, нецелесообразна разработка мощных служебных программ, таких как ОС и.д., для ИВС, т.к. она является либо слишком дорогой, либо вообще невозможна из-за особенностей системы команд ИВС.
Преимуществакросс-систем:
Очень часто не требуется большая мощность ИВС, при этом используются сравнительно недорогие аппаратные решения.
Разработка ведется на ТВС большой мощности, обладающих мощными средствами разработки.
Недостатки:
Для проведения разработок приходится создавать специальные технологические средства для ТВС. Это в первую очередь кросс-компилятор, который получая входной текст, как правило, на известных и мощных языках программирования, генерирует машинный код для ИВС, т.е. переводит текст программы с ЯВУ в машинный код ИВС.
Проблемы стандартизации при разработки пс
Под стандартизацией будем понимать как стандартизацию средств разработки, так и стандартизацию методов разработки.
Цели стандартизации:
Повышение производительности труда разработчиков;
Улучшение качества ПС.
Это достигается за счет единого подхода для всех членов команды разработчиков как по средствам, так и по методам разработки.
Примеры:
Создание и принятие стандартов, часто в мировом масштабе, на языки программирования, на системы управления базами данных (СУБД).
Принятие стандартов на документацию, на технологический цикл разработки, на организацию коллектива разработчиков, а также на последовательность проведения работ.
