
- •Понятие программного обеспечения, классификация программного обеспечения
- •Жизненный цикл по и его стандартизация, процессы жц по, группы процессов жц по
- •Процесс разработки по: основные действия и их содержание
- •Анализ требований к по
- •Проектирование архитектуры по
- •Кодирование и тестирование по
- •Сертификация процессов разработки по, модель cmm
- •Стратегии жизненного цикла по: понятие, виды и их сравнительная характеристика
- •Каскадная модель жизненного цикла по: описание, преимущества и недостатки, критерии применения
- •Процесс макетирования по: его содержание, преимущества и недостатки, критерии применения
- •Недостатки:
- •Инкрементная модель жизненного цикла по: описание, преимущества и недостатки, критерии применения
- •Спиральная модель жизненного цикла по: описание, преимущества и недостатки, критерии применения
- •Rad модель жизненного цикла по: описание, преимущества и недостатки, критерии применения
- •Структурный подход к разработке по: основные принципы и методы
- •Методология idef0: назначение, icom-модель, правила построения диаграммы
- •Методология idef0: назначение, правила построения иерархии диаграмм, критерии завершения и стратегии декомпозиции
- •Методология dfd: назначение, элементы диаграммы и их назначение, правила построения диаграммы
- •Методология dfd: правила построения иерархии диаграмм, спецификации и их содержание
- •Модификация dfd п. Варда и с. Меллора
- •Модификация dfd д. Хетли и и. Пирбхаи
- •Методология idef1x: назначение, сущности и связи: понятие и их обозначения
- •Методология idef1x: назначение, виды и уровни моделей, порядок построения
- •21 Методология idef3: назначение, единица работы, связи и их виды, соединения и их виды
- •Типы связей idef3
- •Типы соединений
- •Виды указателей idef3
- •22 Основные этапы проектирования программных систем и их содержание
- •Информационные потоки процесса синтеза программной системы
- •23 Структурирование программной системы: цели и модели
- •Широковещательная модель
- •Модель, управляемая прерываниями
- •Модульность программной системы: понятие и свойства модуля, цели модульной декомпозиции
- •Затраты на модульность
- •26 Связность модуля: понятие, виды связности и их описание
- •Характеристика связностей модуля
- •27 Сцепление модулей: понятие, виды сцепления и их описание
- •28 Сложность программной системы, основные подходы к ее оценке
- •29 Структурные карты Констайнтайна
- •Элементы структурных карт: а) – модуль; б) – вызов модуля; в) – связь по данным; г) – связь по управлению
- •Типы вызовов модулей
- •30 Метод анализа и проектирования Джексона
- •Соединения между физическими процессами и их моделями
- •31.Объектно-ориентированный подход к разработке по: основные понятия и принципы
- •32.Язык uml: причины появления и история развития языка, структура языка
- •33.Канонические диаграммы языка uml: их виды и типы, рекомендации построения
- •34.Механизмы расширения uml: виды, примеры использования
- •35.Диаграмма вариантов использования: назначение, принципы построения
- •36.Диаграмма классов: назначение, классы, обозначение классов, их атрибутов и операций
- •37.Диаграмма классов: назначение, отношения между классами и их применение
- •38.Диаграмма композитной структуры: композитные классы и их части, принципы построения
- •39.Диаграмма композитной структуры: кооперации и их использование
- •40. Диаграмма пакетов: назначение, пакеты и отношения между ними
- •41.Диаграмма объектов, назначение, объекты и отношения между ними
- •42.Диаграмма последовательности: назначение, линии жизни, прием и передача сообщений между линиями жизни
- •43.Диаграмма последовательности: назначение, комбинированные фрагменты, их виды и использование
- •44.Диаграмма деятельности: назначение, понятие, семантика и обозначение деятельности, действия и дуг
- •45.Диаграмма деятельности: узлы управления, их виды и применение
- •46. Дополнительные элементы диаграммы деятельности: действия приема и передачи сигналов, центральный буфер и хранилище данных
- •Дополнительные элементы диаграммы деятельности: разбиения, регион прерываемой деятельности, обработчик исключений
- •Диаграмма коммуникации: назначение, принципы построения
- •Диаграмма обзора взаимодействия: назначение, принципы построения
- •Когда применяются диаграммы обзора взаимодействия
- •50. Временные диаграммы: назначение, принципы построения
- •51. Диаграмма конечного автомата: назначение, простое и композитное состояния
- •52. Диаграмма конечного автомата: простые и составные переходы, правила срабатывания переходов
- •6.3. Переход
- •6.6. Сложные переходы
- •53. Диаграмма конечного автомата: псевдосостояния, их виды и применение
- •54. Протокольные конечный автомат: назначение, элементы и принципы построения
- •55. Диаграмма компонентов: назначение, компоненты, интерфейсы и порты, соединения и их виды
- •56. Диаграмма развертывания: назначение, узлы, артефакты, соединения и их виды
- •57. Объектно-ориентированные метрики: назначение, связь с принципами ооп
- •58. Объектно-ориентированные метрики: связность по данным
- •59. Объектно-ориентированные метрики: связность по методам
- •60. Объектно-ориентированные метрики: сцепление объектов и локальность данных
- •61. Объектно-ориентированные метрики: набор метрик Чидамбера и Кемерера
- •62. Объектно-ориентированные метрики: набор метрик Лоренца и Кидда
- •63. Объектно-ориентированные метрики: набор метрик Фернандо Аббреу
Соединения между физическими процессами и их моделями
Соединение потоком данных производится, когда физический процесс передает, а модель принимает информационный поток. Полагают, что поток передается через буфер неограниченной емкости типа FIFO (обозначается овалом). Соединение по вектору состояний, происходит, когда модель наблюдает вектор состояния физического процесса. Вектор состояния обозначается ромбиком. Для фиксации особенностей процессов-моделей Джексон предлагает специальное описание – структурный текст.
31.Объектно-ориентированный подход к разработке по: основные понятия и принципы
Концептуальной основой объектно-ориентированного подхода является объектная модель. Основными принципами ее построения являются:
абстрагирование;
инкапсуляция;
модульность;
иерархия.
Абстрагирование – это выделение наиболее важных, существенных характеристик некоторого объекта, которые отличают его от всех других видов объектов и, таким образом, четко определяют его концептуальные границы с точки зрения дальнейшего и анализа, и игнорирование менее важных или незначительных деталей. Объекты и классы — основные абстракции предметной области.
Инкапсуляция — физическая локализация свойств и поведения в рамках единственной абстракции, скрывающая их реализацию за общедоступным интерфейсом. Инкапсуляция — это процесс отделения друг от друга отдельных элементов объекта, определяющих его устройство и поведение.
Модульность – это свойство системы, связанное с возможностью ее декомпозиции на ряд внутренне сильно сцепленных, слабо связанных между собой подсистем (модулей).
Иерархия – это ранжированная или упорядоченная система абстракций, расположение их по уровням.
Понятие объектов и отношения между ними:
Объект – это конкретное представление абстракции. Состояние объекта характеризуется перечнем всех свойств объекта и текущими значениями каждого из этих свойств.
Поведение характеризует то, как объект воздействует на другие объекты (или подвергается воздействию) в терминах изменений его состояния и передачи сообщений. Поведение объекта является функцией как его состояния, так и выполняемых им операций.
Возможны пять видов операций клиента над объектом:
модификатор (изменяет состояние объекта);
селектор (дает доступ к состоянию, но не изменяет его);
итератор (доступ к содержанию объекта по частям, в строго определенном порядке);
конструктор (создает объект и инициализирует его состояние);
деструктор (разрушает объект и освобождает занимаемую им память).
Наиболее интересны два вида отношений между объектами: связь и агрегация.
Связь – это физическое или понятийное соединение между объектами. Объект сотрудничает с другими объектами через соединяющие их связи.
В то время как связи обозначают равноправные отношения между объектами, агрегация обозначает отношения объектов в иерархии «целое/часть».
Понятие классов и отношения между ними:
Класс – это описание множества объектов, которые разделяют одинаковые свойства, операции, отношения и семантику (смысл). Любой объект – это просто экземпляр класса.
Различают внутреннее представление класса (реализацию) и внешнее представление класса (интерфейс). Интерфейс может быть разделен на три части: публичная (public), защищенная (protected), закрытая (private)
Для покрытия основных отношений большинство объектно-ориентированных языков программирования поддерживает следующие отношения:
ассоциация (семантическое соединение классов),
наследование (отношение, при котором один класс разделяет структуру определенные в другом)
агрегация (разновидности отношения ассоциации),
зависимость (отношение показывает, что изменение в одном классе может влиять на другой класс)
конкретизация (отношение, обозначающее наполнение шаблона (родового или параметризированного класса), целью которого является получение класса, от которого возможно создание экземпляров),
метакласс,
реализация (семантическое отношение между классами, где один класс определяет контракт, а другой класс обязуется его выполнять)