- •230100.62 (09.03.01) «Информатика и вычислительная техника» профиля подготовки «Программное обеспечение вычислительной техники и
- •231000.62 (09.03.04) «Программная инженерия» профиля подготовки «Разработка программно-информационных систем»
- •1) 230100.62 (09.03.01) «Информатика и вычислительная техника»:
- •2) 231000.62 (09.03.04) «Программная инженерия»:
- •Лекция №1. Основные понятия и определения
- •Лекция №2. Прикладной системный анализ при разработке по. Принципы структурного анализа. Процедура требований.
- •2.1 Проблема сложности ис
- •2.2 Основные понятия структурного анализа
- •2.3 Принципы структурного анализа
- •2.4 Группы средств структурного анализа и их взаимоотношения
- •2.5 Краткий список структурных методологий по группам средств моделирования
- •Лекция №3. Моделирование функций по. Нотация idef0. Case-средство bpWin
- •3.1 Диаграммы idef0
- •3.2 Виды связей в idef0
- •3.3 Диаграмма дерева узлов
- •3.4 Case-средство bpWin
- •Лекция №4. Описание динамики системы. Нотация idef3
- •4.1 Основные символы idef3
- •4.2 Виды связей в idef3
- •4.3 Пример диаграммы idef3
- •Лекция №5. Постановка требований к данным. Словари данных. Моделирование данных в нотации idef1x. Case-средство erWin
- •5.1 Словарь данных
- •5.2 Определение структуры данных для информационных потоков
- •5.3 Моделирование данных в нотации idef1x
- •5.3.1 Базовые понятия erd
- •5.3.2 Виды сущностей в idef1x
- •5.3.3 Виды связей в idef1x
- •Лекция №6. Стандарт онтологического исследования idef5
- •6.1 Основные принципы онтологического анализа
- •6.2 Концепции idef5
- •6.3 Язык описания онтологий в idef5
- •6.4 Виды схем и диаграмм idef5
- •Лекция №7. Постановка требований к интерфейсу по. Понятие Usability.
- •7.1 Эргономические цели и показатели качества программного продукта
- •7.2 Проблемы, возникающие на этапе разработки прототипа gui и варианты их решения
- •7.3 Принципы реализации пользовательского интерфейса
- •Лекция №8. Управление требованиями к программному продукту. Case-средство Requisite Pro.
- •8.1 Нормативная основа
- •8.2 Основные положения
- •8.2.1 Цели управления требованиями
- •8.2.2 Участники управления требованиями
- •8.2.3 Политика в области управления требованиями
- •8.3 Обеспечение процессов управления требований
- •8.3.1 Распределение ответственности
- •8.4 Действия по управлению требованиями
- •8.4.1 Анализ требований
- •8.4.2 Разработка материалов проекта на основе требований
- •8.4.3 Контроль изменений требований
- •8.5 Измерения
- •8.6.2 Контроль со стороны руководителя проекта
- •8.6.3 Контроль со стороны гок
- •8.7 Стандарт оформления требований
- •8.7.1 Шаблон для разработки требований
- •8.7.2 Правила оформления требований
- •8.7.3 Структурирование требований
- •8.8 Показатели качества требований
- •8.9 Начало работы с RequisitePro
- •Лекция №9. Тестирование приложений. Функциональное тестирование, нагрузочное тестирование. Case-средства Rational Functional Tester, Rational Performance Tester.
- •9.1 Дестабилизирующие факторы и методы обеспечения высокого качества функционирования по
- •9.2 Использование среды автоматизированного тестирования Platinum testBytes
- •9.3 Методы обеспечения качества и надежности программных средств
- •9.4 Использование case для повышения качества по
- •9.5 Влияние стандартов открытых систем на качество по
- •9.6 Повышение качества по путем тестирования
- •9.6.1 Основные особенности процесса тестирования по
- •9.6.2 Организационные особенности тестирования
- •9.6.3 Сертификация по
- •9.6.4 Организация и планирование тестирования для обеспечения качества по
- •9.7 Важнейшие разделы iso 9003
- •Документирование системы качества
- •Корректирующие действия
- •Лекция №10. Стандарты, регламентирующие разработку по
- •10.1 Стандарт iso 12207:1995
- •10.3 Серия стандартов гост 34-ххх «Информационная технология»
- •Заключение
- •Библиографический список
- •Приложения Приложение а. Перечень ключевых слов
- •660049, Г. Красноярск, пр. Мира, 82
Лекция №10. Стандарты, регламентирующие разработку по
План лекции
Качество программной системы как совокупность ее свойств, которые обуславливают пригодность удовлетворять заданные или подразумеваемые потребности в соответствии с назначением системы.
Критерии оценки качества программных систем, характеристики качества и показатели качества. Общие характеристики качества программных систем: функциональность, надежность, удобство использования, эффективность, сопровождаемость, мобильность.
Оценка качества программных систем. ГОСТ 28195. Методика оценки качества ПС. Факторы качества, критерии качества, метрики и оценочные элементы. Методы оценки: расчетный, экспертный. Общая оценка качества ПС. Взаимосвязь факторов, критериев и метрик с фазами жизненного цикла ПС. Выбор оценочных элементов для программных систем различного назначения.
Методы управления качеством, используемые в современных технологиях программирования. Аттестация программных систем. Инструментальные системы оценки качества программных систем. Серии стандартов ГОСТ 19.ХХХ и ГОСТ 34.ХХХ. Стандарт ISO 12207. Стандарт SPICE (ISO/IEC 15504)
Введение
Полно и подробно ЖЦ, технология разработки и обеспечения качества сложных программных средств отражены в двух представленных ниже международных стандартах ISO.
10.1 Стандарт iso 12207:1995
Стандарт ISO 12207:1995 - Процессы жизненного цикла программных средств - определяет архитектуру, процессы, разделы и подразделы ЖЦ ПО, а также перечень базовых работ и детализирует содержание каждой из них. Архитектура ЖЦ ПО в стандарте базируется на трех крупных компонентах:
основы жизненного цикла ПО и определяющие работы;
процессы и работы, поддерживающие жизненный цикл ПО;
организация и управление жизненным циклом ПО.
Стандарт состоит из семи разделов и четырех приложений. Разделы 1-4 являются вводными. В первом разделе сформулированы цели стандарта, области его применения, подчеркнуты его гибкость и ограничения при использовании. В разделе 2 приведены нормативные ссылки на некоторые общие стандарты, поддерживающие разработку и качество ПО и их компонент, а также терминологию. В 3-м разделе аннотированы основные термины, используемые в дальнейшем. Общая структура основных (5-7) разделов и их краткое содержание изложено в разделе 4. Последующие - 5,6,7 разделы стандарта состоят из ряда подразделов, в которых подробно раскрывается содержание каждой работы и комментируются особенности их выполнения. Такие комментарии каждого подраздела состоят в среднем из 3-6 процессов - работ. Общее число работ и комментариев к ним в стандарте свыше 220.
Основные работы по подготовке, разработке эксплуатации и сопровождению программных средств изложены в разделе 5. Процесс приобретения или подготовки к созданию ПО (5.1) отражается 23 работами и начинается с инициализации проекта, анализа концепции, анализа рынка продуктов, выработки требований и состава поддерживающих документов, создания предварительного плана действий. Далее анализируются предложения возможных исполнителей на разработку и подготавливается проект контракта. Организуется отслеживание разработки, ее приемки и завершения. В подразделе 5.2. детализируются 23 процесса организации последующей подготовки к поставке ПО. Оцениваются отклики фирм на предложение по созданию проекта, заключается контракт, планируется жизненный цикл, организуются поддержка разработки отчетами и обеспечение развития, а также процессы сдачи и завершения проекта.
Основные 55 работ по созданию сложного комплекса программ представлены в подразделе 5.3. Подготовка проекта начинается с создания состава сопровождающих документов, выбора средств конфигурационного управления и обеспечения качества, а также выбора методов и средств технологического обеспечения разработки всей информационной системы. Анализируются и формализуются системные требования и критерии качества ПО: функциональные, коммерческие, пользовательские, защищенности, интерфейсов с внешней средой, сопровождаемости и т.д. На этой базе проектируется архитектура всей ИС, выделяются и анализируются требования к программным средствам. Рекомендуется при формировании характеристик качества ПО руководствоваться стандартом ISO 9126 и предложенной в нем номенклатурой показателей. Все эти работы отражаются совокупностью документов на каждую компоненту проекта, их взаимодействие и связи с внешней средой в ИС. Кодирование и тестирование каждой компоненты ПО должно быть оформлено совокупностью документов, удостоверяющих соответствие первичной спецификации, содержащих тесты и результаты тестирования.
Для интеграции компонент рекомендуется разрабатывать план работ, включающий их комплексирование, тестирование по всем разделам требований и показателям качества, а также документирование плана, результатов интеграции, использованных тестов, критериев оценки и полученных результатов. Далее ПО рекомендуется подвергать квалификационному (аттестационному) тестированию по всем разделам требований, при широком варьировании тестов, изменениях значений критериев, а также тестировать адекватность и полноту технической и пользовательской документации. Проверенный таким образом комплекс программ интегрируется в вычислительные средства информационной системы, средства визуализации и телекоммуникации. После объединения всех средств ИС система подвергается квалификационному тестированию и испытаниям на всю совокупность требований к системе, а также производится оформление и проверка полного комплекта документации. При этом рекомендуется использовать методы и средства поддержки жизненного цикла ПО, изложенные в разделе 6. Далее разработчику рекомендуется создать план инсталляции программного продукта в соответствии с контрактом и производить инсталляции, результаты которых документируются. Должна быть обеспечена поддержка разработчиком ПО.
Подраздел 5.4. из 9 работ посвящен поддержке эксплуатации. Подготовленный оператор должен освоить все процедуры применения ИС и в том числе тестирования ПО при функционировании на соответствие критериям оперативного использования в соответствии с документацией. Работы по поддержке пользователей состоят в помощи и консультации их при обнаружении дефектов или ошибок при применении ПО в составе информационной системы.
Эти работы взаимодействуют с работами подраздела 5.5, обеспечивающими сопровождение ПО (24 работы). Предполагается, что работы по сопровождению могут выполняться специалистами, которые не вели разработку ПО на предыдущих этапах. Специалисты анализируют сообщения об ошибках и предложения на модификацию ПО, селектируют их на соответствие требованиям контракта и оценивают целесообразность проведения изменений. Подготовленные изменения тестируются и проверяются по критериям, определенным в документации. При подтверждении корректности изменения в программах, производится корректировка документации. Далее планируется распространение проведенных изменений или новой версии пользователям, которым была поставлена предшествующая версия. Рекомендуется учитывать возможность одновременного использования у пользователей версий ПО с разным составом проведенных модификаций. Некоторые версии с определенной совокупностью изменений планируются для ликвидации и прекращения сопровождения.
В разделе 6 представлены около 70 технологических работ, поддерживающих жизненный цикл ПО. Процессы документирования ПО (6.1) охватывают планирование и обеспечение документирования, рекомендации по стандартизации, проектированию и разработке, а также по производству, конфигурационному управлению и сопровождению комплекта документации на ПО. Конфигурационное управление (6.2) включает план, как часть общего плана управления проектом, рекомендации по конфигурационной идентификации, контролю, учету, отчетности и развитию конфигурации.
Обеспечение гарантий качества (6.3) включает использование планирования, методологии, процедур и стандартов обеспечения качества в соответствии с контрактом с учетом доступных ресурсов. Рекомендуется обеспечивать качество конечного продукта в соответствии с документацией, путем планирования и выполнения специальных работ в процессе всего жизненного цикла ПО, а также на основе положений стандарта ISO 9001. Верификация ПО (6.4) включает организацию, планирование и техническое обеспечение верификации. Представлена структура контракта на верификацию, содержание процесса, состав требований, проектирование процесса верификации, обобщение и документирование результатов. Валидация (6.5) - удостоверение правильности (аттестация) должно гарантировать полное соответствие спецификациям, требованиям и документации на ПО и возможность его безопасного и надежного применения пользователем. Рекомендуется ее выполнять путем тестирования во всех возможных ситуациях исходных данных и проводить независимыми специалистами. По существу, этот процесс аналогичен сертификации, которая в стандарте не упоминается.
Управление проектом (6.6) сосредоточено, в основном, в подготовке и обеспечении планирования и управления ресурсами, персоналом, аппаратурой, программными средствами и инструментарием. Общий контроль проекта должен учитывать состояние доступных ресурсов и возможность изменения плана проектирования, а также систематические технические отчеты. Процессы ревизии - аудит (6.7) служат для установления соответствия реальных работ и отчетов требованиям, планам и контракту. Ревизоры не должны иметь прямой зависимости от проектировщиков ПО, они определяют состояние работ, использование ресурсов, соответствие документации спецификациям и стандартам, корректность тестирования. В процессе устранения дефектов и ошибок (6.8) решаются проблемы обеспечения последующего применения программных средств и их функционирования. Каждый дефект или ошибка должны быть определены, идентифицированы, описаны, проанализированы, и разрешены в процессе сопровождения в соответствии с контрактом.
Раздел 7 посвящен процессам организации жизненного цикла ПО, которые отражены 25-ю работами. Процессы управления (7.1) включают основные работы по управлению проектом, производством и средствами для обеспечения прикладных процессов по разработке, эксплуатации, сопровождению и поддерживающим процессам. Они охватывают разработку концепции управления, планирования, реализацию планов и контроль, отчетность и развитие проекта, а также его завершение.
Процессы образования инфраструктуры (7.2) включают выбор и установление аппаратных и программных средств, технологии, стандартов и обслуживания, используемых для разработки, сопровождения и обеспечения эксплуатации ПО. Инфраструктура должна модифицироваться и сопровождаться в соответствии с изменениями требований к разработке и подлежит конфигурационному управлению. Процессы совершенствования жизненного цикла ПО (7.3) состоят в установлении, оценивании, измерении, контроле и корректировке процессов жизненного цикла. Совершенствование ЖЦ ПО должно учитывать требования пользователей и развитие определенной технологии. Процессы обучения (7.4) определяются требованиями к проекту, должны учитывать необходимые ресурсы, управление и технические средства. Должны быть разработаны и представлены пользователю материалы, облегчающие обучение по соответствующему плану.
В приложении А (нормативное) изложены основы преобразования и обобщения базовой структуры этого международного стандарта для конкретного проекта. Следует подчеркнуть необходимость реализации двух важнейших вариантов адаптации положений и рекомендаций стандарта: на особенности ЖЦ создания потенциально мобильных ПО и на особенности ЖЦ ПО с использованием мобильных компонентов.
Приложение В (информационное) содержит руководство по процессам адаптации и преобразования ЖЦ ПО для конкретного проекта, а также конкретные рекомендации по возможным изменениям ряда работ из разделов 5 и 6 стандарта в зависимости от характеристик объекта разработки.
10.2 ISO 15504 SPICE
ISO/IEC TR 15504 SPICE создан с целью обеспечить руководство компаний- разработчиков программного обеспечения концептуальной основой и механизмом для оценки корпоративных бизнес- процессов. Подобный механизм может использоваться организациями, так или иначе вовлеченными в планирование, управление, мониторинг, контроль и улучшение процессов приобретения, поставки, разработки, использования, оценки и поддержки программного обеспечения (SW- процессы) [35].
Рисунок 27 – Структура процессов ISO/IEC TR 15504 SPICE
ISO/IEC TR 15504 SPICE предлагает структурированный подход к оценке или аттестации (assessment) SW- процессов:
самим предприятием или по его поручению, для определения текущего состояния внутренних процессов с целью их последующего улучшения;
самим предприятием или по его поручению, для определения соответствия внутренних процессов некоторым критериям;
самим предприятием или по его поручению, для определения соответствия другой организации требованиям конкретного контракта или типа разработки.
Рисунок 28 – Состав и соотношение процессов SPICE
Предлагаемая ISO/IEC TR 15504 SPICE основа:
поощряет и во многом ориентирована на внутренние проверки;
направлена на определение соответствия уровня управления оцениваемого процесса;
учитывает контекст, в котором проистекает исследуемый процесс;
предлагает систему рейтингов (a process profile) вамен стандартной для ИСО 9000 системы выполнено/не выполнено;
одинаково применим для предприятий любого размера и области деятельности.
Использование предлагаемой в ISO/IEC TR 15504 SPICE модели аттестации процессов приводит к:
переходу к непрерывному улучшению процессов и внедрению корректных механизмов для поддержки подобных программ;
проектированию процессов в соответствии с реальными бизнес- требованиями;
оптимизации использования ресурсов.
В свою очередь, организации, приобретающие ПО, получают ряд преимуществ:
снижение рисков при выборе поставщиков ПО, связанных с возможностью определения потенциала подрядчиков до момента оплаты работ;
организацию на месте соответствующего управления для снижения возможных последствий рисков;
создание численных методик для выбора и классификации потребностей бизнеса, требований и предварительных оценок стоимости ИТ- проектов в соответствии с определенными возможностями подрядчиков.
