Оценка трудозатрат

Доброго дня.

Сколько займет времени у хорошего разработчика js на реализацию фронта на подобии


draw.io
(это сервисы для рисования схем на подобие visio, стрелочки, квадратики)))

Понятно что оценить можно только очень приблизительно, но хотелось бы понять порядки.
Сейчас для js куча всяких крутых фреймворков (angular, react, vue) насколько они облегчат задачу.

Сильно зависит от того сколько функционала хочется в первой итерации. 1 в 1 приложение как draw.io - это работа лет для команды разработчиков. Думаю что MVP с очень урезанным функционалом можно получить за месяца 2-3 (очень оптимистично). Если говорить о режиме с совместным редактированием - это еще больше времени + бекенд.

Дмитрий, большое спасибо за ответ.

Если примерно так, для первой итерации:

  1. Реализация объектов и связей одной нотации (стрелки, соединение, ресайз, z-index, “примагничевание” стрелок, выравнивание элементов)
  2. Слои (разнести на несколько слоев элементы и показывать/скрывать)
  3. Табы и переходы из блока (по клику) на другую вкладку (многоуровневые подпроцессы)
  4. Совместное редактирование - через блокировку схемы.
  5. Автосохранение схемы.

На чем лучше реализовывать (фреймворк)?
Я так понимаю что на такую задачу лучше искать Senior?

Месяца 2-3, ибо тут тестирования функционала много
Есть готовые библиотеки для подобного, незачем для этого разработчик

Несеньор не потянет. На мой вгляд описанного функционала слишком много для первой итерации. Думаю за 2-3 месяца можно будет сделать треть-половину от описанного: вам нужно будет балансировать функционал/время разработки с человеком, который это все будет писать.

Фреймверк - любой с которым знаком человек тут и реакт и vue и angular пойдут. Все равно придется писать свою абстракцию поверх фреймверка чтобы уже с ее помощью описать приложение. Очень рекомендую по возможности писать на typescript. Иначе будет намного сложнее поддерживать кодовую базу в будущем.

Как на ваш взгляд, стоит привлекать дизайнера и делать макеты на первых этапах?
Или можно просто брать за основу существующие проекты и делать по аналогии, а дальше (по мере расширения функционала) прорабатывать UI/UX

Это вопрос к продукт менеджеру. Можно и с можно и без. Нужно понять чем будет отличаться результат в одном и втором случае и будут ли эти отличия влиять на желаемый результат.

Насчет готовых библиотек - есть варианты. Главный вопрос, смогут ли они поддержать все “хотелки” типа совместного редактирования. Вот такая штука из готовых может подойти: https://gojs.net/latest/samples/flowchart.html

1 лайк

Очень крутая библиотека, реально стоит своих денег.
Я решил не тягаться с lucidchart и draw.io по всем фронтам (сервисы поддерживают очень много нотаций, куча доп. фич), а углубится в один (бизнес моделирование) и попытаться сделать его конкурентноспособным.

Нашел сервис coggle.it для создания mind map, выглядит очень приятно, минималистичный дизайн (но в то же время проработаны всякие мелочи), при рисовании ничего не отвлекает от самого процесса, все панельки скрыты под правую мышь.

Думаю начну все таки с UI/UX, дальше MVP, итерационные доработки.

То о чем вы говорите, я точно помню собеседовал человека, новичка, что сделал полный клон именно драв ио, только без гугл авторизации. Он использовал какую-то библиотеку и совместное редактирование было, для совместного редактирование на сегодня уже существуют типовые решения, сложно сделать это удобно, так вот он справился за две недели по его словам.

Но ограничить свои желания для мвп - это здраво.