Декомпозиция фич и их приоритезация — это обязательные этапы проектирования продукта. USM – инструмент, который нам в этом помогает. С ним получается работать над продуктом, опираясь на реальные потребности пользователей и цели бизнеса. Как итог – строим разработку так, чтобы каждая функция, которую создает команда, приносила максимальную пользу. Возможно, вся эта работа покажется простой и быстрой, но чтобы создать продукт, нужный бизнесу и клиентам, имеет смысл выстроить систему и подход, универсальные с точки зрения применения и гибкие с точки зрения адаптации под конкретный запрос.
Рубрика «проектирование систем»
Как использовать User Story mapping при создании цифрового продукта
2024-11-23 в 15:15, admin, рубрики: usm, ит проджект-менеджмент, ИТ продукт, продукт менеджмент, продуктовая разработка, продуктовое мышление, проектирование систем, развитие продукта, разработка продукта, юзерстори50 терминов системного дизайна, которые должен знать каждый разработчик
2024-09-30 в 8:05, admin, рубрики: devops, system architecture, system design, timeweb_статьи_перевод, проектирование систем, системная архитектура, системный дизайн
1. Масштабируемость / Scalability
- Масштабируемость — это способность системы поддерживать возросшую нагрузку путем добавления дополнительных ресурсов
- Примером является добавление дополнительных серверов для обработки увеличившегося веб-траффика
- Что такое масштабируемость и как ее достичь?
2. Балансировка нагрузки / Load Balancing
- Балансировка нагрузки — это разделение входящего сетевого траффика между несколькими серверами для снижения нагрузки на каждый из них (во избежание того, чтобы на один сервер приходилось слишком много траффика)
- Примером является распределение веб-траффика между несколькими экземплярами EC2 с помощью сервиса AWS Elastic Load Balancer (ELB)
- Понимание балансировки нагрузки
Под капотом облаков. Строим облачную консоль. Часть 1. Знакомство
2024-08-21 в 9:16, admin, рубрики: Go, mongodb, облачное хранилище, проектирование взаимодействия, проектирование системС чем предстоит иметь дело
Прежде чем перейти к главному, кратко обозначу, что конкретно мы в этой статье будем разбирать. Ведь область облачных вычислений настолько велика, что рассказать про все нюансы облаков вряд ли получится. И во многом это даже бессмысленно, так как информации про виртуализацию и проектирование решений в облаке, итак, предостаточно на просторах интернета. Хотя так или иначе виртуализацию мы затронем, когда будем выбирать чем консоль будет управлять (спойлер: Openstack + OVN).
Памятка по BPMN и BPMN-диаграммам
2024-08-14 в 16:01, admin, рубрики: bpmn, BPMN 2.0, аналитика, бизнес-анализ, бизнес-процессы, проектирование бизнес-процессов, проектирование систем, системная аналитика, системный анализЯ написал эту статью для себя, но подумал, что она будет полезна и начинающим айтишникам, и тем, кому необходимо освежить знания или быстро вспомнить основные вещи, не открывая полное руководство.
Ещё раз подчеркну, статья задумывалась как базовая памятка и помощь для начинающих, а никак не исчерпывающая документация. Многое я опускаю ввиду избыточности или неактульности, по крайней мере в моей работе.
Что это?
Возможно, микросервисы вам не нужны
2024-06-09 в 10:00, admin, рубрики: ruvds_перевод, архитектура по, микросервисы, монолиты, Программирование, проектирование системПисать эту статью было весело. Многие наверняка её захейтят, но …
Дорогие коллеги-разработчики, нам нужно поговорить. Поговорить о микросервисах и ряде нежелательных ситуаций. Да, будет непросто, но это необходимо. Иначе нам не справиться.
Сегодня микросервисы очень популярны. Это прекрасный архитектурный стиль, который помогает масштабировать систему и саму организацию. Их используют многие успешные компании (Netflix, Spotify и прочие). Поэтому вполне нормально, что большинство организаций уже применяют или планируют начать применять этот стиль. Однако не все учитывают сопутствующие затраты.Читать полностью »
Что нужно знать, чтобы успешно пройти System Design Interview
2024-05-04 в 15:00, admin, рубрики: development, software, software development, system design, проектирование систем, системный дизайнДля любого разработчика глубокое понимание основных принципов системного проектирования является необходимым условием для создания стабильных и масштабируемых программных систем, способных обеспечивать высокую производительность. Системное проектирование (System Design) включает разработку архитектуры и структуры программной системы, направленную на удовлетворение специфических требований и обеспечение требуемых показателей производительности.
Система типов — лучший друг программиста
2022-11-08 в 5:07, admin, рубрики: domain-driven design, архитектура по, информационная безопасность, Программирование, проектирование систем, системы типов, Совершенный кодЯ устал от одержимости примитивами и от чрезмерного использования примитивных типов для моделирования функциональной области.
Значение в string
не лучший тип для записи адреса электронной почты или страны проживания пользователя. Эти значения заслуживают гораздо более богатых и специализированных типов. Мне нужно, чтобы существовал тип данных EmailAddress
, который не может быть null. Мне нужна единая точка входа для создания нового объекта этого типа. Он должен валидироваться и нормализироваться перед возвратом нового значения. Мне нужно, чтобы этот тип данных имел полезные методы наподобие .Domain()
или .NonAliasValue()
, которые бы возвращали для введённого foo+bar@gmail.com
значения gmail.com
и foo@gmail.com
. Эта полезная функциональность должна быть встроена в эти типы. Это обеспечивает безопасность, помогает предотвращать баги и существенно повышает удобство поддержки.
Читать полностью »
Ошибки выбора MongoDB в качестве основной БД в стартапе
2022-10-11 в 22:20, admin, рубрики: mongodb, python, базы, опыт, ошибки и грабли, Программирование, Проектирование и рефакторинг, проектирование систем, рефакторингВ этой статье я хочу рассказать о своих ошибках, которые я допустил, когда писал сервис, у которого MongoDB была основной БД для хранения пользовательских данных (да и не только, но об этом ниже).
Я ни в коем случае не считаю, что MongoDB это плохая БД и ее не нужно использовать. Более того, я считаю, что только мои кривые руки завели меня в ситуацию, из которой пришлось выходить переписыванием сервиса под другую БД (ушел на Postgres и кайфую).
Тем не менее, нельзя знать всего и чтение документации не спасает от катастроф во время самой реализации проекта. Особенно, если ваши ожидания от инструмента разошлись с реальностью.
С 2 лет до 6 месяцев: как мы ускорили «доставку» почтового ПО в 4 раза
2022-03-22 в 7:40, admin, рубрики: Анализ и проектирование систем, Блог компании Конференции Олега Бунина (Онтико), Блог компании Почтатех, гетерогенность, инфраструктура и CI, проектирование систем, управление проектами, управление проектами и задачамиВсем привет! Меня зовут Антон, я системный архитектор отдела разработки курьерских сервисов в Почтатехе. Команда нашего отдела создаёт и развивает цифровые продукты для курьеров Почты России. Мы разрабатываем как производственные системы, так и более уникальные штуки — например, маршрутизатор и мобильную SaaS-платформу, которая позволяет сделать офлайн-приложение для терминалов сбора данных, почтальонов и курьеров.
Микросервисы. Не всё то золото, что хайп
2021-09-24 в 14:38, admin, рубрики: Анализ и проектирование систем, Блог компании e-Legion, Микросервисная архитектура, микросервисы, монолит, Проектирование и рефакторинг, проектирование системПривет, меня зовут Владимир Кустиков, я — архитектор решений в e-Legion. И сегодня я хотел бы рассказать вам про микросервисы.