Мы писали этот пост, чтобы поговорить о самих тенденциях, а советы не давали умышленно. Полное исследование на сайте Nielsen Norman группы, но оно, к сожалению, платное.
Нет, такого смысла я не закладывала.
«Не понравилось заказчику» не означает, что нужно сразу изменить всю логику ТЗ или предложить совершенно новые прототипы. Это обратная связь, которую нужно обработать. Не понравилось — потому что мы что-то не учли? Не учли, потому что упустили важный вопрос при сборе требований или потому что у заказчика изменились цели? Не понравилось — потому что мы не объяснили, какие преимущества получит заказчик от продукта именно в таком исполнении? Вариантов тут очень много.
Безусловно, нужно обсудить, договориться и зафиксировать цели проекта, критерии успешности, ограничения, допущения т.д. Нужны входные и выходные требования к качеству документов, нужны требования к качеству продукта. Нужна проверка документа и тестирование продукта. Однако содержание ТЗ, обеспечение качества — это отдельные большие темы, которые не раскрыты в статье.
Под концепцией подразумевается краткое описание проекта: что мы хотим получить, зачем нам это нужно, как мы это сделаем.
Концепция включена в ТЗ, так как предполагается, что ТЗ разрабатывается поэтапно, от верхнеуровнего понимания к деталям. При этом, ТЗ в статье не привязано к определенному формату, это может быть ГОСТ, а может быть договоренность между командой и заказчиком. Если используемый шаблон не допускает описание концепции, то следует проработать её в рамках отдельного документа прежде чем приступить к ТЗ.
К сожалению, у нас не было права выбора в данном случае. Мы рассчитывали, что на данных серверных мощностях ему хватит примерно на полтора-два года. После этого нужно будет масштабироваться по серверам.
еще: один запрос на регион, один запрос на меню, примерно 20 на формирование динамических фильтров, которые подстраиваются под характеристики товаров в наличии, один запрос на цены, один запрос на наличие, штук 5-10 на корзину, несколько запросов на различные акции, несколько запросов на дополнительную информацию о товаре, которая не хранится в информации о товаре (типа отзывов), почти все с джоинами, потому что все связано или с регионами, или с товарами.
Это сравнимо. Решение в пользу рефакторинга было принято из-за клиентских данных, из-за интеграционных частей не на стороне сайта и из-за легкости перехода с одного ядра на другое. Если вы помните, то Утконос, чтобы перевести сайт на другую платформу, закрывался на неделю. Даунтайм нашего клиента при переходе составил всего 36 часов.
Все зависит от проекта. У нас часть данных подтягивалась в режиме реального времени из CRM клиента. Как Вы понимаете, это дает определенный прирост времени.
Хорошо, что Вы не сталкивались в своей практике с подобными проектами, нам, к сожалению, не так повезло. 3000-4000 запросов к БД как раз и были критичными для данного проекта, когда мы замерили статистику после первичной стабилизации — было 600 со страницы. Проект начал работать, хоть и медленно.
В ядре битрикса версии 8.0, которую мы получили от клиента — больше 10 000 файлов. Любая достаточно сложная многоуровневая система с несколькими типами прав и несколькими админками будет содержать очень много файлов. В этом нет ничего плохого, если все структурировано и откомментировано.
Да, мы тоже сначала не поверили — но статистика репозитория и статистика отладчика говорили, что именно столько. Это очень сомнительные цифры, мы понимаем, но у нас есть экземпляр старого сайта и перед написанием статьи мы все проверили.
Когда клиент к нам пришел, решение уже было сделано на 1С-Битриксе, мы лишь помогли спасти проект. Но как следует из описания, проблема была не в CMS, и мы это успешно доказали финальным нагрузочным тестированием. Готовые CMS хороши с точки зрения преемственности кода, в таком случае смена программистов на проекте не будет критичной. Если вы разрабатываете полностью свое кастомное решение, уход носителя знаний с проекта будет очень критичен, потому что каждый новый человек будет начинать с фразы «давайте перепишем все с нуля».
Не могли бы Вы развернуть свой комментарий:
— чем плох модуль веб-кластера
— по какой причине Вы считаете, что изменение такого количества файлов в рамках рефакторинга — плохо?
Да, тоже хороший подход. Единственное, что для обновления диапазонов входных данных и результатов придется снова сгенерировать классы — а это уже рядовой сотрудник не сделает. В нашем случае требуется только загрузить файл в правильном формате.
Все верно — сайт ВТБ24 на SharePoint 2010, а пример на 2013 версии. Из отличий Excel Servcies для этих двух версий мы нашли только то, что в 2013 версии они менее требовательны к формату файлов. Например, сложный файл с макросами может не загрузиться в Excel Services 2010, но загрузиться в 2013 (при этом ни там ни там макросы не исполняются, но все расчеты работают). У Microsoft указаны некоторые ограничения. К сожалению, подробной документации по этой теме не так много и проще всего для сложных Excel делать небольшие пилотные проекты, на которых проверить что все работает как ожидается
1) да есть такое: там стрелочка влево-вправо, при клике происходит смещение, что действительно не очень удобно.
2, 3) похоже у вас действительно что-то с прокси-сервером. Попробовали большинство калькуляторов — все работает без ошибок. На каком у вас не получается посчитать?
Если у вас есть 3 файла шрифтов одного семейства и производитель не запрещает модификацию (что редкость), то вы можете в редакторе шрифтов их объединить. Например, взять файлы в старом формате PostScript Type1, в котором помещается только лишь 220 символов, собрать и сохранить современном OpenType.
«Не понравилось заказчику» не означает, что нужно сразу изменить всю логику ТЗ или предложить совершенно новые прототипы. Это обратная связь, которую нужно обработать. Не понравилось — потому что мы что-то не учли? Не учли, потому что упустили важный вопрос при сборе требований или потому что у заказчика изменились цели? Не понравилось — потому что мы не объяснили, какие преимущества получит заказчик от продукта именно в таком исполнении? Вариантов тут очень много.
Безусловно, нужно обсудить, договориться и зафиксировать цели проекта, критерии успешности, ограничения, допущения т.д. Нужны входные и выходные требования к качеству документов, нужны требования к качеству продукта. Нужна проверка документа и тестирование продукта. Однако содержание ТЗ, обеспечение качества — это отдельные большие темы, которые не раскрыты в статье.
Концепция включена в ТЗ, так как предполагается, что ТЗ разрабатывается поэтапно, от верхнеуровнего понимания к деталям. При этом, ТЗ в статье не привязано к определенному формату, это может быть ГОСТ, а может быть договоренность между командой и заказчиком. Если используемый шаблон не допускает описание концепции, то следует проработать её в рамках отдельного документа прежде чем приступить к ТЗ.
— чем плох модуль веб-кластера
— по какой причине Вы считаете, что изменение такого количества файлов в рамках рефакторинга — плохо?
2, 3) похоже у вас действительно что-то с прокси-сервером. Попробовали большинство калькуляторов — все работает без ошибок. На каком у вас не получается посчитать?