- •Базовые принципы разработки программ (их описание)
- •Программный модуль, программный продукт, система, нотация
- •Основные процессы жизненного цикла (определения). Работы, из которых состоит процесс разработки
- •Вспомогательные процессы жизненного цикла. Организационные процессы жизненного цикла
- •Вспомогательные процессы жизненного цикла:
- •Базовые стратегии разработки по
- •Каскадная стратегия разработки программных средств и систем (понятие, достоинства и и недостатки)
- •Инкрементная стратегия разработки программных средств и систем (понятие, достоинства и недостатки)
- •Эволюционная стратегия разработки программных средств и систем (понятие, достоинства и недостатки)
- •Каскадная модель, варианты каскадной модели (рисунок справа)
- •Модели быстрой разработки приложений
- •Базовая модель быстрой разработки приложений. Достоинства, недостатки и области использования rad-моделей
- •Компонентно-ориентированная спиральная модель
- •Категории критериев классификации проектов по разработке программ
- •Стадии применения модели в конкретном проекте
- •Характеристики проекта (для решения задач процесса разработки)
- •Структурное программирование. Концепции структурного программирования
- •Базовые структуры программирования в соответствии с принципом Бома и Джакопини
- •Управляющие конструкции структурного программирования
- •Метод Дамке. Основные конструкции структурного программирования по методу Дамке.
- •Схемы Насси–Шнейдермана (структурограммы)
- •Обозначение конструкций структурированных алгоритмов в схемах Насси–Шнейдермана
- •Модульное проектирование программных средств
- •Признаки модульности программ. Достоинства модульного проектирования. Недостатки модульности
- •Методы нисходящего проектирования: суть метода.
- •Основные классические стратегии, на которых основана реализация метода нисходящего проектирования
- •Пошаговое уточнение. Способы реализации. Преимущества метода
- •Проектирование программных средств с помощью псевдокода и управляющих конструкций структурного программирования
- •Использование комментариев для описания обработки данных. Анализ сообщений
- •Методы восходящего проектирования. Случаи применения.
- •Методы расширения ядра, подходы к реализации метода
- •Метод jsp ДжексонаОсновные конструкции данных метода jsp Джексона. Этапы метода jsp
- •Виды документов для создания структур
- •Создание структуры программы. Этапы создания
- •Связанность модуля. Сцепление модуля
- •Сущность, особенности сущности
- •Основные понятия idef0-модели
- •Синтаксис idef0-диаграмм.Дуги в idef0-моделиВзаимоотношения между блоками в idef0-модели
- •Представление блоков и дуг на диаграмме
- •Основной принципом методологии Варнье–Орра. Базовые конструкции диаграмм Варнье–Орра
- •Способы представления сущностей с атрибутами
- •Графическое представление сущностей. Текстовый способ представления сущностей. Табличный способ представления сущностей
- •Контекстная диаграмма и ее декомпозиция. Стратегии декомпозиции в idef0-модели
- •Методы структурного анализа и проектирования
- •Принципы объектно-ориентированного анализа и проектирования
- •Виды отношений между объектами
- •Виды диаграмм языка uml
- •Язык uml Модели языка uml
- •Уровни моделей языка uml
- •Диаграмма вариантов использования
- •Виды отношений между элементами на диаграммах вариантов использования
- •Технология разработки программ
- •Динамическое программирование
- •Поиск. Поиск в списках Деревья поиска
- •Стратегия распределения памяти Сопрограммы
- •Матричное управление проектом
- •Структура группы выпуска документации
- •Компонент. Характеристики компонента Разновидности компонентов
- •Интерфейс компонента. Компоненты реализации программной системы
- •Компонентная объектная модель com
Методы структурного анализа и проектирования
В структурном анализе и проектировании используются различные модели, описывающие:
• Функциональную структуру системы;
• Последовательность выполняемых действий;
• Передачу информации между функциональными процессами;
• Отношения между данными.
Наиболее распространенными моделями первых трех групп являются:
• функциональная модель SADT (StructuredAnalysisandDesignTechnique)- Метод SADT представляет собой совокупность правил и процедур, предназначенных для построения функциональной модели объекта какой-либо предметной области. Функциональная модель SADT отображает функциональную структуру объекта, т.е. производимые им действия и связи между этими действиями. Метод SADT разработан Дугласом Россом (SoftTech, Inc.) в 1969 г. для моделирования искусственных систем средней сложности);
• модель IDEF3-часть семейства стандартов IDEF, был разработан в конце 1980-х годов для закрытого проекта ВВС США. Этот метод предназначен для таких моделей процессов, в которых важно понять последовательность выполнения действий и взаимозависимости между ними. Хотя IDEF3 и не достиг статуса федерального стандарта США, он приобрел широкое распространение среди системных аналитиков как дополнение к методу функционального моделирования IDEF0 (модели IDEF3 могут использоваться для детализации функциональных блоков IDEF0, не имеющих диаграмм декомпозиции). Основой модели IDEF3 служит так называемый сценарий процесса, который выделяет последовательность действий и подпроцессов анализируемой системы.;
• DFD (DataFlowDiagrams) - диаграммы потоков данных- представляют собой иерархию функциональных процессов, связанных потоками данных. Цель такого представления - продемонстрировать, как каждый процесс преобразует свои входные данные в выходные, а также выявить отношения между этими процессами.
Принципы объектно-ориентированного анализа и проектирования
1.принцип абстрагирования – предписывает включать в модель только те аспекты предметной области, которые имеют непосредственное отношение к выполнению проектируемой системой своих функций; абстрагирование сводится к формированию абстракций, определяющих основные характеристики внешнего представления объектов; 2.принцип инкапсуляции – предписывает разделять элементы абстракции на секции с различной видимостью, что позволяет отделить интерфейс абстракции от его реализации; обычно скрываются структура объектов и реализация их методов;
3. принцип модульности – определяет возможность декомпозиции проектируемой системы на совокупность сильно связанных и слабо сцепленных модулей (определение модулей выполняется при физической разработке системы, определение классов и объектов – при логической разработке;
4. принцип иерархии – означает формирование иерархической структуры абстракций; принцип предписывает выполнять иерархическое построение мо- делей сложных систем на различных уровнях детализации;
5. принцип многомодельности – обозначает, что при моделировании предметной области необходимо разрабатывать различные модели проектируемой сложной системы, отражающие различные аспекты ее поведения или структуры.
