PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.

Презентация:



Advertisements
Похожие презентации
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Advertisements

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Учебный курс Объектно-ориентированный анализ и программирование Лекция 4 Трансформация логической модели в программный код Лекции читает кандидат технических.

Проектирование ИС (часть 2) Тема 3: Метрики объектно- ориентированных систем Объем лекций по теме: 4 часа Лектор: Щеголева Людмила Владимировна.
UML МИЭМ, План лабораторной UML Краткий обзор средств моделирования Паттерны проектирования Практическая часть 2.
Типовые расчёты Растворы
1 Карагандинский государственный технический университет Лекция 4-1. Особенности задач оптимизации. «Разработка средств механизации для устройства «Разработка.
Проектирование архитектуры ИСО 1. UML 2 Структура определения языка 4.
Ребусы Свириденковой Лизы Ученицы 6 класса «А». 10.
Michael Jackson
1 Анна Юфкина Специалист по бизнес-решениям
Школьная форма Презентация для родительского собрания.
Кандидат технических наук, доцент Грекул Владимир Иванович Учебный курс Проектирование информационных систем Лекция 9.
Маршрутный лист «Числа до 100» ? ? ?
Транксрипт:

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1 Анализ и дизайн систем Alan Dennis, Barbara Wixom, and David Tegarden John Wiley & Sons, Inc. Slides by Fred Niederman

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 2 Copyright © 2001 John Wiley & Sons, Inc. All rights reserved. Reproduction or translation of this work beyond that permitted in Section 117 of the 1976 United States Copyright Act without the express written permission of the copyright owner is unlawful. Request for further information should be addressed to the Permissions Department, John Wiley & Sons, Inc. The purchaser may make back-up copies for his/her own use only and not for redistribution or resale. The Publisher assumes no responsibility for errors, omissions, or damages, caused by the use of these programs or from the use of the information contained herein.

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 3 Дизайн классов и методов Глава 14

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 4 Основные концепции Низкоуровневый или детальный дизайн критичен, несмотря на существование библиотек и компонентов Ранее существующие классы должны быть поняты и организованы Часть, если не весь, код тем не менее используется для создания новых классов

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 5 Повтор основных характеристик объектно- ориентированного подхода

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 6 Элементы Классы Объекты Атрибуты Состояния Методы Сообщения

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 7 Инкапсуляция Скрытие содержания объекта от просмотра извне Доступ только через методы класса Ключ к повторному использованию

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 8 Полиморфизм Одни и те же сообщения вызывают разные методы в разных классах Динамическая связь это специальные методы, выбранные в ходе работы Реализация динамических связей зависит от языка Нужно быть очень осторожными с ошибками в работе Нужно обеспечить семантическую однородность

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 9 Наследование Единичное наследование – один базовый класс Множественное наследование – несколько базовых классов Переобозначения и конфликты наследования Большинство конфликтов наследования происходят из-за плохой классификации

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 10 Правила Rumbaugh Операции очереди не должны бать переопределены Методы, переопределяющие наследованные, должны только придерживаться их семантики Основная семантика наследованного метода никогда не должна быть изменена Список передаваемых аргументов наследованного метода никогда не должен быть изменен

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 11 Дополнительные конфликты наследования Два наследованных атрибута или метода имеют одинаковые имя и семантику Два наследованных атрибута или метода имеют различные имена, но одинаковую семантику. Два наследованных атрибута или метода имеют одинаковое имя и различную семантику

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 12 Ваша очередь! Университет выпускает в среднем студентов в год, и офис развития хочет построить веб- систему для получения и распределения пожертвований. В такой системе приведите 3 примера классов, имеющих один подкласс; 1 пример подкласса. Который может иметь 2 базовых.

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 13 КРИТЕРИИ ДИЗАЙНА

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 14 Связность Взаимозависимость между модулями Связь интеракции через передачу сообщений

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 15 Закон Demeter Сообщение должно посылаться объектом только самому себе объекту, являющегося атрибутом этого или высшего класса объекту, передаваемому как параметр методу объекту, создаваемому методом объекту, заданному глобальной переменной

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 16 Типы Интерактивной Связи УровеньТип ХорошийНет прямой связи Данные Шаблон Контроль Общий или глобальный ПлохойСодержательный или нелогический

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 17 Единство Единомыслие модуля Единство методов Единство классов Единство обобщений/спецификаций

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 18 Типы единства методов УровеньТип ХорошийФункциональный Очередной Коммуникативный Процедурный Временный или классический Логический ПлохойСовпадения

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 19 Типы единства классов УровеньТип Хороший Идеальный Смешанные роли Смешанная база Хуже Смешанная сущность

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 20 Зависимость Создание необходимости изменения одного модуля, как результат изменения другого Минимизация общей зависимости Минимизация вне границ инкапсуляции Максимизация внутри границы инкапсуляции

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 21 Типы зависимости Тип Имя Тип или Класс Поведение Алгоритм Позиция

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 22 ДИЗАЙН ОБЪЕКТА

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 23 Дополнительные Спецификации Вначале просмотрите текущей набор моделей Важные, но только необходимые классы для решения проблемы Нет упущенных атрибутов или методов Нет лишних атрибутов или методов Проверьте области видимости

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 24 Прототип каждого метода Имя метода Параметры или передаваемые аргументы Тип возвращаемого значения

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 25 Определите ограничения Предусловия Постусловия Инварианты Как работать с нарушениями (исключения в C++ и Java)?

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 26 Выявите возможности повторного использования Шаблоны Структура Библиотеки классов Компоненты

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 27 Реструктурирование дизайна Факторизация Подгонка под текущий язык Нормализация Убедитесь, что все отношения наследования поддерживают только семантику обобщения/спецификации

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 28 Оптимизация дизайна Проверка путей доступа Проверка атрибутов каждого класса Проверка прямого и непрямого разветвления по выходу Просмотрите порядок вызова операций в часто используемых методах Избегайте перевычислений путем создания производных атрибутов и вызовов

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 29 Соглашения и ограничения Набор ограничений и гарантий Написания на естественном языке, структурированном английском, псевдокоде или формальном языке

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 30 Инварианты на диаграмме класса

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 31 Простой формат соглашений Имя метода: Имя класса:ID: Клиенты (Потребители): Связанные Use Case: Описание обязанностей: Передаваемые аргументы: Тип возвращаемых данных: Пред-условия: Пост-условия:

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 32 СПЕЦИФИКАЦИЯ МЕТОДОВ

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 33 Синтаксис Нет формальных правил синтаксиса Общая информация События Передача сообщений Спецификация алгоритмов

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 34 Структурированный английский

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 35 Пример псевдокода (Get CD-info module) Accept (CD_title) {Required} Accept (CD_artist) {Required} Accept (CD_category) {Required} Accept (CD_length) Return

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved.

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved.

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved.

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved.

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 40 Резюме Перевод основных элементов OO анализа в дизайн, требует внимания чтобы избежать трудности и конфликты выполнения. Связность, единство, и зависимость предлагаются как критерии оценки дизайна. Дизайнер ищет возможности оптимизировать дизайн, создаёт соглашения и ограничения, и специфицирует методы.

PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 41 Дополнительные ресурсы Группы пользователей С и С++ предлагают необычайно широкие сведения об ОО разработке. Посмотрите сайты: