Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
60
Добавлен:
17.04.2018
Размер:
25.04 Кб
Скачать

Лекция №1

МП-35 Шачнев Илья Васильевич

МИЭТ

Москва

2018

В разработке систем разные специалисты должны решать одну задачу. Задачу создания системы в соответствии с требованиями, которые задал заказчик. Кроме ТЗ, существуют технологические требования (требования к процессам разработки, сопровождения и внедрения, жизненный цикл проекта). Это всё можно реализовать только в рамках единой схемы работы всего комплекса людей в соответствии с поставленными задачами. Схема должна включать в себя планирование работ, обеспечение целостности и непротиворечивости узлов системы, направлена на обеспечение гарантии соответствия создаваемой системы ожиданиям заказчика. Если этого всего не будет, не будут соблюдаться сроки, ресурсный план, что грозит штрафными санкциями от заказчика. Что означает - разработчику могут не платить денег, чтобы выплачивать зарплаты.

На сегодняшний день технологии быстро прогрессируют. Сначала были механические вычислители, их сменили механические арифмометры, потом Нейман сформировал принципы, в соответствии с которым можно было построить автоматический вычислитель, имеющий программную поддержку. Появились большие машины. Ввод информации был перфокарточным. Позже появились машины единой серии. На машинах ЕС можно было переносить информацию с одной машины на другую с помощью магнитных бабин. Тогда же уже появилась возможность использования магнитных дисков. Появлялись мониторы, появились дисплейные классы, заодно появились системы массового обслуживания. Персональные компьютеры появились в августе 1981. ABM разработала в своё время стандарт на компьютеры, поэтому их стали называть ABM PC совместимые. Вместе с прогрессом аппаратным растёт и сложность программного обеспечения, увеличиваются объёмы программ, и увеличивается трудоёмкость их создания. Если объём программ увеличивается, увеличивается и кол-во ошибок, которые найдены и которые ещё остались в программах. Как говорил Билл Гейтс: “В любой идеально отлаженной программе существует хотя бы одна фатальная ошибка”. Если остаются ошибки, значит уменьшается качество ПО. Стало быть, возникает недовольство заказчика по поводу заказанной работы.

Заказчик хочет, чтобы работа была выполнена быстро и дёшево. Разработчики начинают искать компромиссы, так как невозможно обеспечить качество. На ранних этапах, когда нет полного объёма данных и сведений о будущей системе, очень сложно оценить ресурсные вопросы: ТЗ, сроки, ресурсы, необходимые для построения системы. На полномасштабную модель требуются расходы, дополнительные сроки. Разработка “быстро и дёшево” приводит к таким проблемам:

  • Не полная реализация цели и требования заказчика к функциям и качеству комплексов программ.

  • Низкая достоверность оценок бюджета, сроков и ресурсов для разработки ПС и БД при заключении контрактов, вследствие чего не выполняются требования заказчика.

  • Низкий контроль за ходом проекта, из-за чего велик риск отсутствия у конечного продукта заданного качества, нарушения начальных планов, невыполнения функциональных и экономических разделов контрактов на разработку ПС

Стратегическая задача у всех – обеспечение качества программных средств и баз данных. Для решения этой задачи привлекаются люди разных сфер деятельности. Для создания программного продукта, системы нужны системные аналитики, которые позволят провести глубокий анализ информационный, организационный, процессный для того чтобы сформировать концепцию. На этой основе системные архитекторы должны создать скелет системы, а потом менеджеры будут руководить процессом создания системы. В зависимости от их профессионализма, зависит качество системы. Для успешного решения поставленной задачи менеджеры, системные аналитики и системные архитекторы должны знать современные методы, технологии, международные стандарты, в том числе российские, системы обеспечения качеством и участвовать в проведении верификации, тестирования и сертификации программных продуктов.

Качество – философская категория: неотделимая от бытия объекта его существенная определённость, благодаря которой он является именно этим, а не иным объектом.

