Научная статья на тему 'Метод оценки трудоёмкости процессов программирования'

Метод оценки трудоёмкости процессов программирования Текст научной статьи по специальности «Компьютерные и информационные науки»

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

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

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

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

Текст научной работы на тему «Метод оценки трудоёмкости процессов программирования»

ПРИКАСПИЙСКИЙ ЖУРНАЛ: управление и высокие технологии № 4 (20) 2012 СИСТЕМНЫЙ АНАЛИЗ, МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ

УДК 623.618 623.4.11

МЕТОД ОЦЕНКИ ТРУДОЁМКОСТИ ПРОЦЕССОВ ПРОГРАММИРОВАНИЯ

Старусев Андрей Викторович, аспирант, филиал Астраханского государственного университета в г. Знаменске, 416540, Российская Федерация, Астраханская область, г. Зна-менск, ул. Островского, 16, e-mail: starusev-av@yandex.ru

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

Ключевые слова: сложность программ, число элементарных операций, время реализации программ, программирование, трудовые затраты при программировании задач, рациональное использование ресурсов

THE METHOD FOR VALUATING PROGRAMMING-BASED LABOUR INPUT PROCESSES

Starusev Audrey V, post-graduate student, Branch of Astrakhan State University in Zna-mensk, 16 Ostrovsky St., Znamensk, Astrakhan region, 416540, Russian Federation, e-mail: starusev-av@yandex.ru

The article relates that experience in creating modeling algorithms is still insufficient to enable their wider application in modular systems. It adds that thus far only the main principles for creating modeling aggregates have been formulated for systems which could be applied to create mathematical models of modeling setting. In the critique's view, the choice of principles for creating mathematical models depends on the resolved tasks expected for the modeling results, the available computing methods and the time allocated for task decision. It would appear that electronic computers use various programming aids to prepare their decision-oriented tasks. Their choice is defined, in particular, by the presence of translators or other means of software, and also by the program's duration, and the cost of developing, debugging and maintaining it. Prior to undertaking programming tasks, the structure of labor expenses needs to be carefully studied and understood. One means of accomplishing this task would be to use rated-justified indexes that estimate the development of labor input for programs in practice. The suggested method would enable the researcher to estimate the complexity of the developed programs' scheduling and programming tasks. However, practical implementation of the proposed method would actually enable the researcher to undertake better programming efforts aimed at resolving the computing-related tasks.

Keywords: complexity of programs, number of elementary operations, time of implementation of programs, programming, labor expenses for programming tasks, rational usage of resources

PRIKASPIYSKIY ZHURNAL: Upravlenie i Vysokie Tekhnologii (CASPIAN JOURNAL: Management and High Technologies), 2012, 4 (20)

SYSTEM ANALYSIS, MATHEMATICAL MODELING_________________________________________________

Процесс подготовки задач к машинному решению обычно подразделяется на следующие этапы [1, 2]:

• анализ проблемы и содержательная постановка задачи;

• алгоритмизация задачи и составление блок-схем программ;

• программирование (кодирование) задачи;

• отладка (автономная и комплексная) программы;

• оформление рабочей (эксплуатационной) документации.

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

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

Очевидно, что затраты труда на разработку программы определяются сложностью последней [3]. Под сложностью программы понимается её длина. В общем случае длиной программы называется числовая характеристика, которая определяет длину записи программы в принятом наборе операторов. В качестве такой характеристики принимаем число машинных команд программы и соответственно объём памяти, занимаемой программой.

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

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

Время реализации Т(Р) программы на ЭВМ (ПЭВМ) определяем через объём вычислений:

T(P) = a0 + flN,t,t (1)

i=1

где Ni - количество операций 7-го типа; /, - время выполнения 7-й операции; К - количество типов операций.

Точная оценка количества операций обычно затруднительна, поэтому всё множество операций разделяем на «короткие» NK и «длинные» Л'Л1 операции. Тогда время реализации программы составит:

Т*(Р) = NkÎk + Nm tm , (2)

где tKi /дЛ - время реализации соответственно «короткой» и «длинной» операции.

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

