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


Полезное:

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


Категории:

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






Основная проблема проектирования





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

С уровнями абстракции тесно связан т. н. провал (зазор) абстракции, который называют основной проблемой проектирования [6].

Техническое задание  
Реализация  
Провал абстракции  

Рис.   Иллюстрация основной проблемы проектирования

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

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

В процессе проектирования преодолевается разрыв между техническим заданием на продукт и его реализацией. Эффективность технологий разработки можно оценивать по скорости и затратам на преодоление этого разрыва. Преодоление разрыва снизу вверх называют абстракцией, а сверху вниз – уточнением задания (рис. 4).

Техническое задание  
Реализация  
Провал абстракции  
Абстракция  
Уточнение  

Рис.   Преодоление основной проблемы проектирования

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

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

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

С другой стороны, заказчик, видя те или иные проблемы разработки, помогает принять проблемные или неоднозначные решения, в которых разработчики не достаточно компетентны. По сути, он уточняет задание, постепенно вникая в реальные возможности разработки. Таким образом, провал абстракции преодолевается сверху-вниз.

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

Провал абстракции и соответствующие способы его преодоления не зря называют основной проблемой проектирования. В дальнейшем понятия и приемы абстрагирования будут регулярно использоваться в данном документе.

Date: 2015-09-24; view: 406; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию