Экономика разработки проекта Олег Бунин

Содержание

Слайд 2

Разработка проекта

Разработка проекта

Слайд 3

Стоимость разработки Проектирование, исследование; Оплата труда разработчиков; Аппаратное обеспечение.

Стоимость разработки

Проектирование, исследование;
Оплата труда разработчиков;
Аппаратное обеспечение.

Слайд 4

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

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

Слайд 5

Функциональное описание Самый общий документ, описывающий будущий проект.

Функциональное описание

Самый общий документ, описывающий будущий проект.

Слайд 6

Техническое задание Основные технические требования; Исходные данные для разработки; Назначение проекта;

Техническое задание

Основные технические требования;
Исходные данные для разработки;
Назначение проекта;
Стадии разработки;
Функциональное описание;
Сроки исполнения.

Слайд 7

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

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

Слайд 8

Требуемые технические специалисты Системный аналитик Технический писатель Дизайнер интерфейсов Менеджер проектов

Требуемые технические специалисты

Системный аналитик
Технический писатель
Дизайнер интерфейсов
Менеджер проектов

Слайд 9

Системный аналитик

Системный аналитик

Слайд 10

Менеджер интернет-проектов

Менеджер интернет-проектов

Слайд 11

Выбор технологий Что от него зависит?

Выбор технологий

Что от него зависит?

Слайд 12

Выбор технологий

Выбор технологий

Слайд 13

Платформа

Платформа

Слайд 14

Выбор платформы Что такое CMS? Что такое фреймворк? Что такое “написать с нуля”?

Выбор платформы

Что такое CMS?
Что такое фреймворк?
Что такое “написать с нуля”?

Слайд 15

CMS Высокая скорость разработки; Низкая стоимость разработки и поддержки; Большое количество

CMS

Высокая скорость разработки;
Низкая стоимость разработки и поддержки;
Большое количество готовых модулей.
Негибкость функциональных

возможностей;
Проблемы при росте нагрузок.
Слайд 16

Язык программирования: PHP Высокая скорость программирования; Большое количество специалистов простота поддержки;

Язык программирования: PHP

Высокая скорость программирования;
Большое количество специалистов простота поддержки;
Сложно найти высококвалифицированного

специалиста;
Низкая стоимость специалистов.
Слайд 17

PHP-программист

PHP-программист

Слайд 18

Язык программирования: Ruby Высокая скорость разработки прототипа; Малое количество специалистов; Современный

Язык программирования: Ruby

Высокая скорость разработки прототипа;
Малое количество специалистов;
Современный “модный” язык программирования;
Удобные

фреймворки, позволяющие создавать прототипы за дни;
Нет отлаженных механизмов работы с высокими нагрузками.
Слайд 19

Язык программирования: Perl Самый “опытный” язык программирования; Средняя скорость разработки; Небольшое

Язык программирования: Perl

Самый “опытный” язык программирования;
Средняя скорость разработки;
Небольшое количество специалистов;
Сложно найти

профессионалов высокого уровня;
Высокая стоимость программистов.
Слайд 20

Здесь можно спросить о классификации языков по количеству команд ассемблера на

Здесь можно спросить о классификации языков по количеству команд ассемблера на

одну инструкцию языка.

Язык программирования: C/C++

Самые низкие требования к ресурсам;
Низкая скорость разработки;
Высокая сложность разработки;
Малое количество сильных специалистов;
Высокая стоимость
специалистов.

Слайд 21

Unix-системы Предоставляют больший контроль для разработчиков и системных администраторов. Взамен требуют

Unix-системы

Предоставляют больший контроль для разработчиков и системных администраторов. Взамен требуют

серьезных знаний и опыта. Например, часто операционные Unix-системы поставляются в исходных кодах.
Многие Unix-системы распространяются бесплатно.
Слайд 22

Системный администратор Unix

Системный администратор Unix

Слайд 23

Windows-системы Общепринятое мнение заключается в том, что операционные системы Windows хуже

Windows-системы

Общепринятое мнение заключается в том, что операционные системы Windows хуже

приспособлены для обслуживания высоконагруженных web-серверов. Но они же являются наилучшим решением, если задача требует интеграции с офисным программным обеспечением, Share Point и другими Microsoft-технологиями.
Windows-системы являются проприетарной разработкой компании Microsoft (являются платными).
Слайд 24

Системный администратор Windows

Системный администратор Windows

Слайд 25

Windows-программист

Windows-программист

Слайд 26

Использование веб-серверов (операционных систем) По данным lexa.ru

