- •Жизненный цикл программного обеспечения
- •Структурный подход к проектированию программного обеспечения
- •2.6.3. Метод idef1
- •Объектно-ориентированный подход к проектированию программного обеспечения
- •3.3. Варианты использования
- •3.4. Диаграммы классов
- •3.4.1. Общие сведения
- •3.4.2. Ассоциации
- •3.4.3. Атрибуты
- •3.4.4. Операции
- •3.4.5. Обобщение
- •3.4.6. Ограничения
- •3.4.7. Более сложные понятия
- •3.4.8. Механизм пакетов
- •3.5. Диаграммы взаимодействия
- •3.5.2. Кооперативные диаграммы
- •3.6. Диаграммы состояний
- •3.7. Диаграммы деятельностей
- •Case-средства
- •Промышленные технологии проектирования программного обеспечения
- •Вспомогательные средства поддержки жизненного цикла программного обеспечения
- •Краткий словарь терминов
- •Приложения
- •1. Фирмы - поставщики case-средств
- •2. Технология и средства экстремальных проектов
Краткий словарь терминов
А
Абстракция — выделение существенных характеристик некоторого объекта, которые отличают его от всех других видов объектов и четко определяют его концептуальные границы относительно дальнейшего рассмотрения и анализа.
Агрегация - отношение "часть - целое".
Ассоциация — отношение между экземплярами классов.
Атрибут — любая характеристика сущности, значимая для рассматриваемой предметной области и предназначенная для квалификации, идентификации, классификации, количественной характеристики или выражения состояния сущности.
Архитектура ПО - описание системы ПО, включающее совокупность структурных элементов системы и связей между ними, поведение элементов системы в процессе их взаимодействия и иерархию подсистем, объединяющих структурные элементы.
В
Вариант использования (usecase) — последовательность действий (транзакций), выполняемых системой в ответ на событие, инициируемое некоторым внешним объектом (действующим лицом).
Внешняя сущность — материальный предмет или физическое лицо, представляющие собой источник или приемник информации.
Д
Действующее лицо (actor) - роль, которую пользователь играет по отношению к системе.
Ж
Жизненный цикл программного обеспечения - период, который начинается с момента принятия решения о необходимости создания ПО и заканчивается в момент его полного изъятия из эксплуатации.
И
Иерархия - ранжированная или упорядоченная система абстракций, расположение их по уровням.
Инкапсуляция - процесс отделения друг от друга отдельных элементов объекта, определяющих его устройство и поведение.
К
Качество ПО - совокупность свойств, которые характеризуют способность ПО удовлетворять заданным требованиям.
Класс — множество объектов, связанных общностью структуры и поведения. Любой объект является экземпляром класса.
Конфигурация ПО - совокупность его функциональных и физических характеристик, установленных в технической документации и реализованных в ПО.
М
Метод проектирования ПО - организованная совокупность процессов создания ряда моделей, которые описывают различные аспекты разрабатываемой системы с использованием четко определенной нотации.
Метод (на формальном уровне) — совокупность трех составляющих:
• концепций и теоретических основ. В качестве таких основ может выступать структурный или объектно-ориентированный подход;
• нотаций, используемых для построения моделей статической структуры и динамики поведения проектируемой системы. В качестве таких нотаций обычно используются графические диаграммы, поскольку они наиболее наглядны и просты в восприятии (диаграммы потоков данных и диаграммы "сущность-связь" для структурного подхода, диаграммы вариантов использования, диаграммы классов и др. - для объектно-ориентированного подхода);
• процедуры, определяющей практическое применение метода (последовательность и правила построения моделей, критерии, используемые для оценки результатов).
Модель (ПО) — полное описание системы ПО с определенной точки зрения.
Модель ЖЦ ПО — структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении ЖЦ.
Модульность — свойство системы, связанное с возможностью ее декомпозиции на ряд внутренне связных, но слабо связанных между собой модулей.
Н
Накопитель данных — абстрактное устройство для хранения информации.
Наследование — построение новых классов на основе существующих с возможностью добавления или переопределения данных и методов.
Нотация (языка моделирования) — совокупность графических объектов, которые используются в моделях.
О
Объект - осязаемая реальность (tangibleentity) - предмет или явление, имеющие четко определяемое поведение.
Объектная декомпозиция — описание структуры системы в терминах объектов и связей между ними, а поведения системы - в терминах обмена сообщениями между объектами.
Операция (метод) - определенное воздействие одного объекта на другой с целью вызвать соответствующую реакцию.
П
Параллелизм - свойство объектов находиться в активном или пассивном состоянии и различать активные и пассивные объекты между собой.
Полиморфизм - способность класса принадлежать более чем одному типу.
Поток данных - информация, передаваемая через некоторое соединение от источника к приемнику.
Программная инженерия — 1. Совокупность инженерных методов и средств создания ПО. 2. Дисциплина, изучающая применение строгого систематического количественного (т.е. инженерного) подхода к разработке, эксплуатации и сопровождению ПО.
Программное обеспечение (программный продукт) - совокупность компьютерных программ, процедур и, возможно, связанной с ними документации и данных.
Прототип - действующий программный компонент, реализующий отдельные функции и внешние интерфейсы разрабатываемого ПО.
Процесс (ЖЦ ПО) - совокупность взаимосвязанных действий, преобразующих некоторые входные данные в выходные.
Процесс создания ПО - совокупность упорядоченных во времени, взаимосвязанных и объединенных в стадии работ, выполнение которых необходимо и достаточно для создания ПО, соответствующего заданным требованиям.
Процесс (на диаграмме потоков данных) — преобразование входных потоков данных в выходные в соответствии с определенным алгоритмом.
Р
Разработка ПО - комплекс работ по созданию ПО и его компонентов в соответствии с заданными требованиями, включая оформление проектной и эксплуатационной документации, подготовку, материалов, требуемых для проверки работоспособности и соответствующего качества программных продуктов, материалов, необходимых для организации обучения персонала, и т.д.
Реверсный инжиниринг — перенос существующей системы ПО в новую среду.
Репозиторий - база данных, предназначенная для хранения проектных метаданных (версий проекта и его отдельных компонентов), синхронизации поступления информации от различных разработчиков при групповой разработке, контроля метаданных на полноту и непротиворечивость.
С
Связь — поименованная ассоциация между двумя сущностями, значимая для рассматриваемой предметной области.
Сопровождение ПО — внесение изменений в ПО в целях исправления ошибок, повышения производительности или адаптации к изменившимся условиям работы или требованиям.
Стадия ЖЦ ПО - часть процесса создания ПО, ограниченная определенными временными рамками и заканчивающаяся выпуском конкретного продукта (моделей ПО, программных компонентов, документации), определяемого заданными для данной стадии требованиями.
Сущность — реальный либо воображаемый объект, имеющий существенное значение для рассматриваемой предметной области.
Т
Тестирование — процесс исполнения программы в целях обнаружения ошибки.
Технология проектирования ПО — совокупность технологических операций проектирования в их последовательности и взаимосвязи, приводящая к разработке проекта ПО.
Типизация — ограничение, накладываемое на класс объектов и препятствующее взаимозаменяемости различных классов (или сильно сужающее ее возможность).
Требование — условие или характеристика, которым должна удовлетворять система.
У
Уникальный идентификатор — атрибут или совокупность атрибутов и/или связей, предназначенные для уникальной идентификации каждого экземпляра данного типа сущности.
Управление требованиями — 1. Систематический подход к выявлению, организации и документированию требований к системе. 2. Процесс, устанавливающий соглашение между заказчиками и разработчиками относительно изменения требований к системе и обеспечивающий его выполнение.
Устойчивость - свойство объекта существовать во времени (вне зависимости от процесса, породившего данный объект) и/или в пространстве (при перемещении объекта из адресного пространства, в котором он был создан).
Ф
Функциональная декомпозиция — описание структуры системы в терминах иерархии ее функций и передачи информации между отдельными функциональными элементами.
Функциональная точка - любой из следующих элементов разрабатываемой системы:
• входной элемент приложения (входной документ или экранная форма);
• выходной элемент приложения (отчет, документ, экранная форма);
• запрос (пара "вопрос/ответ");
• логический файл (совокупность записей данных, используемых внутри приложения);
• интерфейс приложения (совокупность записей данных, передаваемых другому приложению или получаемых от него).
CASE-средство — программное средство, поддерживающее процессы жизненного цикла ПО (определенные в стандартеISO/IEC12207:1995), включая анализ требований к системе, проектирование прикладного ПО и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом, а также другие процессы.