WWW.DISS.SELUK.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА
(Авторефераты, диссертации, методички, учебные программы, монографии)

 

На правах рукописи

Лаздин Артур Вячеславович

МЕТОДЫ ПОСТРОЕНИЯ ГРАФО-АНАЛИТИЧЕСКИХ

МОДЕЛЕЙ ФУНКЦИОНАЛЬНЫХ ПРОГРАММ

Специальность – 05.13.12 “Системы автоматизации проектирования”

(приборостроение)

АВТОРЕФЕРАТ

диссертации на соискание учёной степени кандидата технических наук

Санкт-Петербург 2009 2

Работа выполнена в Санкт-Петербургском Государственном университете информационных технологий, механики и оптики.

Научный руководитель доктор технических наук, профессор Немолочнов Олег Фомич

Официальные оппоненты доктор технических наук, профессор Арустамов Сергей Аркадьевич кандидат технических наук Яковлев Юрий Александрович Ведущее предприятие СПб ГЭУ «ЛЭТИ» им. В. И. Ульянова (Ленина)

Защита диссертации состоится 16 июня 2009 г. в 15 часов 50минут на заседании диссертационного совета Д 212.227.05 при СанктПетербургском государственном университете информационных технологий, механики и оптики по адресу: 197101, г. Санкт-Петербург, Кронверкский пр., д. 49.

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

Автореферат разослан 15 мая 2009 г.

Учёный секретарь диссертационного совета Д 212.227.05 В.И.Поляков

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

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





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

Данная работа посвящена разработке методов восстановления и декомпозиции исполняемого кода программ, ориентированных на их статический анализ.

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

разработать модель исполняемого кода функциональной разработать метод формирования управляющего графа функциональной программы на основе ее модели;

разработать методы процедурной и структурной декомпозиции управляющего графа функциональной программы;

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

Научная новизна. В работе получены следующие существенные результаты:

разработан метод построения графо-аналитической модели функциональной программы, базирующийся на оригинальном функциональной программы;

разработан метод процедурной декомпозиции управляющего графа исполняемого кода функциональной программы;

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

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

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

Внедрение результатов. Разработанная программная система формирования и декомпозиции управляющего графа функциональной программы используется в СПбГУ ИТМО на кафедре информатики и прикладной математики в рамках учебно-исследовательской САПР верификации и тестирования, для анализа результатов лабораторных работ по курсам «Системное программное обеспечение», «Программирование на языке ассемблера», «Технология программирования» для студентов специальности 230101 «Вычислительные машины, системы, комплексы и сети».





Апробация работы Основные результаты диссертационной работы докладывались и получили одобрение на Всероссийской научнотехнической конференции «Диагностика веществ, изделий и устройств»

(Орел, 1999), научно-технических конференциях профессорскопреподавательского состава ИТМО (С.-Петербург 1999, 2000, 2002, г.г.).

Публикации. По материалам диссертации опубликовано 10 работ.

Структура и объем работы Диссертация состоит из введения, четырех глав, заключения, библиографического списка из наименований и приложения. Общий объем работы 142 страницы текста, диссертация содержит 21 рисунок и 9 таблиц.

СОДЕРЖАНИЕ РАБОТЫ

Во введении обоснована актуальность темы, определены цели и методы исследования.

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

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

Выделяют два основных метода контроля и анализа программ:

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

синтаксический контроль;

контроль структурированности ПО;

контроль правдоподобия программ;

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

Кроме того, верификация практически не применяется на поздних этапах жизненного цикла ПО.

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

Динамические методы анализа основаны на исследовании характеристик программы во время ее выполнения на ЭВМ, т.е.

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

функциональное тестирование;

структурное тестирование.

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

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

Задача создания инструментальных средств для формирования (восстановления) управляющего графа ИК ПО с последующим его анализом является весьма актуальной.

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

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

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

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

