Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » А.М. Вендров - Объектно-ориентированный анализ и проектирование

А.М. Вендров - Объектно-ориентированный анализ и проектирование, страница 3

PDF-файл А.М. Вендров - Объектно-ориентированный анализ и проектирование, страница 3 Объектно-ориентированный анализ и проектирование (53381): Книга - 7 семестрА.М. Вендров - Объектно-ориентированный анализ и проектирование: Объектно-ориентированный анализ и проектирование - PDF, страница 3 (53381) - СтудИзб2019-09-18СтудИзба

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

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

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

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

Нужно не только выпускатьпрограммы на рынок и сокращать число дефектов в них, но и постоянноследить за изменяющимися требованиями пользователей и рынка.При таком подходе технология занимает в процессе создания ПОвполне определенное место. Она повышает эффективность деятельностиразработчиков при наличии любых из следующих четырех условий:• когда она позволяет людям легче выразить свои мысли. Языкивысокого уровня дают возможность более сжато выражать идеи.Некоторые языки высокого уровня позволяют человеку мыслить втехнологическом пространстве, приближенном к проблемномупространству, позволяя почти не отвлекаться на мысли обограничениях реализации;• когда она выполняет задачи, невыполнимые вручную.Инструменты измерения и анализа собирают данные, которыеиначе собрать было бы невозможно.

Программисты говорят о них,как об основных инструментах;• когда она автоматизирует утомительные и подверженные ошибкамдействия. Компиляторы, электронные таблицы и средствауправления конфигурацией ПО настолько важны, что некоторыепрограммисты даже не упоминают о них как об инструментах, апросто предполагают их присутствие;• когда она облегчает общение между людьми, В средераспределенной разработки ПО все виды инструментов обменаинформацией помогают команде работать.Технология не должна действовать против характера культурныхценностей и познавательной способности человека.12При этом следует четко понимать: при всех достоинствах быстройразработки ПО этот подход не является универсальным и применим тольков проектах определенного класса. Для характеристики таких проектовАлистер Коберн ввел два параметра - критичность и масштаб.Критичность определяется последствиями, вызываемыми дефектами в ПО,и может иметь один из четырех уровней:• C - дефекты вызывают потерю удобства;• D - дефекты вызывают потерю возместимых средств(материальных или финансовых);• E - дефекты вызывают потерю невозместимых средств;• L - дефекты создают угрозу человеческой жизни.Масштаб определяется количеством разработчиков, участвующих впроекте:• от 1 до 6 человек - малый масштаб;• от 6 до 20 человек - средний масштаб;• свыше 20 человек - большой масштаб.По оценке Коберна, быстрая разработка ПО применима только впроектах малого и среднего масштаба с низкой критичностью (C или D).Общие принципы оценки технологий в таких проектах заключаются вследующем:• интерактивное общение лицом к лицу - это самый дешевый ибыстрый способ обмена информацией;• избыточная "тяжесть" технологии стоит дорого;• более многочисленные команды требуют более "тяжелых" иформальных технологий;• большая формальность подходит для проектов с большейкритичностью;• возрастание обратной связи и коммуникации сокращаетпотребность в промежуточных и конечных продуктах;• дисциплина, умение и понимание противостоят процессу,формальности и документированию;• потеря эффективности в некритических видах деятельности вполнедопустима.Одним из наиболее известных примеров практической реализацииподходабыстройразработкиПОявляется"Экстремальноепрограммирование" (Extreme Programming - XP).

XP предназначен длянебольших компактных команд, нацеленных на получение как можноболее высокого качества и продуктивности. Метод достигает этогопосредством насыщенной, неформальной коммуникации, приданием наперсональном уровне особого значения умению и навыкам, дисциплине ипониманию, сводя к минимуму все промежуточные рабочие продукты.13Глава 1. Методические аспекты проектирования ПО1.1.

Общие принципы проектирования системОдной из основных проблем, которые приходится решать присоздании больших и сложных систем любой природы, в том числе и ПО,является проблема сложности. Ни один разработчик не в состоянии выйтиза пределы человеческих возможностей и понять всю систему в целом.Единственный эффективный подход к решению этой проблемы, которыйвыработало человечество за всю свою историю, заключается в построениисложной системы из небольшого количества крупных частей, каждая изкоторых, в свою очередь, строится из частей меньшего размера, и т.д., дотех пор, пока самые небольшие части можно будет строить из имеющегосяматериала. Этот подход известен под самыми разными названиями, срединих такие, как "разделяй и властвуй" (divide et impera), иерархическаядекомпозиция и др. По отношению к проектированию сложнойпрограммной системы это означает, что ее необходимо разделить(декомпозировать) на небольшие подсистемы, каждую из которых можноразрабатывать независимо от других.

