Научная статья на тему 'АЛГОРИТМИЗАЦИЯ ЭТАПОВ СОЗДАНИЯ ОТКАЗОУСТОЙЧИВЫХСИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ'

АЛГОРИТМИЗАЦИЯ ЭТАПОВ СОЗДАНИЯ ОТКАЗОУСТОЙЧИВЫХСИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
42
5
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЦИФРОВАЯ ЭКОНОМИКА / НАДЕЖНОСТЬ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ / ДИАГНОСТИКА / БЕЗОТКАЗНОСТЬ / ВОЗМУЩАЮЩЕЕ ВОЗДЕЙСТВИЕ СРЕДЫ / ВОССТАНОВЛЕНИЕ НОРМАЛЬНОГО СОСТОЯНИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Абидов А. А.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ALGORITHMIZATION OF THE STAGES OF CREATING FAIL-RESISTANT REAL-TIME SYSTEMS

The development of the digital economy is inextricably linked with the growing influence of informatization in all areas of the queuing system, computer networks, governments and many social spheres and sectors of the economy. In the modern world, the intensity of the development of computer systems depends on the reliable operation of the software of information systems of various levels. In this article, the author proposes an approach for creating software tools for functioning under disturbing environmental influences for periodic diagnostics and analysis of the normal state of a controlled product. In addition, the article shows the transformation of information technology towards the creation of trouble-free information security systems.

Текст научной работы на тему «АЛГОРИТМИЗАЦИЯ ЭТАПОВ СОЗДАНИЯ ОТКАЗОУСТОЙЧИВЫХСИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ»

Абидов А.А., к.т.н.

доцент

кафедра «Информационные технологии в цифровой экономике» Ташкентский государственный экономический университет

АЛГОРИТМИЗАЦИЯ ЭТАПОВ СОЗДАНИЯ ОТКАЗОУСТОЙЧИВЫХСИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ

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

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

Abidov A.A., Ph.D. associate professor

Department "Information technologies in the digital economy" Tashkent

State University of Economics

ALGORITHMIZATION OF THE STAGES OF CREATING FAIL-RESISTANT REAL-TIME SYSTEMS

Abstract: The development of the digital economy is inextricably linked with the growing influence of informatization in all areas of the queuing system, computer networks, governments and many social spheres and sectors of the economy. In the modern world, the intensity of the development of computer systems depends on the reliable operation of the software of information systems of various levels. In this article, the author proposes an approach for creating software tools for functioning under disturbing environmental influences for periodic diagnostics and analysis of the normal state of a controlled product. In addition, the article shows the transformation of information technology towards the creation of trouble-free information security systems.

Key words: Digital economy, software reliability, diagnostics, non-failure operation, environmental disturbance, normal state restoration.

Введение

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

Анализ литературы по теме

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

Создателями самых известных процессов являются крупные компании — производители ПО. Например: MSF (Microsoft Solution Framework [1]) от компании Microsoft или RUP (Rational Unified Process) от компании Rational Software Corp. Но та же Microsoft использует для разработки собственных продуктов смесь MSF и Agile methodology, признавая, что полностью описанный, унифицированный фреймворк MSF несколько далек от практики. Многие успешные компании -разработчики программного обеспечения используют в качестве процесса производства компиляцию общепризнанных подходов и методик.

Полный цикл разработки программного продукта состоит из следующих основных стадий: анализ требований; разработка архитектуры; разработка продукта; тестирование; установка клиенту; поддержка.

Считается, что планированием должны заниматься менеджеры или руководители команд. На самом деле, в нем участвует каждый работник внутри проектной команды [2]. На этапе написания спецификаций весь проект разбивается на подзадачи. Часто промежуток времени между окончанием работы первого программиста и началом работы тестера достаточно большой. Это не позволяет разработчику исправлять свои ошибки по «горячим следам», пока не забыты все особенности кода [3]. Юнит-тесты — это программные модули, которые тестируют внешние методы и свойства данного класса.

Хранилище исходного кода позволяет хранить все исходные коды проекта в одном месте, вести лог всех изменений с указанием номера версии, даты, имени программиста и описания изменений. Программ, которые реализуют функции хранилища, много. Возможно, самая популярная из бесплатных программ — SVN [4].

Более подробно о работе с SVN можно прочитать в материал http://tortoisesvn.tigris.org/ «Управление версиями в Subversion» [5].

Хранилище задач позволяет вести учет всех изменений системы, распределять те или иные задачи между релизами, служит единым местом постановки задач всем членам проектной команды. Примерами подобных систем являются FogBugz [6] и Jiro [7].

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

Джоэль Спольски [8], основатель и владелец компании Fog Creek Software, один из создателей Excel в компании Microsoft, придумал тест «The Joel Test: 12 Steps to Better Code» [9].

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

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

Методология исследования

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

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

В ходе написания данной статьи использованы методы логического, сравнительного, экономико-математического анализа.

Анализ и результаты

Информационные системы и технологии в современном мире -главный инструмент развития нового технологического уклада.

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

Как было отмечено выше, важную роль в эффективном функционировании современных информационных систем играет программное обеспечение.

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

