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

Лекция 9. Управление ресурсами в жизненном цикле программных средств

РСО2

РН

СБО [BE]

 


 

 

 

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

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

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

В соответствии с этапами жизненного цикла ПС основные за-
траты С S , снижающие идеальную эффективность за цикл жизни t ж
, можно пред-ставить следующими составляющими (рис.9.1):

С Р — совокупные затраты на разработку программ и обеспече-
ние решения заданных функциональных задач, в том числе на тех-
нологическое обеспечение и аппаратуру ЭВМ при разработке ПС,
в течение времени t Р;

С С — затраты на сопровождение ПС за время t с , включающие
затраты на хранение и контроль их состояния, проведение модер-
низаций и исправление ошибок, тиражирование версий;

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

В результате совокупные затраты ресурсов на программное средство - за весь жизненный цикл длительностью t жможно
представить в виде суммы: С Р + С С + С Э . В зависимости от назначения и области использования про-
грамм экономическую эффективность целесообразно анализиро-
вать интегрально за весь период жизни, либо дифференциально за
единицу времени (месяц, год). Для совместного анализа составля-
ющих, определяющих эффективность, необходимо унифицировать
методы временного анализа и единицы измерения составляющих
затрат. При последующем изложении затраты рассматриваются
на длительности цикла жизни или на соответствующих интервалах
времени: разработки, эксплуатации и сопровождения .

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

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

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

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

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

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

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

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

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

На рис. 9.1 отражены затраты на технологию, инструментальные средства автоматизации разработки и ЖЦ ПС, а также затраты на аппаратуру вычислительных систем, необходимую при обеспечении жизненного цикла комплексов программ. Эти затраты только обозначены в данной лекции, а их описания и оценки отнесены к лекции 16.