Разработка веб-сервисов осень 2013 лекция 1 1

35
Разработка веб-сервисов Прелюдия

Upload: technopark

Post on 08-Jul-2015

196 views

Category:

Education


2 download

TRANSCRIPT

Page 1: Разработка веб-сервисов осень 2013 лекция 1 1

Разработкавеб-сервисов

Прелюдия

Page 2: Разработка веб-сервисов осень 2013 лекция 1 1

Об авторе

Кто? Максим Бабич

Где? Mail.Ru Group, Деньги@Mail.Ru

Кем? Технический директор

Что еще? Ответы@

Рассылки@

Форумы@

Недвижимость@

Открытки@

2

Page 3: Разработка веб-сервисов осень 2013 лекция 1 1

Об авторе

Контакты: [email protected]

+7 916 941-52-75

Живое общение? Да!

офис Mail.Ru Group,

17й этаж

3

Page 4: Разработка веб-сервисов осень 2013 лекция 1 1

Правила игры

Разговариваем по одному.

Есть вопрос? Старый добрый метод: рука.

Не успели спросить?

Телефоны не могут поднимать руку

Нужно ответить — вне аудитории

Можно выйти, можно зайти?

Можно

«Вы» или «ты»?

Ваши правила?

4

Page 5: Разработка веб-сервисов осень 2013 лекция 1 1

План занятия

1. Описание курса, его цели

2. Структура курса, какие будут занятия

3. Отчетность

5

Page 6: Разработка веб-сервисов осень 2013 лекция 1 1

О чем курс?

Курс «Разработка веб-сервисов»:

О создании и поддержке веб-сервисов

О роли технического отдела

О командной работе и управлении разработчиками

6

Page 7: Разработка веб-сервисов осень 2013 лекция 1 1

О чем курс?

Курс разбит на блоки:

1. Техническое задание и организация командной работы

2. Проектирование и реализация

3. Эксплуатация и сопровождение

7

Page 8: Разработка веб-сервисов осень 2013 лекция 1 1

Цель курса

Обобщение и систематизация

Обмен опытом

Открытое обсуждение

Работа над ошибками

Какие цели у вас?

8

Page 9: Разработка веб-сервисов осень 2013 лекция 1 1

Зачем нужен курс?

Закрепить и систематизировать знания, полученные в предыдущих семестрах.

Узнать о принципах построения систем от этапа проектирования до этапа запуска проекта и его дальнейшей поддержки и сопровождения.

Научиться применять знания при проектировании сервисов.

9

Page 10: Разработка веб-сервисов осень 2013 лекция 1 1

Зачем нужен курс?

Понимать последствия архитектурных решений, их слабые и сильные стороны.

Улучшить навыки командной разработки

Узнать об аспектах управления техническим персоналом и попробовать управлять группой разработчиков

Научиться взаимодействовать с нетехническими сотрудниками для создания качественного продукта.

10

Page 11: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

11

Беседа первая 14 сентября

Процесс разработки веб-сервиса: этапы и участники

Этапы создания продукта и участники процесса

Внутренние и внешние заказчики

Задачи, стоящие перед техническим отделом

Блок Техническое задание и организация команды

Page 12: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

12

Беседа вторая 21 сентября

Методологии разработки

Обзор основных методологий разработки

Практика работы по этим методологиям

Инструменты для управления процессом разработки

Блок Техническое задание и организация команды

Page 13: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

13

Беседа третья 28 сентября

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

Принципы создания. Сбор требований, необходимость и достаточность.

Согласование задания и его изменений. Дрейф требований.

Декомпозиция технического задания согласно принятой методологии разработки

Оценка сроков выполнения задач, принципы оценки

Оперативное и длительное планирование

Блок Техническое задание и организация команды

Page 14: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

14

Домашнее задание

Блок: Техническое задание и организация команды

28 сентября

Составление технического задания на разработку веб-сервиса

Page 15: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

15

Беседа четвертая 5 октября

Построение команды и командная разработка

Подбор сотрудников и собеседования.

Вовлечение в работу

Рабочий процесс, тайм-менеджмент

Делегирование полномочий и координация разработки.

Нацеленность на результат или на процесс?

Контроль выполнения. Дедлайн и срыв сроков

Блок Техническое задание и организация команды

Page 16: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

16

Семинар 12 октября

Презентация технического задания на создание проекта

Цель:

представить описание проекта, его функциональных

возможностей

Награда: 25 баллов

Блок Техническое задание и организация команды

Page 17: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

17

Беседа первая 12 октября

Этапы построения архитектуры веб-сервиса

