Категории
Самые читаемые
onlinekniga.com » Детская литература » Детская образовательная литература » Очерки истории отечественной программной инженерии в 1940-е – 80-е годы - Владимир Липаев

Очерки истории отечественной программной инженерии в 1940-е – 80-е годы - Владимир Липаев

Читать онлайн Очерки истории отечественной программной инженерии в 1940-е – 80-е годы - Владимир Липаев

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 49 50 51 52 53 54 55 56 57 ... 65
Перейти на страницу:

• применение готовых переносимых программных компонентов;

• уменьшение объемов разрабатываемых комплексов программ.

Выявлено, что наиболее эффективным направлением для улучшения ТЭП разработки программных продуктов являлось применение готовых программных компонентов. Анализ проектов показал, что при заимствовании от 30 до 80 % конечного объема продукта, производительность труда возрастала в диапазоне от 1,6–3,0 раза по сравнению со средней на предприятии. Заимствование 50 % готовых программ (по общему размеру) позволило сократить длительность разработки, в среднем, на 25 %, а при заимствовании в 80 % – в два раза.

5.6. Технико-экономический анализ и обоснование разработки комплексов программ – 1985-е годы

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

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

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

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

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

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

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

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

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

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

Достаточно обычными в 1970-е – 80-е годы стали комплексы программ размером 100 и более тыс. строк текста. Возникла проблема декомпозиции комплексов программ на компоненты меньшего размера и сложности, а также упорядоченного структурно-иерархического построения таких программ. Известные методы снижения суммарной сложности систем путем декомпозиции, структурирования, локализации функций и упрощения компонентов нашли дальнейшее развитие при создании современных методов разработки сложных программных продуктов. Такие сложные программы в разумные сроки (1–5 лет) могли быть созданы только организованными коллективами специалистов под единым руководством. Размеры коллективов разработчиков и их структура в значительной степени диктуются структурой, функциональными задачами и характеристиками комплексов программ. Коллективность разработки привела к необходимости строгого планирования и формализации процесса разработки аналогично процессу проектирования других сложных промышленных изделий.

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

1 ... 49 50 51 52 53 54 55 56 57 ... 65
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Очерки истории отечественной программной инженерии в 1940-е – 80-е годы - Владимир Липаев.
Комментарии