Оценка качества процессов создания ПО. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Оценка качества процессов создания ПО.



 

В Текущий период рынок ПО характеризуется переходом от штучного производства ПО к промышленному.

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

1) ISO-9000 к разработке ПО ISO-9000-9004 –в этой серии сформированы необычные условия для достижения некоторого минимального уровня организации процессов.

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

Пять уровней технологической зрелости

 

Разработчики модели СММ (SEI) определили пять уровней технологической зрелости, по которым заказчики могут оценивать потенциальных поставщиков (претендентов на получение контракта), а поставщики могут совершенствовать процессы создания ПО Каждому из показанных на рисунке уровней технологической зрелости внутри модели СММ дано следующее краткое определение:

 

Уровень 1: Начальный (Initial) — технология разработки ПО характеризуется как произвольная (импровизированная), в некоторых случаях — даже хаотическая. Лишь некоторые процессы определены, успех всецело зависит от усилий отдельных сотрудников.

 

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

 

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

 

Уровень 4: Управляемый (Managed) — детальные метрики (объективные данные) о качестве исполнения процессов и выходной продукции собираются и накапливаются. Управление процессами и выходной продукцией осуществляется по количественным оценкам.

 

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

 

3. стандарт ISO/IES 15504 (SPACE) – она определяет возможности для улучшения процесса создания ПО. В основе стандарта лежит оценка процесса. Оценка выполняется путём сравнения процесса разработки ПО в данной организации с описанной в стандарте модели. Этот анализ помогает определить сильные и слабые стороны процесса, а также внутренние риски присущие данному процессу. Это помогает оценить эффективность процессов, определить причины ухудшения качества и связанные с этим издержки во времени и стоимости. В основе стандарта так же лежит определения возможности процесса, т.е. возможности его улучшения.

 

 

Понятие технологичности ПО.

 

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

При проектировании достаточно сложного ПО выполняют его декомпозицию на модули. Модуль – автономно компилируемая программная единица. К модулям предъявляются следующие требования:

1. 1 точка входа

2. 1 точка выхода.

3. Отдельная компиляция

4. Соответствие принципу вертикального управления

5. Выполнение одной функции

6. Небольшой размер (50-70 операторов)

7. Возможность вызова других модулей

 

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

Существует 5 типов сцепления модулей:

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

2. сцепление по образцу – модули обмениваются данными, объединённые в некоторые структуры (элементы массива)

3. Сцепление по управлению – когда 1 модуль посылает другому некоторой информационный объект, предназначенный для управления внутренней логикой модуля.

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

5. Сцепление по содержимому – один модуль содержит обращение к внутренним компонентам другого. Такой вид сцепления тоже не допустим.

 

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

1. Функциональная

2. Последовательная

3. Информационная (коммуникативная)

4. Процедурная

5. Временная

6. Логическая

7. Случайная

 

Функциональная – все объекты модуля предназначены для выполнения одной функции.

Последовательная – выход одной функции служит исходными данными для другой функции.

Информационная – считается функция обрабатывающая одни и те же данные.

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

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

Логическая связь – функции базируются на объединении данных или функций в одну логическую группу.

Случайная – связь между элементами мала или отсутствует.

 

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

 



Поделиться:


Последнее изменение этой страницы: 2017-02-07; просмотров: 132; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.154.208 (0.009 с.)