Пишем раздельные ТЗ: одно описывает UX (опыт пользователя при работе с ЛК) и логику работы, второе — взаимодействие с внешними системами Заказчика: 1С, ERP, AXAPTA, SAP-системы и так далее.
Наша команда взаимодействует с IT-службой Заказчика и выясняет: есть ли API или его надо писать, меняемся ли данными через запросы или сервер очередей (RabbitMQ, ZMQ).
После проектирования мы проводим аудит архитектуры: нет ли избыточных или неполных запросов, будет ли система работать быстро?
Разработка ведется по одной из трех методологий:
— Классическая. Это последовательная модель разработки: ТЗ, прототипы, дизайн, верстка, программирование, 2 цикла тестирования и сдача.
— Срочная. Здесь этапы идут параллельно, например, отрисовав только главную страницу сайта, мы уже отдаем ее на верстку. Или сверстав половину макетов — начинаем их внедрение. Позволяет сэкономить срок в два раза, но и стоит на 50-100% дороже.
— Agile. Гибкая методология, идеально подходит для корпоративных порталов, где правильнее утверждать и делать по одной задаче, чем полгода проектировать то, что к моменту утверждения устареет. Agile состоит из недельных спринтов, причем каждую неделю можно управлять разработкой и менять вектор развития проекта.
В процессе написания техзадания мы формируем схему блоков сайта с зависимостями: это позволяет программировать поэтапно, а также давать параллельные задачи программистам.
С помощью системы контроля версий на проект можно поставить сразу несколько программистов, причем их изменения легко отслеживать. Эта же технология применяется и при дальнейшей поддержке сайта.