Учет ценных бумаг - сделать сложное простым (Цепков на SECR-2010)

Материал из MaksWiki
(перенаправлено с «Simplify-security-accounting»)
Перейти к: навигация, поиск
Еще про архитектуру

Доклад был сделан на банковской секции конференции SECR-2010

Презентация выложена на slideshare

Докладчик
Максим Цепков, главный архитектор компании CUSTIS (Заказные ИнформСистемы)

Название доклада: Учет ценных бумаг - сделать сложное простым (Securities Accounting - Make It Easy).

Тезисы

Тезисы доклада (русские)

Использование диаграмм при проектировании информационных систем позволяет наглядно представить сложные процессы и облегчает общение между заказчиками, аналитиками и разработчиками. Однако для описания учета нет наглядных представлений.

Поэтому нами разработан способ визуализации учета – диаграммы планов счетов (ДПС, диаграммы учета), позволяющие представлять учет в наглядном и понятном виде, удобном и для бухгалтеров и для разработчиков. В докладе определяются элементы ДПС и показано их использование в реальном проекте.

Проект учета сделок с ценными бумагами был реализован для банка федерального уровня. Сделки поступают из системы фронт-офиса и подлежат параллельному аналитическому и сводному бухгалтерскому учетам, между которыми надо поддерживать соответствие. Представление учета с помощью ДПС позволило облегчить доведение правил учета от бухгалтеров до разработчиков по многочисленным видам сделок (РЕПО, инвестиции, эмиссия и др.), а также эффективно изменять учет в ходе эксплуатации системы.

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

Annotation (english)

The diagram usage while designing the information systems gives an opportunity to visualize complex processes and simplify the discussion among the customers, analysts and software developers. The point is that there are no such demonstrable ways of description the accounting process.

Having analyzed that, we have developed our own way of visualizing the accounts — diagrams for accounting — allowing visual representation of accounting schemes, which helps to accommodate with accountants and developers. Hereby research introduces main elements of the accounting diagrams in the real project.

Our company has developed the project of security dealing records for the federal level bank. The deals, which come from the front office system, should be accounted for the purposes of management in parallel with composite accountancy. The point is that both accounts could be kept in balance.

Diagrams-presented accounting made it easier for developers to be provided with the correct information on different types of deals (such as REPO, investments, emission transactions) from the accountants. They also helped to pose needs on account change effectively during the system usage.

The appearance of effective developers’ tools of accounting (recording) has influenced the architecture of the software application. Special accounting element for which diagrams are the main design tools distinguished. Accounting element is of the typical design, which means that the special generator can be developed exactly for such element. We have been using such a generator named Accounting Machine in various projects for many years.

Об авторе

Максим Цепков – соучредитель и главный архитектор компании CUSTIS, в которой работает со дня основания (1996). Закончил с отличием Факультет управления и прикладной математики Московского физико-технического института, имеет авторские свидетельства. Основная область профессиональных интересов – создание архитектуры корпоративных и банковских информационных систем, поиск баланса между общими архитектурными подходами и реализацией специфических требований заказной разработки для поддержки уникальных бизнес-процессов клиентов.

Максим Цепков является экспертом в области бизнес- и системного анализа, занимается развитием шаблонов и технологий проектирования, разработкой методик применения диаграмм. Под руководством Максима и при его непосредственном участии разработано несколько технологических платформ, на которых строятся проекты CUSTIS. Максим выступает основным идеологом и создателем архитектурного шаблона для информационных систем – «Учетной машины» и диаграмм планов счетов для отображения и проектирования учета. Эти технологии применяются во всех проектах компании для банков и предприятий.

Максим Цепков принимает участие практически во всех проектах компании. В сфере его компетенции проектирование распределенных систем, интеграция с внешними системами, проработка технологии бережного внедрения с постепенной заменой старой системы на новую без остановки бизнес-процессов.

Максим активно участвует в развитии внутренних процессов и совершенствовании практик применения гибких методологий разработки и коллективного проектирования в CUSTIS.

Максим Цепков – участник различных профессиональных конференций и автор ряда публикаций в профильных журналах.

In english

Maxim Tsepkov is a co-founder and the senior software architect of CUSTIS since 1996, he has master degree from Moscow Institute of Physics and Technology, Control/Management and Applied Mathematics department, has many author’s certificates. The main author’s area of interests is the architecture of enterprise information systems, especially searching for balance between the common architecture patterns and practice of specific customized development for unique business processes.

Maxim Tsepkov is an expert in business and system analysis, deployment and development architecture patterns, models and diagrams. Many CUSTIS projects based on several frameworks that developed under the guidance of Maxim Tsepkov. He is the main designer of the application patterns for information system named as Accounting Machine and accounting diagrams, used for visualization and desining of accounting. This technologies used in all company’s projects for business. In fact, Maxim contributes to most of company’s projects. He is competent in design of distributed systems, system integration, and graceful deployment process, when new system gradually replaced the old system without any business-process disturbance.

Maxim contributes to evolution of agile software development process in company and practice of team software design. He is an active of professional conferences and author of various publications in CIO magazines.

Развернутое изложение доклада (статья)

Проблема

При проектировании систем активно используются различные диаграммы, которые позволяют наглядно представить сложные схемы и облегчают общение между всеми участниками процесса, от бизнес-специалистов заказчика до разработчиков. Именно многочисленным диаграммам обязан своей популярностью UML, помимо него есть много других нотаций. Однако, ни UML, ни другие нотации не содержат диаграмм для описания учета. Для его описания применяются другие способы - шаблоны в Excel или текстовое описание. К сожалению, они не позволяют эффективно представить информацию.

Под эффективным представлением информации мы понимаем такой ее вид, который позволяет быстро понять цельную картину, проводить рассуждения, передавать информацию другим людям. Примером эффективного представления может служить разработка современной алгебраической записи для уравнений в 16-17 веке Виетом, Декартом и другими математиками, до них уравнения записывались словами. Более современным примером может служить разработка ER-диаграмм для представления структур данных, которая, в отличие от текстового описания, позволяет наглядно представить цельную картину и работать с ней.

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

Формализованное представление учета

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

SECR-2010-maks-scheme-legend.png

О проекте

Учет ценных бумаг был реализован для банка федерального уровня. Сделки поступают из системы фронт-офиса и подлежат одновременному аналитическому и сводному бухгалтерскому учету, между которыми надо поддерживать соответствие. Это стандартный подход для бухгалтерского учета, однако он обычно не очень хорошо понимается не только разработчиками, но и аналитиками, не имеющими бухгалтерского образования.

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

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

Обычно применяемый способ текстового описания такого учета или представление его в Excel, не дает общей картины. Часто ситуация оказывается хуже: в постановке описывается атрибутика исходных сделок и выходные отчетные формы, которые требуется получить, а устройство аналитического учета отдается на откуп разработчикам. Представление в виде диаграммы (смотри рисунок), хотя и является относительно сложным, в то же время дает цельное и наглядное об устройстве сегмента учета. Оно дает возможность на этапе постановки обсуждать устройство аналитического учета с бухгалтерами и формулировать задания на отчеты в терминах остатков и оборотов по счетам аналитического учета. Бухгалтер может верифицировать и скорректировать учет, зафиксированный аналитиком на этапе постановки. А затем разработчики, аналитики и тестировщики используют ее при реализации и тестировании, а также - при сдаче заказчику.

SECR-2010-maks-scheme.png

Рассмотрим представленный пример подробнее. Диаграмма формализовано представляет счета и проводки в системе. Учет ведется в денежном выражении в рублях и валюте номинала бумаги, а также в штуках, эти данные есть во всех проводках с бумагами. На диаграмме можно выделить 4 основные области: счета расчетов с биржей наверху диаграммы, счета для учета купленных ценных бумаг в зеленой области справа, счета для учета продаж (реализации) в розовой области слева и счета доходов и расходов внизу диаграммы.

Зеленая область справа включает аналитические счета, используемые для учета ценных бумаг в портфеле банка. На счете «Бумаги» отражаются партии купленных ценных бумаг (аналитика «покупка») по справедливой цене (биржевой стоимости) на дату покупки. Отдельно учитываются связанные с покупкой дисконт, то есть скидка относительно биржевой цены и премия, то есть наценка относительно биржевой цены. Дисконт переводится в доходы не сразу, а равномерно, по мере приближения даты погашения. Переоценка ценных бумаг фиксируется на отдельном аналитическом счете для каждой партии. На отдельной паре счетов фиксируется накопленный купонный доход, тоже в разрезе покупок: на одном - по цене покупки, а на другом - ежедневные накопления. По мере погашения купонов фиксируется сумма погашения, а для новых купонов открываются отдельные аналитические счета. Набор счетов и проводок, выполняемых при покупке бумаги существенно зависит от того, произошла ли сделка по цене выше или ниже биржевой котировки на день покупки, а проводки по купонам, естественно, выполняются только для тех бумаг, у которых имеется купон.

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