Проектирование: виды, принципы и цели

Программирование: от разработки модулей к разработке системы

Эксплуатация: запуск и поддержка проекта

Блок Проектирование и реализация

Page 18: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

18

Беседа вторая 19 октября

Серверные компоненты разработки, взаимодействие в вебе

Обзор принципов работы основных типов серверов

Принципы построения веб-сервисов,

Основные схемы веб-сервисов и компонентов

Блок Проектирование и реализация

Page 19: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

19

Домашнее задание

Блок: Проектирование и реализация

19 октября

Проектирование архитектуры веб-сервиса на основе

технического задания

Page 20: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

20

Беседа третья 26 октября

Разработка для веба

Парадигмы программирования для веба

Организация процесса разработки в зависимости от выбранного языка

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

Блок Проектирование и реализация

Page 21: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

21

Беседа четвертая 2 ноября

Инструментарий разработки, импорт и экспорт решений

Принципы выбора инструментария разработки

Проектирование собственных фреймворков

Разработка своего API, поддержка чужого

Блок Проектирование и реализация

Page 22: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

22

Семинар 9 ноября

Презентация архитектуры веб-сервиса

Цель:

представить схему взаимодействия компонентов,

обосновать выбор инструментов разработки

Награда: 50 баллов

Блок Проектирование и реализация

Page 23: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

23

Беседа первая 16 ноября

Внедрение и эксплуатация продукта

Этапы запуска продукта

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

Сопровождение кода

Взаимодействие с отделом эксплуатации, суппортом, внешними партнерами

Мониторинг продукта и последствий изменений в нем

Блок Эксплуатация и сопровождение

Page 24: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

24

Беседа вторая 23 ноября

Веб-сервис как изменяющийся продукт. Рефакторинг

Снова о жизненном цикле продукта.

Как распределять ресурсы.

Исправление ошибок и технический долг

Блок Эксплуатация и сопровождение

Page 25: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

25

Домашнее задание

Блок: Эксплуатация и сопровождение

23 ноября

План разработки и запуска веб-сервиса согласно техническому

заданию и спроектированной архитектуре

Page 26: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

26

Беседа третья 30 ноября

Устойчивость архитектурного решения

Высокие нагрузки

Поиск и анализ узких мест в веб-сервисе

Масштабирование

Блок Эксплуатация и сопровождение

Page 27: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

27

Беседа четвертая 7 декабря

Построение эффективной команды

Оценка эффективности сотрудника и команды

Обмен опытом, внутреннее обучение, наставничество

Мотивация персонала

«Темная сторона» управления

Блок Эксплуатация и сопровождение

Page 28: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

28

Семинар 7 декабря

Архитектура проектов Mail.Ru, эволюция сервисов

Цель:

рассказать о решениях, принимавшихся при разработке

некоторых веб-сервисов Mail.Ru

Блок Эксплуатация и сопровождение

Page 29: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

29

Семинар 14 декабря

Презентация плана запуска проекта

Цель:

защита плана запуска проекта на основе технического задания

и архитектурной концепции

Награда: 25 баллов

Блок Эксплуатация и сопровождение

Page 30: Разработка веб-сервисов осень 2013 лекция 1 1

Структура курса

30

Экзамен

21 декабря

Ключевые даты:

28 сентября 12 октября

19 октября 9 ноября

23 ноября 14 декабря

Курс Разработка веб-сервисов

Page 31: Разработка веб-сервисов осень 2013 лекция 1 1

Отчетность

Смысл отчетности — создаем свой проект

При чём тут разработчики?

Разработчик тоже может быть заказчиком

Решение технических вопросов — на разработчике

31

Page 32: Разработка веб-сервисов осень 2013 лекция 1 1

Отчетность

Первый этап

создание технического задания, в котором прописано:

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

описаны основные функции проекта

описаны интерфейсы

описаны сценарии использования

32

Page 33: Разработка веб-сервисов осень 2013 лекция 1 1

Отчетность

Второй этап

выбор инструментария разработки

перенос требований на архитектуру проекта,

описание взаимодействия основных частей

описание модулей

примерное проектирование структуры кода

33

Page 34: Разработка веб-сервисов осень 2013 лекция 1 1

Отчетность

Третий этап

оценка необходимых ресурсов (серверов, людей)

понимание последовательности работ

оценка сроков выполнения работ

подготовка проекта к эксплуатации

подготовка проектной документации с регламентами работы

34

Page 35: Разработка веб-сервисов осень 2013 лекция 1 1

Вопросы?

Максим Бабич

[email protected]

+7 916 9415275