|
|
Программная индустрия сегодня Савкин Вадим Сергеевич vsavkin.livejournal.com
2 О себе Савкин Вадим Сергеевич Окончил МИЭМ в 1999 по специальности САПР В недавнем прошлом – разработчик ПО (С++, с 1997 г.) в различных компаниях В настоящем – менеджер по развитию бизнес-процессов в департаменте разработки компании «Лаборатория Касперского»
3 Содержание Состояние программной индустрии сегодня Основные проблемы программной индустрии Дисциплина «Программная инженерия» Что ждёт нас в будущем?
Состояние программной индустрии сегодня
Эпоха компьютеров Компьютеры везде Автоматизация уже охватывает все области жизнедеятельности Человечество реально зависит от компьютеров и от софта 5
6 Жизнь в эпоху компьютеров Хорошо это или плохо? Какие в этом плюсы? А есть ли минусы?
7 Взлетит ли ракета? Ракета Ariane 5 Европейского Космического Агентства 4 июня 1996 г. взорвалась на 39-й секунде полёта из-за ошибки в ПО ракеты
8 Улетят ли авиа-пассажиры? В аэропорту Хитроу (Лондон) в марте-апреле 2008 сотни рейсов были задержаны или отменены из-за сбоя в работе компьютерных систем сортировки багажа при открытии нового 5-го терминала.
9 Вылечится ли пациент? В 1985 г. 4 пациента умерли из-за передозировки радиации в аппарате лучевой терапии Therac-25. Причина передозировки – ошибка в управляющем ПО.
10 Удастся ли защититься от врага? В 1991 г. иракская ракета поразила казармы войск США, 28 солдат были убиты. Система ПВО Patriot сработала некорректно из-за программной ошибки в системных часах.
11 Долетим ли до Марса? Связь с аппаратом Mars Polar Lander в 1998 г. была потеряна во время входа в атмосферу Марса из-за ошибки в ПО
Или хотя бы до орбиты Земли? «… Роскосмос и ФГУП "Космическая связь" официально признали, что спутник "Экспресс-АМ4" окончательно потерян. Обнародованы и первые итоги расследования: причиной названа ошибка в программировании системы управления разгонного блока "Бриз-М"...» (август 2011) 12
13 Удастся ли сэкономить? Министерство по налогам и сборам США провалило $8 млрд проект модернизации информационной системы, что стоило $50 млрд несобранных налогов
Будут ли функционировать привычные нам вещи? 2007 г., Сан-Диего, на военных учениях поблизости заглушили GPS-сигнал. В результате на 2 часа в городе перестали работать: Банкоматы Мобильная связь Пейджеры вызова врачей местного госпиталя ! Диспетчерские системы местного аэропорта !!! 14
15 Некоторые факты 24% всех проектов по разработке ПО никогда не завершаются 44% всех проектов по разработке ПО завершаются с перерасходом бюджета в среднем на 56% и превышением сроков на 84% только 32% проектов укладываются в срок и бюджет [данные исследований Standish Group, 2009]
16 Почему так много проблем с ПО? Каковы причины?
17 Размер проектов всё больше 0 1 10 100 1,000 10,000 100,000 1,000,000 10,000,000 1960 1965 1970 1975 1980 1985 1990 1995 2000 Размер (тыс. строк кода) Закон Мура: производительность удваивается каждые 18 мес [данные SEI, 2000 г.]
18 Больше проект - больше проблем [данные SEI, 2000 г.]
19 Сложность программных продуктов «Программные продукты относятся к самым сложным системам, которые создаются человеком.» [Ф. Брукс, 1995]
20 Но всё-таки у некоторых дела идут более-менее хорошо Google Microsoft Oracle … NASA Boeing Lockheed-Martin …
Основные проблемы программной индустрии
Что есть разработка ПО? Разработка ПО – это не только и не столько написание программного кода. Чтобы разработать промышленный программный продукт, нужно очень много всего сделать. Написание кода – лишь малая часть. 22
23 Сегодня не проблема: Написать программный код для решения практически любой отдельно взятой технической задачи
24 До сих пор проблема: Что именно нужно разрабатывать? Как эффективно организовать разработку? Как обеспечить необходимое качество?
25 1: Что нужно разрабатывать?
2: Как организовать разработку? RUP eXtreme Programming Scrum FDD Lean Kanban … CMMI ISO xxxx PMBOK SWEBOK PSP TSP … 26
3: Как обеспечить необходимое качество? Поиск ошибок: Ручное тестирование Автоматизированное тестирование Юнит-тестирование Тестирование производительности Стресс-тестирование Инспекции Самопроверка Статический анализ 27 Предотвращение ошибок: Прототипирование Использование стандартов Компонентный подход Рефакторинг кода Предварительная разработка тестов Регулярный анализ и устранение причин ошибок
Дисциплина «Программная инженерия»
29 Программная инженерия (software engineering) Занимается решением этих и других проблем промышленной разработки программного обеспечения
Технология разработки ПО 30 2011 Программная инженерия - это «Применение систематического, дисциплинированного, поддающегося количественному определению подхода к разработке, эксплуатации и сопровождению программного обеспечения» [IEEE 1990]
Области программной инженерии Анализ и разработка требований к ПО Архитектура и проектирование ПО Конструирование ПО Тестирование ПО Эксплуатация и поддержка ПО Управление конфигурациями ПО Управление разработкой ПО Процессы разработки ПО Инструменты и методы разработки ПО Обеспечение качества ПО 31
Что ждёт нас в будущем?
Зрелость индустрии разработки ПО Мы ещё только в начале пути 33
34 Что дальше? - 1 У тех, кто только сейчас начинает заниматься инженерией программного обеспечения, имеются еще более захватывающие перспективы. Следующие несколько десятилетий сделают XXI век веком программного обеспечения. [Барри Боэм, 2007]
35 Что дальше? - 2 Программное обеспечение станет основным элементом, обеспечивающим людям требуемые возможности и качество жизни. И специалисты, знающие, как лучше всего разрабатывать программные системы, получат величайший шанс изменить мир к лучшему. [Барри Боэм, 2007]
36 Что дальше? - 3 На специалистов ляжет огромная ответственность за обеспечение должного качества разрабатываемых программных систем и предоставляемых ими сервисов. [Барри Боэм, 2007]
Что дальше в учебном плане 4 курс, дисциплина ТРПО - «Технология разработки программного обеспечения» Цели дисциплины ТРПО: Познакомиться с основами промышленной разработки ПО Получить представление о работе компаний-разработчиков ПО Помочь подготовиться к работе в таких компаниях 37
38 Вопросы? Вадим Савкин vsavkin.livejournal.com
Summary: обзорно-развлекательная лекция, прочитанная в академии Нестеровой с целью рекламы предмета ТРПО
| URL: |
No comments posted yet
Comments