De visu et auditu
Ранее я писал, какие вопросы задают на собеседовании на project manager-а. Вот вопросы и ответы для бизнес-аналитика.
Какой основной инструмент бизнес-аналитика?
Единственный правильный ответ — критический ум. Перечисление программных продуктов, при помощи которых вы пишете требования, будет ошибочным.
Какие знаете методологии разработки?
Классический проектный подход (PMI), скрам, канбан. В принципе, этого достаточно.
Какие бывают требования?
Функциональные и нефункциональные. Функциональное требование описывает, что должна делать программная система, в то время как нефункциональные требования накладывают ограничения на то, как система будет это делать.
Также можно рассказать про уровни требований:
- бизнес-правила,
- бизнес-требования,
- пользовательские требования,
- требования к продукту.
Также можно рассказать про типы требований:
- ограничения,
- требования к графическим интерфейсам,
- требования к данным.
Какими свойствами обладают хорошие требования?
- завершённость,
- последовательность,
- правильность,
- абстрактность,
- осуществимость,
- измеримость,
- необходимость,
- прослеживаемость,
- однозначность.
Какие существуют методы сбора требований?
- интервью,
- анкетирование-опрос,
- фокус-группа,
- семинар,
- мозговой штурм,
- совещание,
- ролевая игра,
- обсервация,
- моделирование процессов,
- прототипирование,
- анализ вариантов использования,
- анализ интерфейсов.
Как строится процесс работы с требованиями?
Требования нужно:
- собрать,
- задокументировать,
- проанализировать,
- управлять ими.
Что такое бизнес-требования?
Нужно разделять бизнес-цели и бизнес-требования. Бизнес-цель — то, чего хочет добиться бизнес. Бизнес-требование — как он хочет этого добиться.
Как приоритизируются требования?
Прочтите «приоритизация MoSCoW».
Что такое «спецификация»?
Документ, наиболее полно описывающий функции и свойства системы.
Что такое Use Case?
Вариант использования. Пример поведения системы при взаимодействии с окружающей средой.
Что такое User Story?
Способ описания требований на естественном языке.
Чем юзкейс отличается от юзерстори?
Сториз, они про потребность пользователя. Raw user needs.
Сториз пишутся человеческим языком = легко читаются и бизнесом
и разработчиками. Express understanding of User needs.
Юзкейсы же про поведение, которое вы встроите в продукт, чтобы удовлетворить эти потребности. What the software needs to do.
Написание Юзкейсов это designing a functional solution.
Что такое Job story?
Что такое «план аналитики»?
План аналитики — док для формирования общего видения процесса аналитики на проекте. Соглашение о том, как аналитик будет строить свою работу. Готовится перед стартом каждого проекта. Согласуется с командой и заказчиком.
- Описание проекта. Цель, бизнес цель, модули.
- Участники этапа аналитики. Наши и заказчика. С ФИО, контактами и часами доступа.
- Задачи, которые будут решать эти люди.
- Порядок аналитики. Как фиксируем инфу, частота встреч, временные слоты. Этапность.
- Перечень артефактов. Митинг репорты, реестр рисков, матрица трассировки, все документы, которые будем реализовывать в рамках проекта.
Что такое «реестр требований»?
Реестр требований — док для фиксации собранных требований. Содержит иерархию требований и их взаимосвязи: бизнес → пользовательское → функциональное. В целом, пишется не так часто. Только на больших проектах. Если делается, то в конфлюшной таблице.
Что такое ЧТЗ (частное техническое задание)?
Частное ТЗ — это когда мы по ватерфолу работаем и требуется расширение границ проекта (в основном, на госухе). На практике встречается редко.
Что такое ТТЗ (тендерное техническое задание)?
Тендерное ТЗ — верхнеуровневое ТЗ, чтобы участвовать в тендере. Цели проекта, характеристики проекта автоматизации, верхнеуровневые функциональные и нефункциональные требования. С ТТЗ в разработку пойти нельзя, оно недостаточно детализированное.
Что такое «проектное решение»?
Проектное решение — тоже пишется на госушном проекте и крайне редко. По сути, то же самое ТЗ, только с госовским уклоном, по 34 ГОСТу.
Что такое «матрица трассировки»?
Матрица трассировки — тоже инструмент для управления требованиями. В нём указываются все взаимосвязи требований с внешними артефактами. Обычно это связи между требованиями и кусками макета, который делают дизы заказчика. Шаблона у него нет. Пользовательское → Функциональное → Элемент дизайна → Указание, что должно быть, что есть по факту.
Какова роль аналитика в команде?
Аналитик собирает требования у заказчика, транслирует их в команду в понятном команде виде. Вместе с командой вырабатывает решение, после чего согласует решение с заказчиком.
Что делать при конфликте внутри команды?
Если конфликт вызван неоднозначностью требований, следует понять, в чём неоднозначность и переписать требования.
Кто оценивает трудоёмкость задач?
Только команда совместными усилиями.
Кто пишет тест-план и тест-кейсы?
Тестировщик.
Какие нотации для описания бизнес-процессов вы используете?
UML, BPMN.
Что знаете про UML? Для чего он используется?
Тут нужно рассказать, какие диаграммы знаете и какие они бывают. В частности, диаграммы бывают структурные и поведенческие.
Какие инструменты моделирования бизнес-процессов вы знаете?
Здесь нужно рассказать, какой софт вы используете для построения этих диаграмм. Visio, draw.io, Camunda.
Какие инструменты проектирования интерфейсов вы используете?
Figma, Axure, Balsamiq.
Должны ли мы вам оплачивать какое-либо платное ПО для работы?
Существует большое количество опенсорсного софта, покрывающего все потребности.
Что такое глоссарий, зачем он нужен, можно ли без него обойтись?
Обойтись без него нельзя, он нужен, чтобы все участники процесса общались на одном языке и не было двусмысленностей. Подробнее о словаре.
Знаете ли вы SQL и на каком уровне?
Достаточно уметь строить простые запросы.
Что такое ООП?
Методология разработки, базирующаяся на объектах, являющихся экземплярами классов.
С какими системами управления проектами знакомы?
Крайне желательно уметь обращаться с Джирой и Конфлю.
Вот описание кейса. Что должно войти в MVP?
MVP — это продукт, который в минимальном объёме решает потребность бизнеса. Как правило, это первая версия продукта, содержащая одну фичу, решающую конкретную бизнес-проблему.
Вот фича. Напишите юзер стори и критерии приёмки.
Юзер стори — это описание функциональности на естественном языке. Как правило, формулируется в формате «Я как <роль> хочу <возможность>, чтобы <цель>». Критерии приёмки — это требования к элементу бэклога, достаточные для того, чтобы этот элемент был принят заказчиком.
Найдите ошибку в спецификации.
Типичные ошибки:
- не указан профиль пользователя. Неясно, кто должен совершить действие.
- неизвестный элемент глоссария объясняется через другой неизвестный элемент. Сепулька — предмет для сепкулькации. Сепулькация — действие, осуществляемое при помощи сепульки.
- нарушен один из критериев, которым должны соответствовать требования. Например, «цвет — красный» вместо кода цвета.
Что такое RACI-матрица?
Это матрица распределения ответственности.
- R – Responsible (исполняет),
- A – Accountable (несет ответственность),
- C – Consult before doing (консультирует до исполнения),
- I – Inform after doing (оповещается после исполнения).
Как вы изобразите жизненный путь объекта?
При помощи диаграммы состояний (диаграммы конечного автомата).
До какой степени нужно декомпозировать юзер стори?
Юзер стори должна соответствовать принципу INVEST. То есть, она должна быть независимой, маленькой и ценной для пользователя.
Какие подходы к UX вы используете?
Здесь можно вспомнить 10 законов юзабилити Якоба Нильсена. Закон семи сущностей. Правило трёх секунд.
Чем фича отличается от элемента бэклога?
Фича описывает функциональность. Элементом бэклога (кроме фичи) может быть баг или технический долг.
В чём отличие скрам от канбан?
В канбане итерации не ограничены строго по времени. В канбане отсутствуют обязательные церемонии. Подробнее о канбане.
До какой степени детализации моделировать бизнес-процессы?
До такой степени, до которой возможно понятно объяснить их команде.
Как понять, что мы не упустили никаких юзер стори?
Нужно использовать карту юзер стори, на которой в хронологическом порядке рассказать о всех действиях юзера от момента входа до получения ценного результата.
Чем верификация отличается от валидации?
Верификация — проверка на соответствие требованиям, валидация — проверка на соответствие ожиданиям заказчика.
Чем авторизация отличается от аутентификации?
Аутентификация — процедура проверки подлинности, например проверка подлинности пользователя путем сравнения введенного им пароля с паролем, сохраненным в базе данных. Авторизация — предоставление определенному лицу или группе лиц прав на выполнение определенных действий.
Почему базы данных называются реляционными?
Потому что данные в них хранятся в виде таблиц. Также бывают нереляционные бд, в которых данные хранятся иначе, например в формате словарей или графов.
Чем left join отличается от inner join?
inner join возвращает строки, содержащие совпадения в обоих таблицах, left join — все строки из левой таблицы, даже если в правой нет совпадений.
Что такое foreign key (внешний ключ)?
Внешний ключ SQL — это ключ, используемый для объединения двух таблиц. Иногда его также называют ссылочным ключом. Внешний ключ — это столбец или комбинация столбцов, значения которых соответствуют Первичному ключу в другой таблице.
Чем Saas отличается от Paas?
При Paas клиент получает инфраструктуру и готовое для разработки приложений ПО. В случае в Saas клиент получает готовое ПО, развёрнутое в облаке.
Что такое SSO?
Это схема, при которой пользователь переходит из одного раздела или компонента ПО в другой без повторной аутентификации.
Назовите элементы архитектуры веб-приложения.
Клиент, сервер, база данных.
Что такое API?
Программный интерфейс приложений, интерфейс прикладного программирования, при помощи которого одно приложение может обмениваться данными с другим.
Чем GET отличается от POST?
Основное отличие в способе передачи данных. В get-запросе данные передаются в url, а в post-запросе — в теле запроса. А вообще, get-ом мы забираем данные с сервера, post-ом отправляем данные на сервер. Большая часть http-запросов, это либо post, либо get.
Кроме них ещё есть put (обновление данных) и delete (удаление данных).