• Как начать работу с микроконтроллерами с минимальными затратами?

    @kn0ckn0ck
    Продюсер
    Не, не, не, все гораздо проще и почти как в веб-разработке, если начинать с Arduino
    1) в комплекте идут соединительные провода + макетка
    2) программирование через бесплатную среду разработки + USB-кабель
    3) ebay, там контроллер с проводами и датчикам обойдется рублей в 400, сразу берите Kit, будет идти 3-4 недели.
    4) там же и корпусов полно для Arduino (акрил, пластик, металл)

    Разработка ведется на C-подобном языке, есть куча примеров и готовых библиотек для работы с типовыми таймерами, датчиками, матрицами, индикаторами и прочим.

    Далее все как обычно: придумываем идею, пишем прогу, собираем устройство (без паяльника!), подключаем к Arduino PC через USB, заливаем программу в Arduino, запускаем и отлаживаем через встроенную консоль (через тот же USB), все.
    Ответ написан
    Комментировать
  • Можно ли написать программу, не имея никакой документации и техзадания?

    @kn0ckn0ck
    Продюсер
    Спрашиваешь... так делают процентов 90. Другое дело - правильно ли они поступают при этом? Часто документацию путают с проектированием. Это разные вещи и у них разные цели.

    Проектировать нужно обязательно, это существенно удешевляет разработку. При этом можно использовать UML или банальные блок-схемы, не имеет значение. Иногда это может поместиться в голове, но чаще это лучше где-то записать. И тут мы плавно приходим к документации.

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

    Минусы документации в том, что она быстро устаревает и ее поддерживать довольно дорого и затратно по времени.
    Таким образом, ключевым является вопрос о целях документации. Из этого будут ответы и по указанным пунктам.

    1. Зависит от сложности/объема задачи. Если все помещается в голове, то для чего тогда документация? Любая, UML или текст, не важно. Если что-то нужно продумать, то можно записать на доске/бумаге, сфоткать, потом выбросить.

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

    3. Уважительной причиной чего-то не делать будет четкое понимание того, как связанные с этим риски минимизируются. Долой догмы. Если в среднесрочной перспективе мы четко осознаем, что фиксация/документирование требований не принесет пользы, то зачем тратить на это время/ресурсы?
    Ответ написан
    Комментировать
  • Scrum и тестирование. Как на практике происходит тестирование в рамках scrum?

    @kn0ckn0ck
    Продюсер
    Этой теме посвящена целая книга: "Гибкое тестирование. Практическое руководство для тестировщиков ПО и гибких команд" от авторов: Лиза Криспин, Джанет Грегори.

    Там очень хорошо описана роль тестировщиков и разработчиков (в части тестирования), как лучше выстроить процесс, на что обращать внимание и т.п.

    Если вкратце отвечать на исходный вопрос: необходимо распределить работу в команде таким образом, чтобы все были активно вовлечены в процесс разработка/тестирование в течение спринта. За результат отвечает вся команда, поэтому оставлять для тестирования сырого кода пол дня - это просто забивать болт на качество.
    Ответ написан
    Комментировать
  • Какой тип диаграммы UML выбрать?

    @kn0ckn0ck
    Продюсер
    В UML для этих случаев используется два типа диаграмм: Activity (активностей) и Sequence (последовательности). Диаграмма активностей больше подходит для описания алгоритмов, с ветками, условиями и т.п. Диаграмма последовательности больше подходит для описания взаимодействия компонентов при реализации некоторого сценария. То есть первое больше про логику (или бизнес-логику), а второе - про реализацию в системе.

    В вашем случае видимо больше всего подойдет как раз диаграмма последовательности, вот пример:
    c74c967ce60a4a689ee19767aff6537d.png
    Ответ написан
    Комментировать
  • Какой тип диаграммы UML выбрать?

    @vanillathunder
    Диаграмма видов деятельности. 591796_html_m5c9e4e02.png
    Ответ написан
    Комментировать
  • Какие KPI существуют для программистов?

    @kn0ckn0ck
    Продюсер
    Любой KPI проистекает из процесса. Если у вас Scrum, то в нем единственной метрикой является Velocity (скорость команды) и определяется она не для программиста, а для команды разработки (для всех программистов, участвовавших в спринте).

    Очевидно, что при одинаковых расходах от спринта к спринту, вы хотели бы, чтобы Velocity не падала, а наоборот, со временем росла. Тренд Velocity и может быть тем самым KPI. Если тренд нисходящий, без наличия объективных причин (изменение состава команды и т.п.), это признак снижения продуктивности/эффективности команды разработки.

    В разработке любого продута есть еще стадия эксплуатации, на которой в команду возвращаются баги, недоделки, недодумки и т.п. Число дефектов, вернувшихся из эксплуатации, также часто используемая метрика качества разработки.

    Это если из простых.
    Ответ написан
    2 комментария
  • Как организовать процесс постоянной доработки сайтов компании?

    @kn0ckn0ck
    Продюсер
    В вашем случае хорошо будет объединить поддержку и Kanban. Процесс при этом может выглядеть следующим образом:
    1. Через поддержку клиенты оставляют заявки, где описывают что им нужно.
    2. Менеджер разгребает эти заявки, уточняет их (добавляет нужную информацию) и может как-то классифицировать, например, Сайт или Инфраструктура или еще как-то. Менеджер может оценивать сложность заявок по шкале X, L, M, S.
    3. Члены команды берут по мере возможности себе те задачи, которые подходят им по классу и по оценке сложности. Выполняют работу и перетаскивают карточку в состояние "Выполнено".
    4. Менеджер принимает выполненную работу и отмечает заявку как завершенную, либо отклоняет ее на доделку/переделку. Заказчику уходит письмо о том, что его заявка выполнена, ну и дальше он смотрит, отклоняет или принимает ее решение.

    В этом процессе минимум взаимодействия, все видно на Kanban-доске. Видно где затык, кто сидит ковыряет в носу и т.д. В качестве инструмента, в котором такой процесс можно организовать, могу посоветовать devopsboard.ru
    Ответ написан
    Комментировать
  • Как организовать коммуникацию с заказчиком?

    @kn0ckn0ck
    Продюсер
    Я думаю выходом будет работа в инструменте, который объединяет в себе совместную работу над ТЗ и планирование/контроль задач по исполнению этого ТЗ (макеты, доработки и т.п.).

    Заводите под заказчика отдельный проект, в нем есть Wiki, в ней можно писать требования или можно импортировать из MSWord, в чем там заказчик ТЗ изначально записывает. Там же можно обсуждать разделы ТЗ, добавлять макеты, их обсуждать и т.п. Заказчика запускаете в проект.

    По каждому разделу ТЗ создаете задачи на подготовку макетов, доработку ТЗ, реализацию (разработку). Там же видите их статус (выполнено/не выполнено).

    Все это можно организовать при помощи связки онлайн-редакторов (google docs, dropbox paper) и таск-менеджеров. Но, имхо лучше в одном сервисе это иметь, например, как сделано в scrumboard. В базе знаний пишем требования, на основе статей базы знаний создаем доработки или задачи - что еще нужно?
    Ответ написан
    Комментировать
  • Система управления проектами scrum?

    @saveug
    таск-трекеров много, но хороших систем управления по Scrum единицы: scrumboard одна из них.
    Ответ написан
    Комментировать
  • Система управления проектами scrum?

    CrazySquirrel
    @CrazySquirrel
    Trac
    Ответ написан
    Комментировать
  • Посоветуйте, пожалуйста, ПО для реализации Agile/Scrum

    @saveug
    Если хотите установить к себе на сервер, то лучше всего AgileTeam
    Если лень ставить, то можно использовать online scrumboard
    Ответ написан
    Комментировать
  • Какой онлайн инструмент выбрать для ведения проектов (стартап) scrum, agile, crm?

    @saveug
    Бесплатный, без ограничений, open-source - AgileTeam
    Ответ написан
    Комментировать
  • Решение для организации работы между заказчиком и исполнителем

    @kn0ckn0ck
    Продюсер
    open-source решение на PHP называется AgileTeam.
    Ответ написан
    Комментировать
  • Project tracking с функционалом Agile

    @AlexandrFukalov
    Доброго времени суток.
    У нас маленькая команда в 20 человек. Используем redmine уже несколько лет и все это время не хватало только удобного таймера для учета времени по каждой задаче. Но не так давно и эту проблему решили с помощью десктопного таймера RMClient. Методологию используем смешанную и нас все устраивает. Возможно, если вы измените схему работы с самим redmine то и переходить не придется.
    Ответ написан
    Комментировать
  • Project tracking с функционалом Agile

    @kn0ckn0ck
    Продюсер
    Если говорить об установке на свой сервер, то лучшим вариантом будет бесплатный AgileTeam.
    Ответ написан
    Комментировать
  • Выбор системы ведения проектов

    @kn0ckn0ck
    Продюсер
    Мы используем devprom - все из описанного там есть, а если ставить на свой сервер то бесплатно, ведь исходный код открыт.
    Ответ написан
    Комментировать
  • Бывают менеджеры задач и проектов похожие на Jira Agile интерфейсом?

    @kn0ckn0ck
    Продюсер
    Бомба есть - это scrumboard
    Ответ написан
    Комментировать
  • Какие существуют системы управления проектами?

    @kn0ckn0ck
    Продюсер
    Для описанного вами случая лучше всего подойдет AgileTeam.
    Ответ написан
    Комментировать
  • Какие есть бесплатные средства для Project Management (Scrum)?

    @saveug
    Бесплатная доска задач с поддержкой Scrum и Kanban для установки на свой сервер AgileTeam.
    Ответ написан
    Комментировать
  • OTRS vs Jira Service Desk?

    @kn0ckn0ck
    Продюсер
    Мы используем Devprom - бесплатный трекинг задач + Kanban + недорогой, но приятный и функциональный сервис-деск
    Ответ написан
    Комментировать