Конспект лекций, страница 4

PDF-файл Конспект лекций, страница 4 Объектно-ориентированный анализ и проектирование (53235): Лекции - 7 семестрКонспект лекций: Объектно-ориентированный анализ и проектирование - PDF, страница 4 (53235) - СтудИзба2019-09-18СтудИзба

Описание файла

PDF-файл из архива "Конспект лекций", который расположен в категории "". Всё это находится в предмете "объектно-ориентированный анализ и проектирование" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 4 страницы из PDF

МОДЕЛИ ИОБЪЕКТНАЯ МОДЕЛЬИХРОЛЬВСОЗДАНИИСИСТЕМ.Одна из основных проблем при создании больших и сложных систем, в том числеПО, – это проблема сложности. Виды сложности: техническая сложность и сложностьуправления. Техническая сложность может быть вызвана: структурной сложностью (большим количеством элементов и сложнымивзаимосвязями между ними); отсутствием полных аналогов, ограничивающее возможность использования типовыхпроектных решений и прикладных систем; необходимостью интеграции существующих и вновь разрабатываемых приложений; функционированием в неоднородной среде на нескольких аппаратных платформах; высокими требованиями к надежности и производительности.Сложность управления порождается следующими причинами: сильное воздействие внешней среды (политика, экономическая ситуация, контракты,много заинтересованных лиц, противоречивые требования); большой коллектив разработчиков, много различных проектов и продуктов; разобщенность и разнородность отдельных групп разработчиков по уровнюквалификации и традициям использования инструментальных средств; значительная временная протяженность проекта.Подход к решению этой проблемы основан на принципе «разделяй и властвуй»(divide et impera).

Сложная программная система должна быть разделена на небольшиеподсистемы, каждую из которых можно разрабатывать независимо (в какой-то степени) отдругих. Декомпозиция является главным способом преодоления сложности разработкиПО. Принципы декомпозиции: количество связей между подсистемами должно быть минимальным(«низкаясвязанность» или «слабое зацепление» – Low Coupling); степень взаимодействия внутри каждой подсистемы должна быть максимальной(«сильная связность» или «высокая прочность» – High Cohesion).При разбиении системы на подсистемы необходимо выполнить следующиетребования: каждая подсистема должна инкапсулировать свое содержимое (скрывать его от другихподсистем); каждая подсистема должна иметь четко определенный интерфейс с другимиподсистемами, устанавливающий стандартные ограничения на взаимодействие.Следование этим правилам увеличивает понятность и модифицируемостьсоздаваемого ПО.Два основных подхода к декомпозиции систем: функционально-модульный,основанный на функциональной декомпозиции, при которой структура системыописывается в терминах иерархии ее функций и иерархии структур данных; объектноориентированный, использующий объектную декомпозицию, при которой структурасистемы описывается в терминах объектов и связей между ними, а поведение системыописывается в терминах обмена сообщениями между объектами.

Подходы имеют многообщего. Достоинством второго подхода является то, что есть единая иерархия, и нетнеобходимости отслеживать соответствие между двумя иерархиями функциональномодульного подхода.В рамках обоих подходов используется понятие архитектуры ПО. Архитектура ПО– набор ключевых правил, определяющих организацию системы: совокупность структурных элементов системы и связей между ними; поведение элементов системы в процессе их взаимодействия; иерархия подсистем, объединяющих структурные элементы;1архитектурный стиль (типовой способ организации системы).Архитектура ПО многомерна, поскольку различные специалисты работаютс её различными аспектами.

Различные представления архитектуры служат различнымцелям (модель «4+1»): представление функциональных возможностей ПО (представление вариантовиспользования, содержащее сценарии взаимодействия системы с внешней средойи роли, которые играют пользователи ПО и внешние системы); представление логической организации ПО (логическое представление, элементамикоторого являются пакеты, подсистемы, классы, связи между ними); представление физической структуры программных компонент, входящих в состав ПО(представление реализации, элементами которого являются компоненты, связи междуними); представление структуры потоков управления и аспектов параллельной работы ПО(представление процессов, элементы которого: потоки управления, нити, параллелизм,синхронизация); описание физического размещения компонент ПО по узлам вычислительной системы(представление размещения, элементы которого: узлы вычислительной системы,устройства, линии связи, задачи).ЛогическоепредставлениеАналитик, разработчикСтруктураПредставлениепроцессовПредставлениереализацииПредставлениевариантовиспользованияПользовательФункциональностьСистемный интеграторПроизводительностьМасштабируемостьПропускная способностьПрограммистУправление ПОПредставлениеразмещенияСистемный инженерТопология системыВнедрение, инсталляцияКоммуникацияСреди 5-ти представлений особое место занимает представление вариантовиспользования, поскольку оно используется при управлении разработкой, служит своегорода скелетом проекта.Каждое архитектурное представление – это модель системы с определенной точкизрения, в которой отражены лишь существенные аспекты и опущено все, чтонесущественно при данном взгляде на систему.Модель ПО – это формализованное описание системы ПО на определенном уровнеабстракции.

Каждая модель описывает конкретный аспект системы, использует набордиаграмм или формальных описаний и документов заданного формата, а также отражаетточку зрения и является объектом деятельности различных людей с конкретнымиинтересами, ролями или задачами. Модели служат полезным инструментом анализапроблем, обмена информацией между всеми заинтересованными сторонами,проектирования ПО. Моделирование способствует более полному усвоению требований,улучшению качества системы и повышению степени ее управляемости.2Гради Буч:«Моделирование является центральным звеном всей деятельности по созданиюкачественного ПО. Модели строятся для того, чтобы понять и осмыслить структуру иповедение будущей системы, облегчить управление процессом ее создания и уменьшитьвозможный риск, а также документировать принимаемые проектные решения.»Архитектурно значимый элемент – это элемент, значительно влияющий наструктуру системы, её функциональность, производительность, надежность,защищенность, возможность развития.

Подсистемы, их интерфейсы, процессы и потокиуправления являются архитектурно значимыми элементами.Существуют различные графические модели, используемые при разработке ПО:блок-схемы, конечные автоматы, синтаксические диаграммы, семантические сети. Общееих достоинство графических моделей – наглядность.Визуальное (графическое) моделирование – позволяет описывать проблемы спомощью зримых абстракций, воспроизводящих понятия и объекты реального мира.Моделирование осуществляется при помощи языка моделирования, который включает всебя: элементы модели; нотацию (систему обозначений); руководство по использованию.Моделирование не является целью разработки ПО. Диаграммы – это лишьнаглядные изображения. Причины, побуждающие прибегать к их использованию:1. Графические модели помогают получить общее представление о системе, сказать отом, какого рода абстракции существуют в системе и какие ее части нуждаютсяв дальнейшем уточнении.2.

Графические модели образуют внешнее представление системы и объясняют, что этасистема будет делать, тем самым облегчают общение с заказчиком.3. Графические модели облегчают изучение методов проектирования, в частностиобъектно-ориентированных методов.В процессе создания ПО используются следующие виды моделей: модели деятельности организации (или модели бизнес-процессов):o модели "AS-IS" ("как есть"), отражающие существующее положение;o модели "AS-TO-BE" ("как должно быть"), отражающие представление о новыхпроцессах и технологиях работы организации; модели проектируемого ПО, которые строятся на основе модели "AS-TO-BE",уточняются и детализируются до необходимого уровня.Состав моделей, используемых в каждом конкретном проекте, и степень ихдетальности в общем случае зависят от следующих факторов: сложности проектируемойсистемы; необходимой полноты ее описания; знаний и навыков участников проекта;времени, отведенного на проектирование.Для облегчения труда разработчиков и автоматизированного выполнения некоторыхрутинных действий используются CASE-средства (Computer Aided Software Engineering).В настоящее время CASE-средства обеспечивают поддержку большинства процессовжизненного цикла ПО, что позволяет говорить о CASE-технологиях разработки ПО.CASE-технология – это совокупность методов проектирования ПО и инструментальныхсредств для моделирования предметной области, анализа моделей на всех стадиях ЖЦ ПОи разработки ПО.Объектная модель является концептуальной базой объектно-ориентированногоподхода (ООП).Проблемы, стимулировавшие развитие ООП: Необходимость повышения производительности разработки за счет многократного(повторного) использования ПО. Необходимость упрощения сопровождения и модификации разработанных систем(локализация вносимых изменений). Облегчение проектирования систем (за счет сокращения семантического разрывамежду структурой решаемых задач и структурой ПО).3Забегая вперед, скажем, какие решения данных проблем дает ООП.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5140
Авторов
на СтудИзбе
441
Средний доход
с одного платного файла
Обучение Подробнее