В основу метода формирования УГ ФП, положена графовая модель программы. Однако в отличие от традиционного представления графовой интерпретации операционной схемы программы, когда в качестве вершин графа используются операторы, а дугам соответствуют функциональные связи, в данной работе предлагается использовать в качестве вершин КУПК. Такой подход существенно упрощает анализ ИК. Полученный граф может рассматриваться как частный случай графа связей по управлению программы.

ФП представляется ориентированным графом, вершинами которого будут:

команды передачи управления не являющиеся элементами множества точек выхода.

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

Дугам этого графа соответствуют:

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

безусловные переходы;

Дугам, соответствующим безусловным или условным переходам не соответствует ни одна выполняемая команда обработки данных.

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

Рис. 1. Типы и инцидентности вершин управляющего графа ФП.

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

Вершина, соответствующая командам условных переходов (Jxx) инцидентна строго двум исходящим дугам. Для всех вершин, кроме соответствующей точке входа, допускается множественная инцидентность относительно входных дуг.

Для вершин, соответствующим командам вызова процедур и возврата из них, возможны два подхода интерпретации:

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

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

НЕТ НЕТ

ДА ДА ДА

Рис. 2 Метод формирования управляющего графа ФП.

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

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

Метод формирования управляющего графа ИК ФП представлен на рис. 2. Формирование графа ФП начинается с загрузки образа ФП в память и настройки всех абсолютных адресов переходов и вызовов процедур.

Выполнение данного этапа соответствует действиям загрузчика ОС по предварительной обработке исполняемого модуля для его последующего запуска В диссертационной работе предложен рекурсивный алгоритм формирования списка КУПК по ИК ФП. В качестве параметров алгоритм получает адрес начала обработки и конечный адрес просмотра (для первого запуска алгоритма он принимает значение адреса последнего байта программы). Возвращаемое значение (адрес перехода, если AP AN, или адрес начала обработки в противном случае) заносится в переменную, хранящую АN. Данный алгоритм может быть представлен следующим образом:

P – процедура формирования списка вершин графа;

АN – адрес начала обработки (для первого вызова функции – адрес точки входа.);

AK – конечный адрес просмотра;

– композиция базовых операторов S (операторы формирования списка вершин, не содержащие обращения к процедуре P) и процедуры P.

Алгоритм, определенный таким образом, является рекурсивным.

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

Для доказательства конечной глубины рекурсии введем функцию f (x), где x – множество переменных процедуры, такую, что при f (x) 0 алгоритм не осуществляет рекурсивного вызова. Определим x следующим образом: x = {an, ap, anz}, где an, ap, и anz – переменные, хранящие значения начального адреса AN, адреса перехода AP и адреса начала загрузки программы. Тогда функция f (x) задается следующим соотношением:

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

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

Справедливость данной леммы основана на том, что любую линейную последовательность функциональных операторов можно объединить в составной оператор (блок) без потери семантики. Будем называть схему алгоритма нормализованной, если в ней любая композиция операторов представлена одной функциональной вершиной в соответствии с леммой. Доказывается теорема, в соответствии с которой сложность графа функциональной программы имеет тот же порядок, что и сложность нормализованной схемы исходного алгоритма описания задачи.

Следовательно, можно говорить об «обозримости» УГ ФП, а равно о возможности его последующей программной обработки, например для автоматизации формирования тестов в соответствии с методом структурного тестирования ПО.

В третьей главе описываются предложенные методы структурной декомпозиции УГ ФП. В работе определены структурные части функциональной программы: процедуры и циклы, подлежащие декомпозиции, обоснована последовательность декомпозиции, определены цели декомпозиции. На первом этапе выделяются тела процедур, на втором этапе – тела циклов.

В общем случае структура процедуры заранее не известна.

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

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

