- •Использование системного подхода при проектировании программного обеспечения
- •Основные проблемы разработки и проектирования по и методы их преодоления
- •Понятие жизненного цикла по и его роль в проектировании информационных систем
- •Понятие модели жц в проектировании информационных систем, терминология моделей жц
- •Понятие архитектуры программного обеспечения и причины возникновения такого понятия в рамках процесса создания информационных систем
- •Понятие "сложности" в современном проектировании информационных и способы её преодоления
- •Использование принципа декомпозиции в процессе проектирования информационных систем
- •Принципы объектно-ориентированного подхода к проектированию информационных систем
- •Основные понятия объектно-ориентированного подхода к проектированию информационных систем
- •Понятие соединения между элементами объектной модели и различные виды соединений
- •Понятие гибкого моделирования, манифест и основные принципы гибкого процесса проектирования
- •Понятие гибкого унифицированного процесса проектирования
- •Фазы и дисциплины унифицированного процесса проектирования, распределение работ на различных фазах для основных дисциплин
- •Начальная фаза унифицированного процесса и артефакты, которые могут создаваться на этой фазе процесса проектирования
- •Понятие требования к информационной системе, типы и категории требований
- •Понятие прецедента в процессе моделирования требований к информационной системе, модель прецедентов.
- •Понятие исполнителя в процессе формализации требований к информационной системе
- •Артефакты унифицированного процесса, используемые для описания нефункциональных требований к информационной системе
- •Фаза развития унифицированного процесса и артефакты, которые могут создаваться на этой фазе процесса проектирования
- •Задачи фазы развития унифицированного процесса и планирование итераций на этой фазе проектирования
- •Моделирование предметной области и основные понятия модели предметной области
- •Использование классов описаний и производных атрибутов в процессе моделирования предметной области
- •Понятие системного события и идентификация системных событий
- •Открытый системный интерфейс и описание операций в рамках унифицированного процесса проектирования
- •Проектирование динамической структуры по с использованием uml в рамках объектно-ориентированного подхода
- •Средства uml для выражения полиморфных сообщений в контексте проектирования динамической структуры по
- •Средства uml для выражения асинхронных вызовов в контексте проектирования динамической структуры по
- •Проектирование статической структуры по с использованием uml в рамках объектно-ориентированного подхода
- •Средства uml для представления атрибутов коллекций в контексте проектирования статической структуры по
- •Признаки существования зависимости между классами в контексте проектирования статической структуры по
- •Стадии создания информационной системы в рамках канонического проектирования
- •Обследование и технико-экономическое обоснование проекта
- •Разработка технического задания в соответствии с гост 34.602-89
- •Состав и содержание технического задания (гост 34.602- 89)
- •Состав эскизного и технического проектов
- •Типовое проектирование информационных систем
-
Понятие модели жц в проектировании информационных систем, терминология моделей жц
Модель жизненного цикла – это структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении всего ЖЦ.
В любой модели ЖЦ рассматривается как совокупность стадий ЖЦ.
Стадия ЖЦ – это часть ЖЦ ограниченная временными рамками, по завершении которой достигается определенный важный результат в соответствии с требованиями для данной стадии ЖЦ. Между двумя стадиями, следующими друг за другом, находится контрольная точка (веха). Так называют момент времени, разделяющий стадии жизненного цикла (или итерации, если они предусмотрены в модели ЖЦ), по наступлении которого должны достигаться результаты важные для всего проекта и должны приниматься решения о дальнейшем управлении проектом.
-
Основные модели ЖЦ и рекомендации по их использованию
-
Преимущества и недостатки использования каскадной модели ЖЦ
-
Преимущества и недостатки использования эволюционной модели ЖЦ
-
Сравнение эволюционной и итерационной моделей ЖЦ
Модели ЖЦ:
-
каскадная (водопадная);
-
эволюционная;
-
основанная на формальных преобразованиях;
-
итерационные (пошаговая и спиральная).
Основным принципы каскадной модели является следующий принцип:
работа над проектом ведётся как над единым целым; фиксируются требования к системе в начале проекта; переход со стадии на стадию осуществляется только после полного завершения работ на текущей стадии; Процессы ЖЦ жестко привязываются к стадиям; в конце каждой стадии должен быть готов исчерпывающий комплект документации.
Стадия формирования требований включает процессы, приводящие к созданию документа,
описывающего поведение ПО с точки зрения внешнего по отношению к нему наблюдателя с
фиксацией требований по качеству.
Одним из главных недостатков является то, что она не учитывает динамику изменения требований
на протяжении жизненного цикла.
Особенности эволюционной модели:
Работа над проектом ведется как над единым целым, требования к ПО поэтапно уточняются. С помощью создания промежуточных версий в рамках рабочего цикла. В рабочем цикле параллельно протекают процессы анализа требований, разработки и тестирования; промежуточные версии оцениваются совместно с заказчиком; количество промежуточных версий заранее не определяется.
Достоинства в сравнении с каскадной моделью:
-
более полный учет требований к заказчику
-
раннее обнаружение проблем и их разрешение по мере возникновения;
-
Параллельное ведение работ внутри рабочего цикла
Недостатки:
-
плохая документированность;
-
запутанность создаваемого ПО и сложность внесения изменений;
-
сложность планирования; годится лишь для небольших проектов.
Особенности модели Жизненного Цикла, которая основана на формальных преобразованиях:
1. Работа над проектом ведется как над единым целом
2. Специальная нотация формального описания требований, а также эскизной и проектной архитектуры.
3. Кодирование и тестирование заменяется процессом преобразования формальных спецификаций в исходные тексты программ или в исполняемый код.
Достоинства:
-
формальные методы гарантируют соответствие ПО спецификациям требований, таким образом => вопросы надежности и безопасности решаются автоматически.
Недостатки:
-
Большие системы сложно описать формальными спецификациями;
-
Требуются специально подготовленные и высококвалифицированные разработчики;
-
Есть зависимость от средств разработки и нотации спецификаций.
Итерационная модель жизненного цикла.
-
Пошаговая
-
Спиральная
Особенности итерационных моделей:
-
Разработка делится на несколько итераций, в рамках каждой из которых выполняются действия по созданию части системы (на разных итерациях части разные).
-
Количество итераций определяется заранее (в этом заключается важное отличие итерационных моделей от эволюционных).
-
Процессы не привязаны к определенным стадиям ЖЦ, что позволяет по мере необходимости, повторять некоторые работы, до тех пор, пока не будет получен нужный результат.
-
С каждой пройденной итерацией ПО наращивается, в него интегрируются новые разработанные компоненты.
Спиральная модель.
Особенности спиральной модели:
-
Общая структура действий на каждой итерации: планирование, определение задач, ограничений и вариантов решений, оценка предложенных решений и рисков, выполнение основных работ итерации и оценка их результатов;
-
Решение о начале новой итерации принимается на основе результатов предыдущей;
-
Возможно досрочное прекращение проекта в случае обнаружения его нецелесообразности;
-
В конце присутствует «миникаскад», завершающийся выпуском финальной версии ПО.
Достоинства итерационных моделей (в сравнении с каскадной):
-
полный учет требований заказчика, более полное его участие в проекте;
-
равномерная нагрузка на группу разработчиков;
-
раннее обнаружение проблем и их разрешение по мере возникновения;
-
уменьшение рисков на каждой итерации.
Недостатки итерационных моделей:
-
сложность планирования;
-
плохая документированность создаваемого ПО.
