Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Сложные системы.






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

Гради Буч в своей книге «Объектно-ориентированный анализ и проектирование с примерами приложений на C++» со ссылкой на Брукса отмечает, что сложность вызывается четырьмя основными причинами:

1. сложностью реальной предметной области,

2. трудностью управления процессом разработки,

3. необходимостью обеспечить достаточную гибкость программы,

4. неудовлетворительными способами описания поведения больших дискретных систем.

Далее Буч выделяет пять признаков сложных систем:

Сложные системы часто являются иерархичными и состоят из связанных подсистем.

Выбор, какие компоненты в данной системе считаются элементарными, как правило на усмотрение исследователя.

Внутрикомпонентная связь обычно сильнее, чем связь между компонентами.

Иерархические системы обычно состоят из немногих типов подсистем, по-разному скомбинированных и организованных.

Любая работающая сложная система является результатом развития работавшей более простой системы.

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

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






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.