Добавлен: 26.10.2023
Просмотров: 44
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Рис. 1. Характеристики качества программных средств
В стандарте ГОСТ 28806-90 формализуются общие понятия программы, программного средства, программного продукта и их качества. Даются определения 18 наиболее употребляемых терминов, связанных с оценкой характеристик программ. Уточнены понятия базовых показателей качества, приведенных в стандарте 28195-89.
Из всего вышесказанного можно сделать вывод, что использование самых современных компьютерных технологий приносит банкам крупные прибыли и помогает им победить в конкурентной борьбе. Любая автоматизированная банковская система представляет из себя сложный аппаратно-программный комплекс, состоящий из множества взаимосвязанных модулей. Совершенно очевидна роль сетевых технологий в таких системах. По сути БС представляет из себя комплекс, состоящий из множества локальных и глобальных вычислительных сетей. В БС сегодня применяется самое современное сетевое и телекоммуникационное оборудование. От правильного построения сетевой структуры БС зависит эффективность и надежность ее функционирования.
Поскольку спрос на БС достаточно высок, а цена высока, многие крупные компании-производители компьютерной техники и ПО предлагают на рынке свои разработки в данной области. Перед отделом автоматизации банка встает трудный вопрос выбора оптимального решения. Банковская сфера определяет два основных требования к БС - обеспечение надежности и безопасности передачи коммерческой информации. В последнее время для взаимодействия с клиентами и осуществления расчетов все чаще используются открытые глобальные сети (например Internet). Последнее обстоятельство еще более усиливает значимость защиты передаваемых данных от несанкционированного доступа.
Судя по всему, в ближайшее время темпы развития БС (особенно в нашей стране) будут стремительно расти. Практически все появляющиеся сетевые технологии будут быстро браться банками на вооружение. Неизбежны процессы интеграции банков в рамках национальных и мировых банковских сообществ. Это обеспечит постоянный рост качества банковских услуг, от которого выиграют в конечном счете все - и банки и их клиенты.
2. Обеспечение качества и надежности в процессе разработки сложных программных средств
2.1 Требования к технологии и средствам автоматизации разработки сложных программных средств
В стандартах и моделях жизненного цикла ПС с различной глубиной определено содержание этапов и частных работ при создании и модификации компонент и ПС в целом. Для планирования и управления обеспечением качества и надежности ПС эти модели служат структурной базой объектов, работ и документов при детализации и реализации требований к показателям качества ожидаемых результатов. Необходимая надежность объектов формируется и обеспечивается в процессе выполнения частных работ каждого этапа и окончательно удостоверяется испытаниями и документами при их завершении. Для обеспечения качества и надежности ПС стандартами рекомендуется формулировать требования:
- к объекту разработки на данном этапе - к его программным и информационным компонентам, а также к интерфейсу между ними и с внешней средой;
- к процессу, технологии и организации выполнения совокупности работ и документов каждого этапа;
- к методам и характеристикам средств автоматизации выполнения работ, обеспечивающим необходимую надежность функционирования и качество ПС;
- к методам и средствам контроля, измерения и документирования качества процессов и результатов выполненных работ.
Выполнение этих требований должно контролироваться путем измерения объектов и процессов разработки. Измерения объектов разработки сводятся к регулярной, поэтапной регистрации показателей качества, а также к сопоставлению их с заданными требованиями. При обнаружении отклонений от требований должны приниматься меры либо для улучшения реальных показателей, либо по корректировке требований к показателям для данной компоненты на контролируемом этапе.
Требования к инструментальным средствам автоматизации разработки надежных ПС наиболее полно изложены в стандарте IEEE 1209-1992. Стандарт содержит рекомендации по оценке и выбору инструментальных средств, поддерживающих процессы жизненного цикла программных средств, включая процессы управления проектами, процессы разработки и процессы, следующие за разработкой, а также интегральные процессы жизненного цикла ПС. Для оценки и выбора инструментальной среды и CASE-средств стандартом (раздел 7) рекомендуется использовать, приведенные ниже, наборы правил и критериев. Группы критериев в стандарте выделены и сформированы с учетом общих требований стандарта ISO 9126:1991 по оценке качества программных продуктов (см.п. 1.1).
Требования стандарта к средствам управления проектом сложного ПС включают:
- способность CASE-средства оценивать стоимость, формировать планы и другие показатели проекта по данным, вводимым пользователем;
- управление действиями и ресурсами путем поддержки ввода пользователем данных для планирования проекта, данных о фактических действиях и анализ этих данных, включая: планы, ресурсы компьютеров, назначение персонала, бюджет проекта, а также возможность определения условий выполнения проекта;
- управление тестовыми процедурами: возможность поддержки управления действиями по тестированию и тестовыми программами, планирования действий по тестированию, регистрации результатов тестирования, генерации отчетов о состоянии тестируемых программ;
- управление качеством разрабатываемого ПС - ввод и обработка данных о качестве, их анализ и генерация отчетов об управлении качеством;
- управление действиями по корректировке плана проекта, отчетов о проблемах и дефектах, возникших в ходе выполнения проекта.
2.2 Планирование и управление обеспечением качества и надежности программ
Эти задачи целесообразно отделять от выбора и установки инструментальных средств разработки ПС и планов непосредственного управления процессом создания программ. Хотя в этих планах довольно много общего в структуре, содержании, в сопроводительной и отчетной документации, тем не менее, практика подтвердила рациональность их достаточно автономной реализации. Это позволяет сосредоточить внимание на совокупности мероприятий, гарантирующих качество и надежность конечного продукта, а не только на процессе его проектирования с неизвестным качеством. Чтобы такие гарантии достигались с минимальными затратами, необходимы целенаправленные, координируемые меры по предотвращению дефектов и ошибок проектирования, а также по их выявлению и устранению на самых ранних этапах разработки. Вследствие этого мероприятия, обеспечивающие надежность и безопасность программ, должны охватывать не только завершающие испытания, а весь жизненный цикл ПС. Это привело к выделению и созданию специализированных методов и средств поддержки процессов планирования и управления обеспечением качества и надежности по этапам разработки в условиях реально ограниченных ресурсов.
Для реализации мероприятий по планированию и управлению обеспечением качества и надежности необходимы прежде всего организационные действия, направленные на воспитание и обучение специалистов двух категорий строгому соблюдению современной технологии создания программ заданного класса. Специалисты первой категории, управляющие обеспечением качества ПС, должны овладеть стандартами и методиками фирмы, поддерживающими регистрацию, контроль, документирование и управляющие воздействия на показатели качества на всех этапах создания программ. Они должны обеспечивать выявление всех отклонений от заданных показателей качества объектов и процессов, а также от предписанной технологии на промежуточных и заключительных этапах разработки. Эти же специалисты должны анализировать возможные последствия выявленных отклонений от требований технического задания или спецификации на ПС. Таким образом, основные задачи этой группы специалистов сосредоточены на контроле качества процессов, результатов выполнения работ и на принятии организационных и технологических мер для достижения их необходимого качества, обеспечивающего выполнение всех требований технического задания на ПС.
Специалисты второй категории непосредственно создают компоненты и ПС в целом с заданными показателями качества и надежности. В процессе управления качеством их функции заключаются в тщательном соблюдении принятой в фирме технологии разработки и в формировании всех предписанных руководствами исходных и отчетных документов. При этом выбранная технология должна быть способна обеспечить необходимые значения показателей качества, а достижение заданных функциональных характеристик должно гарантироваться тематической и технологической квалификацией соответствующих специалистов и регулярным контролем этих характеристик в процессе разработки. Система стандартизированного документирования частных работ должна обеспечить объективное отражение качества компонент и процессов их создания на всех этапах проектирования.
Организационное разделение специалистов, осуществляющих разработку ПС, и специалистов, контролирующих и управляющих его качеством в процессе разработки, обеспечивает независимый, достоверный контроль качества результатов разработки и эффективное достижение заданных характеристик надежности и безопасности.
2.3 Ресурсы, необходимые для обеспечения надежности функционирования программных средств
В зависимости от характеристик объекта разработки на ее выполнение выделяются ресурсы различных видов. Их величины значительно влияют на технико-экономические показатели, надежность и безопасность всего проекта ПС. В результате доступные ресурсы становятся косвенными критериями или факторами, влияющими на выбор методов разработки, на достигаемые качество, надежность и безопасность применения ПС. При этом следует учитывать, что каждый вид ресурсов в реальных условиях ограничен и может варьироваться только в некотором диапазоне.
При анализе целесообразно разделять, также как Планы, ресурсы, необходимые для непосредственного решения основных функциональных задач ПС, и ресурсы, требующиеся для обеспечения надежности и безопасности функционирования ПС. Соотношение между этими видами ресурсов в реальных ПС зависит от сложности и состава решаемых функциональных задач, степени их критичности и требований к надежности и безопасности всей информационной системы. В различных ПС ресурсы на обеспечение надежности могут составлять от 5-20% до 100-300% от ресурсов, используемых на решение функциональных задач, т.е. в особых случаях (критические военные системы) могут превышать последние в 2-4 раза.
Наиболее общим видом ресурсов, используемых при создании ПС, являются допустимые финансово-экономические затраты. При анализе надежности этот показатель может применяться или как вид ресурсных ограничений, или как оптимизируемый критерий. При этом необходимо также учитывать затраты на разработку, закупку и эксплуатацию технологии и комплекса автоматизации проектирования программ и баз данных (в том числе, для создания средств повышения надежности путем использования избыточности), которые могут составлять существенную часть совокупной стоимости разрабатываемого ПС.
Кадры специалистов можно оценивать численностью, а также тематической и технологической квалификацией. В разработке сложных ПС участвуют системные аналитики и руководители различных рангов, программисты и вспомогательный обслуживающий персонал в некотором рациональном сочетании. Определяющими являются совокупная численность и структура коллектива, а также его подготовленность к коллективной разработке конкретного типа ПС и его средств обеспечения надежности функционирования. При разработке критических ПС большого объема особое значение приобретает организация коллектива специалистов и его взаимосвязь со структурой программ и базы данных и их средствами обеспечения надежности. Рациональное распределение специалистов на решение достаточно локализуемых функциональных задач и выделение группы, осуществляющей комплексирование и отладку функциональных программ, а также средств обеспечения надежности в едином ПС, может значительно повысить эффективность технологического процесса.
3. Виды тестирования для обеспечения надежности программных средств
3.1 Требования к средствам обеспечения тестирования
Сложность программных средств обычно адекватна сложности поведения объектов внешней среды, в которой функционирует соответствующее ПС. В процессе испытаний специалисты должны стремиться охватить тестированием функционирование ПС во всей доступной области варьирования исходных данных и режимов применения.
При этом номенклатура и диапазоны варьирования тестов ограничены либо допустимой длительностью подготовки и исполнения тестов, либо вычислительными ресурсами, доступными для использования с целью контроля и тестирования в режиме нормальной эксплуатации. Это отражается на объеме применяемых тестов и на глубине тестирования.
Однако при эксплуатации ПС в реальной внешней среде могут создаваться отдельные ситуации, угрожающие надежности и не проверенные при испытаниях или сертификации. Для регистрации таких ситуаций и снижения возможности их катастрофических последствий частично используются те же средства, что и при специализированных испытаниях.
В стандарте ГОСТ 28806-90 формализуются общие понятия программы, программного средства, программного продукта и их качества. Даются определения 18 наиболее употребляемых терминов, связанных с оценкой характеристик программ. Уточнены понятия базовых показателей качества, приведенных в стандарте 28195-89.
Из всего вышесказанного можно сделать вывод, что использование самых современных компьютерных технологий приносит банкам крупные прибыли и помогает им победить в конкурентной борьбе. Любая автоматизированная банковская система представляет из себя сложный аппаратно-программный комплекс, состоящий из множества взаимосвязанных модулей. Совершенно очевидна роль сетевых технологий в таких системах. По сути БС представляет из себя комплекс, состоящий из множества локальных и глобальных вычислительных сетей. В БС сегодня применяется самое современное сетевое и телекоммуникационное оборудование. От правильного построения сетевой структуры БС зависит эффективность и надежность ее функционирования.
Поскольку спрос на БС достаточно высок, а цена высока, многие крупные компании-производители компьютерной техники и ПО предлагают на рынке свои разработки в данной области. Перед отделом автоматизации банка встает трудный вопрос выбора оптимального решения. Банковская сфера определяет два основных требования к БС - обеспечение надежности и безопасности передачи коммерческой информации. В последнее время для взаимодействия с клиентами и осуществления расчетов все чаще используются открытые глобальные сети (например Internet). Последнее обстоятельство еще более усиливает значимость защиты передаваемых данных от несанкционированного доступа.
Судя по всему, в ближайшее время темпы развития БС (особенно в нашей стране) будут стремительно расти. Практически все появляющиеся сетевые технологии будут быстро браться банками на вооружение. Неизбежны процессы интеграции банков в рамках национальных и мировых банковских сообществ. Это обеспечит постоянный рост качества банковских услуг, от которого выиграют в конечном счете все - и банки и их клиенты.
2. Обеспечение качества и надежности в процессе разработки сложных программных средств
2.1 Требования к технологии и средствам автоматизации разработки сложных программных средств
В стандартах и моделях жизненного цикла ПС с различной глубиной определено содержание этапов и частных работ при создании и модификации компонент и ПС в целом. Для планирования и управления обеспечением качества и надежности ПС эти модели служат структурной базой объектов, работ и документов при детализации и реализации требований к показателям качества ожидаемых результатов. Необходимая надежность объектов формируется и обеспечивается в процессе выполнения частных работ каждого этапа и окончательно удостоверяется испытаниями и документами при их завершении. Для обеспечения качества и надежности ПС стандартами рекомендуется формулировать требования:
- к объекту разработки на данном этапе - к его программным и информационным компонентам, а также к интерфейсу между ними и с внешней средой;
- к процессу, технологии и организации выполнения совокупности работ и документов каждого этапа;
- к методам и характеристикам средств автоматизации выполнения работ, обеспечивающим необходимую надежность функционирования и качество ПС;
- к методам и средствам контроля, измерения и документирования качества процессов и результатов выполненных работ.
Выполнение этих требований должно контролироваться путем измерения объектов и процессов разработки. Измерения объектов разработки сводятся к регулярной, поэтапной регистрации показателей качества, а также к сопоставлению их с заданными требованиями. При обнаружении отклонений от требований должны приниматься меры либо для улучшения реальных показателей, либо по корректировке требований к показателям для данной компоненты на контролируемом этапе.
Требования к инструментальным средствам автоматизации разработки надежных ПС наиболее полно изложены в стандарте IEEE 1209-1992. Стандарт содержит рекомендации по оценке и выбору инструментальных средств, поддерживающих процессы жизненного цикла программных средств, включая процессы управления проектами, процессы разработки и процессы, следующие за разработкой, а также интегральные процессы жизненного цикла ПС. Для оценки и выбора инструментальной среды и CASE-средств стандартом (раздел 7) рекомендуется использовать, приведенные ниже, наборы правил и критериев. Группы критериев в стандарте выделены и сформированы с учетом общих требований стандарта ISO 9126:1991 по оценке качества программных продуктов (см.п. 1.1).
Требования стандарта к средствам управления проектом сложного ПС включают:
- способность CASE-средства оценивать стоимость, формировать планы и другие показатели проекта по данным, вводимым пользователем;
- управление действиями и ресурсами путем поддержки ввода пользователем данных для планирования проекта, данных о фактических действиях и анализ этих данных, включая: планы, ресурсы компьютеров, назначение персонала, бюджет проекта, а также возможность определения условий выполнения проекта;
- управление тестовыми процедурами: возможность поддержки управления действиями по тестированию и тестовыми программами, планирования действий по тестированию, регистрации результатов тестирования, генерации отчетов о состоянии тестируемых программ;
- управление качеством разрабатываемого ПС - ввод и обработка данных о качестве, их анализ и генерация отчетов об управлении качеством;
- управление действиями по корректировке плана проекта, отчетов о проблемах и дефектах, возникших в ходе выполнения проекта.
2.2 Планирование и управление обеспечением качества и надежности программ
Эти задачи целесообразно отделять от выбора и установки инструментальных средств разработки ПС и планов непосредственного управления процессом создания программ. Хотя в этих планах довольно много общего в структуре, содержании, в сопроводительной и отчетной документации, тем не менее, практика подтвердила рациональность их достаточно автономной реализации. Это позволяет сосредоточить внимание на совокупности мероприятий, гарантирующих качество и надежность конечного продукта, а не только на процессе его проектирования с неизвестным качеством. Чтобы такие гарантии достигались с минимальными затратами, необходимы целенаправленные, координируемые меры по предотвращению дефектов и ошибок проектирования, а также по их выявлению и устранению на самых ранних этапах разработки. Вследствие этого мероприятия, обеспечивающие надежность и безопасность программ, должны охватывать не только завершающие испытания, а весь жизненный цикл ПС. Это привело к выделению и созданию специализированных методов и средств поддержки процессов планирования и управления обеспечением качества и надежности по этапам разработки в условиях реально ограниченных ресурсов.
Для реализации мероприятий по планированию и управлению обеспечением качества и надежности необходимы прежде всего организационные действия, направленные на воспитание и обучение специалистов двух категорий строгому соблюдению современной технологии создания программ заданного класса. Специалисты первой категории, управляющие обеспечением качества ПС, должны овладеть стандартами и методиками фирмы, поддерживающими регистрацию, контроль, документирование и управляющие воздействия на показатели качества на всех этапах создания программ. Они должны обеспечивать выявление всех отклонений от заданных показателей качества объектов и процессов, а также от предписанной технологии на промежуточных и заключительных этапах разработки. Эти же специалисты должны анализировать возможные последствия выявленных отклонений от требований технического задания или спецификации на ПС. Таким образом, основные задачи этой группы специалистов сосредоточены на контроле качества процессов, результатов выполнения работ и на принятии организационных и технологических мер для достижения их необходимого качества, обеспечивающего выполнение всех требований технического задания на ПС.
Специалисты второй категории непосредственно создают компоненты и ПС в целом с заданными показателями качества и надежности. В процессе управления качеством их функции заключаются в тщательном соблюдении принятой в фирме технологии разработки и в формировании всех предписанных руководствами исходных и отчетных документов. При этом выбранная технология должна быть способна обеспечить необходимые значения показателей качества, а достижение заданных функциональных характеристик должно гарантироваться тематической и технологической квалификацией соответствующих специалистов и регулярным контролем этих характеристик в процессе разработки. Система стандартизированного документирования частных работ должна обеспечить объективное отражение качества компонент и процессов их создания на всех этапах проектирования.
Организационное разделение специалистов, осуществляющих разработку ПС, и специалистов, контролирующих и управляющих его качеством в процессе разработки, обеспечивает независимый, достоверный контроль качества результатов разработки и эффективное достижение заданных характеристик надежности и безопасности.
2.3 Ресурсы, необходимые для обеспечения надежности функционирования программных средств
В зависимости от характеристик объекта разработки на ее выполнение выделяются ресурсы различных видов. Их величины значительно влияют на технико-экономические показатели, надежность и безопасность всего проекта ПС. В результате доступные ресурсы становятся косвенными критериями или факторами, влияющими на выбор методов разработки, на достигаемые качество, надежность и безопасность применения ПС. При этом следует учитывать, что каждый вид ресурсов в реальных условиях ограничен и может варьироваться только в некотором диапазоне.
При анализе целесообразно разделять, также как Планы, ресурсы, необходимые для непосредственного решения основных функциональных задач ПС, и ресурсы, требующиеся для обеспечения надежности и безопасности функционирования ПС. Соотношение между этими видами ресурсов в реальных ПС зависит от сложности и состава решаемых функциональных задач, степени их критичности и требований к надежности и безопасности всей информационной системы. В различных ПС ресурсы на обеспечение надежности могут составлять от 5-20% до 100-300% от ресурсов, используемых на решение функциональных задач, т.е. в особых случаях (критические военные системы) могут превышать последние в 2-4 раза.
Наиболее общим видом ресурсов, используемых при создании ПС, являются допустимые финансово-экономические затраты. При анализе надежности этот показатель может применяться или как вид ресурсных ограничений, или как оптимизируемый критерий. При этом необходимо также учитывать затраты на разработку, закупку и эксплуатацию технологии и комплекса автоматизации проектирования программ и баз данных (в том числе, для создания средств повышения надежности путем использования избыточности), которые могут составлять существенную часть совокупной стоимости разрабатываемого ПС.
Кадры специалистов можно оценивать численностью, а также тематической и технологической квалификацией. В разработке сложных ПС участвуют системные аналитики и руководители различных рангов, программисты и вспомогательный обслуживающий персонал в некотором рациональном сочетании. Определяющими являются совокупная численность и структура коллектива, а также его подготовленность к коллективной разработке конкретного типа ПС и его средств обеспечения надежности функционирования. При разработке критических ПС большого объема особое значение приобретает организация коллектива специалистов и его взаимосвязь со структурой программ и базы данных и их средствами обеспечения надежности. Рациональное распределение специалистов на решение достаточно локализуемых функциональных задач и выделение группы, осуществляющей комплексирование и отладку функциональных программ, а также средств обеспечения надежности в едином ПС, может значительно повысить эффективность технологического процесса.
3. Виды тестирования для обеспечения надежности программных средств
3.1 Требования к средствам обеспечения тестирования
Сложность программных средств обычно адекватна сложности поведения объектов внешней среды, в которой функционирует соответствующее ПС. В процессе испытаний специалисты должны стремиться охватить тестированием функционирование ПС во всей доступной области варьирования исходных данных и режимов применения.
При этом номенклатура и диапазоны варьирования тестов ограничены либо допустимой длительностью подготовки и исполнения тестов, либо вычислительными ресурсами, доступными для использования с целью контроля и тестирования в режиме нормальной эксплуатации. Это отражается на объеме применяемых тестов и на глубине тестирования.
Однако при эксплуатации ПС в реальной внешней среде могут создаваться отдельные ситуации, угрожающие надежности и не проверенные при испытаниях или сертификации. Для регистрации таких ситуаций и снижения возможности их катастрофических последствий частично используются те же средства, что и при специализированных испытаниях.