Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Оценка затрат на разработку программных средств

..pdf
Скачиваний:
8
Добавлен:
12.11.2023
Размер:
11.13 Mб
Скачать

В.В. Липаев А.И. Потапов

ОЦЕНКА ЗАТРАТ НА РАЗРАБОТКУ ПРОГРАММНЫХ СРЕДСТВ

МОСКВА "ФИНАНСЫ И СТАТИСТИКА"

1988

ББК 32.973-01 Л61

УДК 681.3-092

„пук В. П. Тихомиров

Рецензент д*р *коН-

 

Л ипаев В.

В., П отапов л.

и.

 

 

 

Л61

Оценка

затрат

на

разработку

программных

 

средств. — М.:

Финансы и

статистика,

1988.—

 

224 с.: ид.

 

 

 

 

 

 

 

 

ISBN

5 - 2 7 9 - 0 0 1 0 9 - 0

 

 

 

 

 

Рассматриваются

вопросы организации проектирования

комплек­

 

сов программ. Основное внимание уделяется методике расчета эффек­

 

тивности ра «работки и сопровождения комплексов программ, а также

 

прогнозированию затрат на разработку комплексов программ и зави­

 

симости от их сложности и характера решаемых задач. Материал кни­

 

ги излагается на примерах конкретных систем.

комплексов прог­

 

Для

ра «работников и

руководителей

разработок

 

рамм различного назначения, может быть полезна преподавателям и

 

студентам вузов соответствующих

специальностей.

 

 

„ 2405000000—024

1 5 -88

 

 

 

 

 

ББК 32.973-01

Л ----------------------

 

 

 

 

 

010(01)—88

 

 

 

 

 

 

 

 

ISBN 5 -2 7 9 -0 0 1 0 9 -0

© Издательство ♦Финансы и статистика», 1988

ПРЕДИСЛОВИЕ

 

 

 

 

Научно-технический прогресс

в народном хозяйстве

в

значи­

тельной степени определяется развитием вычислительной

техники

и ее программного

обеспечения.

Качественное изменение

роли

программ для ЭВМ

отразилось

в том, что часть из них получила

статут программных средств (ПС) и квалифицируется как продук­ ция производственно-технического назначения. Как и для любых

промышленных

изделий,

для

программных

средств

большое зна­

чение

имеет технология

их

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

и эксплуа­

тации.

Переход

к созданию

программных

средств

 

промышлен­

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

лительной техники в общей экономике народного хозяйства. Развитие этой области экономики связано с большими трудно­

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

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

3

ние технологические этапы в процессе создания компонент ПС, этапы имеют размытые границы начала и завершения и т. д. Спе­ циалисты в коллективе могут на некотором интервале времени ре­ шать несколько производственных задач и заменять друг друга. Положение усугубляется трудностью поэтапного определения ка­ чества изделия и его прогнозирования в процессе разработки, что непосредственно отражается на технико-экономических показате­ лях (ТЭП) в целом. Следствием этого являются большие ошибки при планировании сроков, трудоемкости и стоимости создания ПС. Эта стихийность при создании крупных комплексов программ (КП) в большинстве случаев приводит к значительному запазды­ ванию разработок и превышению предполагавшихся затрат. Ти­ пичны ситуации, когда сроки внедрения систем управления и об­ работки информации полностью зависят от готовности программ для них [6, 52].

Перечисленные обстоятельства обострили проблему экономики ПС и не позволяют решить ее в короткие сроки. Необходимы ис­ следования на разных уровнях детализации, начиная от экономи­ ки и планирования создания ПС в масштабе страны и кончая эко­ номикой выполнения частных операций отдельными специалиста­ ми при разработке или производстве конкретных ПС [50]. Одна из важнейших задач состоит в том, чтобы увязать четкими эконо­ мическими категориями взаимодействие разных специалистов и организаций в типовой народнохозяйственной цепи: заказчик разработчик изготовитель потребитель. Для этого объект по­

требления — программное средство и все процессы взаимодейст­ вия в цепи должны быть связаны системой экономических и тех­

нических

характеристик, в той или иной

степени

использующих

основной

экономический

показатель —

реальные

трудозатраты

на конечный продукт. Для

решения этой задачи необходимо де­

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

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

Авторы настоящей книги ограничиваются технико-экономиче­

4