Технически это выполняется так. В течении дня совершенные продажи фиксируются на счете «Реализация бумаг», по каждой продаже отдельно. Затем проводится специальная процедура, называемая расценкой продаж, в ходе которой определяется цена проданных бумаг и финансовый результат сделок. Проводки расценки продаж на схеме выделены фиолетовым, указан порядок выполнения. В ходе расценки продаж сначала проводится сборка необходимого количества бумаг на транзитном счете «Бумаги для реализации» по методу FIFO из партий покупки. При этом собираются компоненты стоимости, составляющие бумагу и учитываемые на различных аналитических счетах: стоимость покупки, накопленная переоценка, премия, оставшийся дисконт. А затем выполняются проводки списания бумаг для каждой сделки по сформированной средневзвешенной стоимости и выделение результата каждой сделки. С купонами ситуация проще, так как они учитываются по текущему накопленному доходу и достаточно одного транзитного счета. Процедура расценки продаж выполняется ежедневно и включена в закрытии дня.

В плане счетов ПБУ учет по отдельным сделкам не ведется, там открываются сводные лицевые счета для учета каждой бумаги, и создаются суммарные проводки по операциям за день. Не ведутся также транзитные счета, а учет бумаги и ее купона объединен на одном счете. В качестве иллюстрации на рисунке показана группировка аналитических счетов для отражения в бухгалтерские для счетов реализации.

SECR-2010-maks-scheme-anl2buh.png

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

Представление учета с помощью диаграмм позволило преодолеть сложность донесения правил учета от бухгалтеров до разработчиков по всем разнообразным сегментам учета, упомянутым выше. Каждому сегменту соответствовала отдельная схема, отдельные схемы представляли налоговый учет и учет для МСФО. Их объединение дает полную схему учета в системе. Представление в виде диаграмм позволило эффективно формулировать требования по изменению учета, которые многократно возникали за время функционирования системы (уже более 11 лет).

Учетный слой в архитектуре приложения

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

Появление эффективного инструментария проектирования учета наложило свой облик на архитектуру приложения. Выделился отдельный учетный слой (смотри рисунок), для которого диаграммы являются основным средством проектирования. Схема взаимодействия учетного слоя с другими слоями приложения − типовая, проводки выполняются при изменении состояний документов или по другим событиям. В рассматриваемом примере события возникают при поступлении потока сделок из фронт-офиса, а также при их изменениях.

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

SECR-2010-maks-scheme-layer.png

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

Стоимость доработок дополнительно снижается за счет их упрощения за счет разделения бизнес-логики документов и устройства отчетов. С одной стороны, из диаграмм планов счетов однозначно видна логика учета, что позволяет, абстрагируясь от отчетов, дорабатывать документы, заботясь лишь о сохранении принципов отражения их в учете. В рассматриваемом проекте это позволило без изменения учета подключить поток информации по внебиржевым сделкам, который поступал из другой системы и имел другую структуру. А в общем случае это позволяет структурировать потоки документов, переходя к описанию сложных сделок или выделяя специальные документы, касающиеся vip-клиентов, и пока учетная схема приложения сохраняется, отчеты продолжают работать. С другой стороны, можно разрабатывать новые и дорабатывать существующие отчеты, опираясь лишь на учетные схемы и не касаясь документов, что особенно важно при большом количестве разнообразных документов в системе. Фактически, как бухгалтерам и аналитикам, формулирующим задание на отчет, так и разработчикам, его реализующим, вообще не надо вдаваться в особенности обработки различных документов − они оперируют терминами учета.

Диаграммы планов счетов позволяют эффективно описывать учет. Они гораздо нагляднее, чем обычно применяемые шаблоны в Excel и, более того, могут применяться бухгалтерами для проектирования учета, независимо от задач автоматизации. Как показывает опыт, схема учета и его реализация − относительно стабильны, развитие приложений гораздо чаще касается бизнес-логики документов. Учетный слой формирует показатели, которые используются в оперативной бизнес-логике и на них же строятся отчеты. Обеспечивается согласованность различных отчетов и трассировка их до документов.

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

Полная презентация

Презентация на slideshare (чтобы скачать - регистрируйтесь на slideshare, linkedin блокирован)
Скачать весь pdf
CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf CUSTIS-Tsepkov-SECR-2010.pdf