|
Модель внешнего и внутреннего качества программных средств
Как уже отмечалось, стандарт ISО/1ЕС 9126-1:2001 регламентирует иерархические модели оценки внутреннего и внешнего качества программных средств. Данные модели различаются в зависимости от представления качества в жизненном цикле программных средств.
На верхнем уровне модели находится шесть основных характеристик качества. Это функциональность, надежность, практичность, эффективность, сопровождаемость и мобильность.
Подхарактеристики, находящиеся на втором уровне, также стандартизированы. Они могут измеряться внутренними или внешними метриками. Кроме того, имеются и чисто внешние метрики и метрики в использовании.
рис.7
Рис.7. Модель внешнего и внутреннего качества.
Все метрики, исходя из возможностей их измерения, можно разделить на три категории:
С учетом этого все характеристики качества также разделяются на три группы:
Функциональность
Функциональность (Functionality)
- способность программных средств обеспечивать функции, удовлетворяющие установленные потребности заказчиков и пользователей при применении комплекса программ в заданных условиях. Функциональность определяется набором функций и задач, выполняемых программных средств. Для ее подхарактеристик трудно определить меры и шкалы. Поэтому ее метрики отнесены в группу категорийных (описательных) метрик. Подхарактеристики Функциональности приведены на рис.7. Таблица 2 представляет связь подхарактеристик Функциональности и атрибутов программных средств.
Пригодность (Suitability)
- способность программного средства обеспечивать набор функций, соответствующий специфическим задачам и целям пользователей..
Правильность/корректность (Accuracy)
- способность программного средства обеспечивать правильные или приемлемые результаты и эффекты с необходимой степенью точности расчетных значений. Частными конструктивными критериями корректности являются корректность структуры программ, обработки данных и межмодульных интерфейсов. Корректность программных модулей
включает функциональную и конструктивную корректность. Конструктивная корректность модулей заключается в соответствии их структуры общим правилам структурного программирования и конкретным правилам оформления и внутреннего строения программных модулей в данном проекте. Функциональная корректность модулей определяется корректностью обработки данных и получения результатов. Корректность обработки данных
также имеет функциональную и конструктивную составляющие. Конструктивная корректность обработки данных определяется правилами их структурирования и упорядочения. Функциональная корректность обработки данных связана с правильностью их преобразования в процессе выполнения программ.
Таблица 2. Функциональность. Подхарактеристики и атрибуты качества
Подхарактеристики (регламентирова нные) | Атрибуты качества (рекомендуемые) |
Пригодность | - соответствие назначения целям применения программных средств;- соответствие требований к функциям назначению программного средства;- соответствие исходной информации требованиям к функциям программного средства;- соответствие состава и содержания выходной информации для потребителей назначению и функциям программного средства;- соответствие структурных характеристик комплекса программ назначению и функциям программного средства. |
Правильность | - соответствие требований к функциям программного средства требованиям к информационной системе;- соответствие требований к функциональным компонентам требованиям к функциям программного средства;- соответствие текстов программ требованиям к функциональным компонентам программного средства;- соответствие объектного кода исходному тексту программ функциональных компонентов программных средств;- степень покрытия тестами возможных маршрутов исполнения программ. |
Способность к взаимодействию | - с операционной системой;- с аппаратной средой;- с внешней средой информационной системы и с пользователями;- между программными компонентами;- между компонентами распределенных информационных систем. |
Защищенность | - соответствие критериям и требованиям защиты от предумышленных угроз безопасности программных средств;- соответствие методам и средствам защиты от проявления случайных ошибок программ и данных;- обеспечение эффективности оперативных методов защиты и восстановления при проявлениях и реализации угроз;- соответствие стандартам и нормативным документам на защиту от различных типов угроз;- обеспечение равнопрочной защиты в соответствии с опасностью угроз и доступностью ресурсов для защиты. |
Корректность структуры комплексов программ определяется корректностью структуры модулей и корректностью объединения модулей в структуру программ.
Способность к взаимодействию (Interoperability)
- свойство программных средств и их компонентов взаимодействовать с одной или большим числом указанных систем или компонентов. Данная подхарактеристика зависит от корректности и унифицированности межмодульных интерфейсов. Межмодульные интерфейсы определяются двумя видами связей: по управлению и по информации.
Связи по управлению составляют вызовы программных модулей и возвраты в вызывавшие модули. Связи по информации определяются способом передачи информации между модулями (например, через глобальные переменные, простые параметры, параметры-структуры и т.п.).
Защищенность (Security)
- свойство программных средств защищать свои программы и данные. Защищенность включает защиту от злоумышленных разрушений, искажений и хищений программных средств и информации БД.
Защищенность может характеризоваться:
1) величиной предотвращенного ущерба, возможного при проявлении дестабилизирующих факторов и реализации конкретных угроз безопасности;
2) средним временем между возможными проявлениями угроз, нарушающих безопасность, или наработкой на отказы, отражающиеся на безопасности;
3) длительностью восстановления нормальной работоспособности программных средств и информационных систем.
Согласованность функциональности (Functionality compliance)
- свойство программных средств соответствовать стандартам, нормативным документам, соглашениям или нормам законов, связанным с функциями, областью применения и защитой программных средств.
Надежность (Reliability)
- свойства комплексов программ обеспечивать достаточно низкую вероятность отказа в процессе функционирования программных средств в реальном времени. Надежность программных средств доступна количественным измерениям. Подхарактеристики надежности представлены на рис.7. Таблица 3 содержит примеры возможных мер и шкал измерения основных количественных метрик подхарактеристик Надежности.
Таблица 3. Подхарактеристики Надежности. Возможные меры и шкалы измерения количественных метрик
Подхарактеристики и метрики Надежности | Мера | Шкала | ||
Завершенность | ||||
• | Наработка на отказ при отсутствии рестарта. Отказоустойчивость | Часы | 10 - | |
• | Наработка на отказ при наличии автоматического рестарта; | Часы | 10 - | |
Относительные ресурсы на обеспечение надежности и рестарта.Восстанавливаемость | % | - 90 | ||
• | Длительность восстановления.Годность* | Минуты | 10-2 | - 10 |
• | Относительное время работоспособного функционирования. | Вероятность | 0,7 - | 0,99 |
* - в модели качества отсутствует.
Отличия программных средств от технических систем с точки зрения оценки их надежности:
Основным принципом классификации сбоев и отказов в программах при отсутствии их физического разрушения является разделение по временному показателю длительности восстановления после любого искажения программ, данных или вычислительного процесса, регистрируемого как нарушение работоспособности. При длительности восстановления, меньшей заданного порога, ошибки и аномалии при функционировании программ относятся к сбоям. При восстановлении, превышающем по длительности пороговое значение, происходящее искажение соответствует отказу.
Высокую надежность программ определяет быстрое реагирование на искажения программ, данных или вычислительного процесса и восстановление работоспособности за время меньшее, чем порог между сбоем и отказом.
Завершенность (Maturity)
- свойство программных средств не попадать в состояние отказов вследствие ошибок в программах и данных. Завершенность характеризуется наработкой на отказ при отсутствии автоматического восстановления (таблица 3). При этом учитываются только отказы вследствие проявившихся ошибок в ПС.
Отказоустойчивость (Fault tolerance)
- свойство программных средств поддерживать заданный уровень качества функционирования в случаях проявления ошибок или нарушения установленного интерфейса. Для реализации данного свойства в программные средства должна вводиться временная, программная и информационная избыточность, реализующая оперативное обнаружение ошибок функционирования, их идентификацию и автоматическое восстановление (рестарт) нормального функционирования программного средства. Отказоустойчивость определяется наработкой на отказ при наличии автоматического рестарта и долей ресурсов, используемых для рестарта (таблица 3).
Восстанавливаемость (Recoverability)
- свойство программного средства в случае отказа восстанавливать заданный уровень качества функционирования, поврежденные программы и данные. Основные показатели процесса восстановления:
Пригодность (годность, готовность, доступность) (Availability)
- свойство ПС быть в состоянии выполнять требуемую функцию в данный момент времени при заданных условиях использования. Годность может оцениваться отношением времени, в течение которого программное средство находится в работоспособном состоянии, к общему времени применения. Отсюда следует, что годность - это комбинация завершенности (от нее зависит частота отказов), отказоустойчивости и восстанавливаемости. Эти три подхарактеристики в совокупности обусловливают длительность простоя после каждого отказа и длительность наработки на отказ. В этой связи в модели внутреннего и внешнего качества подхарактеристика Годности в качестве самостоятельной независимой подхарактеристики качества отсутствует.
Характеристики отказов и восстановления обобщает коэффициент готовности - вероятность иметь восстанавливаемую систему в работоспособном состоянии в произвольный момент времени.
Согласованность надежности (Reliability compliance)
- свойство программного средства соответствовать стандартам и нормативным документам, связанным с надежностью.
Дата добавления: 2015-04-11; просмотров: 330 | Поможем написать вашу работу | Нарушение авторских прав |