Рубрика «Анализ и проектирование систем» - 69

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

Существенные недостатки есть и у самих информационных систем. В этой статье я предлагаю поговорить не о традиционных – трёхслойных – АИС, а о системах с четырехслойной архитектурой, где новый четвертый слой – слой представления – реализует понятийную модель предметной области. Для актуализации модели при изменениях в предметной области не требуется программировать. Более того, как актуализация модели, так и прикладные задачи решаются посредством семантически инвариантных для всех предметных областей операций над сущностями понятий.

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

Информационные системы с понятийными моделями. Часть первая - 1

Читать полностью »

В статье я поделюсь личным опытом разработки и реализации “волшебных ссылок”. Расскажу зачем они нужны в нашем проекте, как функционируют и в конце даже всплакну над тем, что отсутствие такого функционала в больших системах используемых мною заставляет меня гневно рвать на себе волосы.

Код будет только в одном месте, т.к. основная цель статьи — рассказать про саму идею, а не показать то, насколько красив код.

Magic link или история о том, как мы упростили жизнь пользователю - 1
Читать полностью »

Когда речь заходит о роли аналитика в IT, то всегда приходится добавлять кучу уточнений. Бизнес или системный аналитик? Анализ в продуктовой разработке или в проектной, как это, например, часто бывает в консалтинге? На внутренней разработке или на заказной?.. Заказчика государственного или негосударственного? И так далее.

До прихода в Туту.ру я работала в IT-консалтинге на ERP-проектах и в заказной продуктовой разработке, здесь же я занимаюсь системным анализом во внутреннем продукте «Авиа». Отдел системного анализа у нас состоит из 9 аналитиков и 1 технического писателя. Далее на своем опыте я расскажу, что меняется в голове специалиста и в рабочих процессах при смене формата деятельности на внутреннюю продуктовую разработку с точки зрения анализа, а заодно поделюсь, как устроен процесс в целом у нас в Туту.ру.

5 различий работы аналитика в проектах и продуктовой разработке - 1

Читать полностью »

Опыт построения интеграционной платформы на базе ServiceMix (Camel) и RabbitMQ - 1 Как только в компании появляется хотя бы две информационных системы, которым необходимо обмениваться данными, возникает вопрос, как организовать их взаимодействие. Вариантов множество: файловый обмен, линки между базами данных, web или rest сервисы, различные системы обмена сообщениями, устаревшие RPC и CORBA, новомодный gRPC и т.д. Выбор зависит от предпочтений участников проекта и от возможностей систем (архитектура системы, используемая платформа, наличие готового API и пр.). Предположим, выбрали какой-то способ обмена, системы начали взаимодействовать, все хорошо. Но потом возникает третья система, с которой тоже надо интегрироваться, потом четвертая и т.д. Нужно опять садиться и выбирать способ обмена, и не факт что удастся ограничиться уже используемыми технологиями (где-то это продиктовано ограничениями новых систем, где-то разработчик настоял на другой технологии или захотел попробовать что-то новое). С ростом количества систем растет количество и сложность взаимодействий между ними, растет количество используемых технологий. В итоге вся интеграционная архитектура компании начинает напоминать запутанный клубок разноцветных ниток, как-то связывающих системы компании, который все сложнее распутывать при разборе ошибок и доработках. Рано или поздно начинают приходить мысли о создании единой интеграционной среды, которая прозрачно и расширяемо свяжет все системы воедино.

В этой статье я расскажу об опыте использования Apache ServiceMix (Camel) и RabbitMQ для построения такой интеграционной среды.
Читать полностью »

Запущенный в феврале Яндекс.Драйв, как и любой сервис каршеринга, работает благодаря комплексу уникальных систем — в автомобиле, в телефоне пользователя и на сервере. Система, которая ещё недавно была в новинку для IT-сообщества, расположена в самой машине. Она включает в себя несколько девайсов — блок телематики, CAN-шину и мультимедийное оборудование. Подробнее о том, как всё это коммуницирует между собой, я и хочу вам рассказать. Кроме того, я объясню, почему именно сейчас компании и эксперты по безопасности должны уделять максимум внимания защите каршеринговых сервисов. Дело в том, что это не просто yet another приложения в вашем телефоне, а целая взлётная полоса для автомобильной индустрии завтрашнего дня.

Безопасный каршеринг: составляющие, основные проблемы и конкурс Яндекса - 1

Мы стремимся построить самую защищённую инфраструктуру для каршеринга, и рассчитываем, что вы тоже поучаствуете в этом процессе. До 27 мая у вас есть возможность изучить Яндекс.Драйв на предмет уязвимостей. Попробуйте изменить логику работы сервиса, снизить цену поездки, получить доступ к информации о пользователях или, например, открыть машину, когда сервис это запрещает.

