BI Consult Desktop Logo BI Consult Mobile Logo
  • Russian BI Исследование российских bi
  • Перейти на Fine BI
  • Контакты
  • +7 812 334-08-01
    +7 499 608-13-06
  • Отправить сообщение
  • Главная
  • Продукты Эксперт-BI
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Сельское хозяйство
    • Энергетика
    • FMCG
    • Девелоперы
    • Маркетплейсы
    • Пищевая промышленность
    • Фармацевтика
    • Построение Data Platform
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и FP&A
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • IBP
    • ИТ (CIO)
    • Закупки
  • Платформы
    • Системы бизнес-анализа (BI)
    • Интегрированное бизнес-планирование (IBP)
    • Хранилища данных (DWH / Lakehouse)
    • Каталоги данных (Data Catalog)
    • Системы ETL и ELT
    • AI / Исскуственный интеллект
    • Шина данных (ESB)
    • Система управления мастер-данными (MDM)
    • Семантический слой
  • Услуги
    • Переход на отечественные BI и DWH системы
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений и DWH
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Курсы
    • Учебный курс Информационная грамотность (Data Literacy)
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Greenplum
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt (Data Build Tool)
  • Компания
    • Руководство
    • Новости
    • Клиенты
    • Карьера
    • Скачать
    • Контакты

BI

  • FineBI
  • FineReport
  • FineDataLink
  • FineChatBI (FineAI)
  • Коннекторы данных из 1С в BI
  • Airflow / Nifi
  • Visiology
  • PIX BI
  • Modus BI
  • Yandex.DataLens
  • Open-source BI: Superset/Metabase
  • Luxms BI
  • AW BI + Alpha BI
  • FlyBI + Форсайт. Аналитическая Платформа
  • Loginom
  • Триафлай
  • AI / Исскуственный интеллект
  • Optimacros
  • Навигатор BI
  • Семантический слой

СУБД

  • Arenadata
  • ClickHouse
  • Greenplum
  • Postgres Professional
  • TData

Другое

  • Построение Data Platform
    • Аналитическое хранилище данных
    • Data Lake и Data Engineering
    • Подробнее про Data Lake
    • Внедрение Lakehouse
      • Apache Doris
      • StarRocks
      • Trino
    • Миграция витрин из пропиетарных DWH на новый стек
    • Учебный курс "Современная архитектура хранилища данных"
Главная » Курсы по системам бизнес-анализа и методологии » Учебный курс для бизнес-аналитиков » Техническая база для менеджеров продукта — часть 1 — общие понятия

Техническая база для менеджеров продукта — часть 1 — общие понятия

Записи из курса по technical product manager; позиционируют как: “Говори с разработчиками на одном языка”.

Это 1я часть из серии, в ней собраны: общие понятия разработки, подходы, архитектура и платформы, API, словарь терминов (короткий). Старался писать просто/понятно, как для себя.

 

CRUD — методология определяет четыре базовые функции (операции) работы приложения: создание (create), чтение (read), модификация (update), удаление (delete).

Архитектура — это структура приложения; решение о том, что и как строить: элементы приложения, связи между ними, движение данных; например: mvc; model — view — presenter; клиент — сервер;

Архитектура MVC (model — view — controller):

model — view — controller

View — интрефейс приложения; то, что видит пользователь; ей не нужно знать ничего о данных, задача только показать;

Model — отвечает за взаимодейтсиве с данными; часть кода, которая описывает бизнес логику; ей не нужно знать, что за данные будут или как выглядит интерфейс;

Controller — прослойка между view и model; отвечает за ответ;

Архитектура CS (client — server):

 

client — server

В этой архитектуре клиент (приложение, сайт) общается с сервером (бэкенд) через протокол общения, как правило HTTP. Это нужно для того, чтобы снизить требования к клиенту.
Например: не обрабатывать видео Reface в телефоне, а быстро посчитать всё на сервере и отдать результат.

Платформы:

Mobile — есть 2 больших игрока на рынке(Google Android, Apple iOS), любой продукт должен пройти модерацию и есть правила; дает сильный направленный рост; релизы нужно планировать, версионность; частое использование с короткой сессией;
разработка дороже и дольше; использование нативынх API.

Web — нет глобальных игроков, больше свободы в решениях; очень легкие релизы (поменял — выктил); редкое использование с длительной сессией;
разработка быстрее и дешевле; ограничения на уровне браузеров;

Desktop — сильно похож на web (как правило адаптация web под платформу);

Процесс разработки

этапы разработки програмного продукта

 

Выбор технологий для проекта:

Web:
Front-E: JavaScript, TypeScript, HTML, CSS;
Back-E: PHP, C#, Java, Node.js;