В данной работе под процедурой будет пониматься группа команд, предназначенная для решения локальной задачи, имеющая единственную точку входа, передача управления на которую может осуществляться только посредством выполнения команд вызова; выход из процедур осуществляется выполнением команд возврата. Другие способы входа и выхода из процедур запрещены. Наложенные ограничения позволяют существенно упростить поиск процедур оформленных по правилам, принятым в языках высокого уровня или с использованием директивы PROC в языке Ассемблера. Для процедур выполняются соглашения о типе вызова и типе возврата: ближнему вызову соответствует ближний возврат, а дальнему – дальний. Команда возврата не обязательно должна быть последней в последовательности машинных инструкций процедуры, однако очевидно, что последней командой процедуры может быть либо команда возврата, либо команда передачи управления на инструкцию в теле процедуры. Если в коде программы будут находиться процедуры не соответствующие наложенным ограничениям, они будут рассматриваться как часть головной процедуры или функции( подобно функции main() Сипрограммы). Для процедур, вход в которые был выполнен командой вызова, недопустимы переходы из тела процедуры.

В диссертационной работе были проанализированы возможные структуры процедур и на основе проведенного анализа предложен метод функциональной декомпозиции ИК ФП предназначенный для выделения тел процедур. Метод разделен на два основных этапа: на первом этапе в списке узлов производится поиск всех обращений к процедурам, и несовпадающие адреса вызовов помещаются в список начальных адресов процедур. На втором этапе для каждого начального адреса производится поиск адреса последней команды процедуры для ее последующей локализации в рамках УГ ФП. В ходе формирования УГ для каждой процедуры локализуются найденные ошибки.

С целью поиска циклических участков ИК ФП и последующей ее структурной декомпозиции в диссертационной работы были проанализированы структуры циклических участков программ с учетом досрочных выходов из циклического участка (break-ветви) и переходов к началу очередной итерации цикла (continue-ветви). Предложен метод поиска циклических участков программы с учетом вложенности циклов.

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

Необходимо наложить ограничения на структуры циклов подобно тому, как это было сделано для процедур. Запрещаются переходы из тела цикла к вершинам УГ ФП не принадлежащим телу цикла, как в направлении младших, так и старших адресов. Появление подобных переходов может быть вызвано неоправданным, для метода структурного программирования, использованием операторов goto. Подобное ограничение не влияет на такие широко распространенные приемы выхода из циклов, как принудительное прекращение итерации (continue-ветвь) в этом случае адрес перехода из тела цикла назад будет совпадать с адресом перехода для вершины перехода на очередную итерацию цикла.

Запрещаются переходы в тело цикла из участков программы не принадлежащих циклическому участку.

Поиск циклов осуществляется в следующей последовательности – сначала составляется список адресов, вершин УГ ФП, из которых осуществляется переход назад (в направлении уменьшения адресов). Если найдено несколько переходов на один и тот же адрес, то вершина, имеющая самый старший адрес, рассматривается в качестве предполагаемого завершения цикла, а остальные - continue. Вершины, соответствующие continue-ветви удаляются из списка предполагаемых завершений циклов. Если есть переходы назад в тело предполагаемого цикла, то эти переходы, равно как и сам предполагаемый цикл, циклом не являются и удаляются из списка предполагаемых завершений циклов.

Наличие подобных переходов не согласуется с ранее определенными ограничениями. Затем определяется вложенность найденных циклов.

Предложенные в диссертационной работе методы функциональной декомпозиции позволяют существенно упростить представление и обработку УГ ФП.

В четвертой главе диссертационной работы приводится описание программной системы формирования УГ ФП. Система представляет собой консольное приложение для ОС Windows NT/2000/XP и является программной реализацией разработанных в диссертационной работе алгоритмов. Разработана структура программной системы (см. рис. 3), описаны ее возможности. Дано описание состава модулей входящих в систему. В качестве объекта эксперимента выбрана ФП имеющая ИК в формате exe-файла операционной системы MS-DOS, состоящий из команд процессора Pentium.

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

В зависимости от указаний пользователя программная система формирует ряд файлов: неупорядоченный и упорядоченный списки КУПК, список вершин управляющего графа ИК ФП, матрицы смежности, инцидентности, достижимости, список процедур, список циклов.

Связи по управлению Рис. 3 Структура программной системы формирования и декомпозиции управляющего графа функциональной программы.