Качество продукции – критическая оценка потребителем степени соответствия её свойств, показателей качества, индивидуальным и общественным ожиданиям, обязательным нормам в соответствии с её назначением.

У любой продукции есть две характеристики: свойства и полезность.

Свойства – объективные стороны объекта без оценивания важности этих свойств для потребителя.

Полезность – способность продукции приносить пользу и удовлетворять конкретного потребителя.

Формулировок качества довольно много. С позиции ISO качество представляется как полнота свойств и характеристик продукта, процесса или услуги, которые обеспечивают способность удовлетворять заявленным или подразумеваемым потребностям.

Институт инженеров по электротехнике и электронике даёт такое определение качества в отношении непосредственно программного обеспечения – это степень, в которой оно обладает требуемой комбинацией свойств.

Качество ПО – совокупность свойств, характеризующее способность ПО удовлетворять потребностям пользователя в соответствии с предназначением. Это определение не полностью покрывает все стороны понятия качества, но является наиболее удачным вариантом, охватывающее наибольшее число аспектов.

Качество ПО представляет собой связку некоторых понятий. Во-первых, это свойства программы или программного продукта – особенности, которые объективно присущи этой программе, которые проявляются в её жизненном цикле(разработке, применения, сопровождения). Во-вторых, это характеристика программы – понятие, отображающее проявление отдельного фактора, присущего программа свойства. Характеристика программы – проявляемый и измеримый атрибут свойства.

Если у нас есть понятие качество, откуда-то оно должно браться, кто-то должен его поддерживать, значит нужно его обеспечивать. Обеспечение качества – совокупность планируемых и систематически проводимых мероприятий, необходимых для уверенности в том, что продукция или процессы удовлетворяют определённым требованиям к качеству. Откуда берутся эти мероприятия и кто их реализует? Это выполняет система качества. Система качества – совокупность организационной структуры, ответственности, процедур, процессов и ресурсов, обеспечивающую осуществление общего руководства качеством.

Качество программного средства – совокупность свойств программного средства, которые обуславливают его пригодность удовлетворять заданные или подразумеваемые потребности в соответствии с его назначением.

Применительно к ПС система обеспечения качества – совокупность методов и средств организации управляющих и исполнительных подразделений предприятия, участвующих в проектировании, разработке и сопровождении комплексов программ с целью придания им свойств, обеспечивающих удовлетворение заказчиков и потребителей при минимальном или допустимом расходовании ресурсов.

Везде идёт удовлетворение потребностей заказчика и потребителей, везде идёт соответствие требованиям заказчика, но так получается далеко не всегда. Несоответствие фактических и требуемых показателей качества объектов или процессов – дефекты или ошибки. Дефекты и ошибки бывают разного характера. Для нивелирования дефектов и ошибок разрабатываются первичные стимулы для принятия и реализации решений по изменению измеряемых значений качества.

Под ошибкой подразумевает дефект, погрешность или неумышленное искажение объекта или процесса. Умышленное искажение является вредительством. Распространение вирусов и вирусного ПО – один из видов вредительства. Объектами уязвимости являются:

  • Динамический вычислительны процесс обработки данных, автоматизированной подготовки решений и выработки управляющих воздействий на потребителей обработанной информации.

  • Информация, накопленная в базах данных, отражающая объекты внешней среди и процессы её обработки.

  • Объектный код программ, исполняемых вычислительными средствами в процессе функционирования ПС.

  • Информация, выдаваемая потребителям и на исполнительные механизмы, являющаяся результатом обработки исходных данных и информации, накопленной в БД.

Для рассмотрения дестабилизирующих факторов, можем сразу поделить их на два категории – внутренние и внешние.