Desktop & Mobile & Games:
Android: Java, Kotlin;
iOS: ObjectivC, Swift;
Desktop: C#, C++, Java, Delphi;
Games: C++, Lua, C#;

Тестирование:
Автотесты: JavaScript, Java, С#;
Системные скрипты: Bash, Python, Perl;

 

Как выбор фреймворка влияет на менеджмент?

Если стек не мейнстрим, то могут быть трудности с поиском команды (например React vs Angular vs Vue); так же есть вопросы по специфике задача; но, РМ редко выбирате стек разработки, так что не стоит волноватся.

Система управления пакетами (менеджер пакетов) — набор ПО, который управляет работой работой библиотек и фреймворков (управление, уудаление, установка и тд); привязан к языку (например npm y JS);
например: как курьер Глово — приносит еду по запросу.

Система контроля версиями — позволяет хранить несколько версий одного и того же документа, при необходимости возвращаться к более ранним версиям, определять, кто и когда сделал то или иное
изменение, и многое другое;
например: GIT.

API (application programming interface)

API — это интерфейс для программиста. Определяет
функциональность, которую предоставляет программа без привязки к её реализации; сли программу (модуль, библиотеку) рассматривать как чёрный ящик, то API — это множество «ручек», которые доступны пользователю ящика и которые он может вертеть и дёргать;
например: управление машиной; можно не знать как она работает внутри (двигатель, коробка передач и тд), но всё равно водить разные автомобили через интерфейс (руль, педали и тд.).

Web API — используеться для общения клиента и сервера по протоколу HTTTP при помощи запросов — ответов;

Класификация:

  • публичный: доступен для всех (погода, курс валют, етс);
  • приватный: доступ по ключу (авторизация); как правило закрыт для использования в рамках проекта;

Методы для Web API:

  • get — запрос содержимого;
  • post — передача пользовательских данных на ресурс (body запроса);
  • put — загрузка содержимого или обновление данных;
  • delete — удаление ресурса;

REST
REST — Надстройка для API; архитектурный стиль взаимодействия
компонентов распределенного приложения в сети; набор соглашений и правил для построения и взаимодействия с Web API;
например: есть абстрактный магазин, у которого есть товары, цены, покупатели и тд; у кождой сущности, должен быть свой API, енд-поинты; market/goods, market/price и тд.
например: звонок к оператору в ПБ; дальше выбор 1–2–3–4 по разным категориям; это такие-себе енд-поинты.

JSON
JSON — текстовый формат обмена данными, основанный на JavaScripte; легко читается людьми.Чаще всего используется в веб приложениях для обмена данными между клиентом (браузером) и сервером.

Есть альтернативынй формат — XML, однако он более громосткий (содержит теги);

Авторизация
Token-BasedAuthentication — токены представляют собой средство авторизации для каждого запроса от клиента к серверу; генерируются на сервере основываясь на секретном ключе;
например: для приватного API, пользователь передает в body запроса токен авторизации; если он верный — получает ответ (не эррор).

Термины

Архитектура — это структура приложения; решение о том, что и как строить: элементы приложения, связи между ними, движение данных;
например: MVC.

Библиотека — точечное решение для решения конкретной задачи; например: добавлять вотер-марки, Google Maps Library, Apple Pay.

Фреймворк — совокпность библиотек для решения опредленного пула типовых задач со структурой; когда есть ряд типовых задач, фреймворку включает каркас готовых базовых наработок; уменшает риски на уровне архитектуры;
например: Android, iOS, Symfony (php), CodeIgniter.

SDK — набор решений для программирования.

SOLID — принципы (руководство, стандарт) для упрощения разработки и поддержки программ. Вколючает в себя:

  • Принцип единственной ответственности: для каждого класса должно быть определено единственное назначение. Все ресурсы, необходимые для его осуществления, должны быть собраны в этот класс и подчинены только этой задаче.
  • Принцип открытости/закрытости: программные сущности должны быть открыты для расширения, но закрыты для модификации»
  • Принцип подстановки Лисков: объекты в программе должны быть заменяемыми на экземпляры их подтипов без изменения правильности выполнения программы;
  • Принцип разделения интерфейса: много интерфейсов, специально предназначенных для клиентов, лучше, чем один интерфейс общего назначения;
  • Принцип инверсии зависимостей: нет зависимости на что-то конкретное; только на абстракциях.

Backend — черный ящик с запрограммированой бизнес логикой внутри; получает запрос, обрабатывает его и отдает результат.

Ip-адресс — уникальный сетевой идентификатор копьютера (сервера).

