Что обозначает модифицируемость пп

Характеристики качества программных продуктов: мобильность, надёжность, эффективность, модифицируемость, коммуникативность и др.

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

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

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

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

Модифицируемость ПП означает способность к внесению изменений, н-р, расширение функций обработки, переход на другую техническую базу обработки и т.д.

Коммуникативность ПП основана на максимально возможной их интеграции с другими программами, обеспечении обмена данными (экспорт/импорт баз данных, внедрение или связывание объектов обработки и т.д)

Точность – характеристика, определяющая точность результатов выполнения расчетов в соответствии с их назначением. Например, если в программе ведутся расчеты по банковским операциям, то разумная точность составляет три знака после запятой с последующим округлением до двух знаков. Если в программе производятся расчеты по биологическим экспериментам на молекулярном уровне, то может потребоваться точность до 10-12 десятичных знаков.

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

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

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

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

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

— маркетинг рынка программных изделий, спецификация требования к программному изделию;

— проектирование структуры программного продукта;

— программирование, тестирование, автономная и комплексная отладка программ;

— подготовка программной документации;

— выход на рынок программных изделий, распространение программного продукта;

— эксплуатация программного продукта пользователями;

— сопровождение программного продукта;

— снятие программного продукта с продажи, отказ от сопровождения.

Стандарт описывает 17 процессов жизненного цикла, распределенных по трем категориям – группам процессов:

2. Вспомогательные процессы жизненного цикла – Supporting Processes

2.2 Управление конфигурацией – Configuration Management

2.3 Обеспечение качества – Quality Assurance

2.6 Совместный анализ – Joint Review

2.8 Решение проблем – Problem Resolution

3. Организационные процессы жизненного цикла – Organizational Processes

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

Источник

Что обозначает модифицируемость пп

Все программы по характеру использования и категориям пользователей можно разделить на два класса — утилитарные программы и программные продукты (изделия).

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

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

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

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

Программные продукты могут создаваться как:

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

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

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

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

Сопровождение программного продукта — поддержка работоспособности программного продукта, переход на его новые версии, внесение изменений, исправление обнаруженных ошибок и т.п.

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

Основными характеристиками программ являются:

Программные продукты имеют многообразиепоказателей качества :

Мобильность программных продуктов означает их независимость от технического комплекса системы обработки данных, операционной среды, сетевой технологии обработки данных, специфики предметной области и т.п. Мобильный (многоплатформный) программный продукт может быть установлен на различных моделях компьютеров и операционных систем, без ограничений на его эксплуатацию в условиях вычислительной сети. Функции обработки такого программного продукта пригодны для массового использования без каких- либо изменений.

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

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

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

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

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

Коммуникативность программных продуктов основана на максимально возможной их интеграции с другими программами, обеспечении обмена данными в общих форматах представления (экспорт/импорт баз данных, внедрение или связывание объектов обработки и др.).

В условиях существования рынка программных продуктов важными характеристика­ми являются:

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

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

Жизненный цикл программного продукта

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

Маркетинг и спецификация программного продукта предназначены для изучения требований к создаваемому программному продукту, а именно:

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

Если программный продукт создается как заказное программное изделие для определенного заказчика, на данном этапе также важно правильно сформулировать и документировать задание на его разработку. Ошибочно понятое требование к программному продукту может привести к нежелательным результатам в процессе его эксплуатации.

Проектирование структуры программного продукта связано с алгоритмизацией процесса обработки данных, детализацией функций обработки, разработкой структуры программного продукта (архитектуры программных модулей), структуры информационной базы (базы данных) задачи, выбором методов и средств создания программ — технологии программирования.

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

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

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

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

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

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

Длительность жизненного цикла для различных программных продуктов неодинакова. Для большинства современных программных продуктов длительность жизненного цикла измеряется в годах (2-3 года). Хотя достаточно часто встречаются на компьютерах и давно снятые с производства программные продукты.

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

Источник

Практическая работа Оценка качественных показателей ПС

Что обозначает модифицируемость пп. Смотреть фото Что обозначает модифицируемость пп. Смотреть картинку Что обозначает модифицируемость пп. Картинка про Что обозначает модифицируемость пп. Фото Что обозначает модифицируемость пп

Оценка качественных показателей ПС

Цель работы: Научиться проводить оценку качества программного средства

по различным показателям.

Основные теоретические сведения

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

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

Существуют и другие варианты легального распространения программных продуктов:

— freeware – бесплатные программы, свободно распространяемые, поддерживаются самим пользователем, который правомочен вносить в них необходимые изменения;

— shareware – некоммерческие (условно-бесплатные) программы, которые могут использоваться, как правило, бесплатно.

