На правах рекламы:
ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Авторитетность издания

ВАК - К1
RSCI, ядро РИНЦ

Добавить в закладки

Следующий номер на сайте

2
Ожидается:
16 Июня 2024

Отечественная программная инженерия: концептуальные основы

Статья опубликована в выпуске журнала № 3 за 1993 год.
Аннотация:
Abstract:
Автор: Штрик А.А. () -
Ключевое слово:
Ключевое слово:
Количество просмотров: 9158
Версия для печати

Размер шрифта:       Шрифт:

Цели и назначение программной инженерии

Термин "программная инженерия" (ПИ) впервые был упомянут на научной конференции НАТО в 1968 г. [1] с целью описать область человеческой деятельности, производящую компьютерные программы, и попытаться объединить усилия "компьютерных ученых" и практиков-программистов. К настоящему времени понятие ПИ концентрирует в своем составе все виды деятельности, имеющие отношение к созданию прикладного проблемно-ориентированного программного обеспечения (ПО), а также все организационные, технические и производственные вопросы его эксплуатации и сопровождения. Основная цель ПИ -упорядочить и систематизировать процессы проектирования, разработки, производства, эксплуатации и сопровождения ПО вплоть до прекращения его использования, исходя при этом из содержания этапов его жизненного цикла, области применения, условий использования и решаемых им задач. Для обеспечения эффективной и высокопроизводительной деятельности по созданию и использованию программного обеспечения ПИ должно опираться как на результаты фундаментальных исследований, так и на организационно-производственную инфраструктуру. Она должна включать определенные концепции, методы, средства, инструментальные системы и прочие необходимые компоненты, применение которых направлено на поддержку всех действий, связанных с ПО, начиная от разработки его проекта до конечной цели, и которые гарантированно обеспечивают эти действия с учетом требований и ограничений по используемым ресурсам [2, 3, 4].

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

•       определение стимулов и предпосылок фор мирования ПИ как самостоятельной научно-ин женерной дисциплины информатики;

•       анализ и обобщение некоторых современных представлений, методов и средств проектиро вания, производства и обслуживания ПО;

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

•       прогнозирование возможных перспектив и вероятных направлений дальнейшего развития отечественной ПИ.

Программная инженерия и информационные технологии

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

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

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

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

•       достаточно известное и изготавливаемое в определенных количествах изделие, используе-

мое, однако, узким кругом организации;

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

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

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

Предпосылки и цели выделения ПИ в самостоятельную дисциплину

Наряду с решением принципиальных научно-технических задач, рассмотренных в [12-14], к числу необходимых условий перехода программотехники на следующую стадию эволюции следует отнести формирование ПИ как самостоятельной научно-инженерной дисциплины. Это утверждение базируется на том ключевом положении, которое отводится этой сфере деятельности в области ПО. Являясь фундаментом, на котором реализуется любой программный продукт, ПИ по своей значимости занимает такое же положение, как технологические дисциплины и поддерживающие их САПР в машиностроении и радиоэлектронике.

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

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

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

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

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

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

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

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

4.       Развитие программной инженерии - это объективно существующий процесс, который проходит через накопление "россыпи" техноло гических инструментов, создание "критической массы", формирование центра "кристаллиза ции" и достижение определенной стабильности в своей эволюции. В США начальным перио дом является развертывание работ по CASE в 1984 г., а формирование центра кристаллизации следует отнести к 1989 г.; при этом идеологи ческим стержнем кристаллизации можно счи тать систему AD/Cycle [15].

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

Содержание и основы современной ПИ

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

Условия самостоятельности. Не останавливаясь на общепринятых и бесспорно выполняемых условиях (таких, как наличие собственной предметной области, существование методологической и производственной базы и других традиционных), ниже перечислены моменты, связанные со спецификой этой сферы деятельности и ее текущим состоянием. Одно из первых условий - это обязательное и регламентированное использование объективных измерений [16], рассматриваемых как неотъемлемая часть процесса разработки и сопровождения ПО и применяемых для эффективного управления этими процессами. Другим фактором является необходимость использования аппарата и механизма гарантии качества создаваемых программных продуктов; к числу таких средств относятся процедуры аттестации и сертификации ПО [17]. Заметим, что в основе этих процедур также лежат измерения, в данном случае - показателей качества. К числу важнейших условий самостоятельности ПИ как инженерной дисциплины относится активное внимание к вопросам стандартизации, разработка и внедрение в практику совокупности реально действующих стандартов. Еще одним условием является необходимость существования единой и общедоступной всем категориям программистов платформы, позволяющей согласовывать, унифицировать или координировать взаимодействие всего того множества компонентов и элементов, составляющих сегодняшнюю про-

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

Системообразующие элементы. К основным системообразующим элементам ПИ, определяющим ее в качестве самостоятельной дисциплины, должны быть отнесены три следующих элемента: объект деятельности ПИ; аппарат и методы деятельности; платформа деятельности [14].

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

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

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

Методологические основы. К числу методологических основ ПИ относятся используемые методологии, применяемые аналогии из других сфер деятельности и модели жизненного цикла ПО.

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

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

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

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

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

Жизненный цикл (ЖЦ ПО) относится к третьей составляющей методологических основ ПК и является тем фундаментом, на котором организуется весь процесс создания программ. По существу ЖЦ ПО является адекватной моделью всей упорядоченной совокупности объективно необходимых и существующих действий, операций и процессов, которая приводит к материализации первоначальной абстрактной идеи в конкретном программном продукте. Иными словами понятие модель ЖЦ ПО определяет и фиксирует состав процедур, устанавливает их взаимосвязи, определяет критерии, условия и прочие факторы и объединяет все это в одну систему. Наличие такой единой системы позволяет сформулировать требования и основные положения технологического процесса разработки ПО и соответствующего инструментального окружения.

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

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

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

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

Направления и перспективы развития программной инженерии

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

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

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

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

Направления развития ПИ. Наиболее вероятно, что дальнейшее развитие ПИ пойдет в даух различных направлениях, в первую очередь определяемых аппаратной платформой прикладной области. В области персональных компьютеров — это массовая разработка разнообразных инструментальных программных средств, охватывающих относительно ограниченную совокупность технологических функций, сводящихся в основном к наборам утилит, системных программ или штатных средств ОС. Эти инструменты, как правило, разрабатываются в собственных интересах, в результате чего будут слабо приспособлены к интеграции и мало унифицированы друг с другом. Они будут охватывать ПО из так называемых некритических областей, которое и составляет основную часть ПО на этой платформе. Примером типового современного инструментального средства для программиста на персональных компьютерах является созданный фирмой Borland пакет системных программ ТУРБО-СИ [24]. Он включает отладчик, ассемблер и программу для определения времени выполнения участков программ. Никаких дополнительных программ для программирования не требуется, так как ассемблер может быть объединен с компилятором языка СИ+ +. Отладчик позволяет создать несколько окон на экране, а также вести отладку на удаленном ПК, связанном с основным ПК линией связи.

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

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

Научно-технические перспективы ПИ. В перспективе развития ПИ в качестве наиболее вероятных можно выделить несколько основных направлений. Повторная разработка ПО [25], в основе которой лежит принцип итерационного подхода к получению готового программного продукта путем многократного использования или модернизации исходного решения, проекта, программы, группы программ и т.д. в рамках спиральной модели ЖЦ ПО. Объектно-ориентированное программирование [26], направленное, как и повторная разработка, на повышение эффективности разработки и экономических показателей ПО. Метапрограм-мирование, предполагающее, что программирование производится на высоком уровне абстракции с использованием спецификаций [27]; для получения же традиционного исходного кода (который может быть преобразован в машинный код существующими средствами) необходима разработка специального транслятора. Искусственный интеллект для создания ПО, включающий три области исследования [28]: автоматическое программирование, где основная задача состоит в формализации модели и техники построения процесса программирования; построение средств управления жизненным циклом функционирования проектируемой системы, учитывающих все требования, аспекты, факторы и т.д., возникающие в процессе создания ПО; системы управления пользовательским интерфейсом со встроенным интеллектом для быстрого макетирования средств отображения пользовательского интерфейса, поскольку именно интерфейс становится определяющим фактором эффективности создаваемых систем.

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

1,   Software methodology in Ihe harst Light of economics. K.C. Kang, L.S. Levy, - Information and Software Technology, V.31, N5, June 1989 pp. 239-250.

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

3.      Штрик А.А. Состояние н проблемы технологии созда ния ПО в СССР. // Вестник ВОИВТ. - 1991. - Вып. 2. - С. 12-23.

4.      Штрик А.А., Осовецкий Л.Г. Индустрия программо- строення в СССР: условия существо нання и перспективы дальнейшей эволюции. // Вестник ВОИВТ. - 1991. - Вып. 5-6.

