Введение к работе
- 3- Актуальность проблемы
Со времени появления первых инструментальных средств программирования - программирующих программ и простейших алгоритмических языков до текущего момента программный инструментарий прошел несколько этапов существенных качественных изменений. Наряду с языками программирования (ЯП), пакетами прикладных программ и проблемно-ориентированными библиотеками готовых модулей появились такие эффективные средства, как среды программирования, системы автоматизированного проектирования, автоматизированные комплексы управления проектами, case-ориентированные инструментальные среды и т.п.. Тенденции создания программного обеспечения ЭВМ свидетельствуют о растущей наукогмкости современных инструментальных систем, т.е. включении в их состав подсистем, основанных на методах теории программирования. Эти методы, направленные на верификацию, оптимизацию и автоматизированное построение программ, являясь довольно сложными в своей математической основе и малоприменимыми непосредственно при проектировании, в то же время могут оказаться весьма эффективными при их использовании в инструментальных средствах программирования.
Появление нового наукоемкого объектно-ориентированного и интеллектуального инструментария позволило создавать сложные автоматизированные информационные системы, содержащие 100 - 500 тысяч операторов исходного текста примерно с такой же трудоемкостью, как и программы средней сложности на ЯП предыдущего поколения. Инструментальные средства разработаны для многих классов программ, например, функционального, логического, продукционного, эвристического проектирований.
Существенный фундаментальный вклад в этой области научных исследований внесли В.М.Глушков. А.П.Ершов, А.А.Ляпунов, Ю.И.Янов, С.А.Абрамов, Грис Д., Э.Дейкстра., К.Хоар, Дж.А.Бергстра, В.Р.Пратт, Г.Д.Плоткин и др. .
Вместе с тем многие теоретические результаты, полученные в области структурного конструирования программ и их верификации, редко используются в реальных автоматизированных системах. Это происходит вследствие многообразия и сложности формализмов теории программирования, а также по причине отсутствия простых, достаточно универсальных прикладных формальных систем, позволяющих приблизить результаты фундаментальных исследований к их практическому использованию. Одним из способов решения упомянутой проблемы может стать использование новых методов сравнительно недавно сформировавшейся теории унификации термов универсальных алгебр. Теоретико-унификационные методы дают возможность получить формализм, достаточно простой и в то же время пригодный для результативного анали-
- 4-за многих проблем, решаемых в настоящее время различными по своим конструктивным особенностям средствами формализации.
Таким образом, разработка достаточно простых, но эффективных методов формального анализа современных инструментальных программных систем является весьма актуальной.
Объект исследований
Объектом исследований является алгоритмическая алгебраическая система для формального анализа инструментальных программных средств, используемая с целью оптимизации, верификации, структурирования и элементов автоматизированного проектирования сложных программ.
Цель и задачи работы
Разработка методологической основы и удобного математического формализма, позволяющего исследовать сложные инструментальные программные системы для достижения их концептуальной целостности, надежности и эффективности. При реализации этой цели в диссертации должны быть решены следующие задачи.
-
Разработка основных принципов построения максимально унифицированного и простого математического аппарата с хорошими описательными возможностями и пригодного для анализа программного инструментария.
-
Разработка методов проектирования, исследования корректности и тестирования концептуально целостных сложных автоматизированных инструментальных систем в рамках построенного формализма.
-
Проектирование способов эквивалентной трансформации программ с целью их оптимизации и структурирования для сокращения трудоемкости дальнейшей доработки.
-
Разработка способов автоматизации анализа корректности программных систем на основе теории унификации.
-
Применение разработанных средств для исследования и структуризации объектно-ориентированных и интеллектуальных инструментальных классов программ.
Методы исследования
При проектировании методов исследования программного инструментария использован следующий математический аппарат: универсальные алгебры, теория формальных грамматик и языков, теория графов. теория унификации, теория множеств, теория моделей и формальных систем. Для анализа конкретных классов программного инструментария привлечены основные понятия и методы объектно-ориентированного проектирования и искусственного интеллекта.
Научная новизна
Проведенный в работе комплекс исследований позволил создать математический формализм, основанный на универсальных алгоритмических алгебрах и теории унификации, пригодный для анализа сложных инструментальных программных систем с целью их верификации, опти-
- 5-мизации и автоматизированного проектирования. В частности, в диссертации получены следующие новые результаты.
-
Определено понятие формальной программной машины, для которого обоснована эффективность его использования для описания и исследования сложных инструментальных и прикладных программных систем.
-
Сформулировано понятие концептуальной целостности программного инструментария и предложен конструктивный подход к оценке целостности различных языковых инструментальных средств на основе рассмотрения системы интерпретации языковых конструкций.
-
Доказана эффективность использования теории унификации для проектирования новых методов анализа сложных программ и спроектирован алгоритм частичной унификации термов алгоритмической алгебры, превосходящий существующие алгоритмы по показателю временной сложности.
-
Произведена аксиоматизация правил эквивалентной трансформации алгоритмов, доказана ее эффективность в сравнении с существующими алгоритмами оптимизации программ. Определены регулярные структуры программ, обладающие улучшенными характеристиками для исследования корректности и внесения изменений в программу.
-
Разработаны теоретико-множественные средства спецификации большого класса программных систем, использующих сложные типы данных. Показаны выразительные возможности этих средств для аннотирования программ.
-
Конструктивно описано новое понятие сложности программы, основанное на числе возможных трасс ее выполнения. Показано его преимущество в сравнении с аналогичными ранее существовавшими понятиями.
-
На основе свойств гомогенности, полноты, инвариантности и минимальности структур логических моделей предложен подход к структуризации и унификации сложных объектно-орйентировакных, а также интеллектуальных программных систем.
Практическая ценность,' '' '"' ;/ "."
Научные результаты, полученные в диссертационной работе позволяют научно обоснованно решать такие практические задачи, как:
создание концептуально целостных инструментальных языковых средств с повышенными характеристиками надежности,
разработка наукоемких средств автоматизации проектирования программ со встроенными подсистемами исследования корректности,
разработка регулярных (структурных) объектно-ориентированных и интеллектуальных программных систем, допускающих малотрудоемкое внесение изменений.
Достоверность научных положений, выводы и рекомендаций, содержащихся в диссертации подтверждена:
согласованностью конечных результатов теоретических исследований с результатами, полученными в инженерной практике,
корректным обоснованием и строгим сравнительным анализом алгоритмической части положений диссертационной работы,
внедрением результатов исследований в реальные сложные автоматизированные программные системы, а также реальным внедрением методологических результатов.
Реализация и внедрение результатов
Результаты диссертационной работы были использованы при разработке автоматизированной информационной системы для исследования рынка интеллектуальной собственности - СИРИС , созданной в рамках научно-технической программы "Интеллектуальная собственность высшей школы" в Научно-информационном центре проблем интеллектуальной собственности при Министерстве общего и профессионального образования Российской Федерации (НИЦПрИС), при разработке системы ведения нормативной документации с возможностью удаленного доступа <'NormaD-2- в рамках Республиканской научно-технической программы "Информатизация России" в Международной ассоциации информатизации непроизводственной сферы и территориального управления (МАИСТ), при проектировании и реализации автоматизированной системы оперативного управления информационной деятельностью предприятия -<АСОУ ИД (РОСИНФОРМРЕСУРС). В перечисленных автоматизированных программных системах были использованы методологические результаты диссертации в части структурного (регулярного) проектирования и исследования корректности систем.
Кроме того, результаты диссертационной работы, опубликованные в научных монографиях, учебных пособиях и статьях, внедрены в учебный процесс в Рязанской Государственной радиотехнической академии.
Практическое использование результатов диссертационной работы подтверждено соответствующими документами о внедрении.
Апробация работы
Основные положения и результаты работы докладывались и обсуждались на следующих совещаниях, семинарах и конференциях:
"Проблемы искусственного интеллекта и распознавания образов", научная конференция с участием ученых из социалистических стран (Киев, 1984г.),
"Технология разработки экспертных систем", Всесоюзная школа-семинар (Кишинев, 1987 г.),
- "Искусственный интеллект-87", Международная конференция
(Suwalky, Польша, 1987г.),
- "Межотраслевая научно-практическая конференция программистов
и пользователей ПЭВМ по проблеме защиты информации". (Рязань,
1990),
- "Искусственный интеллект-90", II Всесоюзная конференция (Минск,
1990),
- "/// Всесоюзная конференция по искусственному интеллекту",
(Тверь, 1992г.),
"Международная конференция по информатике", (Рязань, 1993г.),
"Проблемы математики и информатики", Международная конференция, (Гомель, 1994г.),
"КИИ-94", IV Национальная конференция с международным участием, (Рыбинск, 1994г.),
"Научно-технические достижения и интеллектуальная собственность высшей школы". Выставка научно-технических достижений. (Москва, 1994г.),
"Телематика '95", Всероссийская научно-методическая конференция. (Санкт-Петербург. 1995г.), -і ''
"International Conference of Engeneering Education ICEE'95", (Москва, 1995г.),
"Технологии и системы сбора, обработки и представления информации", международная научно-техническая конференция (Москва. 1995г.),
"INFOBASE'95", Международная выставка-ярмарка. (Германия, Франкфурт-на-Майне. 1995г.),
"Современные информационные технологии в образовании", Всероссийская научно-практическая конференция, (Москва, 1996г.).
Публикации
По теме диссертации опубликовано 52 научные работы, в том числе 2 монографии и 2 учебных пособия, получено 6 свидетельств об официальной регистрации программ для ЭВМ.
Структура и объем диссертации
Диссертация состоит из введения, пяти глав, основных результатов, списка литературы и приложений.
Общий объем основного текста включает 285 стр., 23 рисунка, 7 таблиц. Список литературы содержит 210 работ.