Т(Р) = КтК0Т*(Р), (3)

где Kj- - коэффициент трансляции; Kq - коэффициент обращения к внешней памяти (Kq — 1, если длина программы укладывается в оперативной памяти, Ко > 1, в противном случае).

ПРИКАСПИЙСКИЙ ЖУРНАЛ: управление и высокие технологии № 4 (20) 2012 СИСТЕМНЫЙ АНАЛИЗ, МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ

Время реализации программы можно оценить в так называемых приведённых (эталонных) операциях [4]:

Т[Р) = (4)

где ДГЭ - число приведённых (эталонных) операций; £3 - длительность выполнения эталонной операции.

За эталонную принимаем короткую операцию, например логическую или сложения Для того чтобы определить общее число эталонных операций, нужно знать (Х[ - отношения длительности 1-й операции <*) к длительности короткой операции { Г )• принятой

за эталонную:

и

<Х-= - .

Т (5)

В расчетах в качестве эталонной удобно оперировать операцией, в которой оценивается паспортное быстродействие ЭВМ (ПЭВМ).

Если известно 0£ ,;. то

к

«Э = У .

1=1 (6)

Если известны среднее число операций для реализации данной программы и типичный состав операций для решаемого класса задач в относительных величинах ^ или в процентах, то общее время выполнения программы равно:

К К

Т(Р) = ИС1ЛР = ЛГср^ А Сг; £ Д. = 1.

¿=1 ¿=1 (7)

Тогда среднее время выполнения одной операции составит:

К

— /* ' А ^ |

¿=1 (8)

а среднее быстродействие ЭВМ (ПЭВМ) для решаемого класса задач будет равно:

1 1

¥{р) = Г = ^

Ер ^1 = 1 Г1П (9)

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

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

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

PRIKASPIYSKIY ZHURNAL: Upravlenie i Vysokie Tekhnologii (CASPIAN JOURNAL: Management and High Technologies), 2012, 4 (20) SYSTEM ANALYSIS, MATHEMATICAL MODELING

Список литературы

1. Гутер P. С. Программирование и вычислительная математика / Р. С. Гутер, П. Т. Резников-ский, С. М. Резник. - Москва : Наука, 1971. - 696 с.

2. Джермейн К. Программирование на ШМ/360 / К. Джермейн. - Москва : Мир, 1973. - 870 с.

3. Карманов В. Г. Математическое программирование / В. Г. Карманов. - Москва : ФИЗМА-ТЛИТ, 2011.-264 с.

4. Моисеев Н. Н. Математические задачи системного анализа / Н. Н. Моисеев. - Москва : Наука, 1981. - 487 с.

References

1. Guter R. S., Reznikovsiy P. Т., Reznik S. M. Programmirovanie i vychislitelnaya matematika [Programming and calculus mathematics]. Moscow, Nauka, 1971. 696 p.

2. Dzhermeyn K. Programmirovanie na IBM/360 [Programming by IВ M/3601. Moscow, Mir, 1973. 870 p.

3. Karmanov V. G. Matematicheskoe programmirovanie [Mathematical programming], Moscow, 2011. 264 p.

4. Moiseev N. N. Matematicheskie zadachi sistemnogo analiza [Mathematical problems of system analysis]. Moscow, Nauka, 1981. 487 p.

УДК 519.863

РАЗРАБОТКА МОДЕЛИ ОПТИМАЛЬНОГО РАЗМЕЩЕНИЯ ОБЪЕКТОВ СЕТИ РОЗНИЧНОЙ ТОРГОВЛИ НА ОСНОВЕ ЗАКОНА ОБРАТНОГО КВАДРАТА

Шикульская Ольга Михайловна, доктор технических наук, Астраханский государственный университет, 414056, Российская Федерация, г. Астрахань, ул. Татищева, 20а, e-mail: shikul@mail.ru

Набережная Алена Владимировна, аспирант, Астраханский государственный университет, 414056, Российская Федерация, г. Астрахань, ул. Татищева, 20а, e-mail: naberezh-naya_av@mail. ru

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

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

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

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

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