ДЕНЬ 1 – Оптимизация ЖЦ – наш ответ кризису |
ДЕНЬ 2 – Оптимизация объектной модели ЖЦ |
1. ПРЕДВАРИТЕЛЬНЫЙ ТЕСТ (или устное/телефонное собеседование: 5 мин индивидуально или около 20 мин в группе).
Проверка навыков:
- UML-диаграммирование
- DFD, ERD-диаграммирование
- использование CASE
- проектирование структуры БД
- написание SQL-запросов
- ОО-программирование простых классов (желательно на Java, C++ или C#)
|
1. ЛЕКЦИЯ №5. Схема оптимизации объектной модели
- Принципы ООП: модульность, сцепление, связность
- Идеология последовательной конкретизации – до какой степени?
- UML – зачем нам столько диаграмм?
- Прочие диаграммы (ERD, DFD и т.д.) – когда и в какой мере?
- Архитектурное проектирование – "скелет" продукта
- Эскизное и детальное проектирование – теория и практика
- Модели статики и динамики – подходы и ограничения
- Ревизия проекта – особенности и техника
- Выводы: ООП – как реализовать потенциал?
|
2. ЛЕКЦИЯ №1. Программная инженерия – ответ кризису?
- Кризисы в экономике и индустрии ПО
- Зачем нужна программная инженерия (ПИ)?
- "Великие" о ПИ (В.Липаев, И.Соммервилль и др.)
- Архитектурное строительство – аналог ПИ?
- Кризис и депрессия в ПИ
|
2. БИЗНЕС-КЕЙС №2. Выявление и детализация первичных классов
- Порядок проектирования
- Технология выявления существительных
- Анализ бизнес-ситуации
- Определение кандидатов в классы
- Уточнение списка претендентов
- Детализация состава класоов
- UML-диаграммирование
- Алгоритмы и структуры данных
- "Скелетные" файлы классов
|
3. ЛЕКЦИЯ №2. Ответ кризису – настройка жизненного цикла ПО
- "Три кита" ПИ: модели, методы, средства
- Терминология: система, модель, метод и др.
- Программный проект и продукт: акценты ЖЦ
- Жизненный цикл (ЖЦ) ПО: этапы, общее и особенное
- Экономика ЖЦ ПО: структура затрат и пути оптимизации
- Основа оптимизации – продуктивный диалог с заказчиком
- Роль дисциплины, стандартов и инструментария
|
3. ЛЕКЦИЯ №6. От проектирования – к реализации
- Прототипирование и реализация
- Реализация в структуре затрат ЖЦ
- Базовый принцип – многократное использование (reuse)
- Reuse – что и в каких случаях?
- Выбор языков и инструментария
- Тестирование: этапы, технологии, средства
- Верификация и валидация – что важнее?
- Сборка: принципы и пути оптимизации
- Финальное и приемочное тестирование
|
4. ЛЕКЦИЯ №3. Модели ЖЦ ПО – "скелет" антикризисной оптимизации
- Обзор моделей ЖЦ
- Модели неполного ЖЦ
- "Однопроходный" ЖЦ – плюсы и минусы
- "Циклический" ЖЦ – подходы и ограничения
- Объектный подход – потенциал и проблемы
- Модели: интеграция и конвергенция
- Выводы: оптимизация ЖЦ – как и в каких случаях
- Формирование требований/ограничений ПО
|
4. ЛЕКЦИЯ №7.Внедрение и сопровождение
- Продукт – не только код
- Что мы передаем заказчику?
- Документация к ПО: роль, состав, границы
- Экономика сопровождения
- Главная цель ЖЦ – сопровождаемость
- Как достичь "бесшовного" сопровождения?
- Виды сопровождения: параллельно или последовательно?
- Кто может стать "сопровожденцем"?
- Сопровождение и документирование – нам поможет CASE
- Вывод из эксплуатации – печальная необходимость
|
5. БИЗНЕС-КЕЙС №1. Оптимизация ЖЦ
- Продукт глазами заказчика
- Первичное обсуждение требований
- Спецификация требований – что включить?
- Почему важны ограничения?
- Проектные ограничения – от глобальных к локальным
- "Быстрый" прототип: благо или зло?
- Выбор модели – как обосновать?
- Модели ЖЦ: оптимизация и комбинирование
- Пример списка требований и ограничений
|
5. ИТОГИ ТРЕНИНГА
- Выводы: ЖЦ ПО – как бороться с кризисом?
- Финальный тест (30-40 мин.)
|