Это позволяет при разработкеподсистемы любого уровня держать иметь дело только с ней, а не со всемиостальными частями системы. Правильная декомпозиция являетсяглавным способом преодоления сложности разработки больших системПО. Понятие "правильная" по отношению к декомпозиции означаетследующее:• количество связей между отдельными подсистемами должнобыть минимальным (принцип "слабой связанности" - LowCoupling);• связность отдельных частей внутри каждой подсистемыдолжна быть максимальной (принцип "сильного сцепления" High Cohesion).Более подробно эти принципы будут рассмотрены в рамках объектноориентированного анализа.Структура системы должна быть такой, чтобы все взаимодействиямежду ее подсистемами укладывались в ограниченные, стандартныерамки.

Иначе говоря:• каждая подсистема должна инкапсулировать свое содержимое(скрывать его от других подсистем);• каждая подсистема должна иметь четко определенный интерфейс сдругими подсистемами.Инкапсуляция (принцип "черного ящика") позволяет рассматриватьструктуру каждой подсистемы независимо от других подсистем.14Интерфейсы позволяют строить систему более высокого уровня,рассматривая каждую подсистему как единое целое и игнорируя еевнутреннее устройство.Существует два основных подхода к декомпозиции систем. Первыйподход называют функционально-модульным, он является частью болееобщего структурного подхода. В его основу положен принципфункциональной декомпозиции, при которой структура системыописывается в терминах иерархии ее функций и передачи информациимежду отдельными функциональными элементами.

Второй, объектноориентированный подход использует объектную декомпозицию. При этомструктура системы описывается в терминах объектов и связей междуними, а поведение системы описывается в терминах обмена сообщениямимежду объектами.В 1970 - 1980-х г.г. при разработке ПО достаточно широкоприменялись структурные методы, предоставляющие в распоряжениеразработчиков строгие формализованные методы описания проектныхрешений - спецификаций ПО (в настоящее время такое жераспространение получают объектно-ориентированные методы). Этиметоды основаны на использовании наглядных графических моделей: дляописания архитектуры ПО с различных точек зрения (как статическойструктуры, так и динамики поведения системы) используются схемы идиаграммы. Наглядность и строгость средств структурного и объектноориентированного анализа позволяет разработчикам и будущимпользователям системы с самого начала неформально участвовать в еесоздании, обсуждать и закреплять понимание основных техническихрешений.

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

Если все же удается создать строгую систему проектныхдокументов, то ее переработка при появлении серьезных измененийпрактически неосуществима. Ручная разработка обычно порождаласледующие проблемы:• неадекватная спецификация требований;• неспособность обнаруживать ошибки в проектных решениях;• низкое качество документации, снижающее эксплуатационныехарактеристики;• затяжной цикл и неудовлетворительные результаты тестирования.С другой стороны, разработчики ПО исторически всегда стоялипоследними в ряду тех, кто использовал компьютерные технологии для15повышения качества, надежности и производительности в своейсобственной работе (феномен "сапожника без сапог").Перечисленные факторы способствовали появлению программнотехнологических средств специального класса - CASE-средств,реализующих CASE-технологию создания ПО.

Понятие CASE (ComputerAided Software Engineering) используется в настоящее время в весьмашироком смысле. Первоначальное значение этого понятия, ограниченноетолько задачами автоматизации разработки ПО, в настоящее времяприобрело новый смысл, охватывающий большинство процессовжизненного цикла ПО.Появлению CASE-технологии и CASE-средств предшествовалиисследования в области программирования: разработка и внедрениеязыков высокого уровня, методов структурного и модульногопрограммирования, языков проектирования и средств их поддержки,формальных и неформальных языков описаний системных требований испецификаций и т.д.

Кроме того, этому способствовали следующиефакторы:• подготовка аналитиков и программистов, восприимчивых кконцепциям модульного и структурного программирования;• широкое внедрение и постоянный рост производительностикомпьютеров,позволившиеиспользоватьэффективныеграфические средства и автоматизировать большинство этаповпроектирования;• внедрение сетевой технологии, предоставившей возможностьобъединения усилий отдельных исполнителей в единый процесспроектирования путем использования разделяемой базы данных,содержащей необходимую информацию о проекте.CASE-технология представляет собой совокупность методовпроектирования ПО, а также набор инструментальных средств,позволяющих в наглядной форме моделировать предметную область,анализировать эту модель на всех стадиях разработки и сопровождения ПОи разрабатывать приложения в соответствии с информационнымипотребностями пользователей.

Большинство существующих CASE-средствосновано на методах структурного или объектно-ориентированногоанализа и проектирования, использующих спецификации в виде диаграммили текстов для описания внешних требований, связей между моделямисистемы, динамики поведения системы и архитектуры программныхсредств.1.2. Визуальное моделированиеПод моделью ПО в общем случае понимается формализованноеописание системы ПО на определенном уровне абстракции.

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