Те, кто обнаружит самую серьезную проблему, получат от Яндекса полмиллиона рублей. Приз за второе место — 300 000 рублей, за третье — 200 000 рублей. О деталях я расскажу чуть ниже, а пока вернёмся к устройству каршеринга.
Читать полностью »

Название статьи не стоит понимать буквально: backend никуда не делся, просто фокус разработки — особенно на начальном этапе развития нового проекта — сильно смещается в сторону «клиентской части». Появляется большой соблазн взять что-то понятное для хранения данных и уже «обвязанное» REST API, максимально отказаться от PHP/Python/Ruby/Java/etc, писать 80% кода «на стороне клиента», минимально заботясь о возне «на стороне сервера».

Эта статья основана на докладе Николая Самохвалова, который, в свою очередь, обобщил опыт ряда проектов, написанных на React, React Native и Swift и переходящих на парадигму noBackend за счёт PostgreSQL+PostgREST.

В конце, вы найдете список must-check-вопросов для работы с noBackend-подходом, а, если ваш Postgres-опыт позволяет, то сразу после прочтения вы можете приступить к разворачиванию безопасного, высокопроизводительного и годного для быстрого развития REST API.

noBackend, или Как выжить в эпоху толстеющих клиентов - 1

О спикере: Николай Самохвалов больше десяти лет работает с PostgreSQL, является со-организатором российского сообщества RuPostgres.org и в данный момент помогает различным компаниям оптимизировать, масштабировать и автоматизировать процессы, связанные с эксплуатацией PostgreSQL. Далее — расшифровка доклада Николая на Backend Conf, рассчитанного и на бэкенд, и на фронтенд разработчиков.

Последние годы я много времени провожу в Силиконовой Долине и хочу поделиться с вами трендами, которые я там наблюдаю. Конечно, отсюда вы тоже прекрасно все видите, но там они нагляднее, потому что профессиональные разговоры о передовых технологиях ведутся буквально в каждом кафе.

Читать полностью »

Разница восприятия

Существует забавная разница в восприятии возможности изменения бизнес-системы между «низами» и «верхами».

Например, линейные, или рядовые сотрудники. В моей жизни это были программисты 1С, обычные программисты, системные администраторы, снабженцы, продавцы, различные менеджеры по заказам, логисты, инженеры-конструкторы, технологи, кладовщики, проект-менеджеры (они ближе к рядовым были), финансисты, менеджеры по качеству, бухгалтеры, экономисты (прошу прощения, если кого-то забыл).

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

Но в самом начале возражение было одно: мы – не менеджеры. У нас нет власти, а у менеджера – есть. Только он может все поменять. Только он понимает, что и как надо поменять в процессах, мотивации, целях, управлении и автоматизации. А мы – маленькие (ну и там еще много прилагательных было).Читать полностью »

Лучшие методики проектирования производительных мобильных API - 1

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

Представление о пространстве и времени (пространство)

В построении представления о пространстве и времени участвует наше представление о самом себе как о наблюдателе. Мы представляем себя как наблюдателя, который осознает свое положение в Абсолютном пространстве и синхронизирован с Абсолютным временем, определяет размеры изучаемых объектов и длительности изучаемых интервалов времени. При этом пространственные размеры и временные интервалы, которые человек способен распознать, лежат в довольно узких интервалах, за пределами которых человеческое восприятие бессильно что-либо воспринять. Чтобы шагнуть в другой масштаб времени или пространства, требуется воображение.

Пространство

Допустим, вы выглянули в окно. В вашем сознании возникло представление о наблюдаемом пространстве. Это пространство наблюдается вами изнутри и содержит части, каждой из которых присвоено имя. Например: небо, дом, улица и тд. Вы направляете свое внимание внутрь этого пространства, находите в нем объекты, определяете их взаимное положение, складывая их в одну большую мозаику. Чтобы мозаика склеилась, мы пользуемся гипотезой о том, что существует Абсолютное пространство. Тогда мы можем предположить, что любое осознаваемое нами пространство — есть часть Абсолютного пространства. Таким образом, мы считаем, что любое осознаваемое нами пространство — это представление о какой-то части Абсолютного пространстве.

Читать полностью »

IT-гиганты готовы общаться с нами голосами Алисы, Google Assistant и других подобных помощников, лишь бы продать собственные сервисы. Но кто научит технологичных ассистентов разговаривать на языке пользователя? Каким должен быть удобный диалог, и как его оценить? Обобщая опыт, полученный при создании навыков одного из ассистентов, делюсь мнемонической аббревиатурой, которая поможет разработчикам проверить качество проектируемого голосового интерфейса.

Лёгкий в общении голосовой помощник: 6 принципов проектирования диалога - 1

Скриншот с ответами голосового помощника «Яндекс» Алисы
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js