Разработка, внедрение и адаптация программного обеспечения отраслевой направленности Часть 2. Разработка, внедрение и адаптация программного обеспечения отрас. Тема введение в обеспечение качества программных средств
Скачать 418.37 Kb.
|
5.3. ФункциональностьФункциональность (Functionality) - способность программных средств обеспечивать функции, удовлетворяющие установленные потребности заказчиков и пользователей при применении комплекса программ в заданных условиях. Функциональность определяется набором функций и задач, выполняемых программных средств. Для ее подхарактеристик трудно определить меры и шкалы. Поэтому ее метрики отнесены в группу категорийных (описательных) метрик. Подхарактеристики Функциональности приведены на рис.7. Таблица 2 представляет связь подхарактеристик Функциональности и атрибутов программных средств. Пригодность (Suitability) - способность программного средства обеспечивать набор функций, соответствующий специфическим задачам и целям пользователей.. Правильность/корректность (Accuracy) - способность программного средства обеспечивать правильные или приемлемые результаты и эффекты с необходимой степенью точности расчетных значений. Частными конструктивными критериями корректности являются корректность структуры программ, обработки данных и межмодульных интерфейсов. Корректность программных модулей включает функциональную и конструктивную корректность. Конструктивная корректность модулей заключается в соответствии их структуры общим правилам структурного программирования и конкретным правилам оформления и внутреннего строения программных модулей в данном проекте. Функциональная корректность модулей определяется корректностью обработки данных и получения результатов. Корректность обработки данных также имеет функциональную и конструктивную составляющие. Конструктивная корректность обработки данных определяется правилами их структурирования и упорядочения. Функциональная корректность обработки данных связана с правильностью их преобразования в процессе выполнения программ. Таблица 2. Функциональность. Подхарактеристики и атрибуты качества Корректность структуры комплексов программ определяется корректностью структуры модулей и корректностью объединения модулей в структуру программ. Способность к взаимодействию (Interoperability) - свойство программных средств и их компонентов взаимодействовать с одной или большим числом указанных систем или компонентов. Данная подхарактеристика зависит от корректности и унифицированности межмодульных интерфейсов. Межмодульные интерфейсы определяются двумя видами связей: по управлению и по информации. Связи по управлению составляют вызовы программных модулей и возвраты в вызывавшие модули. Связи по информации определяются способом передачи информации между модулями (например, через глобальные переменные, простые параметры, параметры-структуры и т.п.). Защищенность (Security) - свойство программных средств защищать свои программы и данные. Защищенность включает защиту от злоумышленных разрушений, искажений и хищений программных средств и информации БД. Защищенность может характеризоваться: 1) величиной предотвращенного ущерба, возможного при проявлении дестабилизирующих факторов и реализации конкретных угроз безопасности; 2) средним временем между возможными проявлениями угроз, нарушающих безопасность, или наработкой на отказы, отражающиеся на безопасности; 3) длительностью восстановления нормальной работоспособности программных средств и информационных систем. Согласованность функциональности (Functionality compliance) - свойство программных средств соответствовать стандартам, нормативным документам, соглашениям или нормам законов, связанным с функциями, областью применения и защитой программных средств. 5.4. Надежность Надежность (Reliability) - свойства комплексов программ обеспечивать достаточно низкую вероятность отказа в процессе функционирования программных средств в реальном времени. Надежность программных средств доступна количественным измерениям. Подхарактеристики надежности представлены на рис.7. Таблица 3 содержит примеры возможных мер и шкал измерения основных количественных метрик подхарактеристик Надежности. Таблица 3. Подхарактеристики Надежности. Возможные меры и шкалы измерения количественных метрик * - в модели качества отсутствует. Отличия программных средств от технических систем с точки зрения оценки их надежности: при разработке и оценке качества отдельных программных компонентов к ним не применимы понятия надежности функционирования, если при обработке информации они не используют значения реального времени и не взаимодействуют динамически с внешней средой; понятия сбоя и отказа программ разделяются по длительности восстановления относительно некоторого времени простоя, допустимого для функционирования информационных систем; для повышения надежности комплексов программ особое значение имеют методы автоматического сокращения длительности восстановления и преобразования отказов в кратковременные сбои путем введения в программное средство временной, программной или информационной избыточности. Основным принципом классификации сбоев и отказов в программах при отсутствии их физического разрушения является разделение по временному показателю длительности восстановления после любого искажения программ, данных или вычислительного процесса, регистрируемого как нарушение работоспособности. При длительности восстановления, меньшей заданного порога, ошибки и аномалии при функционировании программ относятся к сбоям. При восстановлении, превышающем по длительности пороговое значение, происходящее искажение соответствует отказу. Высокую надежность программ определяет быстрое реагирование на искажения программ, данных или вычислительного процесса и восстановление работоспособности за время меньшее, чем порог между сбоем и отказом. Завершенность (Maturity) - свойство программных средств не попадать в состояние отказов вследствие ошибок в программах и данных. Завершенность характеризуется наработкой на отказ при отсутствии автоматического восстановления (таблица 3). При этом учитываются только отказы вследствие проявившихся ошибок в ПС. Отказоустойчивость (Fault tolerance) - свойство программных средств поддерживать заданный уровень качества функционирования в случаях проявления ошибок или нарушения установленного интерфейса. Для реализации данного свойства в программные средства должна вводиться временная, программная и информационная избыточность, реализующая оперативное обнаружение ошибок функционирования, их идентификацию и автоматическое восстановление (рестарт) нормального функционирования программного средства. Отказоустойчивость определяется наработкой на отказ при наличии автоматического рестарта и долей ресурсов, используемых для рестарта (таблица 3). Восстанавливаемость (Recoverability) - свойство программного средства в случае отказа восстанавливать заданный уровень качества функционирования, поврежденные программы и данные. Основные показатели процесса восстановления: длительность восстановления и ее вероятностные характеристики; полнота восстановления нормального функционирования программ в процессе ручного или автоматического рестарта (перезапуска) (таблица 3). Полноту восстановления с помощью количественных метрик вычислить сложно. Пригодность (годность, готовность, доступность) (Availability) - свойство ПС быть в состоянии выполнять требуемую функцию в данный момент времени при заданных условиях использования. Годность может оцениваться отношением времени, в течение которого программное средство находится в работоспособном состоянии, к общему времени применения. Отсюда следует, что годность - это комбинация завершенности (от нее зависит частота отказов), отказоустойчивости и восстанавливаемости. Эти три подхарактеристики в совокупности обусловливают длительность простоя после каждого отказа и длительность наработки на отказ. В этой связи в модели внутреннего и внешнего качества подхарактеристика Годности в качестве самостоятельной независимой подхарактеристики качества отсутствует. Характеристики отказов и восстановления обобщает коэффициент готовности - вероятность иметь восстанавливаемую систему в работоспособном состоянии в произвольный момент времени. Согласованность надежности (Reliability compliance) - свойство программного средства соответствовать стандартам и нормативным документам, связанным с надежностью. |