В приложении приведены примеры функциональных программ и результаты их обработки: полученные списки вершин УГ ФП, матрицы связности и инцидентности для полученных графов.

В заключении содержаться основные результаты, полученные в диссертационной работе.

ЗАКЛЮЧЕНИЕ

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

2. Разработана модель представления исполняемого кода в виде ориентированного графа, вершинами которого являются команды управления последовательностью выполнения; и на ее основе предложен метод восстановления управляющего графа исполняемого кода программы.

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

4. Разработаны алгоритмы восстановления управляющего графа программы, в частности рекурсивный алгоритм формирования списка вершин управляющего графа.

5. Разработаны алгоритмы поиска процедур и циклических участков исполняемого кода программы 6. Разработана программная система восстановления и декомпозиции управляющего графа исполняемого кода

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ.

1. Лаздин А. В. Способы машинного представления графа переходов функциональной программы. // Тез. докл. ХХХ научнотехнической конференции профессорско-преподавательского состава СПб ГИТМО (ТУ), 1999 с.94.

2. Лаздин А. В. Немолочнов О. Ф. Использование графа переходов функциональной программы для синтеза испытательных последовательностей. // Тез. докл. ХХХ научно-технической конференции профессорско-преподавательского состава СПб ГИТМО (ТУ), 1999 г. с. 94.

3. Лаздин А. В. Построение графа функциональной программы.

Материалы Всероссийской научно-технической конференции «Диагностика веществ, изделий и устройств». Орел, 1999 с. 190.

4. Миндубаева Н. Н. Лаздин А. В. Поиск процедур по графу переходов функциональной программы. Сборник научных трудов молодых ученых и специалистов СПб ГИТМО (ТУ), 2000 с. 26-31.

5. Логунова О. А. Лаздин А. В. Пухтеева Е. А. Рекурсивный алгоритм формирования списка вершин графа переходов функциональной программы. Сборник научных трудов молодых ученых и специалистов СПб ГИТМО (ТУ), 2000 с. 31-35.

6. Лаздин А. В. Немолочнов О. Ф. Функциональная программа как объект тестирования и верификации. Тез. докл. научно-технической конференции профессорско-преподавательского состава СПб ГИТМО (ТУ), 2000 с. 6.

7. Лаздин А. В. Алгоритмы построения списка вершин графа программы. // Тез. докл. научно-технической конференции профессорско-преподавательского состава СПб ГИТМО (ТУ), 2000. с. 8. Лаздин А. В., Немолочнов О. Ф. Оценка сложности графа функциональной программы / – Научно-технический вестник СПБ ГИТМО (ТУ). Выпуск 6. Информационные, вычислительные и управляющие системы // Гл. ред. В. Н. Васильев. СПб.: СПбГИТМО (ТУ), 2002.

9. Лаздин А. В., Немолочнов О. Ф. Метод построения графа функциональной программы для решения задач верификации и тестирования / – Научно-технический вестник СПБ ГИТМО (ТУ).

Выпуск 6. Инфориационные, вычислительные и управляющие системы // Гл. ред. В. Н. Васильев. СПб.: СПб ГИТМО (ТУ), 2002.

10. Немолочнов О. Ф., Зыков А. Г., Лаздин А. В., Поляков В. И.

Верификация в исследовательских, учебных и промышленных системах. // – Научно-технический вестник СПбГУ ИТМО. Выпуск 11.

Актуальные проблемы анализа и синтеза сложных технических систем.

Под ред. В. О. Никифорова. СПб: СПбГУ ИТМО, 2003, с. 146-151.



 
Похожие работы:

«БОСИКОВ ИГОРЬ ИВАНОВИЧ ИССЛЕДОВАНИЕ ЗАКОНОМЕРНОСТЕЙ И ОБЕСПЕЧЕНИЕ ЭФФЕКТИВНОСТИ ФУНКЦИОНИРОВАНИЯ ПРИРОДНОПРОМЫШЛЕННОЙ СИСТЕМЫ ( НА ПРИМЕРЕ ГОРНО-ПЕРЕРАБАТЫВАЮЩЕГО КОМПЛЕКСА ) Специальность 05.13.01 – Системный анализ, управление и обработка информации (промышленность) АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Владикавказ - 2011 Работа выполнена в Северо-Кавказском горно-металлургическом институте (государственном технологическом...»

«РЕВА Иван Леонидович УСОВЕРШЕНСТВОВАННАЯ МЕТОДИКА ОЦЕНКИ ЗАЩИЩЕННОСТИ РЕЧЕВОЙ ИНФОРМАЦИИ ОТ УТЕЧКИ ПО ТЕХНИЧЕСКИМ КАНАЛАМ 05.13.19 - Методы и системы защиты информации, информационная безопасность АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Новосибирск - 2012 2 Работа выполнена в Федеральном государственном бюджетном образовательном учреждение высшего профессионального образования Новосибирский государственный технический университет...»

«ШЕДЬКО Ольга Геннадьевна ТЕХНОЛОГИИ ПОВТОРНОГО ИСПОЛЬЗОВАНИЯ ПРИ РАЗРАБОТКЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ Специальность 05.13.12 “Системы автоматизации проектирования (приборостроение)” АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Санкт-Петербург 2009 Работа выполнена в Санкт-Петербургском государственном университете информационных технологий, механики и оптики, кафедра Вычислительной техники Научный руководитель :...»

«ЛЕОНОВА Наталья Александровна ОЦЕНКА ЭФФЕКТИВНОСТИ И ОПТИМИЗАЦИЯ НАЛОГОВОГО И БЮДЖЕТНОГО УПРАВЛЕНИЯ В УСЛОВИЯХ РЕГИОНАЛЬНОЙ НАЛОГОВОЙ КОНКУРЕНЦИИ Специальность 05.13.10 – Управление в социальных и экономических системах Автореферат диссертации на соискание ученой степени кандидата технических наук Тверь 2010 Работа выполнена на кафедре математической статистики и системного анализа факультета прикладной математики и кибернетики Тверского государственного университета Научный...»

«Данилов Александр Анатольевич Технология построения неструктурированных сеток и монотонная дискретизация уравнения диффузии 05.13.18 – Математическое моделирование, численные методы и комплексы программ АВТОРЕФЕРАТ диссертации на соискание учёной степени кандидата физико-математических наук Москва – 2010 Работа выполнена в Учреждении Российской академии наук Институт вычислительной математики РАН. Научный руководитель : доктор физико-математических наук, доцент, Василевский...»

«ПЕРЕВАРЮХА Андрей Юрьевич ГИБРИДНЫЕ МОДЕЛИ ДЛЯ АНАЛИЗА НЕЛИНЕЙНЫХ ПРОЦЕССОВ НА ПРИМЕРЕ ВОСПРОИЗВОДСТВА ПОПУЛЯЦИЙ РЫБ РАЗРАБОТКА И АНАЛИЗ ГИБРИДНЫХ МОДЕЛЕЙ ВОСПРОИЗВОДСТВА ПОПУЛЯЦИЙ РЫБ АНАЛИЗ ДИНАМИКИ ВОЗОБНОВЛЯЕМЫХ БИОРЕСУРСОВ С ИСПОЛЬЗОВАНИЕМ КОМПЛЕКСА ГИБРИДНЫХ МОДЕЛЕЙ Специальность 05.13.01 – Системный анализ, управление и обработка информации (технические системы). АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Санкт-Петербург Работа...»

«МАЛАХОВА Анна Ивановна МОДЕЛИ И МЕТОДЫ ИНТЕЛЛЕКТУАЛЬНОЙ ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ В ОРГАНИЗАЦИОННОМ УПРАВЛЕНИИ ПРОГРАММНЫМИ ПРОЕКТАМИ Специальность 05.13.01 Системный анализ, управление и обработка информации (в промышленности) АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Уфа – 2013 Работа выполнена на кафедре технической кибернетики ФГБОУ ВПО Уфимский государственный авиационный технический университет Научный руководитель д-р техн. наук,...»

«АНИСИМОВ МИХАИЛ МИХАЙЛОВИЧ РАЗРАБОТКА ФОРМАЛЬНЫХ МОДЕЛЕЙ РАССУЖДАЮЩИХ СЕТЕЙ ДЛЯ АНАЛИЗА ПАРАЛЛЕЛЬНЫХ СОБЫТИЙНЫХ ПРОЦЕССОВ Специальность 05.13.17 – Теоретические основы информатики АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата физико-математических наук МОСКВА, 2009 Работа выполнена на кафедре информатики Московского физико-технического института (ГУ) Научный руководитель : доктор...»

«ГЕРАСИМОВ Александр Вячеславович МЕТОДЫ ВЫЧИСЛЕНИЯ ПАРАМЕТРОВ УСТОЙЧИВОЙ МОДЕЛИ И ПРИЗНАКОВ В ЗАДАЧЕ РАСПОЗНАВАНИЯ РЕЧЕВОГО СИГНАЛА 05.13.01 – системный анализ, управление и обработка информации по физико-математическим наук ам АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата физико-математических наук Нижний Новгород – 2007 Работа выполнена на кафедре ИТФИ в Нижегородском государственном университете им. Н. И. Лобачевского (г. Нижний Новгород). Научный...»

«Ч ека н ин В л ад ис л ав А л екс а н д р о ви ч МОДИФИЦИРОВАННЫЕ ЭВОЛЮЦИОННЫЕ АЛГОРИТМЫ И ПРОГРАММНЫЕ РЕШЕНИЯ ЗАДАЧИ ОРТОГОНАЛЬНОЙ УПАКОВКИ ОБЪЕКТОВ 05.13.17 – Теоретические основы информатики АВТОРЕФЕРАТ диссертации на соискание учёной степени кандидата технических наук Москва – 2011 Работа выполнена в государственном образовательном учреждении высшего профессионального образования Московский государственный технологический университет Станкин на кафедре Управление и...»

«Панасенко Елена Александровна Численное решение обратных задач переноса примеси на многопроцессорных вычислительных системах 05.13.18 – Математическое моделирование, численные методы и комплексы программ Автореферат диссертации на соискание ученой степени кандидата физико-математических наук Томск – 2010 Работа выполнена на кафедре вычислительной математики и компьютерного моделирования механико-математического факультета ГОУ ВПО Томский государственный университет Научный...»

«Кононов Юрий Михайлович РАЗРАБОТКА ЭКСПЕРТНОЙ СИСТЕМЫ ДЛЯ ВЫБОРА МЕТОДОВ УВЕЛИЧЕНИЯ НЕФТЕОТДАЧИ ПЛАСТОВ В УСЛОВИЯХ НЕЧЕТКИХ ВХОДНЫХ ДАННЫХ 05.13.01 – Системный анализ, управление и обработка информации (промышленность) АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Новосибирск – 2013 2 Работа выполнена в Федеральном государственном бюджетном образовательном учреждении высшего профессионального образования Национальный исследовательский Томский...»

«Фиалко Надежда Сергеевна МОДЕЛИРОВАНИЕ ПЕРЕНОСА ЗАРЯДА В ДНК Специальность: 05.13.18 – математическое моделирование, численные методы и комплексы программ Автореферат диссертации на соискание ученой степени кандидата физико-математических наук Пущино 2007 Работа выполнена в Институте математических проблем биологии РАН (г. Пущино) Научный руководитель : доктор физико-математических наук, профессор Лахно Виктор Дмитриевич Официальные доктор физико-математических наук,...»

«Балхарет Ахмед Абдулла Саид МОДЕЛИ И МЕТОД ОЦЕНКИ ВЛИЯНИЯ ИНТЕРФЕЙСА НА ДЕЯТЕЛЬНОСТЬ ОПЕРАТОРА ПРИ УПРАВЛЕНИИ ТЕХНОЛОГИЧЕСКИМИ ПРОЦЕССАМИ. Специальности: 05.13.06 – Автоматизация и управление технологическими процессами и производствами (промышленность) АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Санкт-Петербург – 2009 PDF created with pdfFactory trial version www.pdffactory.com Работа выполнена в Санкт-Петербургском государственном...»

«Майоров Николай Николаевич Разработка и исследование математического, лингвистического и программного обеспечения подсистемы САПР построения математических моделей гетерогенных объектов Специальность: 05.13.12 Системы автоматизации проектирования ( приборостроение) АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Санкт-Петербург 2008 Работа выполнена в Санкт-Петербургском государственном университете аэрокосмического приборостроения Научный...»

«КУЗНЕЦОВ ЮРИЙ АЛЕКСАНДРОВИЧ ПОСЛЕДОВАТЕЛЬНОЕ РАЗЛИЧЕНИЕ ГИПОТЕЗ В СХЕМЕ С АЛЬТЕРНАТИВНЫМИ НАБЛЮДЕНИЯМИ 05.13.17 – теоретические основы информатики АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата физико-математических наук МОСКВА 2009 Работа выполнена на механико-математическом факультете Московского государственного университета им. М.В.Ломоносова Научный руководитель : чл.-кор. РАН, доктор физико-математических наук, профессор А.Н. Ширяев Официальные оппоненты...»

«ПОПОВ СЕРГЕЙ ИВАНОВИЧ АВТОМАТИЗАЦИЯ УПРАВЛЕНИЯ ТЕХНОЛОГИЧЕСКИМИ ПРОЦЕССАМИ ВОССТАНОВЛЕНИЯ ЭКСПЛУАТАЦИОННЫХ СВОЙСТВ ПОЛИМЕРОВ Специальность 05.13.06 – Автоматизация и управление технологическими процессами и производствами (промышленность) Автореферат диссертации на соискание ученой степени кандидата технических наук Иркутск – 2013 1 Работа выполнена в Федеральном государственном бюджетном образовательном учреждении высшего профессионального образования Иркутский...»

«ПЕРЕЛЫГИН Владимир Николаевич МЕТОДЫ И СРЕДСТВА СОВМЕСТНОЙ ОБРАБОТКИ ТЕРМО-ОПТИЧЕСКОЙ ИНФОРМАЦИИ В ЗАДАЧАХ ДИАГНОСТИКИ ТРАНСПОРТНЫХ ОБЪЕКТОВ Специальность 05.13.01 – Системный анализ, управление и обработка информации (промышленность) АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Иркутск – 2011 Работа выполнена в ГОУ ВПО Иркутский государственный университет путей сообщения Научный руководитель : доктор технических наук, профессор Лукьянов...»

«МУФТИЕВ Расим Гамилевич УПРАВЛЕНИЕ ПРОЕКТОМ АУТСОРСИНГА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ НА ОСНОВЕ МНОГОКРИТЕРИАЛЬНОЙ ОЦЕНКИ ЭФФЕКТИВНОСТИ Специальность 05.13.10 Управление в социальных и экономических системах АВТОРЕФЕРАТ диссертации на соискание учной степени кандидата технических наук Уфа – 2013 Работа выполнена на кафедре вычислительной техники и защиты информации ФГБОУ ВПО Уфимский государственный авиационный технический университет Научный руководитель д-р техн.наук, проф....»

«ЯРОВЕНКО ВЛАДИМИР АЛЕКСЕЕВИЧ ИНТЕГРИРОВАННАЯ СИСТЕМА ОБРАБОТКИ СТРУКТУРИРОВАННЫХ ФИЗИЧЕСКИХ ЗНАНИЙ 05.13.12 – Системы автоматизации проектирования (промышленность) АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Волгоград – 2013 Работа выполнена на кафедре Системы автоматизированного проектирования и поискового конструирования Волгоградского государственного технического университета. Научный руководитель доктор технических наук, профессор...»








 
© 2013 www.diss.seluk.ru - «Бесплатная электронная библиотека - Авторефераты, Диссертации, Монографии, Методички, учебные программы»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.