- •5,6 Семестр Общие принципы проектирования программных систем. Этапы жизненного цикла программной системы.
- •1. Постановка задачи:
- •Требования, предъявляемые к программным системам:
- •2. Разработка:
- •3. Реализация:
- •Нисходящее и восходящее проектирование.
- •Структурное программирование (без go to).
- •2) Ветвление (if): 3) цикл с предусловием (do while):
- •1.2.4. Язык проектирования (метаязык)
- •Глава 2. Структуры данных.
- •2.1. Агрегативные переменные
- •2.2. Динамические структуры данных.
- •2.2.1. Списки. (Списочные структуры).
- •2.2.2. Очереди
- •2.2.3. Стеки
- •2.2.4. Множества
- •2.2.5. Деревья и графы
- •1 . Направленный граф:
- •2 . Ненаправленный граф:
- •2.3. Абстрактные структуры данных
- •2.3.2. Объекты
- •2.4. Файловые типы данных
- •2.4.4. Операции над файлами
- •4. Специальные операции:
- •Специальные типы файлов языка Pascal.
- •Файлы в других языках
- •3. Алгоритмы
- •3.1. Типы алгоритмов. Сложность алгоритмов.
- •3.2. Способы реализации алгоритмов.
- •5.2 Реализация наследования в Паскале
- •5.3 Проблема наследования статических методов
- •6.1 Объекты и их жизненный цикл
- •6.2. Инкапсуляция. Св-ва
- •6.3 Наследование
- •6.4. Области видимости
- •6.5 Информация о классе
- •Особенности архитектуры программ
- •7 .1 Обработчики сообщений Windows в Delphi
- •Средства разработки Windows приложений
- •4.4.2 Основные понятия ооп
- •4.4.3 Типы оос
- •4.4.4 Общие принципы работы оос-м
- •Особенности объектно-ориентированных систем
- •4.1 Декомпозиция и абстракция
- •Методы проектирования ориентированные на обработку
- •4.2.1 Модульное программирование
- •4.2.2 Функциональная декомпозиция
- •1. Пошаговое уточнение:
- •2. Метод анализа потоков данных:
- •Связанность модулей
- •Сцепление модулей
- •4.2.3. Технология структурного анализа проекта
- •4.2.4 Язык определения задач psl/psa
- •Методология Джексона
- •Методология Уорнера
- •4.2.6. Метод иерархических диаграмм hipo
- •Методы проектирования ориентированные на данные
Московский Государственный Технический Университет
им. Н. Э. Баумана
Калужский филиал
конспект лекций по курсу
" Проектирование алгоритмов
и программных систем "
5,6 Семестр Общие принципы проектирования программных систем. Этапы жизненного цикла программной системы.
Определяют 5 этапов:
Проектирование программы:
1) постановка задачи
2) разработка
3) реализация
4) испытание
Использование программы:
5) эксплуатация
1. Постановка задачи:
На этом этапе определяется цель проектирования программной системы. Составляется техническое задание (для России определяется стандартом ГОСТ 19.201-78), составляются и утверждаются соответствующие юридические документы (договор, контракт и т.п.). Результатом (итогом) выполнения данного этапа является техническое задание, в котором определяются все функции разрабатываемой программной системы и предъявляемые к ней требования.
Требования, предъявляемые к программным системам:
1) требование к правильности: предполагает, что программа функционирует в соответствии с техническим заданием.
2) требование к точности: предполагает, что числовые данные выдаваемые прогой имеют допустимые отклонения.
3) требование к надёжности: предполагает, что программа при всех условиях обеспечивает абсолютную повторяемость результатов.
4) требование к универсальности: предполагает, что программа работает при допустимых вариантах исходных данных (то есть входные данные должны проверяться самой программой)
5) требование к защищённости: предполагает, что программа сохраняет работоспособность при сбоях. Это особенно важно для программ работающих в режиме реального времени. Это же актуально для программ работающих с большими объёмами данных в течение длительного времени (то есть поддержка программой аппаратной платформы с резервными компонентами – 2 процессора (1 – основной; 2-резервный, то есть запасной), два HDD и т.п. с целью включения резервного компонента в случае отказа основного)
6) требование к полезности: предполагает обоснование (доказательство необходимости) разработки программы (техническое, экономическое и т.п.).
7) требование к эффективности: предполагает, что объём ресурсов (например, объем памяти, быстродействие процессора) запрашиваемый программой не превышает заданного предела оговорённых в Техническом Задании (ТЗ).
8) требование к проверяемости: предполагает, проверку правильности и универсальности. Существует два способа проверки правильности: а) опирается на формальные математические выкладки (применим только для очень простых программ) б) неформальные способы (отладка с контрольными остановами).
9) требование к адаптируемости: предполагает, что программа допускает лёгкое приспособление к новым условиям эксплуатации (возможность автоматической настройке к новой среде).
10) требование к совместимости: предполагает, что программа работает должным образом не только автономно, но и как составная часть программной среды (в том числе может совместно работать с другими программами, которые используют тот же самый формат данных, например, некоторый стандартный формат - .doc, .xls, .pdf, или даже просто .txt).
11) требование к документированности. Это означает что создан полный комплект документов, в котором отражены все этапы разработки и создан комплект инструкций для пользователя.