Проектирование программ. Возможности реализации.




Кодирование программы: средства псевдокодов, соглашения о псевдокодах, фактическое программирование. Понятие о работе по методу бригады главного программиста: обязанности членов бригады; дополнительные члены бригады и условия их необходимости и привлечения; рекомендации по бригадному программированию. Библиотеки поддержки разработки, использование программ, документирование, переписывание программ.

Литература: [9], [11], [12], [13].

Эффективность программ.

Отношение к эффективности. Эффективность или удобочитаемость? Оптимизирующие компиляторы. Оптимизация программ: сегментация программ; время работы подпрограмм; профили выполнения программы; оценка возможных улучшений программы; оценка необходимых усилий для оптимизации программы; шаги оптимизации. Оптимизация памяти, используемой программой: оверлейность программы; виртуальная память; заголовки сообщений; эквивалентность; использование циклов. Вычислительные составляющие оптимизации: вычисление констант; арифметика с фиксированной точкой; смешанные типы данных; группировка; повторяющиеся вычисления; обращения к функциям. Исключение циклов и их организация с целью оптимизации работы программы. Условные (логические) выражения, индексация и типы индексов. Оптимизация этапов ввода/вывода информации. Модули.

Литература: [9], [11], [12], [13].

Отладка программ.

Различие между отладкой и тестированием. Отладочный барьер. Характеристика наиболее распространенных ошибок: ошибки описания задачи; ошибки выбора алгоритма; ошибки анализа; ошибки общего характера; ошибки физического характера. Бесхитростное программирование. Правильность программ. Синтаксические ошибки. Ошибки не обнаруживаемые компилятором. Виды отладки. Общие рекомендации: неопределенные переменные; план распределения памяти; опечатки; проверка программы за столом; описание переменных; ошибки ввода/вывода. Обнаружение ошибок: отладочная информация; выборочная печать; прослеживание логических ветвей; защитное программирование. Средства отладки: отладка в интерактивном режиме; отладочные модули для проверки программ; автоматические проверки. Программирование без ошибок. Псевдоотладка. Время необходимое для отладки. Предотвращение ошибок.

Литература: [9], [11], [12], [13].

Тестирование программ.

Небрежность начинающих программистов. Проблема живучести программы. Необходимая полнота тестирования. Невозможность исчерпывающего тестирования. Технические требования к тестированию. Необходимость раннего тестирования. Проверка правильности проектного решения. Методы тестирования. Тестовые данные, примеры. Тестирование программ математических вычислений. Библиотеки программ. Тестирование файлов. Системные испытания. Средства тестирования. Контроль результатов с помощью проверяемой программы. Планирование тестирования программ. Оценка полноты проверки программы. Повторное тестирование. Группа тестирования.

Литература: [9], [11], [12], [13].

 

«Нелокальные итерационные процессы решения

Нелинейных уравнений»

14. Нелокальные одношаговые итерационные процессы неполного прогноза для решения нелинейных уравнений с гладкими операторами.

Определение производной Фреше. Достоинства и недостатки классического метода Ньютона. Понятие полного и неполного прогноза. Доказательство одной из теорем, позволяющих получить с помощью нелокального итерационного процесса решение нелинейного уравнения f(x)=0, если такое решение существует. Формулировка теоремы о необходимости регуляризации.

Литература: [14], [15], [16], [17], [21], [23].

15. Нелокальные многошаговые итерационные процессы неполного прогноза для решения нелинейных уравнений с гладкими операторами.

Определение производной Фреше нелинейного оператора f(x). Обоснование необходимости разработки квазиньютоновских процессов, сходящихся к решению с “плохого” начального приближения. Определение одношаговых и многошаговых методов, методов полного и неполного прогноза. Формулировка и доказательство одной из теорем, позволяющих получить с помощью нелокального итерационного процесса решение нелинейного уравнения f(x)=0, если такое решение существует. Формулировка теоремы о необходимости регуляризации.

Литература: [14], [15], [16], [17], [21], [23].

16. Нелокальные одношаговые итерационные процессы полного прогноза для решения нелинейных уравнений с гладкими операторами.

Определение производной Фреше нелинейного оператора. Ограниченность применения классического метода Ньютона. Определение понятия “полного” и “неполного” прогноза. Метод Н.Н. Калиткина решения нелинейных уравнений с гладкими операторами. Необходимость в разработке квазиньютоновских одношаговых методов полного прогноза для решения нелинейных уравнений с гладкими операторами. Формулировка и доказательство одной из теорем о нелокальной сходимости одношагового итерационного процесса полного прогноза. Формулировка теоремы о необходимости регуляризации.

Литература: [14], [15], [16], [17], [19], [21], [23].



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-13 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: