Индустрия программостроения в стране: условия существования и перспективы дальнейшей эволюции
Штрик А.А., Осовецкий Л.Г.

Индустрия программостроения в стране: условия существования и перспективы дальнейшей эволюции

______________________________

Штрик А.А., Осовецкий Л.Г.


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

Общая характеристика отрасли создания ПО. В настоящее время в отечественной вычислительной технике, а соответственно и в программировании, появились симптомы кризисной ситуации с одновременным усилением тенденции проникновения Запада на наш компьютерный рынок [1,2]. Обозначается настораживающая на этом фоне перспектива — утрата Советским Союзом собственного "компьютерного лица" ввиду массового распространения зарубежной компьютерной техники, а в последнее время и программного обеспечения, причем не только "пиратского", но и законного. Положительное по сути явление внедрения зарубежных достижений компьютеризации, не будучи отрегулировано на государственном уровне (естественно, с позиции требований и механизмов рыночной экономики), может привести к серьезным негативным последствиям, вплоть до полного упадка и деградации отечественного программостроения.

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

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

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

Вся эта гамма вопросов и проблем подменилась утвердившейся в настоящее время в стране индустриально-промышленной точкой зрения на вопросы создания ПО, в соответствии с которой вся эта деятельность представляется в виде некоторых Типовых технологических процессов, объединяющих, унифицирующих и регламентирующих определенные совокупности работ, операций и т.д. и при этом основное внимание акцентируется на организационных, производственных и технических, но отнюдь не интеллектуальных аспектах. Принятие аналогии программ с промышлен-ными изделиями в свое время принесло пользу тем, что позволило систематизировать методы и средства, провести необходимые классификации, организовать работы и коллективы, послужить флагом для Привлечения ресурсов. Однако главная цель так и не достигнута — делать программы легче не стало. При этом главный недостаток индустриально-промышленной аналогии состоит в том, что, рассматривая программу как обычное промышленное изделие и разрешая копировать технические и технологические основы процессов создания ПО, она вынуждает совершать "натяжки" в организационной, производственной и экономической сферах [3]. Это может означать, что либо недостаточна степень адекватности принятой аналогии, Либо, что аналогия уже исчерпала возможности и требуется дальнейшее развитие всей дисциплины программостроения.

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

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

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

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

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

массовый переход на персональные ЭВМ, где пока еще не возможна реализация большого и сложного ПО и потому хватает штатных систем программирования;

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

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

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

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

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

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

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

формирование основ организационной, научной и производственной инфраструктуры программной инженерии;

понимание и утверждение определяющей роли программного обеспечения в информатике, а всей программотехники в научно-инженерной дисциплине, составляющей основу индустрии ПО;

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

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

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

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

научная самостоятельность и независимость работ в области программной инженерии и малая степень заимствования зарубежных результатов благодаря их закрытости по линии КОКОМ.

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

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

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

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

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

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

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

Аналогия с продукцией интеллектуально-творческой деятельности исходит из того, что в обоих случаях началом является идея или мысль, т.е. нечто нематериальное, выраженное в нематериальных понятиях. Автор книги лишь отображает эти понятия словами, рисунками, формулами, схемами; в программах нематериальное начало выражается операторами языка программирования и другими программными документами. США признали за ПО интеллектуальный статус, и это позволило распространить на программы юридические и правовые нормы, действующие в области искусства и творчества [4]. Их пришлось доработать с учетом природы ПО, указав, что компьютерные программы в той степени, в которой они воплощают оригинальные идеи автора, могут быть защищены авторским правом; при этом однако сразу не были четко оговорены объемы или пределы охраны авторского права, что потребовало их уточнения — сначала закон охранял программы операционных систем, а впоследствии он распространился на защиту авторских прав на исходный и объектный коды программ.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

содержание утвержденных и реализуемых в настоящее время Государственных целевых НТП не обеспечивает проведение единой стратегии и координирующей линии работ в области программной инженерии;

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

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

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

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

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

создание реально действующего мощного и авторитетного общесоюзного Центра для определения стратегии и проведения фундаментальных исследований В области индустрии создания ПО (по типу SEI);

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

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

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

Тенденции развития технологий и средств создания программного обеспечения в пределах компетенции второго и третьего уровней условно могут быть разделены на два направления — тематические и технические. К тематическим направлениям развития технологии создания ПО могут быть отнесены: системный анализ и стратегическое планирование; технико-экономическое прогнозирование и анализ программных проектов; структурное проектирование и автоматическая генерация программ с использованием языков АДА, Си и т.д.; прототипирование, повторная и обратная разработка, повторное использование компонентов проекта различных уровней иерархии; применение экспертных систем и баз знаний для автоматизации проектирования программного обеспечения; стандартизация в области технологии программирования; разработка методологических основ программной инженерии. При этом наиболее вероятными тенденциями развития программной инженерии в стране в рамках тематического направления представляются следующие:

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

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

интеграция в единый комплекс инструментальных средств автоматизации создания программ и средств автоматизированного планирования, прогнозирования и управления программным проектом;

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

развитие графических методов и языков разработки программных проектов и внедрение интерактивных, безбумажных принципов создания ПО;

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

создание интегрированных инструментальных окружений для разработки программ на языке АДА для разных классов ЭВМ;

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

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

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


    ЛИТЕРАТУРА


1. В.К.Мак Генри, С.Э.Гудмен. Управленческие информационные системы на советских промышленных предприятиях: несостоятельность реформы сверху. — УСИМ, в, 1990, стр.118-130.
  1. В.П.Иванников. Редакционная статья. — Программирование, 6, 1990, стр.2-3.

2. А.Н.Попсуев. Особенности программных средств как продукции производственно-технического назначения. — УСИМ, 1986, 3, стр. 18-23

3. Э.Шахтер. Интеллектуальная собственность начинает играть первостепенную роль. — Электроника, 18, 1990, стр.43-45

4. О. Tsichritzis, S. Gibbs. From Custom-made to Pret-a-Porter Software. — Программирование, 6, 1990, стр.4-15.

5. Ф.Я.Дзержинский, Л.Д.Райков. Что такое программная инженерия? — Программирование, 2, 1990, стр.67-79

6. А.А.Цветков. Перспективен ли индустриальный подход к программированию и если да, то что мешает его широкому внедрению? — Актуальные вопросы технологии программирования, Ленинград, 1989, стр.70-77.

7. М.А. Hanna. Defining the "R" words for automated maintenance. — Software magazine. May 1990, pp.41-48.

8. S.Berlinger. Reengineering: leveraging your CASE investment. — American programmer, October 1990, pp. 21-26.

10. Л.Г.Осовецкий. Биоинформационная аналогия интерфейса программных средств ВС
— технология создания программ, 1990, Л.: ЛИИАН, стр.25-38


Статья поступила в редакцию в ноябре 1991 г. РосНИИИТиАП



    &copy Информационное общество, 1991, вып. 5-6, с. 31-40.