Разбираем ошибки
Судя по предыдущему заданию есть вопросы к некоторым вариантам ответа. Все варианты верные, кроме:
❌ Запретить пользователю изменять товары в корзине после добавления — это «вредное» ограничение. В нашем примере мы собирали требования к обычному интернет-магазину, где можно менять количество.
❌ Добавление товаров в Избранное — это отдельная функция, которая имеет свой сценарий использования.
❌ Оформление заказа с возможностью выбора способов доставки — это следующая стадия после наполнения корзины.
#requirements
Судя по предыдущему заданию есть вопросы к некоторым вариантам ответа. Все варианты верные, кроме:
❌ Запретить пользователю изменять товары в корзине после добавления — это «вредное» ограничение. В нашем примере мы собирали требования к обычному интернет-магазину, где можно менять количество.
❌ Добавление товаров в Избранное — это отдельная функция, которая имеет свой сценарий использования.
❌ Оформление заказа с возможностью выбора способов доставки — это следующая стадия после наполнения корзины.
#requirements
👍6👌3💯1
Пишем через «Если, то, иначе» 🚦
Эту конструкцию часто используют разработчики в коде:
💡 Если пользователь нажал кнопку,
💡 то открыть окно регистрации,
💡 иначе показать подсказку.
Как это помогает нам, системным аналитикам?
Вопросы «А что будет, если...?», «Что делать, если иначе?» помогают сделать требования более качественными и детализированными.
Например:
✏️ Если товар есть в наличии, то добавляем его в корзину, иначе показываем сообщение, что товар закончился.
Такой подход тренирует системное мышление. Он помогает видеть альтернативные сценарии, выявлять детали и упрощать работу команды разработки.
Каждое «если» — это возможность предусмотреть нюансы, улучшить требования и избежать будущих доработок. Чем больше вы задаёте такие вопросы, тем качественнее становятся ваши требования.
#requirements
Эту конструкцию часто используют разработчики в коде:
💡 Если пользователь нажал кнопку,
💡 то открыть окно регистрации,
💡 иначе показать подсказку.
Как это помогает нам, системным аналитикам?
Вопросы «А что будет, если...?», «Что делать, если иначе?» помогают сделать требования более качественными и детализированными.
Например:
✏️ Если товар есть в наличии, то добавляем его в корзину, иначе показываем сообщение, что товар закончился.
Такой подход тренирует системное мышление. Он помогает видеть альтернативные сценарии, выявлять детали и упрощать работу команды разработки.
Каждое «если» — это возможность предусмотреть нюансы, улучшить требования и избежать будущих доработок. Чем больше вы задаёте такие вопросы, тем качественнее становятся ваши требования.
#requirements
👍10🔥4👏4💯1
Если, то, иначе: учимся предусматривать всё 🧠
Давайте проработаем требование: Возврат товара в интернет-магазине.
💡 Сценарий 1:
Если товар куплен онлайн, то возврат делается через форму на сайте, иначе через чек в магазине.
💡 Сценарий 2:
Если прошло менее 14 дней с момента покупки, то возврат возможен, иначе требуется подтверждение от службы поддержки.
💡 Сценарий 3:
Если товар повреждён, то при возврате требуется фото с описанием дефекта, иначе достаточно указать причину возврата.
Каждое из этих «если» помогает нам учесть важные аспекты работы системы.
#requirements
Давайте проработаем требование: Возврат товара в интернет-магазине.
💡 Сценарий 1:
Если товар куплен онлайн, то возврат делается через форму на сайте, иначе через чек в магазине.
💡 Сценарий 2:
Если прошло менее 14 дней с момента покупки, то возврат возможен, иначе требуется подтверждение от службы поддержки.
💡 Сценарий 3:
Если товар повреждён, то при возврате требуется фото с описанием дефекта, иначе достаточно указать причину возврата.
Каждое из этих «если» помогает нам учесть важные аспекты работы системы.
#requirements
👍9🔥4❤2⚡1
Алгебра логики для системного аналитика
Это про умение работать с условиями: И, ИЛИ, НЕ. Вспоминаем уроки информатики в школе!
❗Почему это важно?
Алгебра логики помогает не только разработчикам писать код, но и системным аналитикам прорабатывать и формулировать требования. Без нее легко упустить нюансы, которые могут привести к путанице в разработке.
Представим, что мы разрабатываем hh.ru.
Задача — добавить баннер с рекламой Премиума. Компания заинтересована продвигать платный тариф.
❌ Формулировка «Реализовать баннер с рекламой премиума» недостаточно.
Разработчику нужны четкие условия. В ТЗ это может выглядеть так:
Давайте протестируем это условие. Какие вообще могут быть варианты?
💡 КЕЙС_1
статус соискателя = «Активно ищу работу», тариф «Премиум»
Что отобразится по описанной выше логике?
Ответ: баннер с предложением «проверить резюме hr-специалистами»
💡 КЕЙС_2
статус соискателя = «Не ищу работу», тариф «Премиум»
Что отобразится по описанной выше логике?
Ответ: снова баннер с предложением «проверить резюме hr-специалистами»
💡 КЕЙС_N .... принцип вы поняли)
Итого баннер с предложением «проверить резюме hr-специалистами» отобразится в случаях:
- статус соискателя = «Активно ищу работу», тариф «Премиум»
- статус соискателя = «Не ищу работу», тариф «Премиум»
- статус соискателя = «Не ищу работу», тариф НЕ «Премиум»
- статус соискателя = «Рассматриваю предложения», тариф «Премиум»
- статус соискателя = «Рассматриваю предложения», тариф НЕ «Премиум»
❗Почему так?
В нашем условии указан оператор «И».
Оператор И требует выполнения всех условий. Поэтому в нашем примере для показа баннера с рекламой премиума должны одновременно выполняться два условия:
1️⃣ Статус соискателя = «Активно ищу работу»,
2️⃣ Тариф НЕ = «Премиум».
Если хотя бы одно из них не выполняется, логика переходит к «Иначе».
#requirements
Это про умение работать с условиями: И, ИЛИ, НЕ. Вспоминаем уроки информатики в школе!
❗Почему это важно?
Алгебра логики помогает не только разработчикам писать код, но и системным аналитикам прорабатывать и формулировать требования. Без нее легко упустить нюансы, которые могут привести к путанице в разработке.
Представим, что мы разрабатываем hh.ru.
Задача — добавить баннер с рекламой Премиума. Компания заинтересована продвигать платный тариф.
❌ Формулировка «Реализовать баннер с рекламой премиума» недостаточно.
Разработчику нужны четкие условия. В ТЗ это может выглядеть так:
- Если статус соискателя «Активно ищу работу» И у него тариф НЕ «Премиум», то отображать баннер с рекламой премиума.
- Иначе отображать баннер с предложением «проверить резюме hr-специалистами».
Давайте протестируем это условие. Какие вообще могут быть варианты?
💡 КЕЙС_1
статус соискателя = «Активно ищу работу», тариф «Премиум»
Что отобразится по описанной выше логике?
Ответ: баннер с предложением «проверить резюме hr-специалистами»
💡 КЕЙС_2
статус соискателя = «Не ищу работу», тариф «Премиум»
Что отобразится по описанной выше логике?
Ответ: снова баннер с предложением «проверить резюме hr-специалистами»
💡 КЕЙС_N .... принцип вы поняли)
Итого баннер с предложением «проверить резюме hr-специалистами» отобразится в случаях:
- статус соискателя = «Активно ищу работу», тариф «Премиум»
- статус соискателя = «Не ищу работу», тариф «Премиум»
- статус соискателя = «Не ищу работу», тариф НЕ «Премиум»
- статус соискателя = «Рассматриваю предложения», тариф «Премиум»
- статус соискателя = «Рассматриваю предложения», тариф НЕ «Премиум»
❗Почему так?
В нашем условии указан оператор «И».
Оператор И требует выполнения всех условий. Поэтому в нашем примере для показа баннера с рекламой премиума должны одновременно выполняться два условия:
1️⃣ Статус соискателя = «Активно ищу работу»,
2️⃣ Тариф НЕ = «Премиум».
Если хотя бы одно из них не выполняется, логика переходит к «Иначе».
#requirements
👍9🔥3👏3
Оператор И: основы алгебры логики
Оператор И — означает, что для выполнения условия должны быть верны все его части.
Пример из жизни:
💡 Если сегодня выходной И погода хорошая, то мы идем на пикник.
Если хотя бы одно из условий не выполняется (не выходной или плохая погода), на пикник мы не идем.
Пример в разработке:
💡 Если пользователь активен И его подписка истекает через 7 дней, то отправить напоминание о продлении.
И = все условия должны быть выполнены.
👆 Если пользователь не активен или подписка истекает позже, напоминание не отправится.
#requirements
Оператор И — означает, что для выполнения условия должны быть верны все его части.
Пример из жизни:
💡 Если сегодня выходной И погода хорошая, то мы идем на пикник.
Если хотя бы одно из условий не выполняется (не выходной или плохая погода), на пикник мы не идем.
Пример в разработке:
💡 Если пользователь активен И его подписка истекает через 7 дней, то отправить напоминание о продлении.
И = все условия должны быть выполнены.
👆 Если пользователь не активен или подписка истекает позже, напоминание не отправится.
#requirements
👍10🔥4✍2
Упражнение на оператор «И»
Условие:
* Если пользователь подтвердил email И заполнил профиль, то показать поздравительное сообщение. 🎉
* Иначе показать напоминание о завершении регистрации.
❓Вопрос: В каких случаях покажется напоминание о завершении регистрации?
Условие:
* Если пользователь подтвердил email И заполнил профиль, то показать поздравительное сообщение. 🎉
* Иначе показать напоминание о завершении регистрации.
❓Вопрос: В каких случаях покажется напоминание о завершении регистрации?
🔥8👍4
В каких случаях покажется напоминание о завершении регистрации? Кейс см. ранее 👆
Anonymous Poll
60%
1️⃣ Пользователь подтвердил email, но не заполнил профиль.
57%
2️⃣ Пользователь не подтвердил email, но заполнил профиль.
26%
3️⃣ Пользователь подтвердил email И заполнил профиль.
55%
4️⃣ Пользователь не подтвердил email И не заполнил профиль.
👍8
Спасибо, что участвуете!
❗Правильный ответ на прошлое задание.
Напоминание о завершении регистрации отобразится во всех кейсах, кроме
3️⃣ Пользователь подтвердил email И заполнил профиль.
__________
Давайте еще потренируемся 👇
Жизненно:
* Если в холодильнике есть молоко И хлеб, то можно приготовить завтрак.
* Иначе придется отправиться в магазин за продуктами.
❓Вопрос: В каких случаях нужно будет идти в магазин?
❗Правильный ответ на прошлое задание.
Напоминание о завершении регистрации отобразится во всех кейсах, кроме
3️⃣ Пользователь подтвердил email И заполнил профиль.
__________
Давайте еще потренируемся 👇
Жизненно:
* Если в холодильнике есть молоко И хлеб, то можно приготовить завтрак.
* Иначе придется отправиться в магазин за продуктами.
❓Вопрос: В каких случаях нужно будет идти в магазин?
👍8
В каких случаях нужно будет идти в магазин? Кейс см. ранее 👆
Anonymous Poll
68%
1️⃣ В холодильнике есть хлеб, но нет молока.
70%
2️⃣ В холодильнике есть молоко, но нет хлеба.
4%
3️⃣ В холодильнике есть и молоко, и хлеб.
92%
4️⃣ В холодильнике нет ни молока, ни хлеба.
👍10
❗Время правильного ответа на прошлое задание
Вы пойдете в магазин во всех случаях, кроме «В холодильнике есть и молоко, и хлеб».
💪💪💪💪💪
Выполняйте задания, и вы быстрее придёте к своей цели — стать хорошим системным аналитиком.
Сегодня вы учитесь, завтра — используете новые знания, а послезавтра — получаете повышение грейда и зп.
Начните сегодня, и в будущем скажете себе спасибо! 🌟
Вы пойдете в магазин во всех случаях, кроме «В холодильнике есть и молоко, и хлеб».
💪💪💪💪💪
Выполняйте задания, и вы быстрее придёте к своей цели — стать хорошим системным аналитиком.
Сегодня вы учитесь, завтра — используете новые знания, а послезавтра — получаете повышение грейда и зп.
Начните сегодня, и в будущем скажете себе спасибо! 🌟
👍10❤4🔥3
Оператор ИЛИ: основы алгебры логики
Оператор ИЛИ — означает, что условие выполнится, если верно хотя бы одно из его частей.
Пример из жизни:
💡 Если я захочу пиццу ИЛИ суши, я закажу еду на ужин.
Если хотя бы одно из условий выполняется (я хочу пиццу, или я хочу суши), то заказ будет оформлен. Пицца или суши приедут ко мне на ужин.
Пример в разработке:
💡 Если пользователь выбрал способ оплаты наличкой ИЛИ СБП, то предоставить скидку.
ИЛИ = достаточно выполнения хотя бы одного из условий.
👆 Если пользователь выбрал оплату другим способом (не наличкой, не СБП), например, банковской картой, то скидка не применится.
#requirements
Оператор ИЛИ — означает, что условие выполнится, если верно хотя бы одно из его частей.
Пример из жизни:
💡 Если я захочу пиццу ИЛИ суши, я закажу еду на ужин.
Если хотя бы одно из условий выполняется (я хочу пиццу, или я хочу суши), то заказ будет оформлен. Пицца или суши приедут ко мне на ужин.
Пример в разработке:
💡 Если пользователь выбрал способ оплаты наличкой ИЛИ СБП, то предоставить скидку.
ИЛИ = достаточно выполнения хотя бы одного из условий.
👆 Если пользователь выбрал оплату другим способом (не наличкой, не СБП), например, банковской картой, то скидка не применится.
#requirements
🔥8✍4👍3
Упражнение на оператор «ИЛИ»
Условие:
* Если пользователь выбрал оплату через СБП ИЛИ наличкой, то применить скидку 5% к сумме заказа.
* Иначе отобразить сообщение о скидке при оплате наличными или СБП.
❓ Вопрос: В каких случаях не будет применена скидка?
Условие:
* Если пользователь выбрал оплату через СБП ИЛИ наличкой, то применить скидку 5% к сумме заказа.
* Иначе отобразить сообщение о скидке при оплате наличными или СБП.
❓ Вопрос: В каких случаях не будет применена скидка?
❤8
В каких случаях не будет применена скидка? Кейс см. ранее 👆
Anonymous Poll
7%
1️⃣ Пользователь выбрал оплату через СБП
7%
2️⃣ Пользователь выбрал оплату наличными
84%
3️⃣ Пользователь выбрал оплату банковской картой
88%
4️⃣ Пользователь выбрал оплату через криптовалюту
❤9
Спасибо вам за участие! ❤️
❗Правильный ответ.
Скидка не будет применена, если:
3️⃣ Пользователь выбрал оплату банковской картой
4️⃣ Пользователь выбрал оплату через криптовалюту
__________
Теперь посложнее. Скомбинируем операторы И и ИЛИ 👇
Условие:
* Если пользователь выбрал оплату через СБП ИЛИ наличными, то применить скидку 5%.
* Если пользователь выбрал оплату через банковскую карту И у него статус «новый клиент», то предложить дополнительную скидку 3%.
* Иначе — не применяются скидки.
❓ Вопрос: В каких случаях не будет применена ни одна скидка?
❗Правильный ответ.
Скидка не будет применена, если:
3️⃣ Пользователь выбрал оплату банковской картой
4️⃣ Пользователь выбрал оплату через криптовалюту
__________
Теперь посложнее. Скомбинируем операторы И и ИЛИ 👇
Условие:
* Если пользователь выбрал оплату через СБП ИЛИ наличными, то применить скидку 5%.
* Если пользователь выбрал оплату через банковскую карту И у него статус «новый клиент», то предложить дополнительную скидку 3%.
* Иначе — не применяются скидки.
❓ Вопрос: В каких случаях не будет применена ни одна скидка?
❤🔥8
В каких случаях не будет применена ни одна скидка? Кейс см. ранее 👆
Anonymous Poll
6%
1️⃣ Пользователь выбрал оплату СБП и у него статус «новый клиент»
9%
2️⃣ Пользователь выбрал оплату СБП и он старый клиент
6%
3️⃣ Пользователь выбрал оплату наличными и у него статус «новый клиент»
12%
4️⃣ Пользователь выбрал оплату наличными и он старый клиент
76%
5️⃣ Пользователь выбрал оплату криптовалютой и у него статус «новый клиент»
91%
6️⃣ Пользователь выбрал оплату криптовалютой и он старый клиент
9%
7️⃣ Пользователь выбрал оплату банковской картой и у него статус «новый клиент»
88%
8️⃣ Пользователь выбрал оплату банковской картой и он старый клиент
❤🔥10
Разбираем упражнение
1️⃣ Пользователь выбрал оплату СБП и у него статус «новый клиент»
Скидка 5% применяется, т.к. оплата СБП, статус не важен. ✅
2️⃣ Пользователь выбрал оплату СБП и он старый клиент
Скидка 5% применяется, т.к. оплата СБП, статус не важен. ✅
3️⃣ Пользователь выбрал оплату наличными и у него статус «новый клиент»
Скидка 5% применяется, т.к. оплата наличными, статус не важен. ✅
4️⃣ Пользователь выбрал оплату наличными и он старый клиент
Скидка 5% применяется, т.к. оплата наличными, статус не важен. ✅
5️⃣ Пользователь выбрал оплату криптовалютой и у него статус «новый клиент»
Скидка не применяется, т.к. оплата криптовалютой, статус не важен. ❌
6️⃣ Пользователь выбрал оплату криптовалютой и он старый клиент
Скидка не применяется, т.к. оплата криптовалютой, статус не важен. ❌
7️⃣ Пользователь выбрал оплату банковской картой и у него статус «новый клиент»
Скидка 3% применяется, т.к. оплата банковской картой. Здесь мы уже смотрим на статус — скидка применяется, т.к. это «новый клиент». ✅
8️⃣ Пользователь выбрал оплату банковской картой и он старый клиент
Скидка не применяется, т.к. несмотря на то что оплата картой, клиент старый, а не новый. ❌
1️⃣ Пользователь выбрал оплату СБП и у него статус «новый клиент»
Скидка 5% применяется, т.к. оплата СБП, статус не важен. ✅
2️⃣ Пользователь выбрал оплату СБП и он старый клиент
Скидка 5% применяется, т.к. оплата СБП, статус не важен. ✅
3️⃣ Пользователь выбрал оплату наличными и у него статус «новый клиент»
Скидка 5% применяется, т.к. оплата наличными, статус не важен. ✅
4️⃣ Пользователь выбрал оплату наличными и он старый клиент
Скидка 5% применяется, т.к. оплата наличными, статус не важен. ✅
5️⃣ Пользователь выбрал оплату криптовалютой и у него статус «новый клиент»
Скидка не применяется, т.к. оплата криптовалютой, статус не важен. ❌
6️⃣ Пользователь выбрал оплату криптовалютой и он старый клиент
Скидка не применяется, т.к. оплата криптовалютой, статус не важен. ❌
7️⃣ Пользователь выбрал оплату банковской картой и у него статус «новый клиент»
Скидка 3% применяется, т.к. оплата банковской картой. Здесь мы уже смотрим на статус — скидка применяется, т.к. это «новый клиент». ✅
8️⃣ Пользователь выбрал оплату банковской картой и он старый клиент
Скидка не применяется, т.к. несмотря на то что оплата картой, клиент старый, а не новый. ❌
👍9❤🔥4
Упражнение: Сформулируйте условие
Заказчик говорит:
Мы хотим, чтобы пользователи получали скидку, если они зарегистрировались на сайте и/или подписались на нашу рассылку.
❓ Вопрос: Какое условие соответствует этому требованию? Выберите правильный вариант.
Заказчик говорит:
Мы хотим, чтобы пользователи получали скидку, если они зарегистрировались на сайте и/или подписались на нашу рассылку.
❓ Вопрос: Какое условие соответствует этому требованию? Выберите правильный вариант.
🔥9
Какое условие соответствует требованию выше?
Anonymous Quiz
37%
1️⃣ Если пользователь зарегистрирован на сайте И подписан на рассылку, то предоставить скидку.
56%
2️⃣ Если пользователь зарегистрирован на сайте ИЛИ подписан на рассылку, то предоставить скидку.
8%
3️⃣ Если пользователь зарегистрирован на сайте И подписан на рассылку, то не предоставлять скидку.
👍9
Оператор НЕ: основы алгебры логики
Оператор НЕ изменяет значение условия на противоположное.
Пример из жизни:
💡 Если я НЕ хочу готовить, то закажу еду.
Если условие «хочу готовить» неверно, значит, я закажу еду.
Пример в разработке:
💡 Если пользователь НЕ активен, то отправить ему напоминание.
НЕ = проверка, что условие не выполняется.
👆 Если пользователь активен, напоминание не отправится.
__________
А чего ждать? Давайте практиковаться с НЕ! 👇
Условие:
* Если пользователь НЕ активировал учетную запись И НЕ загрузил аватар, то отобразить напоминание о завершении настройки профиля.
* Иначе ничего не отображать.
❓ Вопрос: В каких случаях напоминание будет показано?
#requirements
Оператор НЕ изменяет значение условия на противоположное.
Пример из жизни:
💡 Если я НЕ хочу готовить, то закажу еду.
Если условие «хочу готовить» неверно, значит, я закажу еду.
Пример в разработке:
💡 Если пользователь НЕ активен, то отправить ему напоминание.
НЕ = проверка, что условие не выполняется.
👆 Если пользователь активен, напоминание не отправится.
__________
А чего ждать? Давайте практиковаться с НЕ! 👇
Условие:
* Если пользователь НЕ активировал учетную запись И НЕ загрузил аватар, то отобразить напоминание о завершении настройки профиля.
* Иначе ничего не отображать.
❓ Вопрос: В каких случаях напоминание будет показано?
#requirements
👍9🔥4
В каких случаях напоминание будет показано? Кейс см. ранее 👆
Anonymous Quiz
7%
1️⃣ Пользователь активировал учетную запись и загрузил аватар.
16%
2️⃣ Пользователь активировал учетную запись, но НЕ загрузил аватар.
2%
3️⃣ Пользователь НЕ активировал учетную запись, но загрузил аватар.
74%
4️⃣ Пользователь НЕ активировал учетную запись и НЕ загрузил аватар.
👍9
🌟 Видите, как вы справились? Это еще один шаг к освоению профессии!
На этой неделе вы потренировались работать с условиями: «если — то — иначе», а также с операторами И, ИЛИ, НЕ.
Зачем вам это?
Затем, что системный аналитик должен уметь четко формулировать логические условия для описания требований 👉 чтобы разработчики легко реализовывали их в коде.
Молодцы, что участвуете в заданиях. Только практика и постоянные тренировки приведут вас к цели. 🚀
С вами Вера и Юрий,
основатели AnalystCore ❤️
На этой неделе вы потренировались работать с условиями: «если — то — иначе», а также с операторами И, ИЛИ, НЕ.
Зачем вам это?
Затем, что системный аналитик должен уметь четко формулировать логические условия для описания требований 👉 чтобы разработчики легко реализовывали их в коде.
Молодцы, что участвуете в заданиях. Только практика и постоянные тренировки приведут вас к цели. 🚀
С вами Вера и Юрий,
основатели AnalystCore ❤️
👍9❤🔥4