Федеральное агентство по образованию Российской Федерации
ГОУ ВПО
«Челябинский государственный педагогический университет»
КАФЕДРА ИНФОРМАТИКИ И МЕТОДИКИ ПРЕПОДАВАНИЯ ИНФОРМАТИКИ
РАБОТА ПРОВЕРЕНА Рецензент ……………. /Лебедева Т.Н./ « …. » ……………….. 2009 г. | ДОПУСТИТЬ К ЗАЩИТЕ Заведующий кафедрой …………….. /Леонова Е. А./ « …. » ……………… 2009 г. |
КРИТЕРИИ КАЧЕСТВА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
Квалификационная работа
Руководитель: ст.п. кафедры информатики и МПИ …………… / Боровская Е.В./ « …. » …………….…. 2009 г. |
Автор работы: Студентка группы 591 Никитина Светлана Владимировна Работа защищена с оценкой ……………………… « …. » ……………….. 2009 г. |
Челябинск
2009
СОДЕРЖАНИЕ
ГЛАВА 1. Качество программного обеспечения. 6
1.2 Стандарт ГОСТ Р ИСО МЭК 9126. 8
1.2.1 Модель характеристик качества. 9
1.2.2 Характеристики и атрибуты качества. 13
1.3.1 Основные направления применения метрик. 23
1.3.3 Метрики сложности программ. 24
1.3.4 Объектно-ориентированные метрики. 35
1.3.6 Метрики цикломатической сложности по Мак-Кейбу. 45
1.3.8 Размерно-ориентированные метрики (показатели оценки объема) 52
1.4 Альтернативные подходы к измерению качества. 56
1.5.2 Оценка с использованием эмпирических данных. 63
1.6 Методы контроля качества. 67
1.7 Автоматизированные программные продукты по оценке качества ПО. 69
1.7.1 Вычисление метрики SLOC.. 69
1.7.2 Вычисление метрик сложности. 71
1.7.3 Оценки экономических параметров. 72
ГЛАВА 2. Изучение темы критерии качества программного обеспечения. 80
2.1 Анализ стандарта по профильному курсу информатики. 80
2.2 Описание элективного курса «Критерии качества ПО». 83
2.4 Организация и проведение педагогического эксперимента. 91
Когда вы можете измерить, то о чем вы говорите, и выразить это в числах, вы знаете кое-что об этом; но если вы не можете измерить это и выразить в числах, ваше знание скудно и неудовлетворительно.
Лорд Кельвин
Требования к качеству программных средств всё время повышаются. Процессы разработки, приобретения и внедрения сложных систем, к которым относятся в частности программные комплексы, должны находится под жестким управленческим контролем. В настоящее время практически во всех организациях обеспечивается контроль важнейших характеристик, связанных с производством и использованием программных продуктов, таких как время, финансовые средства, ресурсы и т.п. Однако в большинстве случаев вне пределов сферы контроля оказывается наиболее важная характеристика программных продуктов, ради которой, собственно и осуществляются затраты времени, финансовых средств и ресурсов - это качество продукта, поскольку «невозможно контролировать то, что нельзя измерить» (“You cannot control what you cannot measure”).
Одним из подходов для оценки программных средств является оценка соответствующих атрибутов качества, определённых в серии международных стандартов ГОСТ Р ИСО МЭК 9126 «Информационная технология – Оценка программной продукции».
Стандарты определяют базовую терминологию и общий подход к проблеме оценки качества программных средств (характеристики качества, метрики для их измерения, методологию оценки), что позволяет уменьшить неопределённость при совместной работе нескольких организаций (заказчики разработки, разработчики, независимые оценщики). Применение международных стандартов ИСО МЭК в свою очередь удобно тем, что используемые подходы могут быть использованы при работе с зарубежными партнёрами.
Отсутствие возможности установки полного контроля вызывает рост количества необоснованных решений, увеличивает финансовые и проектные риски, связанные с разработкой и внедрением систем.
Однако в настоящее время уже существуют организации, в которых накоплен достаточно большой опыт использования метрик в управлении качеством разрабатываемых и внедряемых программных продуктов. Использование апробированных подходов в управлении качеством разработки и внедрения крупных программных систем значительно повышает предсказуемость проектов, снижает финансовые и ресурсные издержки.
Среди используемых метрик качества программного обеспечения есть универсальные метрики, которые применимы практически ко всем видам программного обеспечения. В то же время большая часть наиболее важных метрик в успешных проектах разрабатывается индивидуально на основе особенностей проекта и характеристик предметной области.
Объект исследования – методы определения качества ПО.
Предмет исследования – изучение технологий определения качества в школе.
Задачи исследования:
· рассмотреть основополагающие принципы качества;
· рассмотреть методы качества;
· выявить особенности работы методов;
· разработать учебную программу для элективного курса по теме: «Критерии качества программного обеспечения»
· создать программную поддержку курса, а именно практически реализовать критерии качества в Delphi.
Гипотеза исследования – изучение критериев качества программного обеспечения будет способствовать повышению общего уровня подготовки по информатике, стимулировать интерес к предмету.
ГЛАВА 1. Качество программного обеспечения
Что такое качество и почему оно должно быть столь глубоко представлено? На протяжении многих лет отдельные авторы и целые организации определяли термин “качество” по-разному. Фил Кросби (Phil Crosby) в 1979 году дал определение качеству как “соответствие пользовательским требованиям” (предполагает, что требования должны быть настолько четко определены, что они не могут быть поняты и интерпретированы некорректно.). Уотс Хемпфри (Watts Hamphrey) описывает качество как “достижение отличного уровня пригодности к использованию” (принимает во внимание требования и ожидания конечных пользователей продукта, которые ожидают, что продукт или предоставляемый сервис будет удобным для их нужд). Компания IBM, в свою очередь, ввела в оборот фразу “качество, управляемое рыночными потребностями” (“market-driven quality”). Критерий Бэлдриджа (Baldrige) для организационного качества использует похожую фразу - “качество, задаваемое потребителем” (“customer-driven quality”), рассматривая удовлетворение потребителя в качестве главного соображения в отношении качества. Чаще, понятие качества используется в соответствии с определением системы менеджмента качества ИСО 9001 как “степень соответствия присущих характеристик требованиям”.
Понятие “качество”, на самом деле, не столь очевидно и просто, как это может показаться на первый взгляд. Для любого инженерного продукта существует множество интерпретаций качества, в зависимости от конкретной “системы координат”. Множество этих точек зрения необходимо обсудить и определить на этапе выработки требований к программному продукту. Характеристики качества могут требоваться в той или иной степени, могут отсутствовать или могут задавать определенные требования, все это может быть результатом определенного компромисса, что вполне перекликается с пониманием “приемлемого качества”, как менее жесткой точки зрения на обеспечение качества, как достижение совершенства.
Сейчас существует несколько определений качества, которые в целом совместимы друг с другом. Приведем наиболее распространенные:
Определение ISO: Качество - это полнота свойств и характеристик продукта, процесса или услуги, которые обеспечивают способность удовлетворять заявленным или подразумеваемым потребностям.
Определение IEEE: Качество программного обеспечения - это степень, в которой оно обладает требуемой комбинацией свойств.
Качество ПО - это относительное понятие, которое имеет смысл только при учете реальных условий его применения, поэтому требования, предъявляемые к качеству, ставятся в соответствии с условиями и конкретной областью их применения. Оно характеризуется тремя аспектами: качество программного продукта, качество процессов ЖЦ и качество сопровождения или внедрения (рис 1).
Рис. 1. Основные аспекты качества ПО
Аспект, связанный с процессами ЖЦ, определяет степень формализации, достоверности самих процессов ЖЦ разработки ПО, а также верификацию и валидацию промежуточных результатов на этих процессах. Поиск и устранение ошибок в готовом ПО проводится методами тестирования, которые снижают количество ошибок и повышают качество этого продукта.