DNS — система доменных имён; компьютеры оперируют адресами в виде цифр, человеку легче запомнить название (google.com); DNS это сервис-таблица, которая их связывает (domain — ip); больше [1].

HTTP — протокол передачи данных, на котором работает Интернет; состоит из глагола (get, put, post, delete), ресура (endpoitn url, ссылка) и заголовка (accept); реализация методологии CRUD.

База данных — организованная структура для хранения, изминения и обработки данных.

Протокол — набор инструкций, который указывает системае как работать (общатся с дургими системами, обращатся с запросами);
например: OAuth для авторизации.

Токен — строка символов, в которой что-то зашифровано.

Load balancer — прослойка между клиентов и сервером с backend, который равномерно распределяет нагрузку на сервера.

Репликация БД — копия БД, нода, на которой хранится дубль данных с БД; нужна для увелечиния отказоустойчивости системы.

Язык программирования — формальный язык, предназначенный для записи компьютерных программ; набор правил, который определяет внешний вид и действия программы. Бывают:
+ низкоуровневые: общаются напрямую с железом (процессором);
+ высокоуровневые: имеют исполнительную прослойку;
+ компилируемые: переводит код из языка в байт-код (1 и 0) и запущен на исполнение как отдельная программа;
+ интерпритируемые: исходный код выполняется непосредственно, команда за командой на устройстве пользователя;
+ статическая типизации: тип данным нужно указывать явно самому; если нужна точность рассчёта;
+ динамическая типизация: сам опрелеляет тип данных; нужно самому отслеживать корректность типов;

Языки:

  • Java — пишешь 1 раз, запускаешь везде; для разработки серверных, мобильных и десктоп приложения: Андроид, трейдинговые, банковские, веб и тд;
  • C# — конкурент Java (очень похож); web, desktop, Xemarin, MS приложения, enterprise проекты (для крупных корпораций, т.к. большой рынок разработчиков);
  • Java Script — сценарный язык для работы в браузере; используеться для Front, Back и мобильных приложений;
  • Type Script — копия JS от MS; настройка и расширение, позвоялет находить ошибки в типах;

 

 

 

Узнать стоимость решенияЗапросить видео презентацию

← Предыдущая статья
Как бизнес-аналитику работать с требованиями, чтобы закрыть потребности бизнеса
Следующая статья →
Техническая база для менеджеров продукта — часть 2 — frontend

Решения

Анализировать ФинансыУвеличивайте ПродажиОптимальный Склад и ЛогистикаМаркетинговые Метрики

Клиенты
  • Ручная обработка заявок на займы в МФО ДоброЗайм была малоэффективной и приводила к высоким затратам по ФОТ отдела верификации и андеррайтинга. При этом время обработки заявок было высоким, как и количество ошибок под влиянием человеческого фактора. Дополнительные сложности создавал сложный документооборот, обусловленный неконсолидированной кредитной историей и скоринговой оценкой. Все это суммарно мешало масштабированию бизнеса МФО.

  • ООО "Уральская транспортная компания" — это транспортно-логистическая компания, специализирующаяся на железнодорожных перевозках грузов, создана в 2009 году.

  • «ПрофХолод» — крупнейший в России производитель сэндвич-панелей с пенополиуретаном. 

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

  • Решения
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Энергетика
    • Фармацевтика
  • Услуги
    • Переход на отечественные BI и DWH
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Техническая поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Платформы
    • FineBI
    • FineReport
    • FineDataLink
    • Коннекторы данных из 1С в BI
    • Airflow + NiFi
    • Visiology
    • Luxms BI
    • Modus BI
    • PIX BI
    • Arenadata
    • ClickHouse
    • Greenplum
    • Postgres Professional
    • Open-source BI: Superset/Metabase
    • Loginom
    • Yandex.DataLens
    • AI / Исскуственный интеллект
    • Optimacros
    • Шины данных
  • Курсы
    • Учебный курс Информационная грамотность
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt
  • Функциональные решения
    • Создание Data Lake
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и прогнозная аналитика
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • Сквозная аналитика
  • Компания
    • О нас
    • Руководство
    • Новости
    • Клиенты
    • Скачать
    • Контакты
    • Политика конфиденциальности
RutubeVkontakteLinkedInYouTube
ООО "Би Ай Консалт",
ИНН: 7811437757,
ОГРН: 1097847154184
199178, Россия,
Санкт-Петербург,
6-ая линия В.О., Д. 63, 4 этаж
Тел: +7 (812) 334-08-01
Тел: +7 (499) 608-13-06
E-mail: info@biconsult.ru

 

 

 

 

 

×

Пользуясь сайтом, вы соглашаетесь с использованием cookies и политикой конфиденциальности.