Обеспечение качества функционирования компьютерных систем · работа 1/5

Качество компьютерных систем: характеристики и метрики

Как превратить «работает хорошо» в требования, которые можно проверить. Сначала изучите теорию и интерактивные модели, затем выполните три практических задания и тест внизу страницы. Всё сохраняется в этом браузере автоматически.

Теория → практика → тест → PDF15 проверяемых вопросов3 практических задания3 развёрнутых ответаРаботает без интернета
Изучить теориюПерейти к тестуИсточники
01

Качество — это не только отсутствие ошибок

Представьте сервис электронного журнала колледжа «Кампус». В нём студент просматривает оценки, преподаватель выставляет результаты, а администратор создаёт учётные записи. Сегодня вход работает, но загрузка страницы занимает 25 секунд; завтра сервис быстро открывается, однако показывает чужие оценки. В обоих случаях система неудовлетворительна, хотя причина совершенно разная.

Качество компьютерной системы — степень, в которой система удовлетворяет установленным и подразумеваемым потребностям заинтересованных сторон в заданных условиях. Оно относится не только к коду: сеть, сервер, база данных, оборудование, процессы эксплуатации и работа пользователя влияют на результат.

ОжиданияЧто нужно студенту и преподавателю
→
ТребованияПроверяемые формулировки
→
ИзмерениеТесты, метрики, наблюдения
→
РешениеСоответствует / нужны улучшения
Учебная схема: последовательность показана упрощённо.

Ошибка в программе

Страница оценок показывает неправильную дисциплину. Нарушена функциональная корректность.

Ошибка эксплуатации

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

QA (Quality Assurance) помогает строить процесс предотвращения дефектов; QC (Quality Control) оценивает конкретный результат: проверки, измерения и испытания. Тестирование — важная часть контроля, но не весь контроль качества.
02

Характеристики качества по ISO/IEC 25010

В стандарте ISO/IEC 25010:2023 модель качества продукта содержит девять характеристик. Для начального курса полезно связывать каждую не с абстрактным названием, а с конкретным риском для «Кампуса». Стандарт используется как ориентир, а не как обещание, что все характеристики можно измерить одним числом.

ХарактеристикаО чём спрашиваемПример проверки
Функциональная пригодностьДелает ли система то, что требуется?Оценка сохраняется и отображается правильно
ПроизводительностьДостаточно ли быстро и экономно расходуются ресурсы?95-й процентиль ответа при нагрузке
СовместимостьМожет ли система взаимодействовать с окружением?Работа в поддерживаемых браузерах
Способность к взаимодействиюПонятно ли человеку пользоваться продуктом?Студент находит ведомость без подсказок
НадёжностьСтабильно ли работает и восстанавливается?Время доступности, восстановление после сбоя
БезопасностьЗащищены ли данные и действия?Студент не может изменить чужие оценки
СопровождаемостьУдобно ли анализировать, изменять и проверять?Тесты и понятные журналы ошибок
ГибкостьМожно ли адаптировать систему к новым условиям?Перенос на другую платформу
Безопасность применения (safety)Не причиняет ли работа системы неприемлемый вред?Контроль критических ошибочных действий в значимых системах
Не путайте security (защита от несанкционированных действий) и safety (защита людей, имущества, среды от вреда). В конкретном учебном сервисе обе области важны, но риски у них разного масштаба.
03

Требование: измеримое или расплывчатое?

Фраза «сайт должен работать быстро» не позволяет проверить результат однозначно. Одному пользователю достаточно 5 секунд, другой считает долгим ожидание более секунды. Поэтому требование формулируют с операцией, условиями, измерением, порогом и способом проверки.

РасплывчатоПроверяемо
Доступность должна быть высокойЗа календарный месяц доля успешных запросов чтения журнала ≥ 99,9% при оговорённых условиях измерения
Страницы открываются быстроПри 100 одновременных пользователях p95 серверного ответа GET /grades ≤ 800 мс
Система безопаснаПользователь роли student получает отказ 403 при попытке изменить оценку через API
Резервные копии хорошиеКопия БД создаётся каждые 6 ч; контрольное восстановление проводится ежемесячно

Критерий приёмки описывает наблюдаемый результат проверки. Требования должны быть реалистичны: способ измерения и границы ответственности согласуются заранее. Например, задержка ответа сервера и полная загрузка страницы в браузере — не одно и то же.

📍 Сквозной кейс «Кампус»

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

04

SLI, SLO, SLA: как не путать три понятия

SLI — измеряемый индикатор (например, доля успешных запросов). SLO — выбранная цель для индикатора (например, не менее 99,9% за 30 дней). SLA — договорное обязательство, которое может включать условия и последствия невыполнения. SLO автоматически не превращается в SLA.

SLIФактические измерения
→
SLOЦелевой порог
→
СравнениеЕсть ли нарушение?
→
ДействиеИсправление / пересмотр приоритетов
Учебная схема: последовательность показана упрощённо.

Доступность и бюджет недоступности

Для учебных расчётов по времени используем формулу: доступность = (плановое время наблюдения − недоступность) / плановое время × 100%. Такой расчёт применим, если договорились измерять именно временную доступность. Другой SLI может считать долю успешных запросов, и итог будет другим.

30 дней = 30 × 24 × 60 = 43 200 минут SLO 99,9% → допустимая недоступность = 43 200 × (1 − 0,999) = 43,2 мин

🧮 Интерактив: доступность и бюджет ошибок

Укажите длительность наблюдения, целевую доступность и фактическую недоступность. Изменение параметров сразу обновит расчёт.

Полоса показывает израсходованную долю допуска; значения более 100% отображаются как заполненная полоса с пояснением.

05

Как собирать доказательства качества

Метрика полезна только при понятном источнике данных. Для производительности снимают распределение задержек, для доступности — результаты синтетических или пользовательских запросов, для защиты данных — результаты проверки ролей, для восстановления — реальные испытания резервных копий.

МетодЧто получаемОграничения
Функциональные тестыЕсть ли ожидаемый результат на конкретных входахНе гарантируют отсутствия неизвестных дефектов
Нагрузочный тестПоведение под заданной нагрузкойЗависит от среды и профиля запросов
МониторингВременной ряд показателей в эксплуатацииНужны пороги, качество данных и контекст
Аудит настроекСоответствие параметров утверждённой конфигурацииНе заменяет тестов поведения
Опрос и наблюдениеПонятность интерфейса и реальные проблемы людейВыборка и условия влияют на вывод

Почему среднее время ответа может обманывать

Из 100 запросов 95 могли завершиться за 100 мс, а пять — за 10 секунд. Среднее около 595 мс скрывает проблему для «медленной» части аудитории. p95 помогает оценивать хвост распределения, но трактовка зависит от способа расчёта. Точность сбора и период наблюдения необходимо фиксировать.

06

Бюджет ошибок: как качество влияет на темп изменений

Допустим, «Кампус» обещает SLO 99,9% успешных запросов за 30 дней. Бюджет ошибок равен 0,1% запросов в том же окне. Если за период поступил миллион подходящих запросов, в бюджете условно допускается до 1000 неуспешных. Если выбрать временной SLI, бюджет будет выражен минутами, а не запросами. Нельзя смешивать эти модели в одном расчёте.

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

СитуацияРазумное действиеПочему
Ошибка в экспериментальной страницеИсправить по обычному приоритетуВлияние ограничено
Массово не сохраняются оценкиПриоритетно восстановить функциюНарушена критичная пользовательская операция
Бюджет ошибок на исходеОграничить риск новых релизовВероятность нарушения SLO высока
Бюджет ошибок не означает разрешение игнорировать безопасность или потерю данных. Критичные ограничения могут действовать независимо от процента успешных запросов.
07

Как выбирать измерения и не искажать выводы

Сильная метрика имеет чёткий числитель, знаменатель, интервал и источник. Для успешности запросов потребуется договориться, какие HTTP-коды считаются успехом, включать ли сетевые тайм-ауты и считать ли ошибки, вызванные самим клиентом. Например, не все ответы 4xx — дефекты системы: пользователь мог запросить несуществующую страницу.

