Организация разработки програмного обеспечения Компьютерные методы моделирования оптических приборов кафедра прикладной и компьютерной оптики 2 Концептуализация 1. Концептуализация Заказчики + менеджеры Анализ потребности Определение требуемых возможностей РЕЗУЛЬТАТ = ТЕХНИЧЕСКОЕ ЗАДАНИЕ 3 Анализ 1. Концептуализация 2. Анализ Аналитики Физическая постановка задачи Математическая постановка задачи Методы непрерывной математики Численные методы РЕЗУЛЬТАТ = ФИЗИЧЕСКАЯ МОДЕЛЬ + МАТЕМАТИЧЕСКАЯ МОДЕЛЬ 4 Проектирование 1. Концептуализация 2. Анализ 3. Проектирование Архитектор программы Декомпозиция Алгоритмизация Документация РЕЗУЛЬТАТ = СТРУКТУРА ДАННЫХ + АЛГОРИТМЫ 5 Кодирование 1. Концептуализация 2. Анализ 3. Проектирование 4. Кодирование Разработчики Программирование Отладка РЕЗУЛЬТАТ = ПРОГРАММА (РАБОЧАЯ ВЕРСИЯ) 6 Тестирование 1. Концептуализация 2. Анализ 3. Проектирование 4. Кодирование 5. Тестирование Тестеровщики Получение и анализ рабочих результатов Оценка скорости и точности РЕЗУЛЬТАТ = ПРОГРАММА БЕЗ ОШИБОК 7 Эволюция 1. Концептуализация 2. Анализ 3. Проектирование 4. Кодирование 5. Тестирование 6. Эволюция Разработчики, архитекторы, заказчики, аналитики РЕЗУЛЬТАТ = ОПТИМАЛЬНАЯ ПРОГРАММА 8 Сопровождение 1. Концептуализация 2. Анализ 3. Проектирование 4. Кодирование 5. Тестирование 6. Эволюция 7. Сопровождение Служба технической поддержки Модификация Эволюция РЕЗУЛЬТАТ = ПОЛНОЦЕННЫЙ ПРОГРАММНЫЙ ПРОДУКТ 9 Уровни абстракции разработки 10 Роли разработчиков в группе Архитектор проекта Аналитик Ответственный за подсистему Прикладной программист Консультант-языковед или технолог Инженер по повторному использованию кода Инженер по интерфейсу Контролер качества (тестировщик) Менеджер интеграции Технический писатель Менеджер проекта Системный администратор Инструментальщик 11 Инструменты