ским анализом только процесса разработки программ. Тем самым

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

В книге внимание сосредоточено на концептуальной основе распределения затрат труда в пррцессе разработки программ, на

факторах, определяющих реальные трудозатраты, и на исследова­ нии характеристик трудозатрат в реализованных современных раз­

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

Интерес к экономике программных средств отражается в быст­ ром росте числа публикаций, посвященных различным аспектам этой проблемы. В большинстве случаев это статьи с результатами частных оценок экономических показателей при конкретных раз­ работках ПС. В результате накоплен определенный объем полез­ ных статистических данных о разных классах ПС. Наиболее пол­ ные исследования и экономические характеристики реализованных проектов отражены в книге Б. Боэма [6], переведенной на рус­ ский язык. Там же имеется весьма полный обзор литературы, опу­ бликованной до 1980 г., поэтому далее ссылки на зарубежные пуб­ ликации относятся в основном к последним годам. Конечно, в од­ ной книге невозможно было охватить все аспекты данной пробле­ мы и некоторые из них изложены субъективно. Материалы книги относятся к 70-м годам и несколько устарели, некоторые выводы излишне категоричны. Однако монография [6] пока является уни­ кальной по объему и глубине проведенных исследований.

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

5

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

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

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

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

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

стии коллег. Цикл базируется на оригинальных

исследованиях и

опыте,

полученном в процессе создания и применения

техно­

логии

[30, 31] автоматизированной разработки

сложных

комп­

лексов программ реального времени. Общие проблемы технологии разработки таких программ, конкретные методы и средства авто­ матизации процесса их создания отражены в двух взаимодо­ полняющих книгах [20, 48]. Методы эффективного использования ресурсов производительности и памяти реализующих ЭВМ при функционировании программ в реальном масштабе времени из­ ложены в [21]. Проблемы формализации показателей, а также ме­ тоды измерения качества программных средств и надежности их исполнения в реальном времени анализируются в [22, 23]. Особое внимание в цикле уделено методам достижения высокого качества сложных программ путем систематического тестирования [24]. Таким образом, в совокупности книги охватывают важнейшие проблемы, методы и средства разработки ПС преимущественно для систем реального времени. Они могут служить справочным и учебным пособием для специалистов и студентов, связанных с ин­ дустриализацией и промышленной разработкой программ для ЭВМ.

Предисловие, главы 1, 2 и 4 написаны проф. В. В. Липаевым, который также осуществил общее редактирование книги. Глава 3 подготовлена канд. техн. наук А. И. Потаповым. Авторы призна­ тельны коллегам Л. А. Серебровскому, А. А. Штрику, Б. А. Познну, О. П. Власкиной, М. А. Имаевой, В. В. Новицкому, Э. А. Глад­ ковой, оказавшим помощь при подготовке монографии.

6

Г л а в а 1

ПРИНЦИПЫ ТЕХНИКО-ЭКОНОМИЧЕСКОГО АНАЛИЗА РАЗРАБОТКИ ПРОГРАММНЫХ СРЕДСТВ

1.1. РАЗРАБОТКА ПРОГРАММНЫХ СРЕДСТВ КАК ОБЪЕКТ ТЕХНИКО-ЭКОНОМИЧЕСКОГО АНАЛИЗА

Роль программных средств

в экономике народного хозяйства.

В ряде областей народного

хозяйства и прежде всего в развитии

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

Базой коренной реконструкции и интенсификации производства, а также основными средствами автоматизации в ряде отраслей является вычислительная техника. Благодаря массовому произ­ водству и значительному снижению стоимости ЭВМ стало возмож­ ным их широкое и активное применение для непосредственного управления объектами и технологическими процессами, для авто­ матизации инженерного труда, научного эксперимента, процессов проектирования и организационного управления. Функциональные возможности таких систем в значительной степени определяются их интеллектуальной основой, содержащейся в программах. Со­ вершенно очевидно, что ЭВМ без программных средств — это «пустые мозги». Интеллектуальные и производственные возмож­ ности этих «мозгов» зависят от сложности, объема н качества программных средств. Расширение объема и областей примене­ ния ЭВМ, а также их функциональных характеристик должно со­

7

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

