28 для общества результатов функционирования системы. Такая "полезность" может быть неоднозначна и, более того, значительно меняться в зависимости от условий эксплуатации всей системы в целом. Поэтому при проектировании приходится ограничиваться анализом критериев качества для некоторых типовых условий функционирования сложных систем, каждый раз выделяя необходимые и желательные для оптимизации параметры, и оценивать влияние систем высшего уровня на выбор показателя качества. В результате создается некоторая шкала важности критериев эффективности Тем не менее разработчики стремятся выделить и определить специализированный для данной системы единый обобщенный критерий эффективности, который должен: • численно и в наиболее общем виде характеризовать степень выполнения системой своей основной целевой функции; • позволять выявить и оценить степень влияния на эффективность системы различных факторов и параметров и, в том числе, затрат различного вида на ее реализацию; • быть простым и иметь малую дисперсию, т.е. слабо зависеть от неконтролируемых случайных факторов. Возможность реализации системы, удовлетворяющей некоторым критериям качества, естественно, зависит от обеспечения ресурсами и техническими средствами, выполняющими основные функции Высокая стоимость сложных систем, длительные сроки их проектирования и изготовления особенно остро ставят задачу оценки затрат, при которых та или иная эффективность достигается. Особенно сложно в КII, содержащих сотни модулей, обеспечить наилучшее использование ресурсов ЭВМ с точки зрения основного критерия эффективности при сохранении ряда частных показателей качества в допустимых пределах. Многочисленность и сложность путей исполнения программ требует их высокой устойчивости как по отношению к ошибкам во входной информации, так и по отношению к внутренним сбоям ЭВМ, выполняющей программу. Для обеспечения такой устойчивости сложные программы обычно содержат контрольные операции различного типа и имеют специальные модули адаптации и самоорганизации для изменения структуры программ, а в ряде случаев и всей системы управления при перегрузках, сбоях и частичных отказах. Команды и данные, входящие в программные модули, не имеют абсолютной надежности правильного исполнения, поэтому приходится применять специальные аппаратные и программные средства повышения надежности выполнения программ для получения правильных результатов и управляющих воздействий. Таким образом, КП следует рассматривать как один из типов сложных систем. К ним полностью относятся все основные проблемы, связанные с |
качества модулей и групп программ играют подчиненную роль относительно критериев качества всего КП и должны способствовать получению их допустимых или экстремальных значений. Иерархическая структура широко используется при анализе критериев качества всего КП и его частей. Одной из особенностей сложных систем является трудность определения единого критерия эффективности функционирования и наличия обычно нескольких более или менее равнозначных критериев, каждый из которых может стать доминирующим в зависимости от внешних условий и состояния системы [14]. Это обусловлено тем, что каждая сложная система является частью системы большего масштаба и высшего уровня и подчинена ей. Введение понятия критерия эффективности связано с некоторой ’’полезностью” для общества результатов функционирования системы. Такая ’’полезность” может быть неоднозначна и, более того, значительно меняться в зависимости от условий эксплуатации всей системы в целом. Поэтому при проектировании приходится ограничиваться анализом критериев качества для некоторых типовых условий функционирования сложных систем, каждый раз выделяя необходимые и желательные для оптимизации параметры, и оценивать влияние систем высшего уровня на выбор показателя качества.В результате создается некоторая шкала важности критериев эффективности. Тем не менее разработчики стремятся выделить и определить специализированный для данной системы единый обобщенный критерий эффективности, который должен: численно и в наиболее общем виде характеризовать степень выполнения системой своей основной целевой функции; позволять выявить и оценить степень влияния на эффективность системы различных факторов и параметров и, в том числе, затрат различного вида на ее реализацию; быть простым и иметь малую дисперсию, т.е. слабо зависеть от неконтролируемых случайных факторов. Возможность реализации системы, удовлетворяющей некоторым критериям качества, естественно, зависит от обеспечения ресурсами и техническими средствами, выполняющими основные функции. Высокая стоимость сложных систем, длительные сроки их проектирования и изготовления особенно остро ставят задачу оценки затрат, при которых та или иная эффективность достигается. 15 Особенно сложно в КП, содержащих сотни модулей, обеспечить наилучшее использование ресурсов ЭВМ с точки зрения основного критерия эффективности при сохранении ряда частных показателей качества в допустимых пределах. Многочисленность и сложность путей исполнения программ требует их высокой устойчивости как по отношению к ошибкам во входной информации, так и по отношению к внутренним сбоям ЭВМ, выполняющей программу. Для обеспечения такой устойчивости сложные программы обычно содержат контрольные операции различного типа и имеют специальные модули адаптации и самоорганизации для изменения структуры программ, а в ряде случаев и всей системы управления при перегрузках, сбоях и частичных отказах. Команды и данные, входящие в программные модули, не имеют абсолютной надежности правильного исполнения, поэтому приходится применять специальные аппаратные и программные средства повышения надежности выполнения программ для получения правильных результатов и управляющих воздействий [16-18]. Таким образом, КП следует рассматривать как один из типов сложных систем. К ним полностью относятся все основные проблемы, связанные с проектированием, исследованием, внедрением и эксплуатацией сложных систем [19]. При их проектировании необходимо использовать опыт практической системотехники, ее основные методические и теоретические положения. Весь последующий материал книги базируется на подходе к программным средствам как к сложным системам. 1.2. Жизненный цикл и этапы проектирования Комплексы программ создаются, эксплуатируются и развиваются во времени. Жизненный цикл ПС включает в себя все этапы развития от возникновения потребности в программе определенного целевого назначения до полного прекращения использования этого ПС вследствие его морального старения или потери необходимости решения соответствующих задач [20,26]. По длительности жизненного цикла ПС можно разделить на два класса: с малым и большим временем жизни. Этим классам программ соответствует гибкий (мягкий) подход к их созданию и использованию и жесткий промышленный подход регламентированно16 |