Использование веб-серверов (операционных систем)

По данным lexa.ru

Слайд 27

Благотворное влияние кризиса

Благотворное влияние кризиса

Слайд 28

Железо!

Железо!

Слайд 29

Типичная архитектура: обычный сайт

Типичная архитектура: обычный сайт

Слайд 30

Выбор серверов: необычные ситуации Очень крупный и высоконагруженный проект; Большие хранилища

Выбор серверов: необычные ситуации

Очень крупный и высоконагруженный проект;
Большие хранилища данных;
Большие немасштабируемые

вычисления;
Повышенные требования к безопасности или надежности.
Слайд 31

Взаимосвязь технологии-железо-стоимость

Взаимосвязь технологии-железо-стоимость

Слайд 32

Сравним для разных платформ: Стоимость специалистов, фонд оплаты труда; Стоимость поддержки

Сравним для разных платформ:

Стоимость специалистов, фонд оплаты труда;
Стоимость поддержки готового решения;
Стоимость

лицензий, open source;
Взаимосвязь с аппаратными решениями (стоимость необходимого железа).
Слайд 33

Обычный сайт

Обычный сайт

Слайд 34

Факторы, влияющие на выбор платформы Стоимость поддержки и разработки; Стоимость требуемых

Факторы, влияющие на выбор платформы

Стоимость поддержки и разработки;
Стоимость требуемых ресурсов и

программного обеспечения;
Риски, связанных с неизвестной платформой;
Стоимость обучения специалистов новой платформы;
Требуемые сроки разработки.

Разрабатывайте на той платформе, которую лучше всего знают Ваши технические специалисты!

Слайд 35

Создание проекта

Создание проекта

Слайд 36

Длительность и сложность различных типов проектов* * Очень грубо и очень ориентировочно

Длительность и сложность различных типов проектов*

* Очень грубо и очень ориентировочно

Слайд 37

За что придется платить? Дизайн, юзабилити, проектирование интерфейсов; Разработка архитектуры; Программирование,

За что придется платить?

Дизайн, юзабилити, проектирование интерфейсов;
Разработка архитектуры;
Программирование, кодирование;
Верстка, внедрение верстки;
SEO;
Тестирование.

Слайд 38

Выбор команды Фрилансеры; Внешняя профессиональная команда; Внутренняя команда.

Выбор команды

Фрилансеры;
Внешняя профессиональная команда;
Внутренняя команда.

Слайд 39

Оптимальный тип команды для разных видов проекта

Оптимальный тип команды для разных видов проекта

Слайд 40

Внутренние команды: кому придется платить? Технический директор; Системный архитектор; Ведущие программисты;

Внутренние команды: кому придется платить?

Технический директор;
Системный архитектор;
Ведущие программисты;
Программисты;
Верстальщики;
Дизайнеры;
Системные администраторы;
Тестировщики.

Слайд 41

π Волшебное число, на которое надо умножать срок, выставленный программистами

π

Волшебное число, на которое надо умножать срок, выставленный программистами

Слайд 42

Насколько можно доверять оценкам программистов?

Насколько можно доверять оценкам программистов?

Слайд 43

Железо, сервера

Железо, сервера

Слайд 44

Хостинг

Хостинг

Слайд 45

Оценка потребности в хостинге

Оценка потребности в хостинге

Слайд 46

Новые виды хостинга Хостинг в Европе: дешевле, проще, зато придется платить

Новые виды хостинга

Хостинг в Европе: дешевле, проще, зато придется платить за

трафик;
Хостинг в Amazon EC2: дешевле, проще, престижнее, зато проблемы с дисковой инфраструктурой и пинги в 200-300 миллисекунд из России.
Слайд 47

Поддержка и развитие

Поддержка и развитие

Слайд 48

Поддержка и развитие Стоимость команды, профиль специалистов; Стоимость внесения изменений и

Поддержка и развитие

Стоимость команды, профиль специалистов;
Стоимость внесения изменений и ее взаимосвязь

с выбранными технологиями;
Стоимость хостинга, стоимость трафика.
Слайд 49

Обычный сайт: стоимость поддержки

Обычный сайт: стоимость поддержки

Слайд 50

Попробуем составить бюджеты Для социальной сети, блогосферы, СМИ и корпоративного сайта

Попробуем составить бюджеты

Для социальной сети, блогосферы, СМИ и корпоративного сайта

Слайд 51

Общий алгоритм расчета стоимости разработки

Общий алгоритм расчета стоимости разработки