Программные продукты (ПП) могут создаваться как:

— индивидуальная разработка под заказ;

— разработка для массового распространения среди пользователей.

Основными характеристиками программ являются:

    алгоритмическая сложность (логика алгоритмов обработки информации); состав и глубина проработки реализованных функций обработки; полнота и системность функций обработки; объём файлов программ; требования к операционной системе и техническим средствам обработки со стороны программного средства; объём дисковой памяти; размер оперативной памяти для запуска программ; тип процессора; версия операционной системы; наличие вычислительной сети и др.

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

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

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

Исходная полезность характеризуется следующими показателями:

— учет человеческого фактора;

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

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

Удобство эксплуатации включает следующие показатели качества:

Модифицируемость ПП означает способность к внесению изменений, например расширение функций обработки, переход на другую техническую базу обработки и т. п.

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

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

Для оценки качества программного средства (ПС) используются различные способы получения информации о нём:

— измерительный – основан на получении информации о свойствах и характеристиках ПС с использованием инструментальных средств (например, объём ПС);

— регистрационный – получение информации во время испытаний или функционирования ПС, когда регистрируется и подсчитываются определённые события (число сбоев и отказов и др.);

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

— расчётный – на ранних этапах разработки применятся теоретические и эмпирические зависимости, статистические данные, накапливаемые при испытаниях, эксплуатации и сопровождении ПС;

— социологические – основаны на обработке специальных анкет-вопросников.

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

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

Скачать калькулятор любого производителя или взять разработанный студентами. Сравнить два программных продукта: калькулятор фирмы Microsoft и калькулятор, написанный студентами (скачанный). Сравнение проводить по следующим оценочным элементам: надежность ПС, сопровождаемость, корректность. Критерии оценки (1 или 0) Все сравнение занести в следующую таблицу

Оценка калькулятора фирмы Microsoft

Оценочные элементы фактора «Надежность ПС»

Наличие требований к программе по устойчивости функционирования при наличии ошибок во входных данных

Возможность обработки ошибочных ситуаций

Полнота обработки ошибочных данных

Наличие тестов для проверки допустимых значений входных данных

Наличие системы контроля полноты входных данных

Наличие средств контроля корректности входных данных

Наличие требований к программе по восстановлению процесса выполнения в случае сбоя ОС, внешних устройств, процессора

Наличие требований к программе по восстановлению результатов при отказах ОС, внешних устройств, процессора

Наличие средств восстановления при сбоях оборудования

Наличие возможности повторного старта с точки прерывания

Наличие обработки неопределенностей

Наличие централизованного управления процессами, конкурирующими из-за ресурсов

Наличие возможности автоматически обходить ошибочные ситуации в процессе вычисления

Оценочные элементы фактора «Сопровождаемость»

Наличие комментариев в точках входа и выхода в программу

Осуществляется ли передача результатов работы модуля через вызывающий его модуль

Оценка программы по числу циклов

Используется ли язык высокого уровня

Наличие проверки корректности передаваемых данных

Использовании при построении программ метода структурного программирования

Соблюдение принципа процесса разработки программы сверху вниз

Наличие ограничений на размеры модуля

Наличие модульной схемы программы

Оценочные элементы фактора «Корректность»

Наличие всех необходимых документов для понимания и использования ПС

Наличие описание схемы иерархии модулей программы

Наличие описаний основных функций

Наличие описаний частных функций

Наличие описания данных

Наличие описания алгоритмов

Наличие описания интерфейсов между модулями

Наличие описания всех параметров

Наличие описание методов настройки системы

Наличие описание способов проверки работоспособности программы

Реанимация всех модулей системы

Реанимация всех основных функций

Реанимация всех алгоритмов

Наличие определений всех данных: переменные, индексы., массивы и пр.

Наличие интерфейсов с пользователем

Отсутствие противоречий в выполнении основных функций

Отсутствие противоречий в выполнении частных функций

Отсутствие противоречий в выполнении алгоритмов

Правильность реализаций интерфейса с пользователем

Отсутствие противоречий в настройке системы

Комплектность документации в соответствии со стандартами

Контрольные вопросы

Для чего предназначены программные продукты? Какие варианты легального распространения программных продуктов существуют? Чем определяется надежность ПП? Как оценивается эффективность ПП? Что обозначает модифицируемость ПП? На чем основана коммуникативность ПП?

Источник

Общие сведения о программном обеспечении

На рис.1.1 показаны три основные группы программных технологий. Базовые технологии по мере своего развития влияют на массовые тенденции и дисциплины, и они применяются во всех областях и направлениях программной разработки. Большинство из известных сейчас таких технологий существуют последние 25 лет. Технологические концепции и методологии объединяют базовые методики, которые используются во многих различных отраслях и продуктах. Консолидированные технологии опираются на концепции и предоставляют готовые технические решения. В тех случаях, когда технологии принадлежат к двум таким группам, они отнесены к более общей группе.

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