Внутренние присущи самим объектам уязвимости:

  • Системные ошибки при постановке целей и задач

  • Алгоритмические ошибки разработки(методические).

  • Ошибки программирования в текстах программ и описаниях данных в документации

  • Недостаточная эффективность методов и средств защиты программ от сбоев и отказов

  • Недостаточная эффективность методов и средств обеспечения качества и надёжности функционирования ПС

Внешние обусловлены средой, в которой эти объекты функционируют

  • Ошибки персонала в процессе эксплуатации ПС.

  • Искажение в каналах информации, поступающей от источников и передаваемой потребителям.

  • Недопустимые для конкретной ИС характеристики потоков внешней информации

  • Сбои и отказы в аппаратуре.

  • Изменения состава и конфигурации аппаратуры ИС за пределы, отраженные в эксплуатационной документации.

Все вышеперечисленные факторы в наибольшей степени определяются технологиями, которые реализуются на всех этапах жизненного цикла. Очень многие факторы связаны с тем, что нечётко, неверно, некорректно проводится документирование. Степень влияния всех внутренних дестабилизирующих факторов, а также некоторых внешних угроз на качество ПС определяется в наибольшей степени качеством технологий проектирования, разработки, сопровождения и документирования ПС и их основных компонентов.

Помимо внешних и внутренних факторов, существует целая группа общих факторов, которые влияют на качество продукции. Например: общественные ожидания и настроения потребителей, качество проектов (совершенство организации, регламентная документация), качество исполнения (совершенство технологий, уровень образованности специалистов), уровень конкуренции рынка.

Помимо качества продукта, существует качество функционирования – множество свойств, обусловливающих пригодность ПС обеспечивать надёжное и своевременное представление требуемой информации потребителю для её дальнейшего использования по назначению. Для того чтобы эффективно использовать информацию, нужно иметь метрику, меру и шкалу и должен быть определён способ измерения. Необходимо сопоставлять полученные данные с требуемыми значениям, чтобы оценивать функциональную пригодность.

На практике важно оценивать качество программ не только в завершённом виде, но и в процессе их проектирования, разработки и сопровождения. Достижимое качество ПС определяется методами и инструментальными средствами, применяемыми для обеспечения всего их жизненного цикла.

Фактор качества – свойство, в той или иной степени обуславливающее качество программного обеспечения. Как правило, одного фактора маловато для оценки качества. Для того чтобы прийти к решению, что такое хорошо, а что такое плохо, нужно выработать критерий. Система критериев позволяет отделить хорошее от плохого и принять решение, что это хорошо, а вот это лучше. Критерий качества – понятие признак или численный показатель, который характеризует оцениваемый фактор качества. Критерий качества – это своеобразная планка, которая позволяет нам отделять хорошее от плохого. Сам критерий может быть представлен различными способами. Это может быть какое-то выражение, логическая функция, выражение, составленное из характеристик качества. Для вычисления значение критерия используют одну или несколько метрик.

Метрика – мера количественной оценки качества ПО по заданному критерию, система или способ измерений качества программного обеспечения.

Оценочный элемент – измеримая характеристика программного обеспечения, имеющая численное значение в избранной измерительной шкале.

Показатель качества – численное значение критерия качества, определяющее степень в которой программе присуще определённое критерием свойство.

Согласно ГОСТ 15467-79 показатель качества – количественная характеристика, одного или нескольких свойств программной продукции, составляющих её качество применительно к определённым условиям её создания и эксплуатации.

Базовое значение показателя качества – реально достижимое значение показателя, отражающее современный уровень развития программного обеспечения.

Оценка качества программного обеспечения – совокупность операция, включающих выбор номенклатуры (состава) показателей качества, определения значений этих показателей и сравнение их с базовыми значениями.

Сертификация – процесс определения соответствия программного обеспечения дествующему стандарту качества.

Верификация – процесс определения соответствия программного обеспечения предназначению.

Аттестация – процесс подтверждения функциональной пригодности обеспечения.

Соседние файлы в папке Лекция1-2