Tools & Methods of Program Analysis (TMPA-2013)
Andrianova, А., Itsykson, V., St. Petersburg State Polytechnic University
Automated Test Synthesis for Java Programs Based on Program Analysis and Contract Inventory
Tools & Methods of Program Analysis Conference (TMPA-2013)
Alexeenko, А., Protsenko, P., Matveeva, А., Itkin, I., Sharov D., Innovative Trading Systems, LLC, Exactpro Systems LLC
Compatibility Testing of Protocol Connections of Exchange and Broker Systems Clients
Formal Methods in Robotics
Dmitry Mordvinov, Yury Litvinov, Saint Petersburg State University, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: The dynamic Analysis of Executable Code in ELF Format Based on Sta...Iosif Itkin
The dynamic analysis of executable code in ELF format based on static binary instrumentation
Mikhail Yermakov,ISP RAS
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: Automated Testing of Multi-thread Data Structures Solutions Lineri...Iosif Itkin
Automated Testing of Multi-thread Data Structures Solutions Linerializability
Anton Evdokimov, Dmitry Tsitelov, Roman Elizarov, Vitaly Trifanov, Saint Petersburg State University of Information Technologies, Mechanics and Optics, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
Tools & Methods of Program Analysis Conference (TMPA-2013)
Alexeenko, А., Protsenko, P., Matveeva, А., Itkin, I., Sharov D., Innovative Trading Systems, LLC, Exactpro Systems LLC
Compatibility Testing of Protocol Connections of Exchange and Broker Systems Clients
Formal Methods in Robotics
Dmitry Mordvinov, Yury Litvinov, Saint Petersburg State University, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: The dynamic Analysis of Executable Code in ELF Format Based on Sta...Iosif Itkin
The dynamic analysis of executable code in ELF format based on static binary instrumentation
Mikhail Yermakov,ISP RAS
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: Automated Testing of Multi-thread Data Structures Solutions Lineri...Iosif Itkin
Automated Testing of Multi-thread Data Structures Solutions Linerializability
Anton Evdokimov, Dmitry Tsitelov, Roman Elizarov, Vitaly Trifanov, Saint Petersburg State University of Information Technologies, Mechanics and Optics, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: Automated process of creating test scenarios for financial protoco...Iosif Itkin
Automated process of creating test scenarios for financial protocols and connectivity testing
Anna Toropova, Sergey Pavlov, Andrey Soloviev, Alexander Bormotin, Iosif Itkin, Exactpro Systems
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
СОВМЕСТНОЕ ПРИМЕНЕНИЕ КОНТРАКТОВ И ВЕРИФИКАЦИИ ДЛЯ ПОВЫШЕНИЯ КАЧЕСТВА АВТОМАТ...ITMO University
При создании систем со сложным поведением важную роль играет контроль качества разрабатываемых программ. Цена ошибки в таких системах может быть слишком велика, поэтому важно не просто проверить соответствие создаваемой программы всем предъявленным к ней требованиям, но и сделать этот процесс эффективным, максимально автоматизировав его. На практике этого можно добиться, формализовав все требования к программе и храня полученную исполнимую спецификацию непосредственно вместе с кодом программы. Рассмотрены существующие методы контроля качества современных программных систем и автоматных программ, а также описан процесс создания среды, позволяющей поддержать сразу три подхода к проверке качества программ с явным выделением состояний: проверку на модели, модульное тестирование и контракты. Предложенный подход позволяет сохранить корректность записи сформулированных требований при изменении самой программы, а также интерактивно контролировать ее качество.
TMPA-2015: Information Support System for Autonomous Spacecraft Control Macro...Iosif Itkin
Information Support System for Autonomous Spacecraft Control Macro-Programming
Andrew Tyugashev, Anton Nasekin, Saint Petersburg State University of Information Technologies, Mechanics and Optics, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: Multi-Module Application Tracing in z/OS EnvironmentIosif Itkin
Multi-Module Application Tracing in z/OS Environment
Rostislav Efremov, Saint Petersburg State University, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
КГТУ Лекция 2: Обеспечение Качества Программного ОбеспеченияIosif Itkin
КГТУ - Костромской Государственный Технологический Университет
Курс Лекций:
Обеспечение Качества Программного Обеспечения
Лекция 2: Жизненный цикл ПО и технологические основы биржевой торговли
Максим Рудовский, Инновационные Трейдинговые Системы
Иосиф Иткин, Exactpro Systems
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...Iosif Itkin
Standards and Standartization in Program Engineering. Why Would You Care?
Nikolay Pakulin, ISP RAS, Moscow
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
Tools & Methods of Program Analysis (TMPA-2031)
Buyanova О., Bulda А, Zverev, А., Innovative Trading Systems, LLC, Kostroma State Technological University, Exactpro Systems, LLC
The Application of Exchange Simulators for Ticker Plant Testing
КГТУ Лекция 6: Обеспечение Качества Программного Обеспечения Iosif Itkin
КГТУ - Костромской Государственный Технологический Университет
Курс Лекций:
Обеспечение Качества Программного Обеспечения
Лекция 6: Обзор методов создания тестовых сценариев
Максим Рудовский, Инновационные Трейдинговые Системы
Иосиф Иткин, Exactpro Systems
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...yaevents
Александр Петренко, ИСП РАН
Профессор, доктор физико-математических наук, заведующий отделом технологий программирования Института системного программирования (ИСП РАН), профессор ВМК МГУ. Основные работы в областях: формализация требований, генерация тестов на основе формализованных требований и формальных моделей (model based testing – MBT). Приложения: тестирование операционных систем и распределенных систем, тестирование компиляторов, верификация дизайна микропроцессоров, формализация стандартов на API операционных систем и телекоммуникационных протоколов. Сопредседатель оргкомитетов International MBT workshop (http://www.mbrworkshop.org/), Spring Young Researcher Colloquium on Software Engineering – SYRCoSE (http://syrocose.ispras.ru), городского семинара по технологиям разработки и анализа программ ТРАП/SDAT (http://sdat.ispras.ru/).
Тема доклада
Модели в профессиональной инженерии и тестировании программ.
Тезисы
Model Based Software Engineering (MBSE) является расширением подхода к разработке программ на основе моделей. В MBSE в отличие, например, от MDA (Model Driver Architecture) существенное внимание уделяется не только задачам собственно проектирования и разработки кода, но и задачам других фаз жизненного цикла – анализу требований, верификации и валидации, управлению требованиями на всех фазах жизненного цикла. Model Based Testing (MBT) хронологически возник гораздо раньше, чем MBSE и MDA, однако его место в разработке программ в полной мере раскрылось вместе с развитием MBSE. По этой причине MBT и MBSE следует рассматривать в тесной связке. В докладе будут рассмотрены концепции MBSE-MDA-MBT, основные источники и виды моделей, которые используются в этих подходах, методы генерации тестов на основе моделей, известные инструменты для
Высоконагруженные трейдинговые системы и их тестирование Iosif Itkin
Доклад посвящен особенностям технологических платформ, используемых брокерами и биржами.
В докладе рассматриваются следующие темы:
Балансировка нагрузки, отказоустойчивость и узкие места производительности трейдинговых систем;
Способы оптимизации времени отклика и пропускной способности системы;
Аппаратное ускорение с использованием Infiniband, FPGA, Overclocking, GPU и TOE;
Особенности моделирования нагрузки для биржевых систем;
Требования к генераторам нагрузки и другим инструментам, используемым при тестировании трейдинговых систем.
Целевая аудитория
Широкий круг специалистов, работающих с высоконагруженными системами.
Слушатели смогут сопоставить особенности архитектуры, методов ускорения и тестирования систем особого типа (биржевых площадок) с системами, над которыми они работают (например, высоконагруженными интернет-сервисами).
TMPA-2015: Automated process of creating test scenarios for financial protoco...Iosif Itkin
Automated process of creating test scenarios for financial protocols and connectivity testing
Anna Toropova, Sergey Pavlov, Andrey Soloviev, Alexander Bormotin, Iosif Itkin, Exactpro Systems
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
СОВМЕСТНОЕ ПРИМЕНЕНИЕ КОНТРАКТОВ И ВЕРИФИКАЦИИ ДЛЯ ПОВЫШЕНИЯ КАЧЕСТВА АВТОМАТ...ITMO University
При создании систем со сложным поведением важную роль играет контроль качества разрабатываемых программ. Цена ошибки в таких системах может быть слишком велика, поэтому важно не просто проверить соответствие создаваемой программы всем предъявленным к ней требованиям, но и сделать этот процесс эффективным, максимально автоматизировав его. На практике этого можно добиться, формализовав все требования к программе и храня полученную исполнимую спецификацию непосредственно вместе с кодом программы. Рассмотрены существующие методы контроля качества современных программных систем и автоматных программ, а также описан процесс создания среды, позволяющей поддержать сразу три подхода к проверке качества программ с явным выделением состояний: проверку на модели, модульное тестирование и контракты. Предложенный подход позволяет сохранить корректность записи сформулированных требований при изменении самой программы, а также интерактивно контролировать ее качество.
TMPA-2015: Information Support System for Autonomous Spacecraft Control Macro...Iosif Itkin
Information Support System for Autonomous Spacecraft Control Macro-Programming
Andrew Tyugashev, Anton Nasekin, Saint Petersburg State University of Information Technologies, Mechanics and Optics, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: Multi-Module Application Tracing in z/OS EnvironmentIosif Itkin
Multi-Module Application Tracing in z/OS Environment
Rostislav Efremov, Saint Petersburg State University, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
КГТУ Лекция 2: Обеспечение Качества Программного ОбеспеченияIosif Itkin
КГТУ - Костромской Государственный Технологический Университет
Курс Лекций:
Обеспечение Качества Программного Обеспечения
Лекция 2: Жизненный цикл ПО и технологические основы биржевой торговли
Максим Рудовский, Инновационные Трейдинговые Системы
Иосиф Иткин, Exactpro Systems
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...Iosif Itkin
Standards and Standartization in Program Engineering. Why Would You Care?
Nikolay Pakulin, ISP RAS, Moscow
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
Tools & Methods of Program Analysis (TMPA-2031)
Buyanova О., Bulda А, Zverev, А., Innovative Trading Systems, LLC, Kostroma State Technological University, Exactpro Systems, LLC
The Application of Exchange Simulators for Ticker Plant Testing
КГТУ Лекция 6: Обеспечение Качества Программного Обеспечения Iosif Itkin
КГТУ - Костромской Государственный Технологический Университет
Курс Лекций:
Обеспечение Качества Программного Обеспечения
Лекция 6: Обзор методов создания тестовых сценариев
Максим Рудовский, Инновационные Трейдинговые Системы
Иосиф Иткин, Exactpro Systems
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...yaevents
Александр Петренко, ИСП РАН
Профессор, доктор физико-математических наук, заведующий отделом технологий программирования Института системного программирования (ИСП РАН), профессор ВМК МГУ. Основные работы в областях: формализация требований, генерация тестов на основе формализованных требований и формальных моделей (model based testing – MBT). Приложения: тестирование операционных систем и распределенных систем, тестирование компиляторов, верификация дизайна микропроцессоров, формализация стандартов на API операционных систем и телекоммуникационных протоколов. Сопредседатель оргкомитетов International MBT workshop (http://www.mbrworkshop.org/), Spring Young Researcher Colloquium on Software Engineering – SYRCoSE (http://syrocose.ispras.ru), городского семинара по технологиям разработки и анализа программ ТРАП/SDAT (http://sdat.ispras.ru/).
Тема доклада
Модели в профессиональной инженерии и тестировании программ.
Тезисы
Model Based Software Engineering (MBSE) является расширением подхода к разработке программ на основе моделей. В MBSE в отличие, например, от MDA (Model Driver Architecture) существенное внимание уделяется не только задачам собственно проектирования и разработки кода, но и задачам других фаз жизненного цикла – анализу требований, верификации и валидации, управлению требованиями на всех фазах жизненного цикла. Model Based Testing (MBT) хронологически возник гораздо раньше, чем MBSE и MDA, однако его место в разработке программ в полной мере раскрылось вместе с развитием MBSE. По этой причине MBT и MBSE следует рассматривать в тесной связке. В докладе будут рассмотрены концепции MBSE-MDA-MBT, основные источники и виды моделей, которые используются в этих подходах, методы генерации тестов на основе моделей, известные инструменты для
Высоконагруженные трейдинговые системы и их тестирование Iosif Itkin
Доклад посвящен особенностям технологических платформ, используемых брокерами и биржами.
В докладе рассматриваются следующие темы:
Балансировка нагрузки, отказоустойчивость и узкие места производительности трейдинговых систем;
Способы оптимизации времени отклика и пропускной способности системы;
Аппаратное ускорение с использованием Infiniband, FPGA, Overclocking, GPU и TOE;
Особенности моделирования нагрузки для биржевых систем;
Требования к генераторам нагрузки и другим инструментам, используемым при тестировании трейдинговых систем.
Целевая аудитория
Широкий круг специалистов, работающих с высоконагруженными системами.
Слушатели смогут сопоставить особенности архитектуры, методов ускорения и тестирования систем особого типа (биржевых площадок) с системами, над которыми они работают (например, высоконагруженными интернет-сервисами).
TMPA-2013 Anureyev: On the Road to Technology of Developing the Means of Dedu...Iosif Itkin
TMPA-2013 Conference in Kostroma
Anureyev, I., A.P.Ershov Institute of Informatics Systems
On the Road to Technology of Developing the Means of Deductive Program Verification
TMPA-2013 Conference: Verification of Parallel Programs – Current Stage and P...Iosif Itkin
The unprecedented use of computers in all areas of human activity makes the challenge of building errorless programs the central one of informatics.
The challenge is of utmost importance for developing built in program systems for managing critical applications where defects of programming can lead to catastrophic consequences. The cost of activities to ensure errorless behavior of built in software management systems amounts to more than a half of their development cost.
Modern day methods of software quality assurance include a variety of means, techniques, and approaches. Although testing and debugging stay the main method, verification, i.e. the formal proof of meeting a set of formal requirements by a formal program system model, has been gaining wider use recently. The method of Model checking has become a breakthrough trend in the area of formal verification.
The method of Model checking can be used for software and hardware systems that represent a model of transformations with a finite number of states. Therefore, the main problem of this method is the “state explosion problem”, i.e. the exponential growth of the number of states of a parallel programs system as the number of interacting components grows. The development of “symbol” algorithms based on economical methods of representing the final data structures has lead to a reduction of this method’s sensitivity to the “state explosion problem” and a significant increase in the efficiency of this method of verification. The “symbol” methods of verification have been successfully used in many practical development projects of building real program systems. Currently this technique is used as a technological phase in many large firms who develop built in systems for critical applications.
Model checking stays a “hot” area of informatics, as intensive research continues to be underway and as the means of this approach are being broadened.
A group of leading scientists in the area of applying formal software development methods has launched an ambitions international research project named “Verified Software Initiative”. The goal of the project is to bring the theoretical foundation, the instruments, and the elements of the verification technology to a state where they will allow developing errorless software systems.
ПРИМЕНЕНИЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ К ГЕНЕРАЦИИ ТЕСТОВ ДЛЯ АВТОМАТНЫХ ПРОГРАММITMO University
Описан подход к автоматизации тестирования автоматных программ. Для формализации требований спецификации к модели и объектам управления предлагается использовать контракты. Тест описывается как последовательность переходов в модели. Для автоматизации процесса создания кода теста предложен генетический алгоритм, который позволяет находить значения переменных, удовлетворяющие условиям на переходах.
Презентация возможностей программной среды "Учимся вместе". ПС предназначена для повышения качества обучения учащихся вузов, общеобразовательных школ и колледжей по информатике.
Основные задачи, решаемые ПС:
1.Автоматизация учебного процесса для преподавателя и учащегося;
2.Помощь учащемуся при решении задач;
3.Отбор лучших решений по каждой задаче по критерию быстродействия и требуемых аппаратных ресурсов;
4.Повышение мотивации учащихся при обучении языкам программирования;
5.Определение плагиата в решениях.
На рынке дистанционного обучения в Российской Федерации есть сильные игроки. Это такие компании, как Competentum, Вебсофт, Открытый Университет «ИНТУИТ» и ряд других. Также в ведущих российских ВУЗ-ах, таких как МФТИ, МГУ, НИЯУ МИФИ и некоторых других ведется обучение студентов языкам программирования с помощью технологий дистанционного обучения. Вместе с тем данные ресурсы предназначены для внутреннего использования и недостаточно универсальны, чтобы стать тиражируемыми в другие учебные заведения. Поэтому прямых сильных конкурентов предлагаемому решению нам не известно.В Интернет имеется целый ряд отечественных и зарубежных электронных ресурсов, посвящённых подготовке к олимпиадам по программированию - acm.timus.ru, codeforces.ru, acm.sgu.ru, acmp.ru, acm.uva.es и др. Однако, данные ресурсы имеют достаточно узкую специализацию – подготовка к этапам чемпионата мира по программированию ACM и к похожим соревнованиям. В отличие от них, программная среда имеет следующие преимущества:- позволяет комбинировать задания на разработку работающих компьютерных программ с традиционными тестами и обучающими материалами. С этой целью нами выполнена интеграция с открытой системой дистанционного обучения Moodle;- программная среда содержит задания самого разного уровня сложности – не только для подготовки к олимпиадам, но и для начального обучения программированию;- задачи сгруппированы по учебным курсам и темам, имеется возможность разграничения прав доступа по курсам, темам и учебным группам / классам;- кроме задач по программированию, в системе содержится комплект заданий по базам данных и языку SQL. С этой целью разработана специализированная подсистема для взаимодейс
Контроль качества с использованием продуктов Ibm rationalAlexander Novichkov
http://cmcons.com
Контроль качества с использованием продуктов IBM Rational
семинар 15 июня 2010 года - «ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ IBM RATIONAL ДЛЯ УЛУЧШЕНИЯ ПРОЦЕССОВ РАЗРАБОТКИ И СОПРОВОЖДЕНИЯ ПО»
Оптимизация производительности и нагрузочное тестирование в среде Visual Stud...Dmitry Andreev
Производительность информационной системы - одно из важных свойств которое должно учитываться, а затем постоянно контролироваться на всех этапах создания программного обеспечения. Но эта задача при неверном подходе в решении рискует превратиться в кропотливую и очень трудоемкую работу, которая может значительно снизить общую эффективность разрабатываемой системы. Баланс между усилиями по оптимизации и результатами достигается с помощью инструментальных средств. Одним из таких средств являются функциональные возможности Visual Studio 2010 по профилированию, нагрузочному тестированию и автоматизации тестирования. В докладе будет проведен краткий обзор этих возможностей и основные сценарии применения для построения комплексной системы нагрузочного тестирования и имитационного мониторинга производительности.
"Опыт создания системы управления сборкой и тестированием" (полная)SPB SQA Group
Доклад посвящен вопросам создания и использования собственной системы управления процессами сборки и тестирования ПО. Описываются ключевые моменты построения таких систем, в частности: вопросы интерфейсов, быстродействия, качества и интеграции в общую инфраструктуру. Затрагиваются концепции встраивания качества в код, сбора и использования метрик ПО, неотделимости сборки от тестирования, автоматизированного ведения базы знаний об ошибках и другие.
Tech Talks @NSU: Организация тестирования в IT-компаниях Академгородка. Карье...Tech Talks @NSU
http://techtalks.nsu.ru
5 апреля 2012. Организация тестирования в IT-компаниях Академгородка. Карьерный путь тестировщика (Мария Колчинская, AcademSoft)
«Мария Колчинская (AcademSoft) рассказывает о процессах тестирования и карьере тестировщика»
Лекция прочитана в рамках проекта Tech Talks @NSU – серии открытых лекций о разработке ПО и карьере в IT, проводимых в Новосибирском государственном университете.
Подробности: http://techtalks.nsu.ru
Similar to TMPA-2013 Itsykson: Java Program Analysis (20)
Foundations of Software Testing Lecture 4Iosif Itkin
This lecture is a part of the online course on Software Testing for Complex Intelligent Systems and Autonomous Vehicles. The course lectures provide the theoretical basics of testing autonomous systems based on artificial intelligence.
The fourth lecture of the course entitled Foundations of Software Testing reviews the ‘absence-of-errors fallacy’ and other principles of software testing, as well as the types and levels of software testing. The lecture also provides a fuller picture of the understanding of test objectives and methodologies by different schools of thought within the software testing domain.
QA Financial Forum London 2021 - Automation in Software Testing. Humans and C...Iosif Itkin
Speaker: Iosif Itkin, co-CEO & co-founder, Exactpro Systems
9th November 2021
Hilton Canary Wharf
Exactpro is an independent software testing business focused on mission-critical financial market infrastructures, primarily exchanges and clearing houses. In his presentation, Iosif will give a brief overview of research on the concept of model-based testing and the principal challenges of its application while testing complex distributed systems. He will also outline the broader context of interaction between humans and complex computer models.
Exactpro FinTech Webinar - Global Exchanges Test OraclesIosif Itkin
The document discusses test oracles, which are mechanisms for determining whether a test has passed or failed. It describes how oracles work by comparing the actual output of a system under test to the expected output determined by the oracle. Several types of oracles are discussed, including hand-crafted oracles, specification-based oracles, and independent implementation oracles. The document emphasizes that all oracles are partial, as it is impossible to create a perfect oracle that evaluates all possible outputs of a system.
Exactpro FinTech Webinar - Global Exchanges FIX ProtocolIosif Itkin
Exactpro’s Global Exchanges Division training session on FIX Trading Protocol.
The essence of the FIX protocol and its place in the overall structure of network protocols, FIX message attributes and the internal data types of the protocol.
Operational Resilience in Financial Market InfrastructuresIosif Itkin
A4Q World Congress 13-16 April 2021
Iosif Itkin
Exactpro provides independent software testing services for mission critical technology that underpins global financial markets – exchanges and clearing houses. Half of the top 20 global exchange groups on all continents around the globe rely on processes, platforms and people from Exactpro to improve their quality and reliability. The company has spent the last 11 years studying operational resilience in this crucial sector. The presentation will outline the key principles for software testing of the systems that process hundreds of millions of orders per day with roundtrip latencies below one hundred microseconds.
20 Simple Questions from Exactpro for Your Enjoyment This Holiday SeasonIosif Itkin
Warmest wishes for a happy holiday season and a wonderful New Year!
We look forward to our continued collaboration in 2020. Thank you for your support.
QA-Financial Forum 2019 in New York
13 November
Iosif Itkin, CEO and co-founder
Elena Treshcheva, Business Development Manager and Researcher
An October 2019 survey by BoE and FCA found that ML in financial organizations has already passed an initial development phase, and the usage of live ML applications is about to dramatically increase over the next three years. Artificial Intelligence systems are used in market surveillance, they are providing intellectual analysis of news feeds, and they are an important part of the conversational agents facing users and helping them with their business needs from identity verification to trading and portfolio management. How to ensure that an AI-powered system is up to its task? And what would that mean from the software testing perspective?
EXTENT 2019: Exactpro Quality Assurance for Financial Market InfrastructuresIosif Itkin
On Complex Software Systems Testing — Alexey Zverev, co-CEO & co-founder, Exactpro
Software Testing and Machine Learning
Mind the Gap. Applying Process Mining
Learning from Failure is not just for Humans
Dancing with Whales. Adaptive Log Classification System
On Traceability and the Illusion of Control
Building Partnerships
Demystifying DLT Testing One Network at a Time
Get the MOST from FIX
Georgia on My Mind
Build Software to Test Software — Iosif Itkin, co-CEO & co-founder, Exactpro
ClearTH Test Automation Framework: Case Study in IRS & CDS Swaps Lifecycle Mo...Iosif Itkin
Synchronize Europe
18th June 2019
Iosif Itkin, co-CEO and co-founder, Exactpro
Using the ISDA CDM Swaps application, simultaneously execute multiple end-to-end scenarios for DAML applications in capital markets - validate with actual contract data on ledger.
EXTENT Talks 2019 Tbilisi: Failover and Recovery Test Automation - Ivan ShamraiIosif Itkin
Ivan Shamray, Senior NFT Analyst, Exactpro
20 April 2019 EXTENT Talks, Tbilisi, Georgia
Tbilisi QA Community
EXTENT Talks is a meeting place for IT specialists working in various industries and seeking professional growth, practitioners from IT firms, as well as Quality Assurance enthusiasts of all backgrounds interested in actively participating in local IT events.
EXTENT Talks QA Community Tbilisi 20 April 2019 - Conference OpenIosif Itkin
The document summarizes the agenda for the QA Community Tbilisi event on April 20, 2019 in Tbilisi, Georgia. The agenda included presentations on topics like principles of deep testing, quality in space, behavior driven development, test automation, and obstacles of software testing in Georgia. There was also information provided about Exactpro and their history, tools and methods for testing financial systems, and test automation for distributed ledger technology. The document encouraged participants to provide feedback and announced an upcoming prize drawing for those who engaged on the event's Facebook page.
User-Assisted Log Analysis for Quality Control of Distributed Fintech Applica...Iosif Itkin
The First IEEE International Conference On Artificial Intelligence Testing (2019 IEEE AITest)
Iosif Itkin, Anna Gromova, Anton Sitnikov, Elena Treshcheva, Rostislav Yavorskiy, Evgenii Tsymbalov, Andrey Novikov and Kirill Rudakov
1 Exactpro, UK, Georgia, USA, Russia
2 Skolkovo Institute of Science and Technology, Russia
3 Higher School of Economics, Russia
Speakers: Iosif Itkin, CEO and Co-Founder and Elena Treshcheva, Business Development Manager and Researcher - Exactpro
Exactpro provides software testing services for mission-critical technology that underpins global financial markets. Exactpro clients are regulated by FCA, Bank of England and their counterparts from other countries. During this session, Elena and Iosif will talk about end-to-end software testing for post-trade systems in financial market infrastructures. What are the key challenges in quality assurance at this scale? What kind of cognitive biases affect SDLC? How precise is the knowledge about the systems under test? What constitutes good test evidence? How to deal with complexity in regulated environments?
Behaviour Driven Development: Oltre i limiti del possibileIosif Itkin
The QA Financial Forum: Milan 2019
23 January at the Excelsior Hotel Gallia.
Anna-Maria Lukina, Exactpro Business Development Director
The QA Financial Forum: Milan is one of the leading fintech conferences in Italy. The event focuses on the latest achievements in software risk management and automation of software testing. The predominant theme of the Milan event will be Quality Assurance for the entire Software Development Life Cycle (SDLC).
The topics under discussion will feature:
- Technologies for Automation & AI
- DevOps & CI/CD
- Value Stream Management
- Test Data Management
- Regulatory Compliance
- App Security & DevSecOps
- Testing and quality assurance of Blockchain platforms
The official language of the event is Italian.
On 17th January 2018 Exactpro successfully completed a management buyout from London Stock Exchange Group (LSEG), signed a new multi-year master services agreement with LSEG, and opened its head office in London.
What else has happened in 2018?
I wanted to take the opportunity to reflect on what has been an unusual year for Exactpro.
Integration front to back - Mr. Custodian tear down that wall
The scope of the application level has been continuous extended over the years, albeit with a focus on the area of pre-trade and trade.
Recently, there has been an increased interest to move further into the area of post-trade which is predominantly driven by the ISO 20022 standard. Is there really a need for new FIX messages in areas such as payments and
what are the integration problems needing a resolution?
Panellists
- Iosif Itkin, CEO, Exactpro
- Jim Northey, Co-Chair Global Technical Committee, Americas Region, FIX Trading Community, Chair Elect, ISO TC68 Financial
Services Technical Committee, and Consultant and Industry Standards Liaison, Itiviti
- Barry Young, Director, Aladdin Product Manager, BlackRock
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)Iosif Itkin
Exactpro is supporting the 3rd annual IT-conference YouCon to take place on 14th October in Saratov, Russia. Over 900 programmers, systems engineers and architects, software QA engineers, and marketing specialists will gather to discuss the latest trends in programming technology. It is the largest IT industry event in Saratov.
Iosif Itkin, CEO of Exactpro, part of London Stock Exchange Group, will deliver a "BDD. The Outer Limits" presentation named after Iosif's favorite Sci-Fi series.
The topics to be covered are:
Behavior Driven Development concepts
Applying BDD in trading and clearing systems
Specification by Example and using production data
Combining Model-based testing and BDD
The Outer Limits
There will be an opportunity to ask questions, share thoughts and expertise in BDD, or just chat with a representative at the Exactpro stand at any time during the event.
Don't miss out, stop by and ask how you can get your Exactpro souvenir :)
We look forward to meeting you there!
#Exactpro #Youconsaratov
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
TMPA-2013 Itsykson: Java Program Analysis
1. Санкт-Петербургский государственный политехнический университет
Институт информационных технологий и управления
Кафедра компьютерных систем и программных технологий
АВТОМАТИЗИРОВАННЫЙ СИНТЕЗ ТЕСТОВ
ДЛЯ JAVA-ПРОГРАММ НА ОСНОВЕ
АНАЛИЗА ПРОГРАММ И УЧЕТА КОНТРАКТОВ
Владимир ИЦЫКСОН, Алефтина АНДРИАНОВА
Кафедра компьютерных систем и программных технологий,
СПбГПУ
Кострома, 10-12 октября 2013
3. Тенденции в области разработки ПО
3
рост сложности программных систем
сокращение времени разработки
смещение технологических решений в программную
область
проникновение программно-управляемых систем, в
критически важные области человеческой жизни:
медицину, армию, авиацию, космос, финансовую сферу
качество ПО становится ниже
важность ПО становится выше
Автоматизированный синтез тестов для Java-программ
12.10.2013
4. Методы повышения качества ПО
4
Статические
дедуктивная
верификация
проверка на модели (model checking)
статический анализ
Динамические
тестирование
динамический анализ
профилирование
Автоматизированный синтез тестов для Java-программ
12.10.2013
5. Методы повышения качества ПО
5
Статические методы
+ анализ свойств всей программы (всех путей выполнения)
+ гарантирование определенных свойств программы
- низкая производительность
- сложность реализации
Динамические методы
+ простота реализации
+ высокая точность (отсутствие ложных обнаружений)
- низкая полнота (отсутствие гарантий)
использование гибридных подходов, сочетающих
достоинства статических и динамических методов
Автоматизированный синтез тестов для Java-программ
12.10.2013
6. Гибридный подход
6
Статические методы
анализ программы
анализ моделей и спецификаций
синтез тестов
Динамические методы
запуск тестов
анализ результатов
Автоматизированный синтез тестов для Java-программ
12.10.2013
7. Контрактное программирование (DbC)
7
предложено Б. Мейером в 1985 г.
позволяет описать частичную спецификацию
(контракт) метода/функции, задающую
предусловия – требования к входным параметрам
метода
предусловия – свойства, гарантированно
выполняющиеся после завершения метода
инварианты – свойства класса, сохраняющиеся после
выполнения методов
Автоматизированный синтез тестов для Java-программ
12.10.2013
8. Постановка задачи
8
Разработка технологии автоматического синтеза
модульных тестов, обеспечивающей покрытие
всех¹ путей выполнения программы с помощью
статического анализа
структуры программы
спецификаций, заданных в форме контрактов
Разработка прототипа системы автоматического
синтеза модульных тестов для программ на языке
Java
Автоматизированный синтез тестов для Java-программ
12.10.2013
12. Предлагаемый подход. Этапы
12
формирование модели программы (метода)
формирование списка путей выполнения метода
преобразование путей в цепочки утверждений
анализ контрактов и дополнение утверждений
составляющими контрактов: предусловиями метода
и инвариантами класса
разрешение системы утверждений относительно
аргументов метода
формирование экземпляра теста на основе решения
системы утверждений
формирование тестового оракула на основе
постусловий метода и инвариантов класса
Автоматизированный синтез тестов для Java-программ
12.10.2013
14. Извлечение путей исполнения
14
Анализ графа потока управления:
Анализ узлов, влияющих на поток
управления:
ветвления (if)
конструкции мультиветвления (switch)
циклы (do, while, do-while)
Коллекционирование условий ветвления
Коллекционирование операторов пути
Результат:
список операторов и условий, которые
должны выполниться, чтобы данный путь
был пройден
Автоматизированный синтез тестов для Java-программ
12.10.2013
15. Формирование системы утверждений. SSA
15
x = 10;
y = 20;
if (z > 5) {
x = x + y;
}
Решение –
преобразование
пути в вид
однократного
статического
присваивания (SSA)
1:
2:
3:
4:
x=10
y=20
z>5
x=x+y
1:
2:
3:
4:
x1=10
y1=20
z1>5
x2=x1+y1
Автоматизированный синтез тестов для Java-программ
12.10.2013
16. Формирование системы утверждений
16
преобразование путей в форму однократного
статического присваивания (SSA)
преобразование операторов к трехоперандной
форме
введение временных переменных
введение дополнительных узлов в путь
преобразование условий в соответствующие
утверждения
Автоматизированный синтез тестов для Java-программ
12.10.2013
17. Формирование системы утверждений
17
Для каждого пути имеем систему
логических утверждений
Для форсирования прохождения тестом
пути необходимо решить обратную
задачу:
при каких значениях аргументов метода
система утверждений разрешима?
Если такие значения аргументов
найдены, то их использование в тесте
форсирует выполнение искомого пути
Автоматизированный синтез тестов для Java-программ
12.10.2013
18. Решение системы утверждений
18
Построенная система утверждений выражена в терминах
логики первого порядка и относится к классу Satisfiability Modulo
Theories (SMT)
В общем случае разрешение SMT-формулы – NP-полная
задача
Существуют эффективные SMT-решатели (SMT-солверы):
Z3, CVC, MathSAT, OpenSMT, MiniSMT и т.п.
Входные данные для SMT-решателей представляются в
формате SMT-LIB
Автоматизированный синтез тестов для Java-программ
12.10.2013
19. Решение системы утверждений
19
Преобразование системы утверждений в формат
SMT-LIB (конкретнее – SMT-LIB 2.0)
Запуск SMT-решателя для решения системы
утверждений
Интерпретация результатов работы SMTрешателя
получение набора значений аргументов метода
Генерация скелета теста
Автоматизированный синтез тестов для Java-программ
12.10.2013
20. Учет контрактов
20
Построенные тесты обеспечивают прохождение
программой соответствующих путей исполнения
Значения аргументов расположены в области
допустимых значений произвольно (особенность
SMT-решателей)
Как следствие – сгенерированные значения могут
нарушать контракты методов (предусловия) или
инварианты классов
Решение:
Расширяем систему утверждений предусловиями
методов и инвариантами классов
Автоматизированный синтез тестов для Java-программ
12.10.2013
21. Учет контрактов
21
Постусловия методов содержат информацию о проверке
корректности выполнения методом своих функций
Постусловия и инварианты классов могут быть учтены
путем преобразования их в тестовый оракул
тривиальная задача, так как контракты представляются в форме
утверждений логики первого порядка
Предусловия
Сокращение ОДЗ
Инварианты
Постусловия
Генерация тестовых оракулов
Автоматизированный синтез тестов для Java-программ
12.10.2013
22. Резюме
22
Для каждого класса эквивалентности
сгенерирован тест
Заготовка тестового оракула сформирована на
основе постусловий и инвариантов
Обеспечено покрытие всех путей (*)
Что делать, если требуется сгенерировать
несколько тестов для одного класса
эквивалентности?
Автоматизированный синтез тестов для Java-программ
12.10.2013
23. Формирование множественных тестов
23
ОДЗ аргументов делятся на интервалы в
соответствии с какой-либо эвристикой
В систему утверждений добавляются условия
нахождения аргументов в рассчитанных
интервалах
SMT-решатель запускается повторно с новыми
системами утверждений
Могут использоваться различные эвристики
Реализовано
равномерное заполнение тестами
ОДЗ
Автоматизированный синтез тестов для Java-программ
12.10.2013
25. Выбранные технологии
25
Целевой язык программирования – Java
Система задания контрактов – CoFoJa
SMT-решатель – Z3 от Microsoft Research
Технология модульного тестирования – JUnit
Автоматизированный синтез тестов для Java-программ
12.10.2013
27. Особенности реализации
27
Язык реализации – Java
Построение структурной модели – Java Compiler Tree
API
Анализ контрактов в формате CoFoJa с помощью
процессоров аннотаций
Синтез системы утверждений в формате SMT-LIB 2.0
Запуск внешнего SMT-решателя Z3 через внешний
процесс
Синтез тестов в формате JUnit
Автоматизированный синтез тестов для Java-программ
12.10.2013
33. Ограничения текущей реализации
33
Ограничения на мощность контрактов
Ограниченный набор поддерживаемых
типов данных: int, boolean, float, double
Неполная поддержка всех конструкций
языка Java
Простая обработка циклов
Отсутствие поддержки рекурсии
…
Автоматизированный синтез тестов для Java-программ
12.10.2013
35. Состояние исследований в мире
35
Microsoft Research Pex
Целевые языки C и C#
Извлечение путей исполнения
Использование Z3-решателя для синтеза тестов
AutoTest Framework
Целевой язык Eiffel
Случайная генерация тестов и генерация на основе
отказов
Использование контрактов для
для формирования оракулов
Для ограничения ОДЗ
… (Symstra, KUnit, Kiasan, UnitMeister,…)
Автоматизированный синтез тестов для Java-программ
12.10.2013
37. Заключение
37
Разработана технология синтеза модульных тестов для
программ на языке Java, обеспечивающая покрытие путей
Разработанные методы с помощью применения SMT-солвера
генерируют параметры модульных тестов, форсирующие
реализацию заданных путей исполнения
Учет контрактов методов позволяет с одной стороны с
помощью постусловий частично автоматизировать синтез
тестовых оракулов, а с другой – с помощью предусловий и
инвариантов ограничивать множество генерируемых значений
аргументов тестируемой функции
Реализован программный прототип и проведено его
экспериментальное исследование на наборе тестовых
примеров
Анализ полученных результатов тестирования показал полную
работоспособность предложенных методов с учетом заданных
требований и ограничений
Автоматизированный синтез тестов для Java-программ
12.10.2013
38. Направления дальнейших исследований
38
Совершенствование анализатора (прототипа) с
целью обеспечения анализа более широкого
класса Java-программ
Разработка новых алгоритмов генерации
множественных тестов, наиболее эффективно
распределяющих значения переменных по
области определения
Расширение на другие языки программирования
Автоматизированный синтез тестов для Java-программ
12.10.2013