В современный период в Республике Узбекистан все отраслевые данные накапливаются в статистических органах. И организация работы этой сферы требуют отчеты всех предприятий республике периодически, и этот период программное обеспечение функционировает по правилу 24/7, т.е. в онлайн режиме.

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

Пусть задачи связанные с электронным документооборотом в некоторой сфере составляют следующее множество - {М}, которое разделим формально на задачи М1, М2,...

{М}=( М1, М2,...,Мп)(1)

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

(2) и (3).

(0}=( ^ О2,...,Оп) (2)

Где, Gi - множество ограничений для ь задачи.

Точно также выделим множество критериев математическим символом И для п задач формулой (3) и средств обнаружения и локализации ошибок множеством С1 для п задач формулой (4):

(К}=( К1, К2,...,Кп) (3)

Прямые линии - переход к этапам разработки и функционирования системы

Пунктирные линии - учет ограничений, критерий, новых условий и требований

Рис. 1. Функциональная схема этапов создания отказоустойчивих

систем реального времени

{С}=( а ^,...,00(4)

Далее, введем следующие обозначения:

- комплекс технических средств - VI,

- каналы связи и инструменты -

- технология сетей - Т1,

- системы управления базами данных - Ы.

Элементы этих комплексов, множеств можно представить следующими формулами (5), (6), (7), (8) т=( VI, V2,...,Vn)(5) {Б}=( Б2,..., Бп)(6) {Т}=( Т1, Т2,..., Тп) (7) {В}=( В1, В2,..., Вп)(8)

Для решения конкретной алгоритмической задачи будут затребованы следующие этапы:

- предпроектные и организационные работы(Ьр1),

- проектирование контроля и диагностики^^),

- алгоритмизация этапов создания ПО ( А^),

- алгоритмизация отказоустойчивости ( А^),

- разработка проекта и производства

- разработка процедур обеспечения надежности

- эксплуатация проекта (Е^,

- сдача законченной работы заказчику^),

- сопровождение проекта на уровне программной разработки(Ш),

- изменение программы для модернизации^^.

Эти комплексы работ формально будут представлены следуюшим образом:

{Ц}=( и..., Ц) (9) {А}=( А1, А2,..., АП) (10) {R}=( Rl, И2,..., ИП)(11) {Е}=( Е1, Е2,..., Еп) (12) {Р}=( Р1, Р2,..., Рп) (13) {Н}=( Н1, Н2,..., Нп)(14) {0}=( 01, 02,..., 00(15)

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

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

Предпроектные и организационные работы связаны с задачейсвязаны с задачей предпроектные работы и проектирование и проектирование контроля и диагностики (Ц^).

Данную взаимосвязь представим в виде формулы (16)

{цмцр, и^б)

Здесь Rp, Rd определяются следующими (17) и (18) формулами: {Ц^Н^ь ир2,..., Црп) (17) {Ы}^, Ц^,..., Ldп)(18)

Задачи разработки алгоритмизация этапов создания ПО ( А^) связан»; с задачей алгоритмизация отказоустойчивости ( А^).

Данную взаимосвязь представим в виде формулы (1 9) {А}=(АР, А1) (19)

Здесь Ар, А1 определяются следующими (20) и (21) формулами: {АР}=(АР1, Ар2,..., Арп) (20) {А1}=(А11, А12,..., А1п) (21)

Задачи разработка проекта и производства (Rpi) связана с задачей разработка процедур обеспечения надежности

Данную взаимосвязь представим в виде формулы (22) Rd) (22)

Здесь Rp, Rd определяются следующими (23) и (24) формулами: ^р}=^р1, Rp2,..., Rpп) (23) Rd2,..., Rdп) (24)

Как известно, на стадии эксплуатации, могут появиться новые требования и условия Их можно представить в виде формулы (25). {8}=(Б1, Б2,..., &0(25)

Тогда, создав множества (О) и{¥}, все процессы-этапы создания программного продукта условно обозначим формулой (25), и множество (О) определить формула (26):

{О}=(М, L,A, ^ Р, Е, 0, Н) (26)

Ограничения, условия, требования, критерии условно обозначим множеством (¥), соответственно формулой (27): {¥}=(С, О, ^ Б)(27)

Кроме того, нам понадобится множество, охватывающее технические средства, указывающее взаимосвязь с компьютерной сетью, каналами связи, языками программирования и базой данных и т.д. Данные взаимосвязи можно выразить следующим множеством: (Э}=(У, F, Т, В)(28)

И наконец, результатом или математическим моделираванием будет определена последовательностью операций над тремя множествами {Y} = {П}Щ¥}ЩЭ} (29)

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

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

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

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

Использованные источники:

[1] Michael S. V. Turner. Microsoft® Solutions Framework Essentials. Microsoft, 2006.

[2] Kent Beck, Martin Fowler. Planning Extreme Programming. Addison-Wesley Professional, 2000.

[3]Kent Beck. Test Driven Development: By Example.Addison-Wesley Professional, 2002.

[4] http://tortoisesvn.tigris.org/

[5] http://svnbook.red-bean.com/

[6] http://www.fogcreek.com/FogBugz/

[7] http ://www.atlassian.com/software/j ira/

[8] http ://www.joelonsoftware. com/AboutMe.html

[9] http://www.joelonsoftware.com/articles/fog0000000043.html

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.