Диплом: Разработка асинхронного приложения для передачи информации о подключениях к почтовым серверам на примере ООО "Интермедия"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
67
Рисунок 2.8 – График ОЗУ при ста тысячах log-сообщений в секунду
Рисунок 2.9 – График CPU за всё нагрузочное тестирование
Рисунок 2.10 – График ОЗУ за всё нагрузочное тестирование
Рисунок 2.11 – График обработанных сообщений за всё нагрузочное
тестирование
Как видно по результатам нагрузочного тестирования приложения
стабильно и без сбоев отработало на протяжении семи(7) часов обрабаты-
68
вая реальные данные под различными нагрузками. Приложение полностью
удовлетворяет заявленным требованиям по производительности. Сверх
того, имеется значительный (17 кратный) запас по производительности.
Стоит ещё отметить, что характеристики, как тестовой, так и рабочей
ВМ подбирались из расчёта на максимальную экономическую эффектив-
ность с расчётом на соответствие требованию по производительности. Как
видим, несмотря на то, что выбрана самая минимальная из возможных кон-
фигурация ВМ, данных технических характеристик более чем достаточно
для полноценного функционирования. Хочу отметить, для сравнитель-
ного представления относительно требуемых ресурсов, что описанную
конфигурацию можно с лёгкостью воссоздать на персональном телефоне
современного человека под управлением Android/IOS. Минимум в двух
экземплярах.
69
3 ОБОСНОВАНИЕ ЭКОНОМИЧЕСКОЙ ЭФФЕКТИВНОСТИ
ПРОЕКТА
3.1 Выбор и обоснование методики расчёта экономической эффек-
тивности
Расчёт экономической эффективности разработки и внедрения опи-
санного проекта будет производится в двух плоскостях, разработки и
поддержка, с учётом только прямого эффекта.
Косвенный эффект учитываться не будет по следующим причинам:
– Отсутствия объективных бизнес метрик расчёта корреляции между
полученным саб-эффектом (улучшение фильтрации), и увеличением
уровня удовлетворения пользователей продукта.
– Качество сервиса имеет обратно-пропорциональную зависимость
от реакции пользователей. Другими словами, чем меньше и реже
пользователи думают, или вспоминают, о существовании продуктов
EmailSequrity, тем качество этих продуктов выше.
– Полученный, дополнительный, не прямой эффект, невозможно
учитывать как атомарную единицу изменения в большой бытро-
развивающейся компании с большим количеством инновационных
продуктов.
– Получение профита от саб-эффекта не являлось ни целью, ни зада-
чей, ни проблемой при решении задачи. Наоборот, ставилась задача
максимально избежать негативных эффектов на существующие про-
дукты и пользователей.
Прямой эффект рассчитан в плоскости разработки, которая имеет
максимальный вес в первый год. И в плоскости поддержки, вес которой
70
значим в последующие года. Итого на выходе мы должны получить четыре
цифры:
а) Количественное значение издержек на разработку, внедрение и под-
держку в первый год;
б) Количественное значение издержек на поддержку проекта;
в) Количественное значение разницы издержек на разработку, внедре-
ние и поддержку в первый год к полученной скидке;
г) Количественное значение разницы издержек на поддержку к полу-
ченной скидке;
Данные цифры, как реальные издержки, так и относительные, дадут
полное представление о сроках окупаемости проекта и общей экономиче-
ской рентабельности внедрения.
Количественного значение издержек в первый год представляет
из себя сумму из затрат на разработку(DevelopmentCost) и поддерж-
ку(SupportCost).
???? ???????????????????????????????????????? = ???????????????????????????????????????????????????????????? + ????????????????????????????????????????????
Затраты на разработку можно представить как сумму затраченно-
го времени на исследования(Research), разработку программного обес-
печения(Development), приёмочное и нагрузочное тестирование(Testing)
и внедрение(Deploy). Где константной является заработная плата разра-
ботчика(DeveloperSalary), а описанные этапы – произведением зарпла-
ты на потраченное время. Исследования и проверка требований заняли
две недели. Разработка программного продукта заняла четыре недели(два
спринта). Тестирование ещё дополнительно две недели и столько же на
внедрение. Исходя из этого стоимость разработки данного проекта можно
представить как функцию от заработной платы разработчика:
????????????????????????????????????????????????????????????(????????????????????????????????????????????????????????????????????) = ???????????????????????????????????????????????????????????????????? × 2.5 (3.1)
71
Стоимость поддержки (SupportCost) представляет из себя плату за
аренду виртуальной машины (Instance) на каждый ДЦ(DC) за год.
????????????????????????????????????????????????(????????????????????????????????????????) = 12 × ???????????????????????????????? × ???????? (3.2)
Тогда стоимость проекта можно выразить как математическую функ-
цию от стоимости разработки и стоимости поддержки:
???? ???????????????????????????????????????? = ???????????????????????????????????????????????????????????????????? × 2.5 + 12 × ???????????????????????????????? × ???????? (3.3)
Тогда рентабельность проекта можно представить как математиче-
скую функцию от стоимости изначальных издержек, размера скидки и
стоимости проекта:
???? ???????????? ???????? = (1 −
(???????????????????????????????????????????? − (???????????????????????????????????????????? × ???????????????????????????????? − ???? ????????????????????????????????????????))
????????????????????????????????????????????????
) × 100
(3.4)
3.2 Расчёт показателей экономической эффективности проекта
Возьмём за константу среднюю зарплату программиста в Санкт-
Петербурге представленную иследованиями с сайта moikrug.ru[14] из
представленного ими отчёта за второе полугоие 2018 года[15]. В отчёте
сказано, что средняя зарплата программиста в регионах Москва и Санкт-
Петербург составляет 90 тысяч рублей.
Как было сказано ранее конфигурация виртуальной машины пред-
ставляет из себя:
– CPU 2.3 GHz
72
– 1 Gb ОЗУ
В среднем подобная конфигурация у облачных провайдеров, напри-
мер Amazon, стотит 1000$ или примерно 6.5 тысяч рублей в год.
На настоящее время компания Интермедия располагает 6ю датацен-
трами.
Данных цифр достаточно, чтобы посчитать, по преведённым выше
формуле 3.1 стоимость проекта в первый и последующие года.
???????????????????????????????????????????????????????????? = 90 × 2.5 = 225.0
???????????????????????????????????????????? = 12 × 6.5 × 6 = 468.0
???? ???????????????????? ???????????????? ???????????????????????????????????????? = 225.0 + 468.0 = 693.0
Итого получаем, что в первый год проект обходится компании в
шесть сот девяносто три тысячи рублей. Из них 225 тысяч рубшей потра-
чены на разработку и 468 тысяч рублей на поддержку. Соответственно во
второй и все последующие года проект будет обходиться компании в 468
тысяч рублей.
Точная сумма стоимости контракта оказания услуг с партнёром –
является коммерческой тайной компании Интермедия и не может быть
раскрыта. Но для приведения расчёта эффективности, после согласова-
ния с отделом безопасности и высшим менеджментом компании, мне
позволено привести сумму близкую к реальности. И она составляет 100
тысяч долларов США в год или приблизительно 6.5 миллионов рублей, а
предоставленная скидка 40%.
Теперь, обладая даннной суммой можно посчитать экономическую
эффективность прокта в первый и последующие года по формуле 3.4.
73
???? ???????????????????? ???????????????? ???????????? ???????? = (1 −
6.5 − (6.5 ∗ 0.4 − 0.693)
6.5
) × 100 = 29.33
???????????????????? ???????????? ???????????? ???????? = (1 −
6.5 − (6.5 ∗ 0.4 − 0.468)
6.5
) × 100 = 32.8
Итого, мы получаем, что внедрение проекта в первый же год со-
кратит издержки по контракту на 29.33%, а во все последующие года на
32.8%. Таким образом получаем, что затратив на разработку, внедрение и
последующую поддержку – 25 и 20% от общей суммы скидки, компания
сократила издержки по контракту в среднем на 30%. Не сложно посчитать,
что для компании разработка и внедрение окупится за треть года, или 4
месяца.
74
ЗАКЛЮЧЕНИЕ
В ходе выполнения выполнения выпускной квалификационной ра-
боты, на тему ”Разработка асинхронного приложения для передачи ин-
формации о подключениях к почтовым серверам на примере ООО ”Интер-
медия””, был спроектирован, разработан и внедрён проект автоматизации
процессов компании связанных с интеграцией с компанией партнёром.
Компания Интермедия уже имеет полностью функционирующий бизнес
по предоставлению безопасной электронной почты для своих клиентов,
поэтому главной задачей на текущем этапе развития компании в этой
области является снижение издержек на поддержание работоспособности
данного сервиса. Суть сервиса заключается в том, что компания имеет в
своём распоряжении несколько ДЦ для обработки и обеспечения безопас-
ности входящей/исходящей почты для своих клиентов. Сюда входит как
фильтрация от спама, защита от вирусов, фишинг-атак и прочих потенци-
ально вредоносных действий недоброжелателей.
Одной из ключевых функций сервиса является фильтрация большей
части спама до попадания в систему. В этом компании помогают компании
партнёры предоставляющие доступ к своим Стоп и Блок листам. Но данная
услуга не является бесплатной, а сумма контракта составляет 100 тысяч
долларов США в год. Однако у компании партнёра имеется программа ло-
яльности по которой можно получить скидку до 40% от суммы контракта.
Компании партнёру очень выгодно получать информацию о подключениях
к почтовым серверам компании Интремедия. Таким образом они улучшают
качество своего собственного сервиса, а в замен предоставляют скидку на
его использование.
Первая глава выпускной квалификационной работы повещена имен-
но изучению внутреннего устройства компании Интермедия, её бизнес
75
модели, протекающим внутренним процессам. В первой главе описан один
из ключевых продуктов компании, принципы его устройства и функци-
онирования, определена точка оптимизации процессов — интеграция с
компанией партнёром.
Перед проектом интеграции были поставлены три основных требо-
вания:
1. Отсутствия влияния на текущее mail-flow;
2. Высокая производительность решения, способная поддержать ре-
альную нагрузку. Передача данных в реальном времени;
3. Экономическая рентабельность;
Без соответствия любому из описанных требований – проект бы не
имел шанса на жизнь. Поэтому был проведён и описан подробный си-
стемный анализ и разбор имеющиеся программные средства для решения
задачи в призме поставленных требований.
В итоге было отобрано 4е возможных кандидата на реализацию.
Описаны их достоинства и недостатки, сделано сравнение и конечный вы-
бор единственного варианта имплементации проекта. Этим выбором стала
реализация проекта на базе высокоуровневого языка программирования
Go(Golang) c максимальной изоляцией решения от почтовых серверов –
через парсинг логов поступающих к приложению по UPD. К результатам
первой главы можно отнести доказательство соответствия полученного
решения первому предъявленному требованию 1..
Во второй главе описан процесс создания программного продукта.
Начиная с анализа и выбора жизненного цикла и методологии управле-
ния процессом разработки ПО. Выбор был сделан в пользу спирального
подхода на базе гибкой методологии разработки программных проектов
(и не только) SCRUM. Данный выбор можно объяснить двумя основными
тезисами, где один вытекает из другого. Во первых, SCRUM является
76
стандартом де-факто в современных IT-компаниях. Во вторых SCRUM
является принятым стандартом в компании Интермедия.
В соответствии с выбранной методологией, весь процесс разработки
проекта, от исследования, до внедрения, был разбит на двухнедельные
итерации – спринты. Данных подход позволил существенно сократить
возможные риски при проектировании и разработке программного обес-
печения.
Другая часть второй главы повещена непосредственно самому про-
граммному продукту. Описанию его информационной модели, где пред-
ставлены входные и выходные данные, описанию его структуры, основно-
го алгоритма и принципов реализации.
Главным образом здесь можно выделить описание алгоритма и
построение программного продукта на базе независимых программных
модулей, где каждый отвечает за свою небольшую область в обработке
сообщения. Таким образом независимо от основного алгоритма преоб-
разования одного типа сообщения в другое, можно спокойно добавлять
новый функционал, или изменять имеющийся, что облегчает дальнейшую
поддержку проекта.
В конце второй главы приведены результаты нагрузочного тести-
рования подтверждающие соответствие итоговой реализации проекта со
вторым предъявленным требованием 2..
Результатом разработки и внедрения проекта стало сокращение из-
держек компании по контракту с партнёром в среднем на 30%.
Конечно, для большой компании, с годовой выручкой в 2.8 миллиона
долларов США (по данным за 2018 год), данная сумма может показаться
незначительной. Но если посмотреть на ситуацию со стороны инвестиций,
то вложив в разработку и поддержку ???? средств компания на выходе полу-
чила 3???? прибыли. Что можно считать выгодной инвестицией.

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран