Понятие жизненного цикла (ЖЦ). Основные, вспомогательные и организационные процессы
Доклад, 13 Декабря 2013, автор: пользователь скрыл имя
Краткое описание
Жизненный цикл – это период времени с момента принятия решения о необходимости создания ПО до полного изъятия из эксплуатации.
Основной документ, регламентирующий состав процессов ЖЦ, – стандарт ISO 12207, описывает структуру процессов ЖЦ, но не конкретизирует, как реализовать или выполнить действия и задачи, включенные в эти процессы. Согласно стандарту все процессы разделены на 3 группы:
Основные – приобретение, поставка, разработка, эксплуатация, сопровождение
Вспомогательные – документирование, управление конфигурацией, обеспечение качества, верификация, аттестация, совместная оценка, аудит.
Вложенные файлы: 1 файл
my.doc
— 1.25 Мб (Скачать файл)
Характеристики уровней
Уровень связности |
Сцепление |
Модифици-руемость |
Понятность |
Сопровож-даемость |
функциональная |
хорошее |
хорошая |
хорошая |
хорошая |
последовательная |
хорошее |
хорошая |
близкая к хорошей |
хорошая |
информационная |
среднее |
средняя |
средняя |
средняя |
процедурная |
переменная |
переменная |
переменная |
плохая |
временная |
плохое |
средняя |
средняя |
плохая |
логическая |
плохое |
плохая |
плохая |
Плохая |
случайная |
плохое |
плохая |
плохая |
плохая |
Сцепление
Сцепление – мера взаимозависимости модулей. Слабое сцепление - признак хорошо спроектированной системы:
- уменьшение количества соединений между двумя модулями приводит к уменьшению вероятности появления “волнового эффекта” (когда ошибка в одном модуле влияет на работу других модулей);
- минимизация риска появления “эффекта ряби” (внесение изменений, например, при исправлении ошибки, приводит к появлению новых ошибок), т.к. изменение влияет на минимальное количество модулей;
- при сопровождении модуля отсутствие необходимости беспокоиться о внутренних деталях других модулей;
- упрощение системы для понимания, насколько это возможно.
Достичь слабого сцепления можно за счет:
- удаления необязательных связей;
- уменьшения количества необходимых связей;
- упрощения необходимых связей.
Три основных типа сцепления:
- нормальное сцепление (приемлемое);
- сцепление по общей области (неприемлемое);
- сцепление по содержимому (запрещенное).
Два модуля А и В являются нормально сцепленными, если
- А вызывает В,
- В возвращает управление А,
- вся информация, передаваемая между А и В, представляется значениями параметров при вызове, то есть передается через параметры.
Три типа нормального сцепления:
- сцепление по данным (СЦ=1) – наиболее часто используемое:
- модули взаимодействуют через передачу параметров, и при этом каждый параметр является элементарным информационным объектом. В случае небольшого количества передаваемых параметров сцепление по данным обладает наилучшими характеристиками.
- сцепление по образцу (СЦ=3):
- один модуль посылает другому составной информационный объект(имеющий внутреннюю структуру).
- сцепление по управлению (СЦ=4):
- если один посылает другому информационный объект - флаг, предназначенный для управления его внутренней логикой. Существует два типа флагов - описательный и управляющий. Описательный флаг обычно описывает ситуацию, которая произошла, и именуются с использованием существительных и прилагательных: Конец файла, Введенная кредитная карта. Управляющий флаг используется для декларирования определенных действий в вызываемом модуле и именуется с использованием глаголов: Читать следующую запись, Установить в начало. В общем случае управляющие флаги усиливают сцепление и, следовательно, ухудшают качество проекта.
сцепление по общей области (СЦ=7). Модули ссылаются к одной и той же области глобальных данных.
- ошибка в любом модуле, использующем глобальную область, может неожиданно проявить себя в любом другом модуле, использующем эту глобальную область (глобальные данные не находятся “под защитой” модуля)
- модули, ссылающиеся к глобальным данным, обычно используют точные имена – уменьшается гибкость модулей
- трудно определить, какие данные используются отдельным модулем
сцепление по содержимому (СЦ=9). Один модуль ссылается внутрь другого любым способом (например, один модуль передает управление или выполняет переход в другой модуль; один модуль ссылается (или изменяет) значения информационных объектов в другом модуле; один модуль изменяет код другого модуля). Такое сцепление вынуждает один модуль знать о точном содержании и реализации другого модуля.
Любые два модуля могут быть сцеплены более чем одним способом. В этом случае тип сцепления определяется худшим типом сцепления. Например, если два модуля сцеплены по образцу и общей области, то они характеризуются как сцепленные по общей области.
Конкретные характеристики каждого типа сцепления.
Тип сцепления |
Устойчивость к волновому эффекту |
Модифицируемость |
Понятность |
Используемость в других системах |
data coupling |
* |
хорошая |
хорошая |
хорошая |
stamp coupling |
* |
средняя |
средняя |
средняя |
control coupling |
средняя |
плохая |
плохая |
плохая |
common coupling |
плохая |
средняя |
плохая |
плохая |
content coupling |
плохая |
плохая |
плохая |
плохая |
* Зависит от количества
Понятие структурного анализа. Принципы структурного анализа
Структурный анализ – метод исследования системы, который начинается с ее общего обзора и затем детализируется, приобретая иерархическую структуру со все большим числом уровней.
Принципы структурного анализа:
- "разделяй и властвуй" - преодоление сложности больших систем расчленением их на части
- иерархическое упорядочение - составные части системы организуются в иерархические древовидные структуры (сложная ПС на верхнем уровне состоит из небольшого числа относительно независимых компонентов с четко определенными интерфейсами; затем декомпозиции подвергаются выделенные на первом этапе компоненты, и так далее до заданного уровня детализации).
- абстрагирование - выделение существенных аспектов системы и отвлечения от несущественных;
- формализация - строгий методический подход к решению проблемы;
- непротиворечивость - обоснованность и согласованность элементов;
- структурирование данных - данные структурированы и иерархически организованы.
Классификация структурных методологий. Модели AS-IS и TO-BE. Средства структурного анализа
Роль методологии - регламентация процесса разработки сложных систем; описывает последовательность шагов, модели и подходы, тщательное следование которым приведет к хорошо работающим системам.
Структурные методологии жестко регламентируют фазы анализа требований и проектирования спецификаций и отражают подход к разработке ПО с позиций рецептов "кулинарной книги".
Наиболее распространенные методологии:
- SADT (Structured Analysis and Design Technique),
- структурного системного анализа Гейна-Сарсона (Gane-Sarson),
- структурного анализа и проектирования Йодана Де Марко (Yourdon/DeMarko),
- развития систем Джексона (Jackson),
- развития структурных систем Варнье-Орра (Wamier-Orr),
- анализа и проектирования систем реального ремени Уорда-Меллора (Ward-Mellor) и Хатли (Hatley),
- информационного моделирования Мартина (Martin).
"Классическая" совокупность, на которой базируются методологии:
- диаграммы потоков данных в нотации Йодана Де Марко или Гейна-Сарсона(обеспечивают анализ требований и функциональное проектирование информационных систем);
- расширения Хатли и Уорда-Меллора для проектирования систем реального времени, основанные на диаграммах переходов состояний, таблицах и<span class="dash0421_0442_04