Сопровождаемость ПС можно оценивать потребностью трудовых и временных ресурсов для ее обеспечения и для реализации. Возможные затраты ресурсов на развитие и совершенствование качества комплекса программ зависят не только от внутренних свойств программ, но также от запросов и потребностей пользователей на новые функции и от готовности заказчика и разработчика удовлетворить эти потребности (см. лекцию 15).
В современных проектах ПС большую или меньшую долю составляют готовые апробированные компоненты из других подобных разработок — прототипы и/или покупные пакеты прикладных программ. Это позволяет значительно ускорять работы и сокращать затраты на создание сложных комплексов программ. Перед разработчиками проекта ПС зачастую возникает дилемма: разрабатывать ли весь комплекс программ полностью из новых компонентов или использовать, адаптировать и приспосабливать готовые компоненты, какие и в каком количестве. В результате при первичном экономическом анализе ресурсов на создание ПС с требуемыми характеристиками качества целесообразно рассматривать два альтернативных варианта определения затрат на разработку:
полностью нового ПС, для которого отсутствуют или недоступны подходящие готовые компоненты — прототипы и/или их заведомо нерентабельно использовать;
программного продукта на базе комплексирования набора готовых программных компонентов и информации баз данных, для которого почти не требуется создания новых компонентов.
Мобильность и затраты конкретных ресурсов для переноса программ и данных на иные аппаратные и операционные платформы при проектировании могут быть учтены только очень приблизительно. Эти субхарактеристики включают адаптируемость, простоту установки и замещаемость программ, которые целесообразно оценивать количественно', совокупными затратами, стоимостью, трудоемкостью и длительностью на реализацию процедур переноса программ и данных. Оценки мобильности зависят не только от внутренних субхарактеристик ПС, но также от организации, технологии и документирования реализации жизненного цикла и процессов переноса комплексов программ и их компонентов (см. лекцию 15).
При переносе программ и данных свойства систем практически всегда изменяются, что следует учитывать при системном анализе целесообразности и эффективности переноса, а также могут быть необходимы тестирование, испытания и сертификация получаемых ПС в новой среде. Кроме того, любой перенос связан с затратами. При создании мобильных ПС трудно предусмотреть все возможные особенности и различия платформ и внешней среды, для которых декларируется мобильность конкретных программных средств. Эти особенности и возможное расширение свойств окружающих прикладных программ и данных могут преподносить неприятные сюрпризы нестыковки, для ликвидации которых потребуются дополнительные ресурсы. Требования мобильности компонентов ПС приводят к необходимости их проектирования как автономных комплектующих изделий. Это реализуется за счет стандартизации их построения и организации интерфейсов, унификации структуры базы данных и гарантии качества функционирования. В результате подготавливается возможность создания новых ПС из набора готовых программных модулей или функциональных групп программ, ранее использованных и испытанных в другом сочетании при решении несколько иных функциональных задач. Однако в любом комплексе программ вряд ли возможно и нужно повторно использовать все 100% готовых программных модулей. При сборке нового ПС из комплектующих компонентов, может потребоваться доработка некоторых из них или создание специальных программ для их взаимодействия.
В ряде случаев целесообразна настройка — адаптация готовых компонентов на новые условия применения. При больших изменениях условий применения эффективной может оказаться сборка нового ПС с частичным использованием апробированных компонентов и с разработкой небольшой части программных модулей, обеспечивающих новые функции, интерфейсы и условия применения ПС. При этом относительное снижение затрат пропорционально доле использования готовых комплектующих компонентов и степени их пригодности для использования в новом ПС. В пределе при построении нового ПС на 80—90% из готовых компонентов суммарные затраты могут сокращаться в 3—5 раз. В этом случае, кроме 10—20% затрат на создание новых программных компонентов, необходимы ресурсы на комплексирование нового ПС, его квалификационное тестирование, испытания и документирование.
Практически всегда необходимы время и трудоемкость на системный анализ и оценивание целесообразности разработки комплекса про
грамм из готовых компонентов с учетом стоимости приобретения и адаптации переносимых программ. Интегрирование компонентов в новой операционной среде, тестирование и испытания в комплексе с унаследованными программами также почти всегда требуют времени и других ресурсов. Некоторые, казалось бы, второстепенные, детали и факторы несовместимости готовых, переносимых программ и новой платформы могут заметно отражаться на трудоемкости проекта. Особенно тщательно их следует анализировать в унаследованных системах, в которых относительно мелкие детали взаимодействия новых и старых программ могут существенно влиять на экономические характеристики проекта.
Обычно наиболее важным для реализации проекта и зависящим от большинства его особенностей и факторов является трудоемкость, непосредственно определяющая стоимость создаваемого комплекса программ. Значения длительности разработки и числа специалистов взаимосвязаны и в некоторых пределах могут размениваться. Поэтому оценки этих показателей можно варьировать, и при недостаточном числе специалистов, естественно, возрастает длительность разработки, хотя трудоемкость может остаться практически неизменной. Многократное применение одних и тех же апробированных компонентов и/или многократная адаптация ПС к различным условиям применения является одним из самых перспективных методов повышения качества и снижения затрат труда специалистов в жизненном цикле крупномасштабных комплексов программ.
Ресурсы на имитацию внешней среды
для обеспечения тестирования и испытаний
программных средств
При создании крупных ПС одной из больших составляющих могут быть необходимые ресурсы на генерацию тестов. В ряде случаев они соизмеримы с затратами на создание основных функций комплексов программ, что определяется принципиальным соответствием сложности необходимых наборов тестов и тестового покрытия программ, и сложности функций, реализуемых испытываемым ПС. Создание представительных совокупностей тестов возможно путем использования реальных объектов внешней среды или с помощью программных имитаторов, адекватных этим объектам по результатам функционирования и генерируемой информации. При этом возникает проблема — какой метод и когда выгодней по затратам на генерацию тестов и по обеспечению необходимой степени покрытия тестами испытываемых ПС (см. лекцию 14).
Имитаторы тестов необходимы не только для оценивания достигнутых характеристик качества комплексов программ, но также для их комплексной отладки, квалификационного тестирования, испытаний и при создании версий. Поэтому затраты на программные имитаторы и их экономическую эффективность целесообразно рассматривать в проекте с учетом всего комплекса задач, которые они способны и должны решать в ЖЦ ПС. Анализ эффективности программной имитации внешней среды при разработке и определении качества ПС целесообразно разделить на две части: оценка факторов, определяющих эффективность средств имитации тестов, и оценка экономического выигрыша при моделировании внешней среды на ЭВМ по сравнению с натурными экспериментами в реальных системах.
Do'stlaringiz bilan baham: |