Начать. Это бесплатно
или регистрация c помощью Вашего email-адреса
Swebok создатель Mind Map: Swebok

1. Требования

1.1. Основы требований

1.1.1. Определение требований

1.1.2. Требования к продукту и процессу

1.1.3. Функциональные и не функциональные требования

1.1.3.1. Функциональные.

1.1.3.2. Нефункциональные.

1.1.4. Независимые св-ва

1.1.5. Количественные требования

1.1.6. Системные и программные требования

1.2. Процесс работы с требованиями

1.2.1. Модель процесса определения требований

1.2.1.1. Не является дискретным

1.2.1.2. Идентифицирует программные требования как элементы конфигурации

1.2.1.3. Требует адаптации к проектному и/или организационному контексту, в рамках которого ведется соответствующий программный проект.

1.2.2. Участники процессов

1.2.2.1. Заинтересованное лицо

1.2.2.2. Пользователи

1.2.2.3. Заказчики

1.2.2.4. Аналитики

1.2.2.5. Регуляторы

1.2.2.6. инженеры-программисты

1.2.3. Управление и поддержка процессов

1.2.3.1. Основная цель темы

1.2.4. Качество и улучшение процесса

1.2.4.1. Покрытие процессов работы с требованиями с точки зрения стандартов и моделей улучшения процессов, в целом

1.2.4.2. Измерение и количественная оценка процессов работы с требованиями;

1.2.4.3. Планирование и реализация процесса улучшения, как такового.

1.3. Извлечение требования

1.3.1. Источники требований

1.3.2. Техники сбора требований

1.3.2.1. Интервьюрирование

1.3.2.2. Сценарии

1.3.2.3. Прототипы

1.3.2.4. Разъясняющие встречи

1.3.2.4.1. запланированный мозговой штурм

1.3.2.5. Наблюдение

1.4. Анализ требований

1.4.1. Классификация требований

1.4.2. Концептуальное моделирование

1.4.2.1. факторы, влияющие на выбор модели, метода и детализации ее представления

1.4.3. Архитектурное проектирование и распределение требований

1.4.4. Обсуждение требований

1.5. Утверждение требований

1.5.1. Обзор требований

1.5.2. Прототипирование

1.5.3. Утверждение модели

1.5.4. Приемочные тесты

1.6. Практические соображения

1.6.1. Интерактивная природа процесса работы с требованиями

1.6.2. Управление изменениями

1.6.3. Атрибуты требований

1.6.4. Трассировка требований

1.6.5. Измеряемые требования

2. Проектирование

2.1. Основы проектирования

2.1.1. Общая концепция проектирования

2.1.1.1. Архитектурный фреймворк

2.1.2. Контекст программного дизайна

2.1.3. Процесс проектирования

2.1.3.1. Архитектурное проектирование

2.1.3.2. Детализация архитектуры

2.1.4. Техники применения

2.1.4.1. Абстракция

2.1.4.1.1. параметризация

2.1.4.1.2. специфицирование

2.1.4.2. Связанность и соединение

2.1.4.3. Декомпозиция и разбиение на модули

2.1.4.4. Инкапсуляция/сокрытие информации

2.1.4.5. Разделение интерфейса и реализации

2.1.4.6. Достаточность, полнота и простота

2.2. Структура и архитектура

2.2.1. Архитектурные структуры и точки зрения

2.2.1.1. архитектурные представления

2.2.1.2. дизайн системы

2.2.2. Архитектурные стили

2.2.3. Шаблоны проектирования

2.2.3.1. Шаблоны создания

2.2.3.2. Структурные шаблоны

2.2.3.3. Шаблоны поведения

2.2.4. Семейства программ и фреймворков

2.3. Ключевые вопросы проектирования

2.3.1. Параллелизм в проектировании

2.3.2. Контроль и обработка событий

2.3.3. Ошибки, обработка исключений защищенность от сбоев

2.3.4. Взаимодействие и представление

2.3.5. Сохраняемость данных

2.3.6. Распределение компонентов

2.3.6.1. middleware

2.4. Нотации дизайна

2.4.1. Структурные описания

2.4.1.1. Языки описания архитектуры

2.4.1.2. Диаграммы классов и объектов

2.4.1.3. Диаграммы компонентов или компонентные диаграммы

2.4.1.4. Карточки функциональной ответственности и связей класса

2.4.1.5. Диаграммы развертывания

2.4.1.6. Диаграммы сущность-связь

2.4.1.7. Языки описания/определения интерфейса

2.4.1.8. Структурные диаграммы Джексона

2.4.1.9. Структурные схемы

2.4.2. Поведенческие описания

2.4.2.1. Диаграммы деятельности или операций

2.4.2.2. Диаграммы сотрудничества

2.4.2.3. Диаграммы потоков данных

2.4.2.4. Таблицы и диаграммы принятия решений

2.4.2.5. Блок-схемы и структурированные блок-схемы

2.4.2.6. Диаграммы последовательности

2.4.2.7. Диаграммы перехода и карты состояний

2.4.2.8. Формальные языки спецификации

2.4.2.9. Псевдокод и программные языки проектирования

2.4.3. Способы задания нотаций

2.4.3.1. стандартом

2.4.3.2. общепринятой практикой

2.4.3.3. внутренним методом проектной команды

2.5. стратегии и методы проектирования

2.5.1. Общие стратегии

2.5.2. Функционально ориентированный дизайн

2.5.3. Проектирование на основе структур данных

2.5.4. Компонентное проектирование

2.5.5. Другие методы

2.5.6. Объектно-ориентированное проектирование

2.6. Анализ качества и оценка дизайна

2.6.1. Атрибуты качества

2.6.1.1. применимые к run-time

2.6.1.2. ориентированные на design-time

2.6.1.3. атрибуты качества архитектурного дизайна как такового

2.6.2. Анализ качества и техники оценки

2.6.2.1. обзор дизайна

2.6.2.2. статический анализ

2.6.2.3. симуляция и прототипирование

2.6.3. Измерения

2.6.3.1. функционально-ориентированные

2.6.3.2. объектно-ориентированные

3. конструирование

3.1. Основы конструирования

3.1.1. Минимизация сложности

3.1.2. Ожидание изменений

3.1.3. Конструирование с возможностью проверки

3.1.4. Стандарты в конструировании

3.1.4.1. коммуникационные методы

3.1.4.2. языки программирования и соответствующие стили кодирования

3.1.4.3. платформы

3.1.4.4. инструменты

3.2. Управление конструированием

3.2.1. Модели конструирования

3.2.2. Планирование конструирования

3.2.3. Измерения в конструировании

3.3. Практические соображения

3.3.1. Проектирование в конструировании

3.3.2. Языки конструирования

3.3.2.1. конфигурационный язык

3.3.2.2. Инструментальный язык

3.3.2.3. Язык программирования

3.3.2.4. Лингвистические нотации

3.3.2.5. Формальные нотации

3.3.2.6. Визуальные нотации

3.3.3. Кодирование

3.3.4. Тестирование

3.3.4.1. модульное тестирование

3.3.4.2. интеграционное тестирование

3.3.5. Повторное использование

3.3.6. качество

3.3.6.1. модульное и интеграционное тестирование

3.3.6.2. разработка с первичностью тестов

3.3.6.3. пошаговое кодирование

3.3.6.4. использование процедур утверждений

3.3.6.5. отладка

3.3.6.6. технические обзоры и оценки

3.3.6.7. статический анализ

3.3.7. Интеграция