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