Инфраструктура программных средств или Как сделать разработку эффективной? GameOverGamesКРИ 2006 Тема: докладчик: Кладов Евгений ведущий программист
Требования: Повышение эффективности разработки – больший результат за меньшее время Надежность Структурированность Повышение качества продукта Удобство в обращении Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Система контроля версий Компилятор и сопутствующие программы База данных Bug tracking system Система тестирования: Checklist Автоматические тесты Сторонние редакторы Домашний редактор Средства Сетевые ресурсы Арена для экспериментов Конверторы Дизайн документ и игровая документация Техническая документация Сетевая организация Структурная схема: Ресурсная система Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Компилятор и сопутствующие программы MSVC ® 7.1 Bounds Checker ® - проверяем IncrediBuild ® Intel VTune ® - ускоряем CASE средства - проектируем - компилируем + Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Система контроля версий User rights – избегаем конфликтов Revision history – отслеживаем историю Sync to revision/date – назад в прошлое Labels – фиксируем стабильные версии Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Система мониторинга ошибок Отслеживание ошибок в продукте - повышение качества Статистика – эффективность работы над ошибками Анализ – просмотр обращений, выявление проблемных мест Интерфейс общения с тестерами – найдите общий язык Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Mantis Достаточная информация в обращении Гибкая система фильтров Ведение истории для каждого обращения Назначение ошибок на конкретных людей Регулирование прав доступа Интуитивно понятный интерфейс Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Система тестирования Checklist: - создайте этот файл! Раздел Что сделано и как проверить Статус Ответственный Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Арена для экспериментов Проблема: исправляем 2-3 строчки кода и ждем 2-5 минуты, пока все это загружается. Цель: исправляем 2-3 строчки кода и ничего не ждем, мгновенно все проверяем. Решение: создадим пару уровней, с минимальным количеством контента, для тестирования нововведений. Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Ресурсная система ДОМАШНИЙ РЕДАКТОР СТОРОННИЕ 3D РЕДАКТОРЫ БАЗА ДАННЫХ XML ФАЙЛЫ ИГРАКОНВЕРТЕР Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
База данных Масштабируемость Скорость работы Легкая управляемость Многопользовательский режим редактирования Разграничение прав доступа Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Objects Table NAMEIDTRANSFORMOWNERPARENT IDLEVELLOCKED ROOM1UID1(-3,5,0)0NULL1FALSE TREE1UID2(2,0,0)0UID11FALSE Properties Table NAMEVALUEIDPARENT IDOBJECT ID TYPEGEOMETRYUID5NULLUID2 FLAGS0XF80UID6NULLUID2 Attributes Table NAMEVALUEIDPROPERTY ID ACTIVETRUEUID8UID5 VISIBLETRUEUID9UID5 Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
База данных Редактор Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Домашний редактор Встроенный Самостоятельный + простота реализации - скромные возможности + широкие возможности, большая гибкость - сложность в реализации Не все редакторы одинаково полезны! Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Сторонние редакторы + уже кем-то написаны, не надо тратить время на разработку + намного удобнее, чем самодельные + расширение возможностей за счет plug-inов - цена - необходимость в конвертерах Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Средства (Tools) Человек не компьютер – ему свойственно ошибаться Автоматизируйте все, что поддается автоматизации: очередной build конвертацию assetов получение последней версии сборку ресурсов Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Программная документация повышение usability руководство пользователя/тестера ключ к повторному использованию проектирование с учетом требований людей, которым предстоит использовать Вашу программу (модуль) Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Игровая документация Четкие цели Информация для реализации и оценки работы Основа для планирования Внимание к мелочам Привлечение спонсоров и издателей Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Backup Базы данных Основной диск разработки БД системы контроля версий Личные папки пользователей Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Информационные потоки Путь текстуры Электронная таблица с описанием параметров конвертации Текстура в исходном виде TGA 4096x4096 DDS конвертер Текстура в DDS формате Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Информационные потоки Путь модели 3D Модель Конвертер моделей Common mesh Collision modelRender model Стенка/Скала Terrain Дерево Effect Огонь Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Информационные потоки Путь программного модуля Compiler Система Контроля Версий User/Client Linker Электронная таблица с описанием submitа Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Этапы тестирования Путь ошибки User/TesterBTSProgrammer Создать обращение Исправлено? Закрыть обращение Да Возмутиться Нет Кажется поправил… Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com
Вопросы? Как сделать разработку эффективной? Тема: Докладчик: Кладов Евгений GameOverGamesКРИ 2006www.gameover-games.com ведущий программист