- •ОСНОВЫ ТЕХНОЛОГИИ РАЗРАБОТКИ ПРОГРАММ
- •ОСНОВЫ ТЕХНОЛОГИИ РАЗРАБОТКИ ПРОГРАММ
- •Требования к программам как к промышленному изделию - критерии качества программ
- •КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
- •КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
- •КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
- •Технологические принципы разработки программ
- •Этапы разработки программы
- •Этапы разработки программы
- •Внешняя спецификация задачи
- •Правила записи спецификаций
- •Правила записи спецификаций - правила структурирования текстов
- •Правила записи спецификаций - правила структурирования текстов
- •Правила записи спецификаций
- •Правила записи спецификаций
- •Аномалии
- •Обработка аномалий
- •Тестирование - первые сведения
- •ТЕСТЫ
- •Функциональные тесты
- •Функциональное
- •Структурное тестирование
- •Способы тестирования
- •ОТЛАДКА ПРОГРАММ
- •Документация на разработанную программу
ОСНОВЫ ТЕХНОЛОГИИ РАЗРАБОТКИ ПРОГРАММ
ОСНОВЫ ТЕХНОЛОГИИ РАЗРАБОТКИ ПРОГРАММ
Разработка программ - промышленное производство необходима технология
разработки программ.
Требования к программам как к промышленному изделию - критерии качества программ
•Надежность (отсутствие некомментируемых отказов)
•Наличие «дружественного интерфейса»
•Простота анализа и изменения программы
•Документированность
Соответствие постановке задачи !•
• Эффективность
КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
Соответствие постановке задачи
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Простота анализа |
|
|||||
|
Наличие |
||||||||||||
|
«дружественного |
|
|
|
и изменения |
|
|||||||
|
интерфейса» |
|
|
|
программы |
|
|||||||
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Надежность |
|
|
|
|
|
|
Документированность |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Удобство использования и сопровождения
КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
Простота анализа и изменения программы
Модульность
Метод
нисходящего
проектирования
алгоритмов
Использование
подпрограмм
Ограниченное
использование
глобальных
переменных
Наглядность написания
Использование Структурная базовых форма записи
алгоритмических
структур
if (F(B)*F(x)<=0)
- |
+ |
A=x; |
|
else |
|||
|
|
||
|
|
B=x; |
КРИТЕРИИ КАЧЕСТВА ПРОГРАММ
Эффективность программы
Минимальное время |
|
Минимальный объем |
вычислений при |
|
памяти при |
ограниченных |
|
ограниченном |
ресурсах |
|
времени вычислений |
Ресурсы: объемы памяти различных уровней, время работы устройств
Технологические принципы разработки программ
Процесс проектирования - последовательность этапов разработки.
Структурное программирование.
Основная идея: сначала обдумай задачу, алгоритм, тесты, а потом занимайся кодированием программы на алгоритмическом языке!
Этапы разработки программы
• |
Анализ задачи |
|
35% |
||
• |
Разработка алгоритмов |
25% |
• |
Кодирование алгоритма |
10% |
• |
Отладка и тестирование |
|
|
программы |
20% |
• Оформление документов |
10% |
|
|
|
|
Примерная
трудоемкость
Этапы разработки программы
Этап 1 |
Анализ задачи |
Разработка внешней |
|
Подготовка |
спецификации |
|
функциональных |
задачи |
|
тестов |
Внешняя спецификация задачи
1. Название и условие задачи
2. Входные данные: состав (имя, смысл, тип, структура); диапазон; точность; объем;
форма записи - форма ввода (входная форма)
3. Выходные данные: состав (имя, смысл, тип, структура); диапазон; точность; объем;
форма вывода (выходная форма) 4. Метод решения (название или описание) или (и)
4а. Связь входных и выходных данных (возможно, формулы)
5.Аномалии: аномальные ситуации и реакции на них
6.Функциональные тесты