5.      S.E. Goodman. The information technologies and Soviet Society: problems and prospects. - IEEE Trans, on Systems, Man, and Cybernetics, vol. SMC-17, No4, Jul/Aug. 1987.

6.      Штрик А.А. Технологии и инструментальные средства создания ПО: состояние н перспективы. // Программные продукты и системы. - 1991. - Вып. 2. - С. 49-54.

7.      D. Tsichritzis, S. Gibbs. Ггот Custom-made to Pret-a- Porter Software. - Программирование, 6, 1990, С. 4-15.

8.      Le logical, une nouvelle industrial. - Rev. politechn. - 1991, No4, Suppl, pp. 363-364.

9.      Липасв В.В., Поэин Б.А., Штрнк А.А., Кокорев СВ. Концепции построения и развития индустриальных техно логий разработки программных средств. // Программиро вание. - 1989. - N4. - С. 76-90.

10.       Позин Б.А., Штрик А.А. Выбор инструментальных средств автоматизации разработки ПО встроенных ЭВМ. // Программные продукты и системы. - 1989. - N3. - С. 20-30.

11.       Штрик А.А. Анализ характеристик и тенденции разни- тня отечественных средств автоматизации разработки программ. - Сб. Технология программирования 90-х. // Материалы международной конференции-яр марки. Киев. - 1991. С. 93-95.

12.       Штрик А.А. Эффективность и .опыт применения совре менных CASE-систем автоматизированной разработки ПО за рубежом. // Информатика и вычислительная техника за рубежом. - 1991. - Вып. 3. - С. 43-58.

13.       Штрнк А.А. Методологические основы и направления реализации современных зарубежных CASE-систем авто матизированной разработки программы. // Информатика н вычислительная техника за рубежом. - 1992. - Вып. 2.

14.       Штрик Л.А. Проблема качества программных средств вычислительной техники - ключевая проблема современ ной инженерии. - Третий Всесоюзный семинар "Качество ПО". - М., СНПО Алгоритм. - 1991. - С. 100-105.

15.       V. Merlyn, G. Boone. The Ins and Outs of AD/Cycle. - Datamation, March 1990, pp. 59-64.

16.       Штрик А.А., Осовецкин Л.Г., Мессих И.Г. Структур ное проектирование надежных программ встроенных ЭВМ. - Л.: Машиностроение. Ленннгр. отд-ние, 1989. - 296 с.

17.       Штрик А.А., Осовецкий Л.Г. Фактографическая серти фикация программных средств вычислительной техники. // УСИМ. - 1991. - N 2. С. 27-34.

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

19.       Амвросенко В.В. Двойственный характер процесса программирования. // Всесоюзная научно-техническая кон ференция "Программные средстна как продукция производ ственно-технического назначения". Калинин. - 1985. - С. 114-116.

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

21.       W.M. Ulrich. An executive overview of re-development engineering. — Quality data processing, 1990, v. 4, N 2, pp. 21-26.

22.       Штрик А.А., Осовецкий Л.Г. Технология создания программ и проблема защиты от компьютерных вирусов. // УСИМ. - 1991.- N 6. - С. 48-57.

23.       Boehm B.W. A spiral model of software development and environment. - Computer. - 1988, V, 21, No.5, p. 71-72.

24.       Monadiemi P. Starke tools fur program micrer. - CHIP TOOL. - 1990, No 8, pp. 38-40, 42-43.

25.       Штрик А.А., Мессих И.Г. Общие принципы реализа ции сборочного программирования при создании сложных комплексов программ. - Автоматика и телемеханика. - 1989. -N И.-С. 173-183.

26.       Тыугу Э.Х. Обьектно-ориентировиннос программи рование. // Программирование. - 1990. - N 6, ноябрь- декабрь. С. 16-26.

27.       Орлов С.Г., Штрнк А.А. Спецификации как средство промышленного производства лрограмм. — В кн.; Ал горитмы н алгоритмические языки. — М., Наука, - 1987. - С. 100-108.

28.       Lively V.M. Where Al/KB techniques Tit into software development/engineering. - COMPAC 89, 13th Ann. Int. Comput. Software and Appl. Conference. - Washington, 1989, pp. 777.


Постоянный адрес статьи:
http://swsys.ru/index.php?page=article&id=1198&lang=
Версия для печати
Статья опубликована в выпуске журнала № 3 за 1993 год.

Возможно, Вас заинтересуют следующие статьи схожих тематик: