8. Модели жц программного продукта: спиральная (быстрого прототипирования).
Спиральная модель
Спиральная модель (англ. spiralmodel) была разработана в середине 1980-х годов Барри Боэмом. Она основана на классическом цикле Деминга PDCA (plan-do-check-act). При использовании этой модели ПО создается в несколько итераций (витков спирали) методом прототипирования.
Каждая итерация соответствует созданию фрагмента или версии ПО, на ней уточняются цели и характеристики проекта, оценивается качество полученных результатов и планируются работы следующей итерации.
На каждой итерации оцениваются:
риск превышения сроков и стоимости проекта;
необходимость выполнения ещё одной итерации;
степень полноты и точности понимания требований к системе;
целесообразность прекращения проекта.
Важно понимать, что спиральная модель является не альтернативой эволюционной модели (модели IID), а специально проработанным вариантом. К сожалению, нередко спиральную модель либо ошибочно используют как синоним эволюционной модели вообще, либо (не менее ошибочно) упоминают как совершенно самостоятельную модель наряду с IID.
Отличительной особенностью спиральной модели является специальное внимание, уделяемое рискам, влияющим на организацию жизненного цикла, и контрольным точкам. Боэм формулирует 10 наиболее распространённых (по приоритетам) рисков:
Дефицит специалистов.
Нереалистичные сроки и бюджет.
Реализация несоответствующей функциональности.
Разработка неправильного пользовательского интерфейса.
Перфекционизм, ненужная оптимизация и оттачивание деталей.
Непрекращающийся поток изменений.
Нехватка информации о внешних компонентах, определяющих окружение системы или вовлеченных в интеграцию.
Недостатки в работах, выполняемых внешними (по отношению к проекту) ресурсами.
Недостаточная производительность получаемой системы.
Разрыв в квалификации специалистов разных областей.
В сегодняшней спиральной модели определён следующий общий набор контрольных точек:
ConceptofOperations (COO) — концепция (использования) системы;
LifeCycleObjectives (LCO) — цели и содержание жизненного цикла;
LifeCycleArchitecture (LCA) — архитектура жизненного цикла; здесь же возможно говорить о готовности концептуальной архитектуры целевой программной системы;
InitialOperationalCapability (IOC) — первая версия создаваемого продукта, пригодная для опытной эксплуатации;
FinalOperationalCapability (FOC) –— готовый продукт, развернутый (установленный и настроенный) для реальной эксплуатации.
- Процессы жизненного цикла систем (на основе iso/iec 15288)
- Структура и функциональное назначение процессов жизненного цикла программных средств (на основе iso/iec 12207)
- Модель качества и критерии качества программных средств (на основе iso/iec 9126 и iso/iec 25010)
- Оценка зрелости процессов создания и сопровождения программных средств на основе методологии cmm и cmmi (на основе iso/iec 15504)
- Система менеджмента информационной безопасности (на основе серии iso/iec 27000)
- Методы кодирования текстовой, графической и звуковой информации в эвм. Аналоговые, дискретные и цифровые сигналы
- История создания, принципы работы и основные сервисы сети Интернет.
- Представление данных в эвм. Единицы измерения информации. Двоичные приставки по гост 8.417-2002 и iec 80000-13.
- Принципы и архитектура фон Неймана.
- Порядок обработки команд микропроцессором. Прерывания. Типы прерываний.
- Поколения эвм. Основные особенности.
- I Поколение 50-60-е гг.
- II Поколение 60-70-е гг.
- III Поколение 70-80-е гг.
- IV Поколение 80-е (по наши дни?).
- Классификация запоминающих устройств в эвм. Современные реализации запоминающих устройств.
- 13. Алгебра логики. Основные законы алгебры логики. Применение алгебры логики в информатике.
- 14. Понятие алгоритма. Методы оценки алгоритмической сложности.
- 15. Понятие системы. Системный анализ. Применение системнго анализа в информатике.
- 16. Теория формальных грамматик. Основные понятия и положения. Применение в информатике.
- 17. Теория вероятностей. Основные понятия и положения. Применение в информатике.
- 18. Математические методы оптимизации и их применение в информатике.
- 19. Понятие компьютерного моделирования. Вычислительный эксперимент.
- 20. Структурное программирование. Понятия и принципы.
- 21. Объектно-ориентированное программирование. Понятия и принципы.
- 22. Декларативные языки программирования и их сфера применения.
- 23. Событийно-ориентированное программирование.
- 24. Многопоточное программирование. Процесс и поток выполнения. Средства синхронизации потоков.
- 25. Основные алгоритмы и структуры данных, применяемые в вычислительных системах.
- 26. Приёмы (шаблоны) объектно-ориентированного программирования.
- 27. Теория графов. Основные понятия. Решаемые задачи.
- 28. Средства моделирования при разработке программного обеспечения.
- 29. Инструментальные средства разработки программного обеспечения.
- 30.Методологии разработки программного обеспечения. Классификация. Особенности применения.
- 31. Программные средства для организации совместной разработки программного обеспечения.
- 32. Программный продукт. Жизненный цикл программного продукта.
- 4.1.1.1 Основные процессы жизненного цикла
- 5. Вспомогательные процессы жизненного цикла по гост р исо/мэк 12207-99.
- 4.1.1.2 Вспомогательные процессы жизненного цикла
- 33. Бизнес-процесс. Средства анализа и моделирования. Автоматизация бизнес-процессов.
- 34. Архитектура вычислительной системы, разновидности.
- 35. Аппаратное обеспечение вычислительных систем.
- 36. Архитектура вычислительной сети.
- 37. Виртуализация вычислительных ресурсов. "Облачные" вычисления.
- 38. Способы реализации человеко-машинного взаимодействия.
- 39. Принципы защиты информации в вычислительных системах и сетях.
- 40. Операционная система. Понятие и основные задачи. Классификация операционных систем.
- 41. Файловая система и принципы построения и основные функции.
- 42. Понятие машинного обучения и искусственного интеллекта. Решаемые задачи.
- 43. Методы сжатия графической информации. Области применения различных методов.
- 44. Методы сжатия звуковой информации. Области применения различных методов.
- 45. Понятие виртуальной и дополненной реальности. Средства реализации.
- 46. Компьютерная графика. Различные методы и технологии реализации.
- 47. Системы управления базами данных, разновидности.
- 48. Принципы построения реляционных баз данных. Нормализация данных.
- 49. Распределённые базы данных. Принципы построения и решаемые задачи.
- 50. Понятие открытой вычислительной системы. Классификация. Принципы построения.
- 51. Методы анализа информационных систем
- 52. Средства мониторинга сетевого трафика
- 53. Метод Монте-Карло. Принципы построения моделей для анализа эффективности информационных систем (основа построения, достоинства и недостатки).
- 54. Методы управления сетью: коммутация каналов, коммутация пакетов.
- 55. Методы балансировки трафика
- 56. Семиуровневая модель osi
- 57. Локальные вычислительные сети (топология, методы доступа)
- 58. Методы повышения достоверности при передаче информации
- 59. Понятие качества обслуживания в компьютерных сетях. Средства обеспечения качества обслуживания.
- 60. Назначение и принцип работы интернет сети
- 61. Основные протоколы сети Интернет, их назначение.
- 62. Понятие dns. Структура доменных имен в сети Интернет.
- 63. Понятие стека протоколов. Стек протоколов tcp/ip, udp/ip.
- 64. Системы автоматизированного проектирования (сапр).
- 70. Принципы построения распределенных информационных систем. Промежуточное программное обеспечение для обработки сообщений.
- 71. Сервисно-ориентированная архитектура распределённых приложений. Основные протоколы.
- 72. Корпоративные информационные системы (класс erp). Разновидности. Решаемые задачи.
- 73. Развитие новых информационно-коммуникационных технологий как база становления информационного общества
- 74. Модели жизненного цикла программного обеспечения
- 6. Модели жц программного продукта: каскадная.
- 7. Модели жц программного продукта: итерационная.
- 8. Модели жц программного продукта: спиральная (быстрого прототипирования).
- 75. Основные принципы структурного анализа систем
- 76. Консалтинг в области информационных технологий
- 77. Методика проведения обследования объектов автоматизации
- 78. Методы построения и анализа моделей деятельности предприятия
- 79. Структурно-функциональные модели
- 80. Модели потоков данных (dfd)
- 81. Модели "сущность-связь" (erd)
- 83. Объектно-ориентированный язык визуального моделирования uml
- 84. Методология rup: назначение и основные характеристики
- 85. Диаграммы вариантов использования (use-cases diagram)
- 86. Диаграммы классов (class diagram). Основные объекты диаграммы
- 87. Диаграммы деятельности (activity diagram). Основные объекты диаграммы
- 88. Диаграммы последовательности (sequence diagramm)
- 19. Uml: диаграмма состояний.