
- •О. В. Шишов технология разработки программных продуктов
- •1. Программы и программирование
- •1.1 Основные определения
- •1.2. Классификация программ и различные виды программирования
- •1.3. Категории специалистов, занятых разработкой и эксплуатацией программ
- •2. Жизненный цикл программного обеспечения
- •2.1 Основные этапы жизненного цикла и их взаимосвязь
- •2.2 Стратегии и модели жизненного цикла
- •3. Качество по
- •3.1 Критерии оценки качества по
- •3.2 Методы оценки качества программного средства
- •4. Надежность программных продуктов
- •4.1 Надежность и виды отказов
- •4.2 Надежность и правильность программы
- •4.3. Вероятностный подход к оценке надежности
- •4.4 Факторы надежности
- •4.5 Приемы надежного программирования
- •6.2. Стандарты технологии создания программных продуктов
- •6.3. Основные этапы технологического процесса разработки программ
- •7. Структурное проектирование программных продуктов
- •7.1. Модули. Сцепление и связность модулей
- •7.2. Структура программных продуктов
- •7.3. Методы структурного программирования
- •8. Алгоритмическое представление задачи программирования
- •8.1. Свойства алгоритмов
- •8.2. Формы записи алгоритмов
- •8.3. Базовые алгоритмические структуры
- •9. Языки программирования
- •9.1. Основные понятия и элементы языков программирования
- •9.2. Классификация языков программирования
- •9.3. Развитие языков программирования
- •10. Пользовательский интерфейс
- •10.1. Типы интерфейсов
- •10.2. Этапы разработки пользовательского интерфейса
- •10.3. Критерии оценки интерфейса пользователем
- •11. Порядок работы эвм при выполнении программ. Трансляторы, интерпритаторы, компиляторы
- •12. Оптимизация программ
- •13. Отладка и тестирование программного обеспечения
- •13.1. Классификация неисправностей и ошибок в программе
- •13.2. Порядок и способы отладки и тестирования программ
- •13.3. Методы тестирования
- •13.4. Требования и рекомендации по тестированию программ
- •13.4. Программирование «с защитой от ошибок»
- •14. Аттестация программного средства
- •15. Сопровождение по
- •16. Защита программных продуктов
- •16.1. Обеспечение защищенности программных средств
- •16.3. Правовые методы защиты программных продуктов
- •17. Документорование программных продуктов
- •17.1. Виды программных документов
- •17.2. Содержание документации по еспд
- •17.3. Стиль оформления программы
- •Содержание
17.3. Стиль оформления программы
С точки зрения технологичности хорошим считают стиль оформления программы, облегчающий ее восприятие как самим автором, так и другими программистами, которым, возможно, придется ее проверять или модифицировать. «Помните, программы читаются людьми», призывал Д. Ван Тассел, автор одной из известных монографий, посвященной проблемам программирования [60].
Именно исходя из того, что любую программу неоднократно придется просматривать, следует придерживаться хорошего стиля написания программ.
Стиль оформления программы включает:
• правила именования объектов программы (переменных, функций, типов, данных и т. п.);
• правила оформления модулей;
• стиль оформления текстов модулей.
Правила именования объектов программы. При выборе имен программных объектов следует придерживаться следующих правил:
• имя объекта должно соответствовать его содержанию, например:
MaxItem – максимальный элемент;
NextItem – следующий элемент;
• если позволяет язык программирования, можно использовать символ «_» для визуального разделения имен, состоящих из нескольких слов, например: Max_Item, Next_Itetm;
• необходимо избегать близких по написанию имен, например: Index и InDec.
Правила оформления модулей. Каждый модуль должен предваряться заголовком, который, как минимум, содержит:
• название модуля;
• краткое описание его назначения;
• краткое описание входных и выходных параметров с указанием единиц измерения;
• список используемых (вызываемых) модулей;
• краткое описание алгоритма (метода) и/или ограничений;
• ФИО автора программы;
• идентифицирующую информацию (номер версии и/или дату последней корректировки).
Стиль оформления текстов модулей. Стиль оформления текстов модулей определяет использование отступов, пропусков строк и комментариев, облегчающих понимание программы.
Как правило, пропуски строк и комментарии используют для визуального разделения частей модуля, например: {проверка количества отрезков и выход, если отрезки не заданы}
Для таких языков, как Pascal, C++ и Java, использование отступов позволяет прояснить структуру программы: обычно дополнительный отступ обозначает вложение операторов языка.
Содержание
1. ПРОГРАММЫ И ПРОГРАММИРОВАНИЕ 1
1.1 Основные определения 1
1.2. Классификация программ и различные виды программирования 4
1.3. Категории специалистов, занятых разработкой и эксплуатацией программ 6
2. ЖИЗНЕННЫЙ ЦИКЛ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 8
2.1 Основные этапы жизненного цикла и их взаимосвязь 8
2.2 Стратегии и модели жизненного цикла 11
3. КАЧЕСТВО ПО 20
3.1 Критерии оценки качества ПО 20
3.2 Методы оценки качества программного средства 25
4. НАДЕЖНОСТЬ ПРОГРАММНЫХ ПРОДУКТОВ 26
4.1 Надежность и виды отказов 26
4.2 Надежность и правильность программы 28
4.3. Вероятностный подход к оценке надежности 29
4.4 Факторы надежности 30
4.5 Приемы надежного программирования 33
5. ОБЕСПЕЧЕНИЕ ТОЧНОСТИ ПРОГРАММНОГО СРЕДСТВА 34
6. ОБЩАЯ ТЕХНОЛОГИЯ ПРОЕКТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 34
6.1. Определение технологии программирования. 34
Требования к технологии 34
6.2. Стандарты технологии создания программных продуктов 36
6.3. Основные этапы технологического процесса разработки программ 37
7. СТРУКТУРНОЕ ПРОЕКТИРОВАНИЕ ПРОГРАММНЫХ ПРОДУКТОВ 45
7.1. Модули. Сцепление и связность модулей 46
7.2. Структура программных продуктов 51
7.3. Методы структурного программирования 54
8. АЛГОРИТМИЧЕСКОЕ ПРЕДСТАВЛЕНИЕ ЗАДАЧИ ПРОГРАММИРОВАНИЯ 57
8.1. Свойства алгоритмов 58
8.2. Формы записи алгоритмов 58
8.3. Базовые алгоритмические структуры 64
9. ЯЗЫКИ ПРОГРАММИРОВАНИЯ 73
9.1. Основные понятия и элементы языков программирования 73
9.2. Классификация языков программирования 76
9.3. Развитие языков программирования 83
10. ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС 87
10.1. Типы интерфейсов 88
10.2. Этапы разработки пользовательского интерфейса 92
10.3. Критерии оценки интерфейса пользователем 92
11. ПОРЯДОК РАБОТЫ ЭВМ ПРИ ВЫПОЛНЕНИИ ПРОГРАММ. ТРАНСЛЯТОРЫ, ИНТЕРПРИТАТОРЫ, КОМПИЛЯТОРЫ 93
12. ОПТИМИЗАЦИЯ ПРОГРАММ 96
13. ОТЛАДКА И ТЕСТИРОВАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 98
13.1. Классификация неисправностей и ошибок в программе 98
13.2. Порядок и способы отладки и тестирования программ 101
13.3. Методы тестирования 105
13.4. Требования и рекомендации по тестированию программ 106
13.4. Программирование «с защитой от ошибок» 111
14. АТТЕСТАЦИЯ ПРОГРАММНОГО СРЕДСТВА 114
15. СОПРОВОЖДЕНИЕ ПО 116
16. ЗАЩИТА ПРОГРАММНЫХ ПРОДУКТОВ 116
16.1. Обеспечение защищенности программных средств 116
16.3. Правовые методы защиты программных продуктов 120
17. ДОКУМЕНТОРОВАНИЕ ПРОГРАММНЫХ ПРОДУКТОВ 122
17.1. Виды программных документов 122
17.2. Содержание документации по ЕСПД 125
17.3. Стиль оформления программы 129
Содержание 131