В 12-й пятилетке в стране намечен значительный рост затрат на вычислительную технику и к 1990 г. объем производства средств вычислительной техники должен возрасти в 2—2,3 раза *. Значи­ тельно увеличится производство персональных и встраиваемых уп­ равляющих ЭВМ. В создании и производстве программ участвуют сотни тысяч специалистов и их количество непрерывно увеличива­ ется. Затраты на создание и внедрение программ превышают миллиард рублей в год и быстро возрастают. Отечественный и за­ рубежный опыт обобщения оценок конкретных разработок под­ тверждает, что интегральные ежегодные затраты на аппаратуру ЭВМ и программные средства соизмеримы [52, 98]. Отсюда ста­ новится очевидной необходимость развития экономики програм­ мных средств как важнейшего раздела экономики всей вычисли­

тельной техники.

Одной из задач экономической науки является разработка

методов повышения эффективности

общественного производства.

В них входят методы планирования,

стимулирования и управле­

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

Каждая отрасль производства отличается характером техно­ логического процесса, условиями труда и результатами деятель­ ности [42]. Экономическое, своеобразие отраслей и роль в народ­ ном хозяйстве определяют их темпы развития, внутреннюю струк­ туру, рациональные объемы производства, характер межотрасле­ вых связей. Материально-техническая база и особенности произ­ водства в отраслях непосредственно влияют на структуру их основных и оборотных фондов, на соотношения трудоемкостей разработки, изготовления и эксплуатации изделий, а также на ос­ новные экономические характеристики их жизненного цикла [56]. Особенности применяемых средств труда и технологии их исполь­ зования определяют своеобразие профессионального состава и не­ обходимой квалификации работающих, организацию труда и усло­ вия работы в данной отрасли.

Жизненный цикл программных средств почти не исследован

* См.: Материалы XXVII съезда Коммунистической партии Советского Сою­ за. — М.: Политиздат, 1986. — С. 281.

8

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

различных факторов на их экономические показатели. Подобные

исследования должны служить базой для теоретических

обобще­

ний при создании экономической науки этой

новейшей

области

народного хозяйства. Разработка экономики

жизненного цикла

ПС позволит планировать, прогнозировать и экономно

распреде­

лять ресурсы при разработке, производстве

и эксплуатации ПС.

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

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

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

В конце 70-х годов положение с разработкой программ для ЭВМ характеризовалось за рубежом как «кризис в области про­ граммного обеспечения» [70], который в значительной степени со­ храняется до настоящего времени. Суть кризиса заключается в

отставании технологии разработки программ [50, 52, 47, 92] от

технологии разработки и производства аппаратуры ЭВМ, что от­ рицательно сказывается на объеме производства и качестве про­ граммных средств. По оценкам американских специалистов, сред­ негодовой прирост производства ЭВМ в США в 80-е годы состав­ ляет 23—24% и практически удовлетворяет спрос, в то время как производство программ имеет ежегодный прирост только 12— 14% (а по некоторым оценкам вдвое меньше), что значительно отста­ ет от потребностей [б]. Годовой рост спроса на ПС достигает 24% и с учетом роста производительности труда требует ежегод­ ного увеличения на 12% персонала, занятого разработкой и со­ провождением программ. Однако реальное количество специали­ стов в этой области увеличивается в США только на 3—4% (по другим данным — на 7%), что сохраняет и даже обостряет де­ фицит ПС [6, 67]. Тем не менее даже эти цифры характеризуют высокую динамичность развития вычислительной техники и про­

9

изводства программ среди других отраслей промышленности за

рубежом.

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

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

внизком качестве планирования процесса разработки отдель­ ных компонент и всего ПС для заданных целей;

вплохом управлении коллективами специалистов, ведущих раз­

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

вотсутствии персональной ответственности за разработку от­ дельных компонент и всего КП на всех этапах проектирования;

внизком уровне автоматизации технологического процесса разработки программ и в больших простоях специалистов в ожи­ дании результатов вследствие недостаточной их программной и аппаратурной оснащенности (см. § 2.1);

вотсутствии четких критериев достижения успеха и заверше­ ния этапов разработки с оценкой количества и качества программ­ ного продукта и проделанной работы;

внеравномерности всего процесса разработки: неторопливости на начальных этапах и попытках резкого форсирования при за­ вершении работ.

Перечисленные недостатки определяют высокую энтропию про­ цесса разработки ПС. Некоторые специалисты утверждают f92] г

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

10

Соседние файлы в папке книги