Управление любым программным проектом, включая создание сайта, содержит решение трех основных задач:
- Подбор и управление командой
- Выбор процесса
- Выбор инструментальных средств
Хотя все три задачи одинаково важны для успеха, ведущую роль играет правильный подбор и руководство командой. Успешное завершение проекта во многом зависит от того, насколько состав его участников сможет быть преобразован в группу единомышленников, насколько она будет активной и инициативной с одной стороны и управляемой с другой. Из множества вопросов управления командой при разработке сайта мы рассмотрим три:
- Ролевая модель
- Модели организации
- Общение
Ролевая модель команды
Состав группы определяется опытом и уровнем коллектива, особенностями разработки, применяемыми технологиями и их уровнем. Рассмотрим один из вариантов команды. Выделенные позиции не обязательно представлены конкретными людьми. Это список основных функциональных ролей. В малых коллективах роли могут совмещаться. В больших – выделяться группы или отделы (отдел проектирования, тестирования, контроля качества, подготовки документации, …).
Менеджер проекта — главное действующее лицо, обладающее знаниями и навыками, необходимыми для успешного управления.
– Подбор и управление кадрами
– Подготовка и исполнение плана проекта
– Разработка документации, тестирование
– Руководство командой
– Обеспечение связи между участниками
– Обеспечение готовности продукта
Проектировщик — это функция проектирования архитектуры высокого уровня и контроля ее выполнения. При создании интернет-магазинов функция распределяется между менеджером и разработчиками. В больших проектах (например, медиа-портал) это может быть несколько человек.
– Анализ требований
– Разработка архитектуры и основных интерфейсов
– Участие в планировании проекта
– Контроль выполнения проекта
– Участие в подборе кадров
Дизайнер – роль, ответственная за разработку дизайна сайта.
– Разработка и предоставление одного или нескольких макетов дизайна, в соответствии с техническим заданием
– Подбор сред и методов реализации
– Индивидуальный подход
Верстальщик – фигура, которая обеспечивает реализацию идей дизайнера, и гарантирует, что сайт можно будет просматриваться так, как было изначально задумано.
– HTML — разметка страницы
– Написание клиентских скриптов
– CSS
– XML-разметка
– Обеспечение Кросс-браузерности
Разработчик – непосредственное создание конечного продукта. Помимо программирования он выполняет:
– Контроль архитектурных и технических спецификаций продукта
– Подбор технологических инструментов
– Диагностика и разрешение всех технических проблем
– Мониторинг состояния продукта (ведение списка обнаруженных ошибок)
Тестировщик –удовлетворение требований к продукту (функциональных и нефункциональных).
– Составление плана тестирования. План тестирования составляет один из элементов проекта и составляется до начала реализации сайта. Время, отводимое в плане на тестирование может быть сопоставимо с временем разработки.
– Контроль выполнения плана. Важнейшая функция контроля – поддержка целостности базы данных зарегистрированных ошибок. Эта база должна быть доступна всем, т.к. в тестировании принимают участие все члены команды.
– Разработка тестов. Тестирование должно обеспечить полную проверку функциональности при всех вариантах работы.
– Выбор инструментов для организации.
– Организация Бета-тестирования — тестирования почти готового продукта внешними тестерами (пользователями).