
- •1. Жизненный цикл информационных систем: этапы планирования разработки, определения требований, сбора и анализа требований, проектирования бд и выбора целевой субд
- •2. Жизненный цикл информационных систем: этапы разработки приложений, создания прототипов, реализации, конвертирования и загрузки данных, тестирования, эксплуатации
- •3. Требования. Место в жц разработки ис
- •Функциональные требования
- •Нефункциональные требования
- •Пользовательские требования.
- •Системные требования.
- •8. Разработка требований
- •9. Управление требованиями (и управление изменениями требований)
- •11. Модели систем
- •12. Модели системного окружения
- •13. Поведенческие модели
- •15. Объектные модели.
- •Прототипирование в процессе разработки по
- •Эволюционное прототипирование
- •Экспериментальное прототипирование
- •Технологии быстрого прототипирования.
- •Прототипирование пользовательского интерфейса.
- •Архитектурное проектирование
- •Архитектурное проектирование. Структурирование системы
- •Архитектурное проектирование. Моделирование управления
- •Управление, основанное на событиях
- •Архитектурное проектирование. Модульная декомпозиция
- •Обектно-ориентированная модель
- •Модель потоков данных
- •Проектирование диалога с пользователем: структура пользовательского интерфейса
- •Проектирование диалога с пользователем: графическое представление диалога
- •Проектирование диалога с пользователем: текствое представление
- •Распределенные бд
- •Проблемы с распределенными бд
Прототипирование в процессе разработки по
Прототипы помогают избавиться от рисков на начальном этапе разработки ПО, прежде всего за счет неучтенных требований. Различие между созданием прототипа и реализацией основной программы не совсем очевидно, но в целом можно говорит о том, что прототип позволяет устранить различное толкование требований разработчиками ПО, выявить неполные или несогласованные требования, продемонстрировать слабые и сильные стороны основной системы и может служить основой для спецификации системы. Действующий прототип может быть использован для обучения пользователей и тестирования системы.
Процесс разработки прототипа состоит из следующих шагов:
определение назначения прототипа;
определение функциональных возможностей прототипа (какие функции реализовать, от каких абстрагироваться, какие оставить, какие заменить);
разработка прототипа (к прототипу незначительно применяются требованию);
оценивание прототипа (определяем насколько п. соответствует целям, и выявляются недостатки);
формируется план по совершенствованию системы
остановка проекта (вовремя остановиться. Ведь любую систему можно совершенствовать бесконечно).
Эволюционное прототипирование
Начинается с построения относительно простой системы, которая реализует наиболее важные требования пользователя. По мере появления новых требований прототип изменяется и дополняется. В конечном счете, он становится итоговой системой. В этом процессе не используется детальная спецификация, нет даже системных требований. Этому подходу соответствует технология быстрой разработки системы. Эволюционные прототипы должны соответствовать всем требованиям стандартов и обеспечивать заданный уровень качества. Цель эволюционного прототипирования – постановка работающей системы конечному пользователю.RAD.
Основные преимущества:
Ускорение разработки системы;
Взаимодействие пользователей с системой;
Есть проблемы:
Проблема управления;
Проблема сопровождения системы(меняется структура, спецификации, документация и т.д. поэтому когда подключается кто-то новый, то становится очень сложно, лучше когда работают с самого начала);
Проблема заключения контрактов;
Экспериментальное прототипирование
Предназначен для разработки и уточнения системной спецификации. Прототип создается, оценивается и модифицируется. Оценка прототипа используется для дальнейшей детализации спецификации. Когда системные требования сформированы, прототип больше не нужен. Цель экспериментального прототипирования - проверка и формирование системных требований. Экспериментальные прототипы имеют очень короткий цикл жизни, быстро меняются и высокая эксплуатационная надежность для них не важна.
Прототип совершенно не похож на конечную систему и в него закладываются только специальные системные функции. Предполагается, что прототип разрабатывается, исходя и обобщенные системных требований. Над прототипом производятся эксперименты, и он изменяется до тех пор, пока его функциональные возможности не удовлетворят заказчика. После этого на основе прототипа детализируются системные требования, и реализуется обычная для разработчика технология разработки ПО. Стоимость такого прототипа существенно ниже.
Основная проблема состоит в том, что:
прототип не соответствует реальной системе, поставляемой заказчику, в связи с чем невозможно быстро настроить прототип под нефункциональные требования,
частые изменения приводят к тому, что прототип слабо документирован,
изменения, сделанные во время разработки прототипа, могут нарушить архитектуру общей системы;
ослабляются стандарты качества.