Проводя нагрузочный тест, зафиксируйте состав тестовых данных, количество одновременных пользователей, профиль операций, характеристики сервера и время прогрева. Результат «справился с тысячей запросов» без длительности и условий почти неинформативен. Тест с пустой базой и тест с миллионом оценок могут дать разную задержку.

ДанныеОткуда и когда измерили
→
ПравилоЧто посчитали успехом
→
РезультатЗначение и разброс
→
ВыводСравнение с требованием
Учебная схема: последовательность показана упрощённо.

Типичная ошибка

Сервис обработал 950 успешных запросов из 1000. Доля успеха равна 95%. Не следует писать «доступность 95% за месяц», если эти запросы пришли лишь в течение пяти минут: измерена выборка запросов, а не весь месяц работы.

08

Матрица требований и приоритизация проверок

Прослеживаемость связывает требование с тестами, метриками, дефектами и принятым решением. Без неё команда может пройти сотню тестов и не заметить, что самое опасное требование никто не проверял. Для учебного проекта достаточно небольшого реестра: идентификатор, формулировка, способ проверки, критерий и ответственный.

IDТребованиеДоказательство
Q-01Студент читает только свои оценкиНегативные тесты доступа с разными ID
Q-02p95 чтения ≤ 800 мсНагрузочный протокол с условиями
Q-03Система восстанавливается ≤ 4 чПротокол испытания аварийного восстановления
Q-04Все новые API-изменения проходят интеграционные тестыОтчёт CI для конкретной сборки

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

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

Практика: паспорт качества системы «Кампус»

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

Задание 1. Выберите три главных риска

  1. Назовите три проблемы, из-за которых «Кампус» может оказаться некачественным.
  2. Укажите, какую характеристику качества затрагивает каждая проблема.
  3. Расположите риски по важности и объясните порядок.

Задание 2. Перепишите пожелания в требования

  1. Преобразуйте «должен быстро открываться», «должен быть надёжным», «должен защищать оценки» в три измеримых требования.
  2. Для каждого укажите условие, порог и способ проверки.
  3. Объясните, почему одной успешной проверки недостаточно для гарантии качества.

Задание 3. Рассчитайте доступность

  1. Для 30 дней и SLO 99,9% определите допустимый простой в минутах.
  2. Предположите два инцидента: 18 минут и 27 минут. Рассчитайте суммарную недоступность и фактическую доступность.
  3. Запишите вывод: выполнен ли SLO? Покажите формулу.
Числа в заданиях — учебные допущения, а не нормативные значения для реального электронного журнала.
Часть II · проверка знаний

Тест по изученному материалу

Выберите один ответ в каждом вопросе и нажмите «Проверить тест». После проверки появятся разборы. Практические задания и развёрнутые вопросы проверяет преподаватель — в процентах они не учитываются.

0 ответовПовторная попытка разрешена

Часть A. Выберите правильный ответ

Часть Б. Объясните своими словами

Эти вопросы оценивает преподаватель. Не копируйте определения: приведите собственный аргумент и, где необходимо, расчёт или пример.

Источники для дополнительного изучения

Теоретические сведения адаптированы для обучения. Интерактивные расчёты и сценарии — учебные модели, не измерения работающей инфраструктуры. Внешние ссылки нужны только для дополнительного чтения: сама работа открывается без интернета.

  1. ISO/IEC 25010:2023 · Модель качества продукта
  2. Google SRE · Service Level Objectives

Перед сдачей

✓ Заполнены ФИО, группа и дата.
✓ Выполнены три практических задания.
✓ Выбраны и проверены ответы на 15 тестовых вопросов.
✓ Записаны три развёрнутых ответа.

Нажмите «Отправить работу — сохранить PDF» и в диалоге печати выберите «Сохранить как PDF». В PDF попадут ФИО, ответы, результат тестирования и задания. Никакие данные не отправляются на сервер.