Share
Embed
Transcript
15 slides
-
Зачем планировать • Привести мысли в порядок • Реалистично оценить
ресурсы и возможности • Распараллеливание задач, распределение ролей, общее видение внутри команды • Единственный способ договориться с заказчиком • Основа для сметы • Соблюдать баланс между детализацией и запасом гибкости -
Архитектура проекта: глаз орла • Ключевые модули и связи между
ними • Несколько уровней • От простого к сложному • Верхний уровень: низкая детализация • Нижний уровень: высокая детализация • Элементы: квадратики, кружочки, стрелочки, подписи, клипарты, желательно цветные -
Сценарии использования (юс-кейсы) • Цель → путь достижения за несколько
шагов • Формат — простой текст: заголовок + пункты на каждый сценарий • При необходимости — разбивка по ролям (заказчик/исполнитель, пользователь/админ) -
Макет интерфейса • Наброски главных экранов с ключевыми возможностями •
Реализация сценариев использования • Inkscape, OODraw, Dia, Corel Draw, Visio, … • Онлайн: balsamiq.com, draw.io, ... • ключевые слова: mocup, sketch • НЕ используйте редактор форм в любимом IDE • Человеко-машинные интерфейсы (human-computer interaction: HCI) — это целая наука • См курсы на ютюбе • Курс МФТИ+mail.ru «Дизайнер интерфейсов. Введение в специальность» на курсере -
Модель данных • То, что мы сохраняем между экранами и
между запусками • Сохраняемые поля, фигурирующие в макете интерфейса, должны отражаться в модели • Реляционная (SQL) • Древовидная (NoSQL: mongo) • Плоская (настройки ключ-значение) • Граф • ... -
Диаграмма классов • UML (можно в свободной форме) • Шаблоны
проектирования (design patterns) • ORM (модель данных → объектная модель) • Добавляйте только ключевые классы, всю вспомогательную мелочь вытаскивать не обязательно (кодогенерация из UML как технология не зашла) -
Этапы проекта и план работ • Этапы — небольшие и
средние «пробежки» (спринты) на месяц-два-три (2-4 недели) • В конце каждой пробежки чек-лист по запланированным задачам • Корректировка планов на следующую пробежку • На каждом этапе детализированный план работ по 1-2 задачи на неделю на человека • Распараллеливание по исполнителям -
План до запуска №1 • Предварительная проектная документация • Скелет
проекта • Черновик 1/2 (что-то работает) • Альфа 1/2 (работает благоприятный сценарий) • Бета 1/2 (не падает на большинстве неблагоприятных сценариев) • Пре-релиз 1/2 (мелкие ошибки, полировка) • Релиз (мелкие ошибки, которые не доставят страдание пользователям) -
Начиная с сегодняшнего дня и к каждому занятию • «Спринт»
на каждые 2 недели • План — 2-3 задачи на спринт на человека • Начало занятия — «летучка» («скрам- митинг»): • Какие запланированные задачи были выполнены • Какие задачи были не выполнены, в чем причина затруднения, план обхода проблемы • План задач на новый спринт