Pull to refresh
0
@ledvanoffread⁠-⁠only

User

Send message

О роли системного аналитика и шаблон для проектирования

Reading time7 min
Views61K

Сейчас нужно написать краткое введение о том, что важно проводить аналитику для задачи на разработку: оценить влияние изменений, проработать все возможные сценарии и т.д.

Понимание сути и объема задачи должно появиться до первой строки кода. Писать сколь угодно емкое введение о важности этого этапа можно долго, но кажется, что все мы понимаем, что самые дорогие ошибки — на этапе проектирования.

Разработчику с проектированием и документированием решения задачи помогает аналитик.

Строить дом и строить систему. Что общего?
Total votes 5: ↑4 and ↓1+5
Comments13

Как мы развивали ЦК системного анализа в Sportmaster Lab

Reading time8 min
Views5.2K
Привет, Хабр!

Меня зовут Максим Пермяков, я руководитель центра компетенции (далее — ЦК) систем клиент-сервер в компании «Спортмастер». А с 2020 года также являюсь руководителем ЦК системного анализа.

В этом посте я хочу рассказать вам про роль системного аналитика в нашей компании и поделиться опытом создания и развития ЦК.

Начну немного издалека. Меня можно считать классическим разработчиком: закончил факультет прикладной математики, получил квалификацию «математик — системный программист» и уже на втором курсе начал работать по специальности именно программистом. Это был 1999 год и в то время не было деления по специальностям, как сейчас. Все были «тыжпрограммистами» — универсальными солдатами. Днем делали все — от сетей 1С до сайтов на PHP, а вечером еще меняли картриджи в принтере.

До прихода в «Спортмастер» я 12 лет проработал в банке. У нас были заказчики на стороне бизнеса, для которых мы разрабатывали финансовые приложения. И, что важно, прорабатывали их полностью — от базы данных до клиентской части приложения. Я получал большое удовольствие от своей работы, т.к. участвовал в получении результата целиком.

Когда меня друг позвал попробовать себя в «Спортмастере», то я искренне не понимал, что они там в этом ритейле вообще делают. С банком-то всё понятно, там всегда много разработки. А в ситуации со «Спортмастером» я шутил, что до обеда они покупают кроссовки за доллар, продают за два, вносят в 1С, а после обеда что там делать?
Читать дальше →
Total votes 14: ↑11 and ↓3+11
Comments6

Как устроен Domain-Driven Design

Reading time13 min
Views47K

Многие проекты на Django начинаются просто: есть база данных и к приложению, которое крутится на сервере, идут обращения. Например, так начиналась Dodo IS (информационная система компании Додо Пицца, где работал автор сегодняшней статьи). Но если использовать Django из коробки, можно натворить много бед и встретить пачку антипаттернов. Возможно, вы встречали такое на старых legacy-проектах.

Евгений Пешков развивает сообщество DDD-практиков, рассказывая, какие проблемы решает Domain-Driven Design (предметно-ориентированное проектирование) в современном мире. На конференции Russian Python Week 2020 он выступил с рассказом об этом. Кстати, 19 августа пройдет встреча DDDevotion-сообщества, присоединяйтесь, будем о чем поговорить.

В сегодняшней статье будет его рассказ про то, как устроен Domain-Driven Design и какие инструменты использует, чтобы наиболее точно описать требования бизнеса и сам бизнес.

Читать далее
Total votes 36: ↑36 and ↓0+36
Comments28

Учимся проектировать на основе предметной области (DDD: Domain Driven Design)

Reading time8 min
Views219K

1. Введение



В данной статье я хотел бы рассказать об этих трёх буквах, постоянно находящихся на слуху, но для многих являющихся тайной за семью печатями, а так же привести ряд ресурсов, с которыми неплохо было бы познакомиться при желании продолжить развитие в проектировании на основе предметной области (DDD: Domain Driven Design).


Читать дальше →
Total votes 66: ↑54 and ↓12+42
Comments25

Domain Driven Design на практике

Reading time12 min
Views273K
Эванс написал хорошую книжку с хорошими идеями. Но этим идеям не хватает методологической основы. Опытным разработчикам и архитекторам на интуитивном уровне понятно, что надо быть как можно ближе к предметной области заказчика, что с заказчиком надо разговаривать. Но не понятно как оценить проект на соответствие Ubiquitous Language и реального языка заказчика? Как понять, что домен разделен на Bounded Context правильно? Как вообще определить используется DDD в проекте или нет?

Последний пункт особенно актуален. На одном из своих выступлений Грег Янг попросил поднять руки тех, кто практиукует DDD. А потом попросил опустить тех, кто создает классы с набором публичных геттеров и сеттеров, располагает логику в «сервисах» и «хелперах» и называет это DDD. По залу прошел смешок:)

Как же правильно структурировать бизнес-логику в DDD-стиле? Где хранить «поведение»: в сервисах, сущностях, extension-методах или везде по чуть-чуть? В статье я расскажу о том, как проектирую предметную область и какими правилами пользуюсь.
Читать дальше →
Total votes 32: ↑28 and ↓4+24
Comments18

Information

Rating
Does not participate
Works in
Registered
Activity