Каждая из этих тенденций оказывает серьезное влияние на инженерные продукты и на формирование программной отрасли. Microsoft с Windows или Sun с Java – пример того, как отдельная компания определяет развитие технологии, но технологии от этих производителей добились успеха благодаря тому, что они создавались и широко распространялись в отраслях. Невозможно даже представить себе Windows без Intel и всей экосистемы поставщиков и провайдеров сервисов. Точно так же банки создали банкоматы и разработали множество связанных с ними программных технологий, таких как распределенная и защищенная обработка транзакций. Компании розничной торговли стимулировали разработку кассовых аппаратов и необходимого программного обеспечения для поддержки цепочки поставки, в том числе штрих-коды и средства радиочастотной идентификации ( RFID ).

Некоторые технологии прошли очень долгий период развития либо никогда не были полностью разработаны. График их перехода к широкому использованию напоминает синусоиду, что свойственно инновациям, которые переходят от этапа начальных исследований и опытных эксплуатаций к широкому отраслевому применению, а затем все повторяется снова [25]. Это объясняет, почему успешные компании практически в одночасье могут потерпеть крах – просто потому, что они своевременно не предложили определенную технологию. Программные менеджеры также часто склонны к стабилизации, а не к росту, – их интересует эффективность, и они недооценивают экспериментирование и инновации.

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

Что обозначает модифицируемость пп. Смотреть фото Что обозначает модифицируемость пп. Смотреть картинку Что обозначает модифицируемость пп. Картинка про Что обозначает модифицируемость пп. Фото Что обозначает модифицируемость пп

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

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

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

1.3. Качество и характеристики программного обеспечения

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

Каждая ПС должна выполнять определенные функции, т.е. делать то, что задумано. Хорошая ПС должно обладать еще целым рядом свойств, позволяющим успешно ее использовать в течение длительного периода, т.е. обладать определенным качеством. Качество ( quality ) ПС – это совокупность его характеристик, которые влияют на его способность удовлетворять заданные потребности пользователей [23]. Это не означает, что разные ПС должны обладать одной и той же совокупностью таких свойств в их наивысшей степени. Повышение качества ПС по одному из таких свойств часто может быть достигнуто лишь ценой изменения стоимости, сроков завершения разработки и снижения качества этой ПС по другим его свойствам. Качество ПС является удовлетворительным, когда она обладает указанными свойствами в такой степени, чтобы гарантировать успешное ее применение.

Совокупность свойств ПС, которая образует удовлетворительное для пользователя качество ПС, зависит от условий и характера эксплуатации этой ПС, т.е. от позиции, с которой должно рассматриваться качество этой ПС. Поэтому при описании качества ПС, прежде всего, должны быть фиксированы критерии отбора требуемых свойств ПС. В настоящее время критериями качества ПС ( criteria of software quality ) принято считать:

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

К основным характеристикам программ и программных систем относится сложность программной системы. При оценке сложности программ, как правило, выделяют три основные группы метрик [23]:

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

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

К группе оценок размера программ можно отнести также и метрику Холстеда. Основу метрики Холстеда составляют четыре измеряемых характеристики программы:

Что обозначает модифицируемость пп. Смотреть фото Что обозначает модифицируемость пп. Смотреть картинку Что обозначает модифицируемость пп. Картинка про Что обозначает модифицируемость пп. Фото Что обозначает модифицируемость пп– число уникальных операторов программы, включая символыразделители, имена процедур и знаки операций (словарь операторов);

Что обозначает модифицируемость пп. Смотреть фото Что обозначает модифицируемость пп. Смотреть картинку Что обозначает модифицируемость пп. Картинка про Что обозначает модифицируемость пп. Фото Что обозначает модифицируемость пп– число уникальных операндов программы (словарь операндов); N1 – общее число операторов в программе;

Что обозначает модифицируемость пп. Смотреть фото Что обозначает модифицируемость пп. Смотреть картинку Что обозначает модифицируемость пп. Картинка про Что обозначает модифицируемость пп. Фото Что обозначает модифицируемость пп– общее число операндов в программе.

Опираясь на эти характеристики, получаемые непосредственно при анализе исходных текстов программ, М. Холстед вводит следующие оценки:

словарь программы Что обозначает модифицируемость пп. Смотреть фото Что обозначает модифицируемость пп. Смотреть картинку Что обозначает модифицируемость пп. Картинка про Что обозначает модифицируемость пп. Фото Что обозначает модифицируемость пп,

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *